I’ve been building this for months and just open sourced it today, figured this community would have the most relevant feedback. The problem Anthropic shipped Agent Teams for Claude Code recently. Cool feature, but it has two constraints that kept biting me: Tasks have to be file-disjoint. If two agents need to touch the same file, one has to wait. They use file locking to prevent conflicts. Agents say “done” when they’re not. You end up with half-wired code, unused imports, TODOs everywhere. I wanted something that actually solves both. How CAS works You give the supervisor an epic (“build the billing system”). It analyzes your codebase, breaks the work into tasks with dependencies and priorities, figures out what can run in parallel, and spawns workers. Each worker gets its own git worktree — a full copy of the repo on its own branch. Three agents can edit the same file at the same time. The supervisor merges everything back. No locks, no file-disjoint constraint. For inter-agent messaging, we reverse-engineered Claude Code’s Team feature and built a push-based SQLite message queue. The previous version literally injected raw bytes into a terminal multiplexer. It worked, barely. The MCP-based approach is way cleaner. The quality stuff that actually matters Every task gets a demo statement — a plain English description of the observable outcome (“User types query, results filter live”). This was the single biggest quality lever. Without it, agents build plumbing that never connects to anything visible. Workers self-verify before closing: no TODOs left, code is actually wired up, tests pass. Tasks go into pending_verification and agents can’t claim new work until it clears. Without this gate, you get the classic problem where an agent marks 8/8 tasks done and nothing works. What’s in it 235K lines of Rust, 17 crates, MIT licensed TUI with side-by-side/tabbed views, session recording/playback, detach/reattach Terminal emulation via a custom VT parser based on Ghostty’s Lease-based task claiming with heartbeats to prevent double-claiming Also runs as an MCP server (55+ tools) for persistent context between sessions 4-tier memory system inspired by MemGPT Full-text search via Tantivy BM25, everything local in SQLite What’s still hard Agent coordination is a distributed systems problem wearing a trenchcoat. Stale leases, zombie worktrees, agents that confidently lie about completion. We’ve added heartbeats, verification gates, and lease expiry, but supervisor quality still varies with epic complexity. This is an ongoing arms race, not a solved problem. Getting started curl -fsSL https://cas.dev/install.sh | sh cas init --yes && cas Runs 100% locally, your code never leaves your machine. GitHub: https://github.com/codingagentsystem/cas Site: https://cas.dev/ Happy to answer questions. Especially interested in hearing from people who’ve hit the same file-conflict and quality problems with multi-agent setups. submitted by /u/aceelric
Originally posted by u/aceelric on r/ClaudeCode
