The Claude Code Team on Two Knobs: One for What It Can Do, One for How Hard It Tries
- On July 8, 2026, Anthropic's developer account @ClaudeDevs published a long post by Claude Code team member Lydia Hallie (@lydiahallie).
- `effort` controls how much total work Claude does for a given task: how much it thinks, how many files it reads, how many tests it runs, how much it validates, and how far it pushes in a multi-step process before asking for more information. The API typically offers five levels: low / medium / high / xhigh / max. For most tasks, the model's default setting is sufficient.
- The model setting determines which set of pre-trained, frozen weights to use, i.e., "what it knows." `effort` determines "how thoroughly it works." If it gives a wrong answer, first check the context, then ask: was it because it "didn't know" or "didn't try hard enough"?
- An analogy: Fable is like a specialist, Opus is like an expert, and Sonnet is like a reliable general practitioner. `effort` is how much time they're willing to spend on your case.
- For simple tasks, larger models are more expensive. For complex, multi-step tasks, larger models can sometimes have a lower total cost and can complete work that smaller models cannot. In tests, the default `effort` for Opus 4.8 used a similar number of tokens as the default for 4.7, but achieved better results.
Two Knobs That Seem to "Improve the Answer"
On July 8, 2026, Anthropic's developer account, @ClaudeDevs, published a long-form article on Claude Code, written by team member Lydia Hallie.
What is `effort`: How Thoroughly the Same Model Works on a Task
In Claude Code, `effort` is a setting alongside model selection. It doesn't change "what the model knows," but rather tells the same model how much work it should put in before delivering the result. A common misconception is to see `effort` as just "thinking longer"; in reality, it governs the thoroughness of the entire job.
The original article is blunt: `effort` controls how much total work Claude does for a given request. This includes not just how long it thinks, but also:
Whether to open multiple source code, config, or log files, or just look at the snippets you've pasted in the chat.
Whether to run tests after a change, double-check its conclusions, or take another look at edge cases on its own.
How far it proceeds in a multi-step task before stopping to ask you for more context.
Whether to write a plan first, how detailed that plan is, and whether to perform an extra validation step after finding a solution.
In the API documentation, `effort` is a behavioral signal, not a hard token limit. At a low setting, it might still think when faced with a real challenge, but it will "think less and do less" on the same problem compared to a high setting. The official documentation lists roughly five levels from frugal to intensive. (In the Claude Code UI, you might also see entries like 'ultracode' tied to multi-agent permissions; this is a product-side combination, not an extra API level name).