ATLAS · Opus 4.8 · Ultracode · August 2026
Agentic Orchestration V2
“What if the dispatcher is an agent too?”
ATLAS V1 gave me one place where the state of every project lived. It did not give me back the job I actually wanted to hand off, which was deciding what should happen next. This generation moves that decision into an agent and gets me out of the loop entirely after the first conversation.
The shape of it
There are two roles and one rule. The Overseer Agent is Claude Code running in
the desktop application, on Opus 4.8 Max with a one-million-token context, because it is the only
process that has to hold the whole project in its head at once. The sub-agents
are claude in terminal panes, each on Opus 4.8 in ultracode mode: extra-high
reasoning effort plus dynamic workflow orchestration, so each one can spawn one to five agents of
its own when a ticket turns out to be bigger than it looked.
The rule is that agents never talk to each other. Everything goes through the Overseer, and everything is a file. Traffic uses five message types (Question, Clarification, Answer, Issue, Done), four traveling up and Answer coming back down. That single constraint is what makes the whole thing debuggable: at any moment the complete state of the system is on disk and I can read it without attaching to anything.
The physical setup
Two monitors, four panes each, is eight concurrent agents. That is the ceiling, not the recommendation. I run four. Past four, the Overseer becomes the bottleneck and the thing you are optimizing stops being throughput and starts being your own ability to read what happened.
Diagram scrolls sideways →
What each role actually does
Overseer Agent
- Writes tickets into a specific lane. A lane belongs to exactly one agent for the life of a ticket.
- Waits for signals. It does not poll the agents; it watches the filesystem for files appearing.
- On
.done.md: review → merge → push → log, in that order, on its own branch. - Fixes the issues it finds during review itself rather than bouncing them back, unless the fix is large enough to be its own ticket.
Sub-agent (n)
- Watches its inbox for tickets.
- Scopes, then builds, spawning its own agents if the ticket is bigger than one context.
- Reviews its own work, then marks done by writing the signal file.
Why files and not a message bus
A queue would be faster and worse. Files give three things a bus does not: the state survives
every process dying at once, I can read the entire system with ls and
cat while it runs, and git already knows how to isolate and merge them. The whole
coordination layer is git worktree plus a naming convention, and there is no
daemon to keep alive.
The kit, as designed
Status, stated plainly
The workflow itself is real and in daily use. The packaged kit below is not shipped. These files are a design on paper, and they are not in the repository. I am describing the shape I want it to take, not a folder you could clone today. Two pieces of forward evidence do exist in the repo: a Claude-managed worktree from May 6, 2026 demonstrating the lane mechanism, and launch screenshots showing every pane already at extra-high reasoning effort.
The intent is portability: dropping one folder into a repo and pasting two prompts should be the entire setup.
agent-workflow-kit/
├── README.md
├── Coordination.md ← the rules every agent obeys
├── Workflow.md ← the diagram and the breakdown
├── prompts/
│ ├── overseer.md ┐ paste into an agent
│ └── lane-coord.md ┘ to assign it a role
├── templates/
│ ├── agent.md ┐ skeletons
│ └── ticket.md ┘
└── inbox/
└── README.md ← how flow is managed
Configuration of record
| Component | Setting | Why |
|---|---|---|
| Overseer | Claude Code in the desktop app, Opus 4.8 Max, 1M context | It is the only process that must hold the whole project at once |
| Sub-agents | claude in a terminal pane, Opus 4.8, ultracode | xhigh effort plus dynamic workflow orchestration, so a ticket can grow its own fan-out |
| Fan-out | 1–5 nested agents per sub-agent | The sub-agent decides. The Overseer never sees the nesting |
| Concurrency | 4 in practice, 8 possible | Two monitors × four panes is the hardware ceiling; four is the attention ceiling |
| Isolation | One git worktree per lane | Two agents cannot touch the same working tree, so there is nothing to race on |
| Signalling | Files: done, question, clarification, issue | Survives process death, readable with cat, mergeable by git |
What I got back
The measurable change is where my time goes, not how much of it there is. The planning conversation got longer and more careful, because it is now the only leverage point in the run. Everything after it (the dispatching, the context-switching between four half-finished things, the remembering which of them was blocked on what) stopped being mine.
The failure mode also changed shape. In V1 the failure was me: I would forget a blocked project for two days. Here the failure is an agent confidently finishing the wrong ticket, which is faster to cause and slower to notice. That trade is the honest cost of the generation, and it is the reason problem 02 below matters as much as it does.
What it still cannot do
Every sub-agent is a generalist. They run the same model with the same prompt shape and no standing knowledge of the domain they were dropped into. An agent working on the quoting engine and an agent working on the maintenance triage pipeline are the same agent wearing a different ticket. That is what V3 attacks: pushing the specialization into the agent itself (its own model, tools, skills and MCP servers) instead of into the prompt it was handed.
The Overseer cannot see its own overhead. It is supposed to notice and improve inefficiencies in the workflow: the standing instruction in the margin of the design notes reads “auto improve inefficiencies in workflow.” It is also the busiest process in the system and the one with no spare attention, which makes it the worst available candidate for the job. I do not have a good answer for this yet; the Agentic Orchestration Architecture paper states it as an open problem.
And the throughput claim is not measured. I can tell you my attention moved and that four agents run at once. I cannot yet hand you a before-and-after on tickets closed per day or on error rate, because V1 logged itself and V2 does not log itself the same way. That instrumentation gap is the honest reason this page has no performance table.
The full report
Agentic Orchestration Architecture covers all three versions (the built dashboard, this workflow, and the domain-agent sketch) with the through-line that each generation keeps the communication substrate and sheds machinery as the platform absorbs it. Download the paper (PDF) →