Loop protocol

One root, a board and parallel lanes

A loop is one long-lived agent session, the root, working a Backlog board through parallel lanes. It starts from a short frozen charter, gives each task to a lane in its own git worktree, lands what passes a composed gate, and stops only when it has written a closeout the next loop starts from.

This section is how I build software with agents, written so a teammate can copy it. Start with the four pages below in order: the tools, the setup, how a change is proven and a week of real runs. The protocol pages are the text every root and lane follows, and the articles cover why it's built this way.

Protocol
Loop v3
Runs on
Claude Code, pi, Codex
At a glance: a loop is one long-lived root session working a living queue of Backlog tasks through parallel lanes, from a frozen charter to a closeout the next loop starts from. Before launch, the charter: frozen, at most 8 KB, every choice the first wave needs asked once, a first wave of up to about 20 small tasks. While it runs, QUEUE.md, LANES.md and DECISIONS.md: one lane, one task, one worktree; lanes hand back uncommitted candidates; only the root pushes, after a green composed gate. At close, the closeout with Landed, Parked, For ratification and Notes; the next loop starts from Parked and For ratification. Questions never stop the run, and overnight mode asks nothing.

Start here

The protocol

Why it's built this way

The protocol

The pieces around it

Other harnesses

Background