model-and-effort-selection
The two dials claude-code exposes for “make the answer better”, and how to reason about them — from 2026-07-12-claude-model-effort-level (Lydia Hallie, Claude Code team):
- Model setting = which set of frozen weights handles the request. Sets the capability range (what’s in the weights is fixed at training; context can steer but never teach) and the per-token price. Does not decide how many tokens get generated.
- Effort level = how much work Claude does per turn. More than thinking time: how many files it reads, how much it verifies, how far it pushes through multi-step work before checking back in. Sent with the request; the per-level behavior was trained into the weights and is reconsidered every turn. At low effort Claude would rather ask you than spend tokens figuring something out.
Compressed: model ≈ how capable; effort ≈ how thorough. Most real tasks need some of both.
The failure-triage heuristic
When Claude gets it wrong, step zero is upstream of both dials: examine the context you provided (vague prompt? wrong tools? missing skills? task scoping?). Then:
| Symptom | Diagnosis | Fix |
|---|---|---|
| Skipped a file, didn’t run tests, bailed on a refactor partway | Didn’t try hard enough | Raise effort (most relevant if you were below the model’s default) |
| Had all pertinent context, clearly tried, still confidently wrong | Didn’t know enough | Larger model |
| Work has been routine for a while on the large model | Paying for unneeded capability | Drop down — faster, cheaper, same quality |
Default effort is the recommended setting for most tasks; treat effort as a general preference by work-type, not a per-task knob.
The specialist / expert / generalist mnemonic
Fable is a specialist who’s seen problems almost no one else has — even at low effort it glances at the stuck problem and spots the thing no one else would; that recognition is what you pay the most for, so save it for tasks that need it. Opus is the expert — low effort buys five minutes with deep pattern knowledge that isn’t in your codebase, but only a quick read of your code. Sonnet is a really good generalist — high effort buys the whole afternoon: reads everything, runs things, ends up understanding your specific code thoroughly, with less “I’ve seen exactly this before” recognition.
Token economics
- Routine tasks: curves converge. Both models clear the bar almost immediately; the larger one just double-checks at a higher per-token price. Dropping down saves real money at no quality cost.
- Hard multi-step tasks: curves diverge. The smaller model grinds toward the limit of its ability, burning iterations; the larger reaches the bar in fewer steps — total cost per task can come out lower despite the per-token premium. Fable pulls furthest ahead on long multi-step work, finishing jobs the others can’t reach at any effort level.
- Effort shapes consumption but doesn’t cap it. Effort picks how far along the quality-vs-tokens curve Claude is willing to travel — a spending disposition, not a token target. The only hard cap is
max_tokens(blunt, mid-stream truncation); task budgets and “keep it brief” are advisory guidance the model is trained to conclude near, not a wall.
Model and effort are called “among the biggest levers on what a loop costs” in the companion loop post (2026-07-12-loop-engineering-getting-started) — routing routines to smaller/faster models and saving the most capable model for judgment calls is the loop-engineering version of the same discipline.
Relation to reasoning models
Effort is the user-facing dial over the disposition reasoning-models describes RL installing: the model learned when to spend inference compute, and effort biases that learned allocation policy rather than setting a budget. Consistent with that page’s “overthinking degrades effectiveness” concern — Anthropic reports tuning against artificial usage inflation at high effort during training (2026-07-12-claude-model-effort-level).
Cross-links
- context-engineering — “steering, not teaching” is the mechanism-level ground truth under that discipline; also triage step zero (fix the input) lives there.
- pretraining — where the frozen weights’ knowledge floor is set; a library that postdates training isn’t in the weights, only in context.
- agent-loop — thinking, tool calls, and text-to-you are all ordinary output tokens from the same loop; effort scales how many of them a turn produces.