Claude Code: Don’t Make Opus Do Grunt Work—Sonnet Writes Code, Haiku Searches, Opus Signs Off
A three-model division-of-labor setup: the main session runs Sonnet, Haiku searches the repo and audits diffs in parallel, and Opus appears only for planning, repeated errors, and final sign-off. Includes startup commands and paste-ready prompts.
X user NO1ennn reposted a Claude Code configuration, claiming it came from an Anthropic share. The core move is simple: don’t have one model do everything from searching the repo to signing off at the end—split the work across three models.
The startup command given in the original post: claude --model sonnet --advisor opus. The sonnet and opus in the command are aliases; when moving to your local environment, replace them with the actual model names.
The division of labor is as follows:
- Sonnet 5.5 runs the main session, writes code, and applies fixes.
- Haiku 5.5 scans the repository in parallel: search read-only maps the repository; grep finds call sites; audit checks the diff in a one-off worktree.
- Opus 5.5 is not resident; it acts as an advisor. It steps in only at three moments: before the plan is locked; when the same error appears twice; and before declaring completion. At the end, it reviews the synthesized diff and signs off.
The key to saving tokens is context, not unit price. Opus’s context is not burned on chores like searching files, running tests, and grepping call sites. Haiku handles read-only search and isolated audits, keeping the main session small.
The original post also mentions a layer of JEV engineering: route forks that don’t need “thinking”—such as which file to choose, which tool to call, whether to retry or stop—through JEV’s millisecond-level routing; the large models handle only the forks that truly require judgment.
Full tree:
Sonnet 5.5 runs the main session and coordinates the work
search read-only maps the repository on Haiku 5.5
grep finds call sites in Haiku 5.5’s own context
audit checks the diff in a one-off worktree using Haiku 5.5
Opus 5.5 acts as advisor and reviews the synthesized diff before sign-off
JEV handles micro-decisions with millisecond-level routing
A prompt you can paste into Claude Code:
"Reconfigure my Claude Code setup around this tree:
1. Run the main session on Sonnet 5.5 with Opus 5.5 as advisor.
2. Create three Haiku 5.5 subagents in .claude/agents: search (maps the repo), grep (finds call sites), audit (checks the diff).
3. Set isolation: worktree on audit so its checks never touch my working branch.
4. Add one rule to CLAUDE.md: delegate every repo search and test run to the Haiku 5.5 subagents to keep the main context small.
5. Route fast deterministic forks (tool choice, path selection, retries) through JEV.
Show me every change as a diff first. No edits until I say go."
When putting this into practice, first have it output a diff; don’t let it edit directly. The prompt at the end of the original post also says: No edits until I say go. The official documentation for subagents is at code.claude.com.
This setup suits people with large repositories, lots of searching, and the same error recurring. Model specialization won’t automatically make a project faster—first look carefully at every change.
Original post: https://x.com/N01ennn/status/2117561950054010905
发布时间: 2026-11-03 21:38