From YAML to Deterministic + Agentic Runners
Why disk-based orchestration beats fancy state management for multi-agent systems.
Most "agent frameworks" treat agents like function calls: pass context, wait for output, move to the next node. In practice that produces a subtle failure mode: groupthink. When agents see each other's reasoning while generating their own, the outputs converge to the same safe middle.
What worked for us (in Leviathan + the Kingly Agency workflows) wasn't a clever orchestrator. It was a dumb one.
The core move: disk-based orchestration. YAML describes structure. Agents read/write files. A synthesis step reads all. No shared hidden state, no in-memory broker, no "chain" object that leaks context.
The pattern that actually works
- Agents communicate through files only.
- Parallel work means "same input file, different output files".
- The orchestrator dispatches; it does not synthesize.
Why files beat fancy state
Files are the lowest-common-denominator substrate:
- Humans can read them.
- Git can diff them.
- Agents can consume them.
- Debugging is literally just opening the folder.
And most importantly: files enforce isolation. If two agents run in parallel and only see 00-input.md, they produce genuinely different angles.
Gastown: "Claude Code is the runtime"
In Leviathan terms, Gastown is the operationalization of that idea:
- Load workflow YAML
- Create
tmp/<workflow>-<timestamp>/ - Write
00-input.md - Dispatch agents (parallel or sequential)
- Verify outputs exist
- Dispatch synthesis
No bespoke workflow engine required.
CDO: the useful reduction
The useful reduction (captured in our internal skills) is:
Graph-based layout + agentic execution = CDO
Not a new programming language. Not a new runtime. The "language" is the graph shape + the enforced I/O discipline.
BD (beads): when it becomes multi-session
Once work becomes multi-session, you need persistent tracking distinct from artifacts. That's where issue tracking shines:
- Files are source-of-truth artifacts (outputs, drafts, reports).
- The dependency graph tracks what's blocked, what's next, what's done.
A pragmatic template you can steal
If you want to try this pattern without committing to infrastructure:
- Create a workflow folder:
tmp/<name>-<timestamp>/ - Write
00-input.md - Dispatch 2 agents in parallel against the same input
- Dispatch a third agent to synthesize
If you can't reproduce "non-groupthink divergence" with that, you don't have a multi-agent system—you have a single voice wearing costumes.
Related Concepts
- Swarm DAG — Interactive visualization of multi-agent orchestration
- Context Engineering — Why context beats prompts
- AI Dictionary — Multi-agent terminology explained