Problem
The thinking effort level (Low / Medium / Max) resets to Medium every time Claude Code starts. Users who consistently prefer Max effort have to open /model and adjust it at the beginning of every session.
Proposed Solution
Add an effortLevel key to settings.json (or settings.local.json) that persists the default effort level across sessions:
{
"effortLevel": "high"
}
Accepted values: low, medium, high (matching the internal representation).
Alternatively, a CLI flag like --effort high would also work, especially for users who want per-project defaults via shell aliases.
Motivation
For users working on complex codebases (e.g., hardware design, compiler work), Max effort is almost always the right choice. Having to re-select it every session is unnecessary friction, especially since model selection already persists.
Problem
The thinking effort level (Low / Medium / Max) resets to Medium every time Claude Code starts. Users who consistently prefer Max effort have to open
/modeland adjust it at the beginning of every session.Proposed Solution
Add an
effortLevelkey tosettings.json(orsettings.local.json) that persists the default effort level across sessions:{ "effortLevel": "high" }Accepted values:
low,medium,high(matching the internal representation).Alternatively, a CLI flag like
--effort highwould also work, especially for users who want per-project defaults via shell aliases.Motivation
For users working on complex codebases (e.g., hardware design, compiler work), Max effort is almost always the right choice. Having to re-select it every session is unnecessary friction, especially since model selection already persists.