Overview
Run several Claude Code sessions on one problem, coordinated through a shared working memory. One planner you talk to, coders that pick work up, a runner that verifies.
The Agent Orchestrator turns parallel Claude Code sessions into a team. You talk to a planner. The planner files tasks on a shared board. Coder sessions claim tasks, do the work, and send it to review. A runner session verifies each change and either closes it or bounces it back with feedback. You watch all of it on a live terminal board, and you only get pulled in when a session actually needs you.
It ships in aisquare-cli
and works with a single Claude account: sessions are per terminal, not per
account.
Seventeen seconds of a real execution: five sessions (two coders working, a planner and runner asking for the owner), a review wave moving through the task table, and the feed narrating claims, results, and one finished task.
How it works
Three planes, one CLI:
The board. A shared SQLite store on your machine. Sessions register automatically through Claude Code hooks, heartbeat on every prompt, and receive a compact delta of what teammates did since their last turn. Repos that never opt in never see any of it.
The live board. aisquare board -w is the cockpit: live session states
(working, waiting for input, needs you), the task table with dependencies, the
event feed, and a detail bar. Everything the team does is attributed and
timestamped, and you can jump from any event to the session transcript at that
exact moment.
The bridges. An MCP server (aisquare serve) lets remote Claude clients
(for example a browser-testing agent in the Claude desktop app) join the same
board as attributed teammates. A background distiller (powered by the optional
AISquare gbrain CLI) banks durable knowledge (decisions, results, task
outcomes) into a per-project brain that aisquare recall searches later.
What makes it safe to rely on
- Idempotent tasks. Adding the same task twice returns the original, so a planner can re-emit its plan freely and nothing duplicates.
- Atomic claims. When two coders reach for the same task, exactly one wins; the other just gets the next ready task. Claims carry leases, so a crashed session's work returns to the pool by itself.
- Fail-open hooks. Every hook swallows its own failures and exits cleanly. A broken orchestrator can never break a Claude session.
- Explicit opt-in. A repo joins the orchestrator only when you launch a
session with a role or run
aisquare team onthere.