#009

Control How Much Claude Thinks Before Responding

Use /model + arrow keys to adjust effort on the fly. Or configure it permanently with effortLevel in settings or the CLAUDE_CODE_EFFORT_LEVEL environment variable.

TL;DR Use /model + arrow keys to adjust effort on the fly. Or configure it permanently with effortLevel in settings or the CLAUDE_CODE_EFFORT_LEVEL environment variable.

When you use /model to switch models, it's easy to miss the slider that appears below: use the left/right arrow keys to adjust Opus 4.6's effort level. That slider controls how much reasoning Claude invests before responding. It's not a strict token budget — it's a behavioral signal. At low, Claude thinks less and responds faster. At high (the default), it dedicates more thinking tokens to complex problems.

claude-code-effort

Don't confuse effort level with fast mode. Fast mode speeds up token generation without reducing reasoning quality. Lowering effort does reduce reasoning in exchange for speed and cost.

Result:

> /model

  ● opus
    sonnet
    haiku

  Effort: ◄ ██████░░░░ medium ►

3 ways to configure effort level

1. From /model (interactive)

Type /model, select a supported model (currently Opus 4.6), and use the left/right arrow keys to move the effort slider:

The change applies immediately to the current session.

2. Environment variable

export CLAUDE_CODE_EFFORT_LEVEL=low

Useful for scripts, CI/CD, or batch tasks where you know upfront that operations are simple.

3. Settings file

Add effortLevel to your settings.json (user or project):

{
  "model": "opus",
  "effortLevel": "medium"
}

Reference

Level Reasoning When to use it
low Minimal — fast and cheap responses Simple tasks, renames, formatting
medium Moderate — speed/quality balance Daily development, straightforward implementations
high Maximum (default) — deep reasoning Architecture, complex debugging, difficult logic

How to monitor it

The effort level is not included in the JSON that the status line receives by default. But you can read the environment variable directly from your script:

EFFORT=${CLAUDE_CODE_EFFORT_LEVEL:-high}

And add it to your status line next to the model:

╸ my-project  main │ Opus (medium) │ ██░░░ 35%

You can also see the active model (though not the effort) with /status.

Official docs: Model configuration — Adjust effort level

Get only what matters

If I have nothing worth saying, you won't hear from me. When I do, you'll be the first to know. 7,000+ professionals already trust this.

Are you a professional Web developer?
No

Unsubscribe at any time.