modelSettings.<model>.effortLevel is written and read behind a flag falling back to false.
Any settings layer can set modelSettings.<model>.effortLevel, which overrides the top-level effortLevel for that one model, with model ids normalised before lookup. Saving effort to user settings writes both the top-level key and the per-model entry. The lookup is gated on tengu_russet_plover, which falls back to false, so absent a server value the per-model table stays empty and effort behaves exactly as before.
- Session effort is now a tagged value: an explicit level, the default, or inherited.
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
tengu_russet_plover Off in both readingsThe flag server returned off for the account this site reads and for the anonymous baseline. A reading of off cannot rule out a rollout these two readings sit outside of.
This account: off · anonymous baseline: off · compiled default in v2.1.239: off
Read once, for one account on one subscription tier, against v2.1.239. It isn't a statement about your account. What a flag value here can and cannot tell you
The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.
The effort level the default model (the first `inferenceModels` entry, or the first model your endpoint returns under discovery) starts at in Chat, Cowork and Code, in place of Anthropic's recommended level for that model: one of `low`, `m…third-party/claude-desktop/configuration see the edit
| `--effort` | Set the [effort level](/docs/en/model-config#adjust-effort-level) for the current session. Options: `low`, `medium`, `high`, `xhigh`, `max`, or `ultracode`. Available levels depend on the model. `ultracode` requests `xhigh` …cli-reference see the edit
`effortLevel` accepts an [effort level](/docs/en/model-config#adjust-effort-level) name. It also accepts `"ultracode"`, which requests `xhigh` effort with [ultracode](/docs/en/workflows#let-claude-decide-with-ultracode) on. `applyFlagSetti…agent-sdk/typescript see the edit
A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.
A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.
A small documentation edit on Agent SDK reference - TypeScript touched a line naming effortLevel after this was published.
New in this build: modelSettings