Opus 5.5 costs less and answers old agent code with 400s

If your agent turns thinking off for cheap steps or forces a tool call with tool_choice, Claude Opus 5.5 answers that request with a 400 error. That holds even though Anthropic cut the price to $4 per million input tokens and $20 per million output tokens, down from $5 and $25 on Opus 5.
As The New Stack reports, Anthropic's migration guide lists four breaking changes that can make requests built for Opus 5 fail after the switch. It also lists several quieter changes that throw no error at all but can still change how an existing agent behaves.
At a glance
- Opus 5.5 was released on Tuesday with the same 1 million-token context window and 128,000-token maximum output as Opus 5, so on paper the upgrade looks like a model ID swap.
- The four breaks: effort is the only way to steer thinking, forced tool calls are rejected, only Fable 5.1 and Mythos 5.1 can read its thinking blocks, and computer use needs a new toolset.
- The change most likely to slip past you throws no error: narration between tool calls arrives as thinking blocks that are empty by default, so streaming interfaces go quiet between steps.
If you skipped the last upgrade, Opus 5 was the release that turned thinking on by default and changed the shape of responses to match. Teams still on Opus 4.8 have to finish that migration before starting this one. Teams on Opus 4.7 or earlier have more ground to cover, and those on models older than Opus 4.7 also face rejected sampling parameters, rejected manual extended thinking, removed prefill and a newer tokenizer.
Thinking is always on, and the default effort drops from high to medium
The first break is in thinking controls. Opus 5.5 returns a 400 when a request sets thinking to disabled or uses enabled with budget_tokens, which leaves effort as the only dial for how much the model reasons. Agents that switched thinking off for simple steps to save time and tokens now need to give those steps a lower effort level instead.
Two side effects follow. Because thinking never switches off, every response opens with thinking blocks, so code that treats the first content block as text will break. Requests that omit effort quietly run at medium on Opus 5.5, where Opus 5 defaulted to high. Anthropic recommends setting effort explicitly and re-running effort evaluations, since the right level for each step may have moved along with cost and latency.
For the mechanical part of the switch, Claude Managed Agents users only change the model name. In Claude Code, /claude-api migrate applies the model ID swap, parameter changes, prefill replacement and effort calibration across a codebase, then leaves a checklist of items to verify by hand.
Forced tool_choice fails everywhere, and the Claude API and Google Cloud reject computer_20251124
Setting tool_choice to any or tool returns a 400, including on the token counting endpoint, so cost estimates built on those settings fail together with the requests they were meant to price. Many agent loops force a call when a step must query a database, run code or reach another service. Anthropic's replacement is auto combined with strict tool use or structured outputs, with the prompt stating when the tool applies.
Computer-use agents on the Claude API and Google Cloud must switch from computer_20251124 to the computer_toolset_20260801 toolset; the old tool still works on Amazon Bedrock. Requests get simpler, with no beta header and no name or display dimensions in the toolset entry. The loop gets harder: each action arrives as its own tool_use block identified by the block's name rather than input.action, one turn can hold several, and every result must echo toolset_name.
Two changes throw no error: silent narration and new refusal categories
On Opus 5, the text Claude writes between tool calls comes back as text blocks. On Opus 5.5 that narration arrives as progress-update thinking blocks, and at the default thinking.display setting of omitted those blocks are empty. An interface that streams narration to users simply goes silent between tool calls.
The fix is a display setting. Updates, a beta option, returns progress updates while keeping reasoning hidden, and summarized returns both. Either way, the interface then has to render each non-empty thinking block ahead of the tool call it precedes.
Opus 5.5 also ships with broader safety classifiers. It can return a stop_reason of refusal whose stop_details categories now include bio and reasoning_extraction alongside cyber. Anthropic's server-side fallback won't retry requests declined under reasoning_extraction and hands the refusal back to the application, so an agent that doesn't handle refusals stops mid-task, a problem developers have already hit with OpenAI's safety system cutting off API responses.
Opus 5.5 thinking blocks stay valid only for the model and conversation that produced them
On the Claude API, Fable 5.1 and Mythos 5.1 are the only other models that can read Opus 5.5 thinking blocks. A router or fallback that hands the conversation to any other model runs those turns without the earlier reasoning, and it returns no error. That adds a layer for teams already watching whether their calls quietly land on an older model.
Opus 5.5 reads blocks from Opus 5 and earlier Opus, Sonnet and Haiku models, but not from Fable or Mythos. Those blocks also stay valid only while the conversation is append-only: trimming old messages, changing tool definitions, summarizing context on the client or rewriting the system prompt mid-conversation invalidates them.
Picture a tamper seal stretched over everything written so far: edit any earlier page and the seal breaks. For accounts created on or after August 31, 2026, at midnight UTC, replaying a block after such an edit returns a 400 by default. Older accounts get no error, but the invalid blocks still reach the model.
Integrations that never edit earlier turns need no code change, and Anthropic says Claude Code, claude.ai, Claude Managed Agents and the Claude Agent SDK already work this way. Agents that compact their own context should follow the company's preserved thinking documentation.
The guide, as reported, says nothing about Opus 5.5 being better at any task, so the price cut is the only stated upside, and some of those savings may go into re-tuning effort levels and rewriting agent loops. In our view, the default thinking.display of omitted is the riskiest design choice here: an interface that goes mute between tool calls produces no 400 to catch in tests, only confused users.
When the thinking-block check reaches everyone
Anthropic says future models will enforce the thinking-block check for all accounts, but it names no model and no date, so the grace period for older accounts that edit history has no stated end. Developers on platforms other than the Claude API, Google Cloud and Bedrock should check the computer use tool's compatibility documentation. For the switch itself, Anthropic advises testing in a development environment before moving production traffic.
Related stories
- Claude hands paid users a spare limit reset until Oct 22
- Delete "think carefully" from your Opus 5.5 prompts
- Opus 5.5 matches Fable 5.1 on most work for less money
- Claude Managed Agents get auto mode and a session viewer
- Claude's commerce agents ship as code, writes stay staged
- ant apply syncs Managed Agents from files in a repo
Comments
No comments yet. Be the first.
Join the conversation
Sign in with Google to leave a comment. Your name and avatar come from your Google profile, and the comment appears after moderation.
