Linux, the workhorse
A desktop, a spare box or a server in the corner. It usually carries the most lanes: web, API, services, anything that builds headless.
// hosts · lanes · the app · the hub
A farm is four things: the machines it runs on, the lanes that work your backlog on them, the app you answer it from, and an optional hub. Here is what each one does.
item #12filed by you
lanepicked up on a host
sessionits own Claude Code session
gateyour tests, re-run
mainpushed, verified
A host is a computer you already own, with the farm installed on it. It keeps your code, your git server and your tests where they are. Nothing on the build path goes through us.
A desktop, a spare box or a server in the corner. It usually carries the most lanes: web, API, services, anything that builds headless.
The only machine that can build, test and sign iOS and macOS apps. Items that need Xcode are filed for the Mac and wait for it.
For desktop software, installers and anything that has to be tested on Windows itself. Add it when you need it, and not before.
A lane is one project on one host. It reads your backlog in order, takes the next item it can work, and runs it to the end before it takes another. More lanes mean more items at once.
Every item says what to build and how the farm can tell it is done. That sentence is what the lane tests against, so it is the one part worth writing carefully.
The lane opens a Claude Code session of its own for the item, on its own branch and worktree, and lets it work unattended — day, night and while you sleep.
The lane re-runs your tests itself, and pushes to your main branch only what passes. An item that gets stuck stops and asks you, and the lane moves on to the next one.
Write an item on the train, see which lane picked it up, and read what landed while you were away. When a session is stuck and asks a question, you answer it from the app in a sentence and the item carries on.
At home the app talks to your farm directly, over your own network. From anywhere else it reaches it through the hub — the one part of the farm that needs one.
Your farm stands alone.
HUB OPTIONALHosts, lanes, sessions, tests and the commits on your main branch all work with the hub switched off. It is never on the build path, and your code never passes through it.
What the hub adds is reach: the app and any browser get to your farm from outside your network, and what the farm builds can be deployed automatically. Take it when you want to run your farm from the far side of the country, and leave it out when you do not.