Claude Code ultrathink Now Raises a Turn to xhigh Effort

TL;DR
Since Claude Code 2.1.311, typing ultrathink runs that turn at xhigh effort on Opus 5.5, Sonnet 5.5, Haiku 5.5 and Fable 5.1. When it works, when it does not, and caps.
Last updated: October 27, 2026
In Claude Code 2.1.311 and later, typing ultrathink in the terminal prompt can raise that turn to xhigh effort, not just add an instruction to think harder. It works on Opus 5.5, Sonnet 5.5, Haiku 5.5 and Fable 5.1 through Anthropic's API, and the word turns rainbow-colored when it will take effect. Your saved effort setting does not change, so the next turn goes back to your normal level. Until this release, ultrathink only added an in-context instruction, and the effort level sent to the API stayed the same.
That last point matters if you read our ultracode explainer, which described the old behavior. The effort levels guide covers what xhigh itself does.
What changed#
The Claude Code changelog for 2.1.311 has two lines on it:
- "Changed
ultrathinkin the interactive terminal to run its turn at xhigh effort on Opus 5.5, Sonnet 5.5, Haiku 5.5 and Fable 5.1 through Anthropic's API; typed while Claude is working, it raises the rest of that turn" - "Changed the
ultrathinkrainbow to appear only where the keyword can raise effort, and not when the word is quoted or part of a file path"
The model configuration docs now say the same thing. ultrathink still adds its in-context instruction, and "typed in the terminal prompt, the word can also raise that turn to xhigh effort. When it can, the word shows in rainbow colors. Requires Claude Code v2.1.311 or later."
%% title: Does ultrathink raise this turn to xhigh in Claude Code 2.1.311
flowchart TD
A["You type ultrathink in the terminal prompt"] --> B{"Outside quotes, brackets, a path or a command, and the prompt does not start with /?"}
B -->|"No"| X["Instruction only, effort unchanged"]
B -->|"Yes"| C{"Opus 5.5, Sonnet 5.5, Haiku 5.5 or Fable 5.1 on Anthropic's API?"}
C -->|"No, e.g. Bedrock"| X
C -->|"Yes"| D{"CLAUDE_CODE_EFFORT_LEVEL, maxEffortLevel or an org cap below xhigh?"}
D -->|"Yes"| X
D -->|"No"| E["Word turns rainbow, turn runs at xhigh"]When it works#
The rainbow is the signal. The docs say the word shows in color only where it can raise the turn, so check for it before you send. If it stays plain, the docs list three fixes:
- Retype it in a plain spot. Keep it outside quotes, brackets, a path or a command, in a prompt that doesn't start with
/."ultrathink"in quotes, orsrc/ultrathink.ts, does not count. That is deliberate: the word in a file path shouldn't change what you pay for a turn. - Remove a lower cap. Unset
CLAUDE_CODE_EFFORT_LEVELif it's set belowxhigh, raise your ownmaxEffortLeveltoxhighor above, or ask an organization admin to raise your organization's limit. On Claude Enterprise, admins can set a per-model effort cap for each custom role, and themaxEffortLevelmanaged setting caps effort on any plan. When both apply, the lower cap wins. - Switch models. Run
/modeland pick Opus 5.5, Sonnet 5.5, Haiku 5.5 or Fable 5.1. Where the word can't raise a turn, such as on Amazon Bedrock, set the effort level directly instead.
What it means in practice#
One turn of xhigh, without saving it. If you use /effort xhigh, the level persists, saved per model, until you change it. ultrathink gives you one deep turn and drops back. That makes it the right tool for the occasional hard question in a session you otherwise keep at the cheaper default. Opus 5.5, Sonnet 5.5 and Haiku 5.5 default to medium, per the docs.
It now costs more. Higher effort means more reasoning tokens on that turn. Before 2.1.311 the keyword only nudged the model through the prompt. Now it changes the effort level on the request. If you have a habit, or a saved prompt snippet, that starts every message with ultrathink, you are now running every one of those turns at xhigh.
Mid-turn upgrades. Typed while Claude is already working, the word raises the rest of the current turn. Use it when a task turns out harder than it looked, rather than stopping and re-prompting.
Fallbacks keep it. The docs' fallback rules say that if you raised a flagged turn with ultrathink, that level applies to that turn after an automatic model fallback. Later turns go back to the normal resolution order.
ultrathink vs xhigh vs ultracode#
| What it does | Lasts | |
|---|---|---|
ultrathink | Adds a deeper-reasoning instruction. Since 2.1.311, can also run the turn at xhigh on supported models | One turn |
/effort xhigh | Sets the effort level, saved per model with Enter, or for this session only with s | Until you change it |
| Ultracode | Has Claude orchestrate dynamic workflows at whatever effort the session runs at. --effort ultracode also sets xhigh | Session or setting |
The full ultracode picture, including the toggle in the /effort slider, is in our ultracode explainer.
Gotchas#
Only the interactive terminal. The changelog scopes the effort raise to the interactive terminal, and the docs to the terminal prompt.
Third-party providers are out. The changelog says "through Anthropic's API", and the docs name Bedrock as a case where the word can't raise a turn. On Bedrock, Google Cloud or Foundry, set the level with /effort for the turns that need it.
Caps win. An organization or managed maxEffortLevel below xhigh stops the raise. That is the intended way for an org to keep ultrathink from increasing spend.
Older models. Opus 4.6 and Sonnet 4.6 have no xhigh level at all, per the effort table in the docs.
What people are actually saying#
- 2.1.311 was published to npm on October 26, and the model configuration docs described the new behavior by October 27. We found no Hacker News or Reddit thread about it yet.
- The likely reaction is about cost.
ultrathinkhas been folk advice for a long time, as in tip 41 of our Claude Code tips and tricks. If it is in your muscle memory or your saved prompts, those turns now run atxhigh.
FAQ#
What does ultrathink do in Claude Code now?#
It adds a deeper-reasoning instruction and, since v2.1.311, can raise that turn to xhigh effort on Opus 5.5, Sonnet 5.5, Haiku 5.5 and Fable 5.1 through Anthropic's API. The word turns rainbow when it will.
Why is ultrathink not rainbow?#
It can't raise effort there. Move it out of quotes, paths and commands, remove a cap below xhigh, or switch to a supported model.
Does ultrathink raise effort on Amazon Bedrock?#
No. Set the effort level directly on Bedrock.
Can I type ultrathink while Claude is already working?#
Yes. It raises the rest of that turn.
How is this different from ultracode?#
ultrathink raises one turn. Ultracode changes how Claude runs work, through dynamic workflows, and --effort ultracode also sets xhigh.
Continue Reading#
- Claude Effort Levels Explained: Fable 5, Opus 5.5, Haiku 5.5 - what each level does and costs
- Ultracode Explained: Claude Code Multi-Agent Orchestration - the other effort-adjacent switch
- 60 Claude Code Tips and Tricks for Power Users - including the ultrathink tip this change upgrades
Sources#
Get the next deep dive like this in your inbox
One email a week on Claude Code and the rest of the AI dev stack. Free.
Read next on Claude Code
Claude Effort Levels Explained: Fable 5, Opus 5.5, Haiku 5.5
Claude effort levels explained: what low, medium, high, xhigh and max change on Fable 5, Opus 5.5 and Haiku 5.5, each default, and what a level costs.
14 min readUltracode Explained: Claude Code Multi-Agent Orchestration
Ultracode is a prompt keyword that runs one task as a dynamic workflow, and an /effort setting that pairs xhigh reasoning with automatic orchestration.
8 min read60 Claude Code Tips and Tricks for Power Users
60 Claude Code tips and tricks for power users: sub-agents, hooks, worktrees, MCP, custom agents, keyboard shortcuts and features most developers miss.
25 min readTechnical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.







