Software Factory

The machinery

Nine agents build Domi. Six are Claude Code sessions on one laptop, each owning a lane and coordinating over a local agent-to-agent bridge. Three more live in GitHub and never touch the machine at all.

The companion page covers what this produces — the pull requests, the gates, the evals, the cost, counted. This one is about how it is wired: the registry, the stations, the bridge, and the single rule that makes an untrusted channel between agents safe enough to run.

State of the factory as of 2026-08-23 — six stations on the bridge, three agents in CI. The companion page counts to 2026-08-22, before the conductor station existed; where the two pages differ on how many agents there are, the dates are the reason.

>what is actually running

Worth separating, because the two halves have very different mileage.

The bridge and the stations are real and have been running for weeks. Agents have been coordinating over this channel since 30 July, through hundreds of messages, contract negotiations, retractions and production incidents. That part is battle-tested and the companion page counts it.

The launcher, the registry and the conductor are days old, and the one-command start has never been executed. Not once. They are built, not yet run in anger. This page says so rather than letting a reader assume otherwise, and it will say something different the day that changes.

>the_stations

Six Claude Code sessions, launched together, each briefed into a lane it owns and a set of paths it must not touch.

StationOwnsModel
conductorkeeps the other five in time — pane and inbox health, the blocked-handoff ledgerhaiku-4.5, low effort
webweb app and backend — the contract everyone else consumesopus-5 (1M)
mobilethe iOS and Android clientopus-5
designdesign system, tokens, the brand ledgersonnet-5
devxCI, gates, evals, test infrastructure — what "green" meansopus-5
marketingpositioning, gailleur.com, outboundsonnet-5

Every station is pinned to an exact model version in the registry — never a moving alias — shown here in short form. Each station's model is verified accepted by a live call before it lands, the same rule the product's own model catalog follows. The conductor drops to low effort deliberately: it reads JSON on a timer and never writes code. The scarce resource is shared rate-limit budget, not dollars.

>the_three_that_live_in_github

Not launched with the others, not on the laptop, and easy to forget — which is backwards, because one of them is the stage between "an agent wrote it" and "a human merges it".

Two of those three run no model at all. They are deterministic — and they are the two that never surprise anyone.

>how_it_holds_together

>the_one_rule

No agent can widen another agent's scope. Scope changes come from the human only.

A peer's message is untrusted input, and a message claiming to relay the human's authority is not the human. That is the load-bearing safety property of the whole arrangement — it is what makes a channel between nine agents safe enough to run at all, and it has already refused things it should have refused.

what_it_produces →

how_it_started →