The board
Watch it write
the team.
This is a recorded session, not a live feed. Nothing is running behind this page. It plays back at a fixed speed, from the first line to the last, and then it stops.
01 The session
One task in.
Four minds out.
One question arrives. It has no agents to answer with, so it writes four, reads them before they run, runs them, and deletes them. What survives is the answer.
The run is eight words end to end: Plan, Forge, Guard, Run, Merge, Council, Judge, Release.
02 The stages
Seven stages,
named after their code.
The first four stages are modules. Not a metaphor for one - four files in the package you can install.
The shipped 0.1.2 wheel carries planner.py,
generator.py, codeguard.py and
executor.py. The last three are named for what the run
does rather than for a file of their own, and two of them are
constants: COUNCIL = auto and
TASK_REVISIONS = 1. Below they stand in the order the
run walks them.
Planner
It grades the task simple, standard or deep, then returns a plan
whose agents are bounded by MAX_AGENTS = 4. Each spec
carries depends_on, so the plan states who feeds whom
before anything is written.
Generator
assemble_agent writes each agent as one self-contained
Python file that imports nothing from AgentGod. Copy one out and it
still runs. It also cannot plan or spawn a team of its own.
Codeguard
codeguard.py parses the file with ast
before it can become a process: 81 vetted packages, 13 refused
standard-library modules, 6 banned calls. This is static
validation, not a sandbox, and the honest version of that
sentence is the one that ships.
Executor
taskgraph.waves() reads the graph and decides what can
run beside what. Independent agents go together; a dependent one
waits. The executor makes no model calls of its own.
Merger
Every output that survived collapses into one voice. What reaches you is an answer, not a pile of transcripts to reconcile. An agent that could not be repaired is named rather than dressed up as a result.
Council
An adversarial read of the merged answer. COUNCIL
defaults to auto and takes three values - auto, always
and off - the same three the --council flag offers.
Judgement, then release
The answer is read back against the request that started it.
TASK_REVISIONS = 1, so a miss sends the agents round
once more rather than forever. Then the team is deleted, and the
keep question can be answered in advance with --keep,
--discard or AGENTGOD_KEEP=always. What
you kept comes back by name. What you did not is gone.
03 The counters
Numbers with
a line of code behind them.
Each of these was read out of the published package. No stopwatch, no invoice, no benchmark. None of those was run, so none of them is here.
Four is the ceiling, not the target. taskgraph.waves()
computes waves for a graph of any size, and nothing above four has
been exercised, so four is what it says.
04 Recorded
What this is not.
The honest label
The board above is a fixed script played back in your browser. There is no process behind it, no key, no network call, and no queue you are watching move. The stage names and every number in it were read out of the published 0.1.2 wheel, which is the only thing here worth trusting.
It carries no timing, no token count and no cost, because no run was recorded to take those from. Where other sites would put a stopwatch, this one puts nothing.
- SourceThe published 0.1.2 package, read line by line.
- Live feedNone. Playback only.
- TimingsNot shown, and not measured.
- Real boardInstall it and watch your own run instead.
What would make it live is already half built, and it is not the hard half.
The pipeline runs headless by design. events.py
defines about eighteen hooks - phase started, plan ready, agent
finished, council convened, answer judged - and the orchestrator
never prints a line of its own. Something other than the terminal
has to subscribe to them. Nothing has. That one is held in
the sealed set, with its condition
written down.
A run, link by link.
Eight stops, in the order the work happens. The last one is the only one in ember, because it is the only one that deletes something.
Run the live one.
pip install AgentGOD, an Anthropic key, and the next board
you watch is yours.