Branchlanes

One goal, a crew of agents: how Branchlanes plans dependent tasks

You give Branchlanes one goal. Branchlanes turns it into a plan: a set of tasks, where each task can depend on others. A task that needs another task’s result waits for it. Tasks that do not depend on each other can run at the same time.

From plan to crew

Each task is handed to an agent that works in its own sandbox. The group of agents working on a goal is the crew. By default the crew runs three agents at once.

Parallel without collisions

Running agents in parallel is only useful if they do not step on each other. Branchlanes applies a file-disjoint rule: two tasks that touch the same files are not run at the same time. Independent work goes in parallel, overlapping work goes in order.

Tests are the gate

A finished task does not go straight to your main branch. It joins a queue, and a gate status has to pass before the change lands. If the gate fails, the change does not land.

Built with itself

Branchlanes is used to build Branchlanes. Its own goals land their tasks in its own repository through the same plan, crew and gate.