Keelson Rib · Swarm
One agent investigates one line of inquiry at a time. When a problem has three plausible causes, you either wait for it to work through them in turn, or you start three sessions and carry findings between them by hand.
Swarm adds agent swarms to Keelson. A lead agent breaks a task down and spawns workers as lines of inquiry open up. Each agent is a real ClickClack bot, and they talk in a channel you can read and post in. A dispatcher wakes an agent only when a message addresses it, so the swarm spends turns on purpose and stays quiet otherwise.
Use a swarm to investigate: find why a build is slow, review a change from several angles, work out which of a dozen issues share a root cause. By default swarm agents can talk and, at most, read a project checkout. They cannot edit files, run a shell, or reach a forge, and no prompt can grant that. A write swarm is the exception you opt into: its lead spawns writers that change code in their own worktrees and open draft pull requests. What they need from outside the checkout, you hand them as task context.
Routing decides who wakes. Budgets decide when it stops. Task context is the evidence agents read in place of a forge.
Swarm is a Keelson rib: it installs into the harness you already run and reuses what the harness owns (provider routing, agent turns, and the durable op registry), so a swarm can be polled, steered, and cancelled like any other run. Everything here is what Swarm adds.