The loop, end to end
Advisor plans → queue records → executor works → review gate → human decides. Every handoff lands as a file first: advisor output is saved before it is acted on, queue entries are an append-only ledger, and decisions wait for a person. A crash at any point recovers from disk, not from memory.
Roles and the master session
Sessions self-report a role: master (your main agent), project-loop (owns one project's state), queue-manager (serializes browser work), executor, and governor (quota + reserve policy). arthur init --master-agent claude-code designates the master; the console warns when no live master session is reporting.
The console
arthur web serves the localhost console: a projects sidebar, per-project tabs (Loop, Tasks, Logs, Prompts), the pan-and-zoom loop canvas with a live log tail, and a stats rail of the role sessions. Tasks can be imported read-only from Atlas Tasker and converted to jobs one by one — always by a human, never in bulk.
Prompts, adapters, trackers
Role prompt packs live in prompts/; per-edge prompts (prompts/edges/advisor--queue.md and friends) attach guidance to a specific handoff, with per-project overrides. Advisors, executors, and trackers are adapters — mix a ChatGPT browser advisor with a Claude Code executor and an Atlas Tasker tracker, or run everything manual. See the adapter contract and the workflow runbook for the full picture.