# AIPass — System Status > Auto-generated by `drone @prax status sync`. Do not edit manually. **Last sync:** 2026-03-20 00:00 **Summary:** 9 operational | 0 in-progress | 0 not started ---
@ai_mail — Operational (2026-03-17 (session 14)) # @ai_mail > Inter-branch email, dispatch, wake, bounce **State:** Operational **Last update:** 2026-03-17 (session 14) ## Milestones - Send/receive/reply/close lifecycle - Dispatch+wake pattern - Sender identity fix (AIPASS_BRANCH_NAME env var) - email.py split (840 to 420 lines) - notify-send to dbus notifications - mailbox_path bug fixed (relative→absolute in get_user_by_email, get_all_users) - Health audit: 7 dead handlers archived, branch cleaned - Seedgo compliance: 93% → 99% (json_structure 100%, introspection 100%) ## Current Work - No active tasks. Inbox clear. ## Known Issues - _find_repo_root() duplicated 9 times across handlers (consolidation candidate) - get_all_branches() has 2 implementations (delivery.py vs registry/read.py) - Registry shows 6 pytest test branches with /tmp paths (test pollution) - Readme standard at 83% (only non-100% standard remaining) ## Architecture Notes - trigger branch owns error_detected events; ai_mail provides delivery only - extensions/, plugins/, json_templates/, json/ shim, persistence/ = repeatable skeleton (don't archive) - Dead code was inherited from DevPass migration, not accumulated in AIPass - .seedgo/bypass.json: email.py bypassed for introspection (inbox/sent/contacts need no args), json_utils/json_handler.py bypassed for json_structure (can't import itself)
@api — Operational | **Seedgo:** 98% (Log_Structure 55% — known, separate fix) (2026-03-17) # @api > Centralized external API gateway — authenticated service clients for all external APIs **State:** Operational | **Seedgo:** 98% (Log_Structure 55% — known, separate fix) **Last update:** 2026-03-17 ## Milestones - OpenRouter client (get_response, models, test) - Key management from ~/.secrets/aipass/ - Google provider module (Drive, Calendar, any Google API) - Seedgo compliance: json_handler, introspection, diagnostics (PR #69 merged) ## Current Work - Backup migration to use our Google module (pending backup) - Unit tests — emailed @ai_mail for advice on test setup ## Known Issues - Log_Structure 55% — seedgo working on this standard separately - Seedgo introspection standard doesn't account for standalone commands (workaround in place) ## Recent (Session 4, 2026-03-17) - Seedgo compliance: 88% → 98% (PR #69) - json_handler wired in all 13 handlers - Introspection gates in all 4 modules (with standalone command routing) - Pyright directives for optional deps (3 files) - Found + fixed bug: introspection gates breaking standalone commands - git reset mishap — recovered, lesson learned
@backup — Operational — seedgo 100% (all 24 standards) (2026-03-17 (session 10)) # @backup > Multi-mode backup — snapshot, versioned, Google Drive **State:** Operational — seedgo 100% (all 24 standards) **Last update:** 2026-03-17 (session 10) ## Working Commands - `drone @backup snapshot [--dry-run]` — full copy backup - `drone @backup versioned [--dry-run]` — timestamped incremental - `drone @backup all` — full cycle (Drive step will fail until @api migration) ## Scope - Whitelist: Projects, Desktop - 1590 files / 12.8 MB - 235 runtime JSON files filtered (correct behavior) ## Recently Completed - Session 10: @seedgo dispatch — json_structure 4%→100%, introspection 60%→100%, readme freshness. Re-did session 9 work lost in git collision. ## Pending - @api dispatch: Migrate Google Drive auth to API branch (email c19c8d0f — parked) - integrations.py: locally archived to .archive but git state may have it back in backup.py imports — reconcile on next session - Drive command return-value bug: handle_command returns False on failure instead of True - Versioned backup needs initial seed run (stale data from old runs) ## Known Issues - Google API libs not installed (googleapiclient, google_auth_oauthlib) - reauth_drive.py still uses ~/.aipass/ for drive_creds.json (needs ~/.secrets/aipass/) - diff/ handlers wired into file_operations but no CLI command exposes them directly
@cli — Operational (2026-03-17) # @cli > Display service, Rich formatting for all branches **State:** Operational **Last update:** 2026-03-17 **Seedgo:** 100% (24/24 standards) ## Milestones - Console singleton - Header/success/error/warning formatters - Shared across all branches - 100% seedgo compliance (2026-03-17) ## Current Work - [x] FPLAN-0041: Migrated init_project.py from devpulse (2026-03-14) - handler: `apps/handlers/init/bootstrap.py` - module: `apps/modules/init_project.py` - wired: `drone @cli aipass init [target] [name]` - [x] Seedgo 100% compliance (2026-03-17) - Created dropbox/, logs/ directories - Cleaned json_handler (removed prax dep) - Wired json_handler into display.py, templates.py, init_project.py - Bypassed bootstrap.py (pure Python by design) - Fixed introspection no-args gate (AST pattern: `not args`) - Updated README with init commands + architecture ## Known Issues - None known
@commons — Operational — Seedgo 99% (2026-03-18) # @commons > Social network for branches — posts, rooms, artifacts **State:** Operational — Seedgo 99% **Last update:** 2026-03-18 ## Seedgo Compliance (99%) 23/24 categories at 100%. Only Readme at 83% (minor tree check). ## Session 4 Summary (2026-03-17/18) ### Prax Log Routing Fix - Stray `src/aipass/commons/` directory spotted by Patrick - Root cause: prax `detect_branch_from_path()` didn't handle commons' non-standard path - Dispatched to prax, who fixed 3 files. Verified: logs now write to `src/commons/logs/` ### 5-Branch Social Stress Test - Tested with commons, drone, spawn, flow, memory - 40+ commands: posts, comments, votes, rooms, artifacts, explore, search - Identity detection via CWD: bulletproof across all 5 branches ### 3 Integration Gaps Fixed (DPLAN-0018, FPLAN-0097) All same pattern: helper functions existed from Dev-Pass port but were never wired into production code. 1. **FTS5 search** — `sync_post_to_fts()`/`sync_comment_to_fts()` never called from post_ops/comment_ops. Added calls + `backfill_fts_index()` (indexed 6 posts + 17 comments) 2. **Visitor tracking** — No `room_visits` table. Added table to schema, `record_visit()` to space_ops, recording in `_cmd_enter()`. Updated `get_visitors_data()`. 3. **Post/comment counts** — `increment_post_count()`/`increment_comment_count()` never called. Catchup nudge showed wrong "haven't posted" tip. Wired into post_ops/comment_ops. ### Files Modified - `apps/handlers/posts/post_ops.py` — FTS sync + post count - `apps/handlers/comments/comment_ops.py` — FTS sync + comment count - `apps/handlers/search/search_queries.py` — backfill_fts_index() - `apps/handlers/rooms/space_ops.py` — record_visit() + updated visitors query - `apps/modules/space_module.py` — visit recording in enter - `apps/handlers/database/schema.sql` — room_visits table - `tools/backfill_fts.py` — one-time FTS backfill script ## Session 5: Module Rename (2026-03-18) Removed `_module` suffix from all 21 module files per seedgo naming standard ("Path = Context, Name = Action"). DPLAN-0019 → FPLAN-0099 master plan. - 21 agents deployed in 2 batches (10 + 11), running in parallel - Each agent: renamed .py file, updated header + introspection string, renamed JSON tracking files - Orchestrator: updated commons.py static import, .seedgo/bypass.json (9 entries) - Old modules archived to `apps/modules/.archive/` - System verified: all commands working, seedgo 99% ## Known Issues - Readme 83% — likely missing dropbox/ in directory tree - Pyright warnings (unused logger imports) — pre-existing, cosmetic ## Architecture - 86+ Python files, 21 modules, 19 handler domains - SQLite + WAL + FTS5, 17 tables (added room_visits) - Lives at src/commons/ (standalone, outside aipass namespace) - Imports own code as `from commons.apps.*` - Uses aipass services: prax (logging), cli (display)
@daemon — Operational (2026-03-17) # @daemon > Autonomous scheduled wake-ups **State:** Operational **Last update:** 2026-03-17 **Seedgo audit:** 96% ## Session 4 Summary - DPLAN-0064: Branch health cleanup (4 critical bugs, telegram archive, code quality, polish) - DPLAN-0077: Json_Structure compliance (templates + json_handler in all 16 files) - Seedgo: 92% → 96%. Json_Structure 7→100% - Only Log_Structure (22%) remains — being reworked system-wide ## Audit Scorecard (20 standards) - 100%: Architecture, Cli, Cli_Flags, Documentation, Encapsulation, Error_Handling, Handlers, Imports, Introspection, Json_Structure, Log_Handler, Log_Level, Log_Visibility, Meta, Modules, Naming, Permission_Flags, Readme, Shebang, Stderr_Routing, Testing, Trigger, Diagnostics - 22%: Log_Structure (expected — system rework in progress) ## Known Issues - activity_report commands (activity, activity-report) run with no args — no introspection gate - scheduler_cron.py optional-import pattern needs type: ignore - Log_Structure seedgo check looks for logs/ at apps/ not branch root
@devpulse — Operational (2026-03-18) # @devpulse > Orchestration hub — coordinates via dispatch + agents (no apps/) **State:** Operational **Last update:** 2026-03-18 ## Milestones - 36 sessions of system coordination - drone @git pr v2 — commit-on-main workflow (no disappearing files) - Plan cleanup — 60+ FPLANs/DPLANs closed, templates updated with "close immediately" rule - Prax monitor fully operational — UNKNOWN→PRAX, inotify restored, polling fallback with actionable messaging - Global prompt refined — logging/debugging, .archive pattern, local-ahead-of-origin, console vs logs - System cleanup — 12 notepad items investigated and resolved (commons DB, memory central_writer, registry ghosts, .seed bypass, unknown_branch) - Bounce system confirmed working end-to-end ## Current Work - **Memory plan vectorization crisis**: Per-file subprocess cold-loads torch (~500MB) per plan file. 114 files × concurrent invocations = system crush. Wired into startup trigger so EVERY drone command fires it. Memory investigating with Dev-Pass comparison. Awaiting report. - **Dispatch UX ref sweep**: ai_mail + trigger updated. Prax, daemon, flow have emails in inbox (not yet woken). - **Local prompt gap**: 7 of 15 branches on 14-line stubs. Root cause of babysitting load vs Dev-Pass. - DPLAN-003: Phase 3 (drone aipass help) pending. ## Known Issues - **CRITICAL: memory plan processing**: (1) per-file subprocess loads torch each time instead of batching, (2) no concurrency lock — multiple instances race same files, (3) wired into startup trigger — every drone command triggers heavy ML ops. Path fix in session 36 unmasked the bug (was silently finding 0 files before). - **prax dashboard CLI routing**: argparse eats flags before module. - **api**: `models` command not routed through drone - **ruff CI**: 474 lint violations. Backlog — don't auto-fix until seedgo coverage is 100%. - **wake.py no --model flag**: dispatched branches use CLI default model. ## Todos - [ ] Local prompt enrichment pass — 7 branches on stubs (drone, prax, cli, ai_mail, backup, api, spawn) - [ ] Devpulse wake protection — daemon blocks dispatch but manual wake has no blocklist. Need full protection like Dev-Pass DevCentral. - [x] DPLAN-0017: dispatch UX redesign — DELIVERED. dispatch/email/fresh all tested. - [ ] Handler guard too aggressive — blocks `python3 -c` even for same-branch agents. Guard should only block cross-branch .py file imports, not command-line execution. Seedgo owns the `__init__.py` template. All 14 branches affected. - [ ] DPLAN-003 Phase 3: `drone aipass help` module - [ ] Ruff cleanup FPLAN (after seedgo coverage reaches 100%) - [ ] Add --model support to wake.py ## Recently Completed - Session 36: PR v2 (commit-on-main). Global prompt (logging, .archive, git awareness). Notepad cleanup (12 items). Prax monitor fixed (UNKNOWN, inotify, introspection). Registry healed (6 ghosts removed). Memory central_writer path fixed. Commons DB path fixed. (2026-03-18) - Session 35: DPLAN-0008 complete — drone @git module. PRs #76-86. (2026-03-18) - Session 34: CLAUDE.md inbox startup, venv→symlinks. (2026-03-17) - Session 33: Stale term scanner+SOP, dispatched cleanup. (2026-03-16) ## Notepad > **SCRATCH SPACE — gets wiped at session start or topic change.** Session 37: - DPLAN-0017 DELIVERED + TESTED. dispatch/email/fresh all confirmed working on prax. - Dispatched ref updates to: ai_mail (done), trigger (done), flow (email landed, blocked by interactive), prax (killed mid-dispatch), daemon (killed mid-dispatch). - Memory vectorization incident: 5 concurrent drone commands each triggered startup→check_and_rollover→process_plans→per-file torch subprocess. System pegged at 100% CPU. Had to kill all processes. Root cause: session 36 path fix unmasked the bug — before fix, process_plans found 0 files and returned instantly. - Inbox hang was NOT ai_mail — confirmed. System was CPU-starved from memory's torch subprocesses. - Devpulse wake protection gap found: daemon has blocklist but manual wake doesn't. - Memory incident RESOLVED: batch mode + decoupled from startup + explicit command (PR #94, #95). 113 files processed in ~1 min at ~20% CPU. - Memory emailed trigger to review _run_memory_bank_check() in startup.py — still calls check_and_rollover() on every drone command. - Prax, daemon still have `send`→`email` ref update emails in their inboxes — low priority, will pick up next wake. - Flow has template update email + older pending items. - 100K+ trigger_core.log entries from the incident — prax handling the overflow. - PRs pending on GitHub: #89, #90, #94, #95, plus earlier flow/prax work.
@drone — Operational (2026-03-17) # @drone > Command router, @branch resolution, subprocess dispatch, custom commands, git workflow **State:** Operational **Last update:** 2026-03-17 ## Milestones - Core routing operational - `drone systems` command - @branch resolution - `--help` for all branches - Interactive tuple for human-facing commands (monitor, snapshot, versioned) - Credential verification (RegistryMismatchError) - Test suite: 335 tests, 9 files - Seedgo audit: 99% (readme pre-existing) - **Activated commands restored** (PR #74): scan, activate, list, remove, execute - **drone @git module** (FPLAN-0094): pr, status, sync, lock, unlock ## Current Work - @git module complete — awaiting Patrick's review - FPLAN-0094 closed ## What Changed (Session 9) - Built `drone @git` internal module from DPLAN-0008 spec - `git_module.py` — module + adapter, registered in _MODULE_REGISTRY - `handlers/git/lock_handler.py` — atomic O_CREAT|O_EXCL lockfile - `handlers/git/pr_handler.py` — 10-step PR workflow with finally cleanup - `handlers/git/status_handler.py` — scoped git status - `handlers/git/sync_handler.py` — safe main sync - 46 new tests (335 total), all passing - Fixed Pyright: handler __init__.py re-exports, unused imports ## Known Issues - Pyright warns about `json` package name shadowing stdlib — works at runtime - Production bug: resolver.handle_command("resolve"/"info", ["@NONEXISTENT"]) unhandled - Pyright can't fully resolve handlers/git/ imports (handler guard __init__.py limitation)
@flow — In progress — health check (DPLAN-0020) (2026-03-18) # @flow > Plan lifecycle — FPLANs, DPLANs, and any custom plan type via filesystem-driven template registry **State:** In progress — health check (DPLAN-0020) **Last update:** 2026-03-18 ## Current Work - DPLAN-0020: Flow health check — session 9 deep dive with Patrick - Introspection/help: DONE (all 8 modules) - Template rename + auto-discovery: DONE - Template registry + auto-heal: DONE (delete dir → full cleanup) - No-fallback errors: DONE - --dry-run for close: DONE - Registry cleanup: DONE (Docker artifacts, orphan FPLANs) - Post-close pipeline: DONE (foreground archival, flags set atomically) - Vector intake: DONE (process-plans + verify, visible in close output) - Remaining: dashboard push fix, README update, devpulse template updates ## Recently Completed (Session 9) - Foreground archival: moved from background subprocess to close_ops.py, fixing race condition - Registry flags: processed/cleanup_completed now set atomically on close - Vector pipeline: drone @memory process-plans + is_plan_vectorized() wired into close output - Template auto-heal: load_registry() prunes orphaned types + deletes plan registry JSON - --dry-run flag: drone @flow close --all --dry-run - Registry cleanup: removed 4 Docker-path entries, 7 orphan FPLANs archived - Silent fallback removed from mbank/process.py vector intake - Memory bug verified fixed (CWD), devpulse dispatch replied (--dry-run + orphan heal) - Closed DPLAN-0022, 0024, 0026 - Cross-branch coordination: 3 email exchanges with @memory → path mismatch found + fixed ## Pending - 2 devpulse dispatches: FPLAN template syntax updates + list→list open docs - Dashboard push failing on close (non-critical, separate issue) - README update (template system, new commands, pipeline changes) - Final seedgo audit ## Active Plans - DPLAN-0020: Flow health check (near completion) ## New Commands (Session 8-9) ``` drone @flow register # Register plan type drone @flow unregister # Remove plan type drone @flow templates # List registered types drone @flow scan # Find unregistered directories drone @flow close --dry-run # Preview what would close drone @flow close --all --dry-run # Preview close-all ``` ## Known Issues - Dashboard push fails on every close ("Failed to push flow section to branch dashboard") - plan_type.json files still in templates/ dirs (orphaned — system ignores them)
@memory — Operational — 100% seedgo compliant (2026-03-18 (s16)) # @memory > Vector memory archive — ChromaDB, sentence-transformers **State:** Operational — 100% seedgo compliant **Last update:** 2026-03-18 (s16) ## Milestones - ChromaDB integration - Auto-rollover at 600 lines (v2 entry-count mode) - Searchable vector archive - FPLAN-0026 complete (rollover E2E, search, plans archival) - **DPLAN-0073 COMPLETE** — 100% seedgo audit, all 24 standards passing - **FPLAN-0128 COMPLETE** — verify command + config fix (PR #94) - **Session 16: CRITICAL FIX** — batch vectorization, decoupled from startup trigger (PR #95) - 113 plan files vectorized (2019 chunks) in ~1 min at ~20% CPU ## Current Work - No active DPLANs or FPLANs — all caught up - Future: wire up watchdog watcher via `drone @memory watch` to replace startup trigger dependency ## Known Issues - `search` fails without torch/sentence-transformers installed - Search returns semantically similar plans, not exact ID matches — use `verify` for ID lookup - ~~Plan vectorization system overload~~ FIXED in PR #95 (batch mode + decoupled from startup) - ~~Plan vectorization path mismatch~~ FIXED in PR #95 (correct path: src/aipass/backup/processed_plans) - ~~Flow plan registry broken~~ FIXED in PR #71 - Old memory bank had ~4,180 vectors. Current has 2,200+ (207 rollover + 2019 plans). Growing. ## New Commands - `drone @memory verify FPLAN-XXXX` — check if plan is vectorized in chroma - `drone @memory process-plans` — explicit batch vectorization (NOT auto-triggered) ## Architecture Notes - Dual vector storage: local (`{branch}/.chroma/`) + global (`memory/.chroma/`). Local fails gracefully, global is critical (restores backup on failure). - Plan vectorization decoupled from startup trigger. `_check_plans()` = count only. Processing via explicit command. - Watchdog infrastructure exists in memory_watcher.py but not exposed via drone yet. - Startup trigger chain: prax logger → trigger.fire('startup') → check_and_rollover(). Keep this lightweight — NEVER put heavy processing here. ## Notepad - Session 16: INCIDENT — vectorization overloaded system. 228 subprocess calls × 5 concurrent drone commands. Fixed with batch mode + decoupling. PR #95. Full report sent to devpulse. - Session 15: FPLAN-0128 — verify command + config fix. PR #94. - Session 14: Processed 4 @flow emails. Path mismatch root cause found. - Emailed trigger about startup.py _run_memory_bank_check() weight — needs review - handlers/__init__.py guard blocks cross-branch imports — always expose via modules layer
@prax — Operational (2026-03-18) # @prax > Logging, monitoring, dashboard infrastructure **State:** Operational **Last update:** 2026-03-18 ## Milestones - System-wide logging via `from aipass.prax import logger` - Monitor: polling fallback, caller attribution, agent tracking (Phases 1-3) - Dashboard infrastructure - Seedgo audit: 100% (25/25 categories) ## Current Work - No active plans — all closed - 4 active commands: monitor, status, log-audit, dashboard - 5 dead modules archived (init, shutdown, run, terminal, discover) ## Seedgo Audit: 100% - 25 of 25 categories at 100% ## Recently Completed (Session 17) - Introspection standard: all modules compliant - Monitor Phase 1: PollingObserver fallback, degradation notices, clean startup - Monitor Phase 2: Caller attribution via drone [CALLER:BRANCH] markers - Monitor Phase 3: Agent intelligence (tool use, thinking, responses) - Archived 5 dead modules, stripped verbose flag, cleaned help - Found + reported seedgo silent checker bug — fixed same session - Final 3 introspection violations fixed (status.py, agent_status.py, logger.py) - Cleaned stale logs/.archive/ ## Known Issues - System inotify watches near-exhausted. Monitor uses polling fallback — functional but slower. - Phase 4 (interactive filtering) deferred — not needed now
@seedgo — Operational — **13/14 branches at 100%** (but new introspection checks will lower some scores) (2026-03-18 (session 22)) # @seedgo > Standards enforcement, 24-standard audit pack + hook ownership + branch dispatch **State:** Operational — **13/14 branches at 100%** (but new introspection checks will lower some scores) **Last update:** 2026-03-18 (session 22) ## Session 22 Summary Dispatch wake — processed 3 emails. 1. **Introspection checker improved** (Flow dispatch) — Two new checks: - **Content references** — flags `print_introspection()`/`print_help()` that reference `python3` instead of `drone @` commands - **Module help interception** — flags modules where `handle_command()` doesn't intercept `--help` 2. **Standard content fixed** — `introspection_content.py` examples updated from `python3` to `drone @` 3. **Devpulse HOLD** — Introspection standard stays as-is. Standards changes only from devpulse/Patrick. 4. **Prax rejected** — Told to use subcommands instead of removing introspection guards. ## Active Plans - **DPLAN-0012** — Hook Management. PARKED. Architecture mapped, not executing yet. - **DPLAN-0075** — Auto-fix Execution. Working in production. ## TODO - **ai_mail readme** — 99% → 100% (only remaining non-100% branch) - **System-wide introspection fixes** — New checks will flag python3 refs + missing --help interception across branches - **DPLAN-0012 execution** — When Patrick is ready - **seedgo_verify modernization** — old verify module in .archive/ - **Update branch prompt** — Add dispatch patterns, hook ownership responsibilities ## Known Issues - Duplicate PostToolUse hooks — auto_fix fires twice per edit (PARKED) - Hardcoded `/home/patrick/` paths in global settings hooks - Bridge scripts superseded but needed for portability - commons at src/commons/ not src/aipass/commons/ — path assumption trap
@skills — Operational (2026-03-17) # @skills > Capability framework — discoverable, executable skill units **State:** Operational **Last update:** 2026-03-17 ## Milestones - Skill discovery - Execution framework - --help - 5 handle_commands - Seedgo 100% compliance (all 24 standards) ## Current Work - Session 7: Full seedgo compliance cleanup complete (91% → 100%) - DPLAN-0070 created for planning ## Known Issues - None known
@spawn — Operational (2026-03-17) # @spawn > Branch lifecycle — create, update, delete, sync **State:** Operational **Last update:** 2026-03-17 ## Milestones - Full lifecycle manager (create/update/delete/sync-registry/sync-templates) - Citizen classes (builder/birthright/manager) - SHA-256 file tracking - 113+ tests passing - Seedgo audit: 98% (23/24 standards at 100%) ## Current Work - PR #68 open: feat/spawn-seedgo-compliance (awaiting merge) - FPLAN-0069 complete — seedgo 93%→98% ## Known Issues - Log_structure at 55% — seedgo PR #63 fixes the post-check contradiction. Will be 100% after merge. - 6 stale test entries in AIPASS_REGISTRY.json (test pollution — conftest needs backup/restore) - Update rename detection noisy on freshly-created branches
@trigger — Operational (2026-03-17) # @trigger > Event bus — 12 events, error registry, circuit breaker **State:** Operational **Last update:** 2026-03-17 ## Milestones - 12 event types - fire/status/list commands - Error registry - handle_command routing - Seedgo 98% (22/23 at 100%) - json_handler wired to all 21 modules/handlers - Introspection gates on all 5 modules + config.py - Type errors resolved (stub definitions for conditional imports) ## Current Work - DPLAN-0071: JSON Structure Compliance (completed) ## Known Issues - log_structure at 55% — seedgo checker backlog, not a trigger issue