Anthropic’s April 2026 Claude Code update
Claude Code 2.1.89 adds resume hooks, Windows fixes, and new env vars for model labels and capability overrides.

Anthropic shipped Claude Code 2.1.89 with a long list of fixes and a few knobs that matter a lot for teams using third-party clouds. The biggest new addition is support for ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTS, which lets admins override effort and thinking capability detection for pinned default models on AWS Bedrock, Google Vertex AI, and Microsoft Foundry.
That may sound small, but it solves a real admin headache: model metadata often lags behind the actual behavior of a pinned deployment. Anthropic also added _MODEL_NAME and _MODEL_DESCRIPTION env vars so teams can change how a model appears in the /model picker without waiting on upstream naming.
What changed in Claude Code 2.1.89
Get the latest AI news in your inbox
Weekly picks of model releases, tools, and deep dives — no spam, unsubscribe anytime.
No spam. Unsubscribe at any time.
The April 2026 release is mostly about polish, but the volume of fixes tells you where Claude Code has been hurting in production. Anthropic touched permission flows, resume behavior, Windows editing, voice mode, MCP connections, and long-session stability in one pass.

The headline feature for power users is the new defer permission decision for PreToolUse hooks. In headless sessions, Claude Code can pause at a tool call and resume later with -p --resume, then re-evaluate the hook. That is a cleaner pattern than forcing a hard allow/deny decision up front.
Anthropic also added CLAUDE_CODE_NO_FLICKER=1 for flicker-free alt-screen rendering with virtualized scrollback. For anyone living in terminal multiplexers all day, that is the kind of quality-of-life toggle you notice immediately.
deferforPreToolUsehooks supports paused tool calls in headless sessions.MCP_CONNECTION_NONBLOCKING=trueskips connection waits in-pmode.CLAUDE_CODE_NO_FLICKER=1reduces terminal flicker with virtualized scrollback./modellabels can now be customized with_MODEL_NAMEand_MODEL_DESCRIPTION.ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTScan override capability detection for pinned defaults.
Why the new model env vars matter
The new model-related environment variables are the most interesting part of this release for platform teams. On paper, they are just configuration flags. In practice, they reduce the mismatch between what the UI thinks a model can do and what your deployment actually supports.
That matters most when Anthropic models are routed through third-party providers. Bedrock, Vertex AI, and Foundry often expose pinned model aliases, and the default capability detection can be too conservative or too optimistic when a provider changes behavior ahead of metadata updates. With the new override variables, teams can keep the picker honest and avoid sending users into the wrong model path.
Anthropic is also giving operators a way to improve naming in the picker itself. A clearer label lowers the odds that someone picks the wrong model when multiple pinned variants are available, which is exactly the kind of small UX detail that saves support time later.
“Software is a gas; it expands to fill its container.” — Nathan Myhrvold
That quote fits this release well. Claude Code keeps expanding into more environments, and every extra environment creates another place where metadata, permissions, and terminal behavior can drift. The April update is Anthropic trying to keep that expansion under control.
The fixes tell a bigger story
Claude Code 2.1.89 includes a long list of bug fixes, and several of them point to the same pressure point: long-running sessions are hard. Anthropic fixed prompt history drops at 4KB boundaries, memory retention in large JSON inputs, zombie LSP servers after crashes, and a resume bug when transcripts contain older tool results.

There is also a lot here for Windows users. Anthropic fixed CRLF doubling in Edit and Write tools, PowerShell stderr false failures, Shift+Enter behavior in Windows Terminal Preview 1.25, and a WebSocket upgrade issue in voice mode. That is a strong signal that Windows is no longer a side path for Claude Code users.
Some of the most practical changes are about preventing wasted calls and confusing states. Auto mode denied commands now show notifications and appear in /permissions, while autocompact thrash loops now stop with an actionable error instead of burning API calls. These are not flashy changes, but they save real money and time.
- Fixed a memory leak from large JSON inputs kept as LRU cache keys.
- Fixed a crash when removing messages from session files over 50MB.
- Fixed a potential out-of-memory crash when editing files larger than 1 GiB.
- Fixed
/statsundercounting tokens by excluding subagent usage. - Fixed PowerShell failures when commands wrote progress to stderr.
- Fixed long-session prompt cache misses caused by tool schema bytes changing mid-session.
How this compares with the March release
Compared with the March 2026 Claude Code update, April looks less like a feature splash and more like a stabilization pass with sharper admin controls. March 2.1.88 focused on flicker-free rendering, named subagents, and a broad set of long-session fixes. April keeps that thread going, but adds the new defer hook flow and the model override variables for third-party deployments.
That shift matters because it shows where Anthropic is spending effort. The company is not just polishing the terminal UI. It is also making Claude Code easier to run in mixed environments where model routing, permission policy, and provider metadata all have to line up.
If you compare the two releases side by side, the pattern is clear: March addressed stability and visibility, while April adds operator control. That combination is what you want if you are trying to move from “cool dev tool” to something teams can trust every day.
- March 2.1.88 introduced
CLAUDE_CODE_NO_FLICKER=1and named subagents in@mentions. - April 2.1.89 added
deferhook decisions and model override env vars. - Both releases fixed long-session failures, cache bugs, and Windows issues.
- April adds more admin-facing control over model naming and capability detection.
For readers tracking Anthropic’s broader platform work, this release also pairs well with the company’s API-side changes in March, including higher output caps on the Message Batches API. If you want the wider context, see our coverage of the [Claude Developer Platform update](/news/anthropic-message-batches-300k-update).
What to watch next
My read is simple: Anthropic is tightening the screws on Claude Code before the tool gets even more embedded in daily terminal workflows. The new env vars for model labels and capability overrides are the kind of feature that usually arrives after teams have already built brittle workarounds, which means demand is probably already there.
If you run Claude Code through Bedrock, Vertex AI, or Foundry, the immediate action item is to check whether your pinned defaults expose the right effort and thinking capabilities in the picker. If they do not, the new env vars are worth testing in a staging environment before the next rollout.
The more interesting question is whether Anthropic keeps pushing this admin-control pattern into the rest of the product. If it does, expect more releases that look less like feature launches and more like infrastructure hardening for serious team usage.
For now, Claude Code 2.1.89 is the kind of update that developers will appreciate most after a long day of terminal work: fewer surprises, better retries, and less guesswork around which model is actually in play.
// Related Articles
- [MODEL]
Why Google’s Hidden Gemini Live Models Matter More Than the Demo
- [MODEL]
MiniMax-M1 brings 1M-token open reasoning model
- [MODEL]
Gemini Omni Video Review: Text Rendering Beats Rivals
- [MODEL]
Why Xiaomi’s MiMo-V2.5-Pro Changes Coding Agents More Than Chatbots
- [MODEL]
OpenAI’s Realtime Audio Models Target Live Voice
- [MODEL]
Anthropic发布10款金融AI Agent