Angy is a fleet manager, scheduler and IDE for Claude Code agents. It spawns each specialist as a separate claude CLI process, orchestrates them through a multi-phase pipeline, and ships verified code — with dependency graphs, adversarial counterparts, and git worktree isolation.
macOS note: After downloading, macOS may block the app because it is not notarized. Run this in Terminal to fix it:
xattr -cr ~/Downloads/angy_*.dmg
Most AI coding tools give you one agent and one chat. Angy wraps the Claude Code CLI — each agent is a separate claude process with streaming JSON I/O, managed by a coded state machine that dispatches multi-phase pipelines with adversarial verification at every stage.
A coded state machine that drives Plan → Incremental Build → Integration Review → Final Testing. No LLM decides what happens next — the pipeline is deterministic.
A persistent counterpart agent independently verifies plans and reviews code. It challenges the architect, audits the builder, and blocks approval until every claim checks out.
Chain epics with dependsOn for prerequisite gates, or runAfter for sequential continuation with branch inheritance. The scheduler respects the full dependency graph.
Each epic runs in an isolated git worktree, bypassing repo locks so multiple epics can build on the same repository in parallel without branch conflicts.
Angy was born from a simple frustration: existing AI coding tools could generate impressive-looking code, but the results rarely worked end-to-end without significant manual intervention. We wanted a tool that could build an entire product autonomously — from specification to a running application — with the most accurate results possible.
Single-pass code generation breaks down when subsystems need to talk to each other. A beautifully architected state machine that is never connected to the HTTP layer, a schema mismatch between frontend and backend, a Docker config that references the wrong hostname — these are the bugs that only surface when the full stack runs together. Angy's multi-agent pipeline with adversarial verification and iterative build-test cycles catches these integration failures before delivery.
We tested Angy against Cursor and Claude Code on a deliberately hard full-stack specification — 12 database tables, a 7-state machine, WebSocket pipelines, and 25+ API endpoints. Angy v2 was the only implementation to pass the docker compose up benchmark without a single manual code fix, with ~9 of 10 pages functional after seeding.
The core of Angy is the PipelineRunner — a TypeScript state machine that drives multi-agent builds incrementally, with verification gates at every step. Instead of building everything at once and testing at the end, it splits work into sequential increments and verifies each one before starting the next.
When you build 50 files at once, a wrong field name in the data model cascades into broken APIs and a broken frontend. With incremental builds, errors are caught before anyone builds on top of them. The blast radius is one increment deep.
The pipeline is a coded TypeScript state machine — no LLM decides what step comes next. Each agent is a claude CLI process spawned via Tauri's shell plugin with --input-format stream-json / --output-format stream-json. Structured JSON schema extraction drives verdicts, increment plans, and test results.
Pipeline depth adapts to epic complexity. Trivial epics skip the architect and counterpart entirely. Large/epic complexity gets 3 architect turns, a persistent counterpart, and an optional design system phase. Medium sits in between.
The counterpart is a persistent agent that acts as an adversarial reviewer throughout the entire pipeline. It independently verifies claims, runs code, and blocks approval until every issue is resolved.
Each agent is a Claude subprocess with a defined role, scoped tool access, and clear deliverables. They collaborate on a shared epic branch without stepping on each other.
Read-only analysis. Designs the solution, decomposes it into increments, and defines file ownership. Has access to Read, Glob, and Grep.
Implements code per the plan. Fresh builder per increment — scoped context, no drift. Has Bash, Read, Edit, Write, Glob, Grep.
Adversarial reviewer with full tool access. Independently verifies claims, finds flaws, and can fix bugs directly. Persistent across the pipeline.
Builds the project, runs tests, performs smoke tests and e2e verification. Validates each increment and runs final integration tests.
Epics aren't isolated units — they form directed graphs of prerequisites and sequential continuations. The scheduler traverses the full dependency tree before dispatching any epic.
Done. DFS traversal detects and prevents circular dependencies.Review or Done. The successor inherits the predecessor's branch and worktree.runAfter, the successor reuses the same epic branch and worktree directory, building directly on top of the predecessor's code.runAfter successor exists. Cleanup only happens when the last epic in the chain completes.
Instead of checking out branches in the main repository (which locks it for one epic at a time), worktree mode creates isolated working directories so multiple epics can build on the same repo simultaneously.
.angy-worktrees/<epic-slug>reconcileWorktrees().git/info/exclude to keep the repo cleanrunAfter successors inherit the worktree path, continuing in the same directory
A background engine that continuously scores, prioritizes, and dispatches epics across projects — ticking every 30 seconds. It enforces concurrency limits, respects dependency graphs, manages repo locks, and tracks API cost budgets.
dependsOn graphs and runAfter chains. Circular deps detected and blockedcost_log table. Scheduling pauses when exceededPipelineStateStore
Not every epic needs a full build. Angy routes each epic through the right pipeline based on its type and history.
Track every epic as it flows through the pipeline — Idea, Todo, In Progress, Review, Done. Multiple repositories, independent branches, unified dashboard.
Every agent session has its own chat panel, Monaco code editor, and Xterm.js terminal. Stream agent output as it happens or come back when the Review column fills up.
Angy is open source and free to self-host. Clone the repo, configure your Claude Code CLI key, and run your first epic in minutes.
View on GitHub