At a glance
| Topic | Claude Code subagents | brindle |
|---|---|---|
| Parallel agents | ✓Subagents can spawn subagents: 3 layers by default, 20 at once. | ✓Workers run in parallel, up to a limit you set. |
| Picking models | ✓Each subagent can have its own model. | ✓Each task goes to a model sized for it. |
| Worktrees | ✓Opt-in with isolation: worktree, cut from the default branch. | ✓Every worker gets its own branch and worktree, cut from your branch. |
| Splitting the work | ✓The main conversation splits a task across subagents, which can split it further. | ✓A supervisor splits your goal into milestones with check commands, one worker and branch per task. |
| Review and merge | −You read the results and merge them yourself. | ✓Your checks, and a reviewer where required, gate every merge; it can be another model. |
| Done means | −You decide when it's done. Background subagents report a summary. | ✓Each milestone's check passes, then a goal audit. |
| Providers | −Runs inside Claude Code. | ✓Claude Code, Codex, Antigravity and open-weight models, routed by weight. |
| Limits and cost | −You cap turns per agent with maxTurns and watch total spend yourself. | ✓Cost per agent and history. Budgets per member on Team. |
| Usage limits | −A usage-limit error cuts a subagent off, and you restart it. | ✓Autopilot pauses Claude workers near your limit and restarts them when it resets. |
Left to youDoes it
Where Claude Code now overlaps
Claude Code's subagents can spawn subagents, on by default up to 3 layers below the main conversation (version 2.1.219 and later), and 20 can run at once by default. A single Claude Code session can fan a task out and gather the results without brindle.
If that is all you need, such as a research sweep or a quick set of independent edits you will read yourself, use it. It is the simplest option.
What the docs leave to you
The subagent docs we reviewed cover how work is spawned, and describe no merge or completion gate for the results. Isolation is opt-in: isolation: worktree branches from the default branch, not from the parent's HEAD, so a subagent doesn't start from your branch's unmerged work. Background subagents report a summary only. The limits are maxTurns and a model per agent, with no session budget or total-spawn cap.
brindle fills those gaps for the work that matters. Each task gets a branch and worktree cut from your branch. Review and your checks gate every merge. Milestone checks decide when a goal is done, and a goal audit compares the finished work to the original request. Workers can run on Claude Code, Codex, Antigravity or local models, with tasks routed by weight. Tokens and cost show per agent and in brindle history, and Team adds budgets per member. Close the chat and the session pauses, to resume later. Team and Enterprise add shared policy and audit records.
Using them together
This is not either/or. A worker running Claude Code can use subagents inside its own task. brindle's built-in subagent profile goes further: it gives a Claude Code supervisor brindle's worktree and branch handling for work done by its own Agent tool, with no separate process. The supervisor gets a worktree and a ready-made prompt, then records the outcome with complete_subagent. In the sidebar, Claude Code's own subagents show nested under the agent that started them, so you can see the whole tree.
When to choose each
Choose Claude Code subagents for contained jobs inside one session, where you will read the output yourself and a summary is enough.
Choose brindle when the work is long, spans several tasks, or must land safely: you want each task on its own branch, a reviewer and checks before every merge, milestones that define done, a mix of providers and models, a record of what it cost, or sessions you can pause and resume. It also fits teams that want budgets and policy.
Many people use both. Let subagents handle the fan-out inside a task, and let brindle own the branches, gates and history around it.
Sources
Claude Code details come from its documentation on subagents, including "Let subagents spawn their own subagents" and "Concurrent subagent limit". brindle's come from its homepage and docs on providers and configuration. Docs change, and prices are not compared.