Spool is a management layer that runs persistent Claude Code "loops" - independent agent instances that wake, work, coordinate and accept human input through a web control room, Telegram or Slack. It keeps loops resumable and schedulable (default 30m ticks, configurable next-wake trailers), lets loops send addressed messages to a fleet channel or to each other, and records turn-by-turn timelines and spend so you can see per-turn and per-day cost. Loops run in isolated containers by default with an egress allowlist and sealed secrets; uncontained "bare" runtime runs are explicit and marked. Plan guardrails monitor Claude plan windows and sleep loops when thresholds are reached, and a sender allowlist restricts who can message bots. Loop-to-loop chains include storm guards and final-turn replies persist as status notes.
Under the hood each loop is a claude subprocess speaking stream-json over stdin/stdout, so normal Claude Code login, plan and session limits apply (no API keys required). Quick start needs Docker, Go 1.25+, Node, and a Claude subscription token; build with git clone && make build image, run ./bin/spool, sign in to the control room on :8080 and attach bots. Releases will include built binaries/images; operations docs cover server deployment, TLS and backups. Development helpers (make dev, ui-dev, test, itest) and runtime flags (listen, data-dir, runtime, mcp-listen) let operators customize behavior. The project is pre-1.0 and actively developed with loops contributing to its own code and CI workflow.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.