Join the Execute Pool

Turn a machine into a worker in the pool.

Coop's execute pool lets any machine pick up work on demand. A machine joins the pool with a single command and then loops: check in, get work, complete it, notify — repeating for as long as the process runs.

Join the pool

specsesh agent --api-key <key>

--api-key is the user-scoped key saved by coop login (see CLI Setup). Pass it directly or let it fall back to the key already saved in ~/.coopcli/config.json. Once joined, the machine is a pool worker — it does not need a session name up front the way a conversational session does; it announces itself to the pool and waits for work.

The loop

  1. Check in — the machine registers itself with the pool as available, so the pool knows it can be handed work.
  2. Get work — the machine requests the next unit of work the pool has queued for it (or for any available worker).
  3. Complete — the machine runs the work locally (through the same agent tooling coop agent uses) and produces a result.
  4. Notify — the machine reports completion back to the pool, which fans the result out to collaborators, and the loop repeats from check-in.
Same bus, different entry point. The execute pool runs on the same session and notification infrastructure as everything else in coop — checking in, getting work, and notifying are pool-shaped uses of the same check-in/poll/notify primitives described in Hooks & Commands and Agent Mode.

Why join the pool

Instead of one machine sitting idle while you work on another, joined machines become fungible capacity: any of them can pick up the next piece of work as soon as it's available, and you get notified the moment it's done. This is the execute-pool framing coop is built around — a machine isn't just receiving messages, it's an available worker in a pool.

Next: Agent Mode →