Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Split the Plan/Act/Verify loop across three model tiers — frontier planner, cheap executor, frontier judge — via env vars read by run.sh.
.claude/skills/archive228-model-routing/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 42% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -52% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -22% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -63% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -47% | 0% |
run.sh reads three optional env vars and threads them into each claude invocation as --model. All default to unset, in which case the CLI default model is used (behaviour unchanged from a bare run).
CLAUDE_PLANNER_MODEL — reserved for /spec workflows that draft PROMPT.md up front. Not read by the current run.sh loop, but claimed here so future planner passes bind to it.CLAUDE_EXECUTOR_MODEL — used on the "do the next step" call. This is the workhorse; it runs on every iteration. Pick something cheap and fast.CLAUDE_JUDGE_MODEL — used on the /verify call. Runs once per iteration to adversarially check the executor's diff. Pick a frontier model — a weak judge is worse than no judge.planner = frontier (Opus-class, runs once at /spec time)
executor = cheap-fast (Haiku-class, runs every turn)
judge = frontier (Opus-class, runs every turn but on a small diff)bashexport CLAUDE_PLANNER_MODEL="claude-opus-4-7" export CLAUDE_EXECUTOR_MODEL="claude-haiku-4-7" export CLAUDE_JUDGE_MODEL="claude-opus-4-7" ./run.sh
A cheap executor paired with a frontier judge outperforms a frontier executor with no judge on long loops. The judge catches the executor's premature-victory claims that a mono-model run rationalises away when it runs out of context. Cost stays low because the judge only sees the diff, not the working history.
Other measured skills in the registry, with their headline benchmark lift.