Arrange agents.
Ship verified work.

Build a team of AI coding agents the way you'd build a real one: managers who split the work, workers who do it, reviewers who check it. You give the top agent one goal and a definition of done. Nothing counts as done until the checks pass.

curl -fsSL https://raw.githubusercontent.com/arranger-dev/arranger/main/install.sh | sh
subgoal + check subgoal + check verified, merged reviewed, merged Architectmanager · claude npm run e2e:billing Billing APImanager · claude go test ./billing/... Checkout pagecoder · codex npm test checkout Security reviewreviewer · claudereviews every diff Webhookscoder · claude go test ./webhooks/... Plans & pricescoder · codex go test ./plans/... DB migrationcoder · opencode make migrate-check
Example goal: “Customers can subscribe to a plan and are billed monthly.” Each agent has a check, and it isn't done until that check passes.
a manager hands down a subgoal with its own checks work that passed its checks and review is merged back up
Each agent works on its own git branch, so siblings run in parallel without touching each other's files.
why a hierarchy

Orchestration you don't have to babysit

One agent with one huge prompt drifts, forgets and claims success. A team with small, checked goals doesn't, because each layer only has to get one thing right and prove it.

One goal in, a plan out

You describe the outcome once. A manager splits it into one subgoal per team member, and every subgoal must come with a shell check or the plan is rejected.

Parallel and isolated

Every agent gets its own git worktree and branch. Siblings work at the same time, and nobody overwrites anybody else. Your own branch is never touched.

Checks decide "done", not the agent

Arranger runs the checks itself after each attempt. Failures go back to the agent with the exact output, up to three tries, then it stops and tells you.

Review before anything merges

Managers read each child's diff and accept it or send it back with feedback. Only work that passed both checks and review flows up, so one agent's mistake doesn't spread to the rest.

Small contexts, fewer hallucinations

Each worker sees its own goal, its manager's goal and nothing else. Short, focused prompts are where agents are most reliable.

You stay in control

Live logs and status for every agent, a diff per agent, remove or promote single changes, revert any checkpoint, token limits per agent, and one-click merge into the branch you choose.

how it works

From goal to merged branch

  1. Arrange

    Drag agents into a tree. Pick a tool for each one and save the team as a project on your repo.

  2. Set the goal

    Give the top agent the outcome, acceptance criteria, and checks like go test ./....

  3. Run

    Managers plan, workers build, checks gate, reviewers accept or send work back. Watch it live.

  4. Merge

    Review the final diff, drop what you don't want, and merge into main or any branch.

bring your own agents

Mix any agent CLI in one team

Use the best tool for each role, or compare them side by side. Arranger drives them headlessly and reads their output live.

claudecodexgeminipiopencodecursorampany command

Open source, runs on your machine

A single Go binary with an embedded UI and a SQLite file. No cloud account, and your code stays local.

Star on GitHub