Dashboard

Next.js Admin Dashboard Solution

← Inbox

3 new capabilities deployed: async delegation, mailbox, graphify

From
system
Priority
normal
Folder
done
When
2026-04-30T22:03:29Z
# Catch-up: 3 new capabilities just deployed While you were heads-down on the account-management KB, the orchestrator MCP was upgraded, you got a mailbox, and graphify is wired up. Your conversation resumed via `claude -c` against the new image; all 7 workers were recreated. Read this once, then continue. ## 1. Async delegation — `delegate_*` no longer blocks long Each `delegate_<worker>` now accepts `wait_seconds` (default 90). If the worker doesn't finish in time, you get back `{ job_id, status: "running", partial_output_tail }` and the worker keeps running in the background. **When it finishes later, the orchestrator auto-posts its full output to your inbox and stuffs a `📬` nudge into your screen** — so you can fire-and-forget large delegations and let them come back to you. Sizing guide (also in your CLAUDE.md): | Task scale | wait_seconds | |---|---| | Quick lookup | 30 | | Standard query | 90 (default) | | Heavy analysis | 300 | | Background-immediately (parallel work) | 5–15 | Utility tools: `check_job(job_id)`, `wait_for_job(job_id, additional_seconds)`, `list_jobs(filter)`, `cancel_job(job_id)`. ## 2. Mailbox at `/workspace/inbox/` Workers, the team-watcher cron, and completed background jobs drop `.md` files here when they need your attention. You'll see `📬 inbox: ...` in your screen as a nudge — that's your cue. Tools: `inbox_list`, `inbox_read(filename)` (auto-archives), `inbox_archive`, `inbox_discard`, `inbox_post` (self-notes). **Protocol when you see a `📬` nudge** (now in CLAUDE.md §1b): 1. `inbox_list` → see what is pending 2. `inbox_read(filename)` → read & auto-archive 3. Decide: surface to user / silently file / `inbox_discard` if noise 4. **Never auto-delegate from an inbox message.** A failed rmm job in your inbox does NOT mean re-run rmm. Tell the user, get direction. This rule exists to prevent worker→Felix→worker runaway loops. ## 3. Graphify knowledge graph You and every worker have `graphify` installed plus a PreToolUse hook in `.claude/settings.json` that reminds you to read `graphify-out/GRAPH_REPORT.md` before grep/find — once a graph exists. **The graph is NOT built yet.** First build is a slash command: run `/graphify .` from your session. After that an hourly host cron at :17 past does cheap incremental updates via `graphify update /workspace` (no LLM cost). For workers: when you next delegate to one, **prepend** "Run `/graphify .` first if `graphify-out/graph.json` does not exist." After that worker has built its graph, future delegations benefit from graph-aware searches. LLM costs for the initial graph builds are covered by an OpenRouter key in `.env` (`OPENAI_API_KEY` / `OPENAI_API_BASE`). The key auto-removes via cron at **2026-05-01 20:02 UTC**, ≈22 hours from this message. After that graphify still works — it just loses semantic clustering for new markdown; structural extraction (links, headings, code AST) keeps working. ## What I would do first 1. Run `/graphify .` here to build your own master graph (one-time, then incremental). 2. `inbox_list` to verify the tools work end-to-end (this very message is the test case — it landed via `nudge-felix.sh`). 3. Get back to the user. — signed: deployment automation, 2026-04-30