Restore Ultrathink: Opt-In For Enhanced Reasoning In Claude
Hey guys! Let's dive into a critical feature request concerning Claude's thinking mode. Since the shift to automatic thinking in Claude Code v2.0.x, many users have noticed a drop in the quality of instruction-following, reasoning, and task completion. We're talking about restoring ultrathink as an explicit opt-in trigger, ensuring that when you really need Claude to put its digital thinking cap on, it actually does!
The Problem: Quality Degradation with Automatic Thinking
Since Claude Code v2.0.x made thinking mode "enabled by default" and deprecated explicit thinking triggers (think, think hard, ultrathink), users have experienced systematic quality degradation in instruction-following, reasoning depth, and task completion. This has been a real headache for many, and it's time we address it head-on.
Before version 2.0, users had granular control over Claude's reasoning depth. The keywords think, think hard, and ultrathink mapped to increasing thinking budgets. Then came version 2.0.0 in November 2025, where a tab toggle was introduced for thinking mode, deprecating the previous thinking levels. This meant we lost that fine-grained control we once had. Later that month, version 2.0.x brought the news that "Thinking mode now enabled by default for Opus 4.5". While sounding good in theory, this marked the beginning of automatic allocation, and not necessarily in a good way. December 2025 saw version 2.0.67 breaking the tab toggle, requiring /config to make changes, leading to a usability regression. The real kicker came on January 7, 2026, with version 2.1.0 boasting "3x memory improvements" and "optimizations". This is when the floodgates of degradation reports opened. January 9, 2026, brought GitHub issue #17097, "Claude Does Not Follow Prompts Through Completion", highlighting critical instruction-following failures. By January 12, 2026, GitHub issue #17900 reported "Significant quality degradation", with widespread reports confirming the issue. And just to add salt to the wound, on January 14, 2026, GitHub issue #18123 revealed that the ultrathink default was not even documented, confirming a silent change in behavior. All these issues are just the tip of the iceberg, guys. We need to bring back that control.
Evidence of the Downfall
Let's look at some concrete examples of these critical issues since the thinking changes. GitHub Issue #17097, titled "Claude Does Not Follow Prompts Through Completion since 2.1.x", opened on January 9, 2026, is still an open issue. Issue #17900, "Significant quality degradation and inconsistent behavior", opened just a few days later on January 12, 2026, also remains unresolved. GitHub #18123, "ultrathink now enabled by default (not in CHANGELOG)", opened on January 14, 2026, further solidifying the problem. There are other issues too, such as #7769, "Severe Performance Degradation - Tasks that should take 2 min now take hours" from October 2025, and #8043, "Persistent Instruction Disregard and Output Quality Degradation", also from October 2025. Let's not forget #6125, "AI Consistently Ignores Explicit 'Stop When Stuck' Instructions" from September 2025, and #15443, "Claude ignores explicit CLAUDE.md instructions while claiming to understand" from December 2025. These issues all point to a worrying trend. In Issue #17097 (Jan 2026), it's theorized that optimizations introduced in version 2.1.0 may truncate or deprioritize user prompt content in favor of system context, leading the model to receive prompts but assign them a lower weight than default behaviors. This pattern is a clear indicator of the problems we're facing.
Community Voices: Are We Being Heard?
The community is definitely feeling the pain too. On r/ClaudeAI, users are saying things like "Ultrathink no longer does anything" and "It's reverse now. Max by default and if you want less you say 'think only a tiny bit'". Over on r/ClaudeCode, the sentiment is the same: "ULTRATHINK no longer does anything!" and "My understanding was THINKING budget is now handled automatically. Though not sure why it wouldn't just be on." There are also users on r/ClaudeAI trying to understand the new THINKING mode, saying things like "I'll tend to add 'use Ultrathink' if I'm in planning mode... Not sure if it makes any difference though as the thinking process is now hidden." Even Decode Claude Analysis notes that "Reasoning is baked into the flagship models — no longer a separate 'reasoning model' you have to opt into." But is it really baked in, or are we just being given a sugar-coated version of the truth? It feels like the once-reliable ultrathink has lost its power, and we're left wondering what's really going on under the hood.
The Hypothesis: A Case of Smart Routing Substitution?
Here's a theory: users suspect that the "automatic thinking" implementation might involve model routing. This means the system could be substituting smaller, cheaper models for simpler operations. There is some evidence for this. First, explicit ultrathink still seems to produce better results for some users, suggesting it's engaging a different, more capable model. Second, the observed behavior aligns with the patterns of smaller models, which tend to prioritize pattern-matching over deep reasoning. Third, the "optimizations" and "memory improvements" introduced correlate with the degradation in performance. Lastly, token consumption changed dramatically in January 2026 (as noted in GitHub #17687), which could indicate a shift in model usage. If ultrathink forces the system to use the full Opus model, while "automatic thinking" routes to cheaper models, this would explain the quality gap we're seeing. This is more than just a minor inconvenience; it's a core issue affecting the reliability and usefulness of Claude.
Quantifying the Impact: It's Costing Us Time and Money
Let's talk about real-world impact. From our own tracking over six months of daily usage, we've found that 92% of sessions require explicit "use sequential thinking" correction. We're seeing seven or more redundant operations per task before we can even get to the root cause analysis. This translates to hours wasted per session on debugging. The pattern is clear: Claude "sees instruction but doesn't follow" – a classic hallmark of smaller model behavior. This isn't just about frustration; it's about tangible losses in productivity and efficiency.
The Solution: Bring Back Ultrathink!
So, what do we need? Here are the changes being requested:
- Restore Explicit ultrathink as Guaranteed Full Reasoning: We need ultrathink to force maximum thinking budget AND full Opus model usage, with no routing to smaller models. And let's make the thinking trace visible for verification. It would give us the assurance that Claude is putting in the required effort.
- Document Thinking Budget Allocation: Transparency is key. We need to know what triggers full vs. partial thinking, whether model routing is involved, and how "optimizations" affect reasoning depth. It's time to lift the veil and show users what's happening behind the scenes.
- Provide Opt-Out from "Smart" Allocation: Give us an environment variable to disable automatic optimization, such as
CLAUDE_CODE_FULL_REASONING=true. Let users choose whether to prioritize speed or quality. - Transparency on Model Selection: Show which model/configuration is actually being used and allow users to verify they're getting what they're paying for. It's a matter of trust and accountability.
Why This Matters: We're Not Getting What We Pay For
Users are paying Opus 4.5 prices ($15/$75 per 1M tokens) but experiencing behavior consistent with smaller models. The automatic "optimization" trades reasoning quality for cost savings without user consent. The explicit ultrathink trigger gave users control over this tradeoff. Removing it while claiming "thinking is now automatic" obscures what's actually happening. It's not just about the money, though. It's about the fundamental value proposition of the product.
Related Issues: We're Not Alone
Here are some related GitHub issues:
- #18123 - ultrathink default not documented
- #10099 - What does ultrathink do?
- #9072 - Document difference between ultrathink and Thinking On/Off
- #18072 - Logic conflict between MAX_THINKING_TOKENS and ultrathink
- #17097 - Claude Does Not Follow Prompts (2.1.x regression)
- #8043 - Persistent Instruction Disregard
The severity of this issue is high. It affects the core product value proposition, as users cannot reliably get the reasoning quality they're paying for. This is a critical issue that needs immediate attention.