fassi.dev
Back to projects
2026Open source · v0.1.0

Squad Code MCP

Run Claude Code sessions as a squad of mother, leader, workers and judge over a shared MCP broker, with a terminal UI to watch them work and answer their questions.

Problem

Running several Claude Code sessions on one feature meant being the router myself. I copied context between terminals, answered the same question twice and lost track of who was doing what. Nothing kept the sessions in their roles, and nothing recorded what had happened.

Solution

An MCP broker, forked from claude-peers, that every session joins with a name and a role. Messages flow in a star: the mother talks to me, the leader cuts the spec into tickets, each worker takes one ticket in its own git worktree, and the judge approves the delivery or sends it back for rework. The broker is the only writer of state, and it keeps an append-only event log. Questions go up the chain, and each level tries to answer before it escalates. A separate TUI reads the log, and through it I answer questions and approve gates.

Result

A two-ticket feature went from kickoff to approved delivery using only the mother’s terminal and the TUI, checked with real sessions. Each role gets its skills from one JSON file, and squad start <role> launches a session with its name, its worktree and its permissions. Questions and irreversible actions now wait for me in one place instead of being spread across four terminals.

How it works

  1. 01Running 'squad start' launches each session with a role, its own worktree and its base skills
  2. 02The mother opens a feature and the leader cuts it into tickets
  3. 03Workers implement one ticket each and send the result to the judge
  4. 04Questions climb worker → leader → mother → me, and each level answers what it can
  5. 05The mother stops at a gate before the final delivery, and I approve it in the TUI

Built with

MCPClaude CodeBunTypeScriptSQLiteGit worktreesTUI