Skip to content

claude-code

Claude Code 2.1.293 switches its default Haiku to 5.5

Claude News

Claude Code 2.1.293 fixes a bug with a very human shape. After a context compaction, Claude sometimes took the last things it did before the compaction as if it had done them after, then retracted or redid work that was already finished. The headline item in the v2.1.293 release notes on Github is a new default model: Claude Haiku 5.5 now answers whenever your sessions call Haiku through the Anthropic API.

At a glance

  • Claude Haiku 5.5, model ID claude-haiku-5-5, is now the default Haiku on the Anthropic API, with a 1M context window, at $0.10/$0.50 per Mtok, or $0.50/$2.50 for prompts over 100K.
  • Mod authors get an isDeferred flag in $.tool.register. Set to false, it puts a tool's schema in the prompt from the start, and the subagentStatusLine payload now carries agentType.
  • Two earlier changes are rolled back: the 2.1.290 fix that woke cloud sessions after a container restart lost a pending /loop wakeup or scheduled task, and the 2.1.281 auto mode denial wording.

If you have not been following along, the version numbers move fast. According to Agentskit, the last segment of a Claude Code version goes up on nearly every release, sometimes several times a day when a regression needs a quick follow-up, and Anthropic publishes no formal semver contract. Agentskit dates 2.1.275 to Sep 17, 2026. That release added a ctrl+enter send-now key for queued messages, along with skill and plugin sync from claude.ai.

Haiku 5.5 costs $0.10/$0.50 per Mtok until a prompt passes 100K

Claude Haiku 5.5 ships under the model ID claude-haiku-5-5 and is now the default Haiku on the Anthropic API. It has a 1M context window. Pricing comes in two tiers: $0.10/$0.50 per Mtok for ordinary prompts, and $0.50/$2.50 per Mtok for prompts over 100K. Both rates go up fivefold once a prompt crosses that line.

Two smaller changes touch model behaviour. In /model, pressing ← or → on the effort control could wrap past the highest or lowest level, and that could quietly save Low as a model's default effort. That is fixed. Artifacts change too: Claude now pins libraries to exact versions that are two weeks old or older.

Compaction, backgrounding and an HTTP MCP memory leak all get fixes

The compaction bug has the clearest symptom of the lot: Claude retracting or redoing work it had already finished. Close behind it is a memory leak. An HTTP MCP connection used to hold on to every request it had sent until the connection closed, and 2.1.293 fixes that.

Moving a session to the background with ← gets several fixes. A message sent while Claude was working could be lost in the move. If a queued message can't move, ← now stays put and says so. ← also stops backgrounding a session after 10 seconds while the prompt holds unsent text or a question is waiting for you. Pressing Esc, or answering No without feedback, on a permission prompt right after ← now stops the turn.

Rule loading is fixed as well. Path-scoped rules and nested CLAUDE.md files now load when Claude views a file with a single-file cat, head, tail, sed -n or grep in the Bash tool rather than the Read tool. On top of that, an edited description of a claude.ai-synced skill now reaches the model without a new conversation or /clear.

Plugin tests can now read back $.session.append rows through mock.session

Besides isDeferred, mod and plugin authors get agentType in the subagentStatusLine payload, so status line scripts can tell custom subagent types apart. claude plugin test no longer fails for mods that call $.session.append, and the new mock.session lets tests read the appended rows back.

claude plugin eval no longer refuses every Bash-granting run on Macs with Docker Desktop, which keeps links under ~/.docker/bin. When it does refuse, it now names the part of the credential store that held the link. A mod's hooks on classic.* events are no longer skipped while the plugin hooks worker restarts.

Two ordering and logging changes affect what the model and your telemetry see. In agent lists and the MCP servers announced to the model, names with non-ASCII characters now sort after ASCII names. OpenTelemetry claude_code.at_mention logging now emits at most 100 agent events and 100 MCP-resource events each time a prompt is read.

The 2.1.290 cloud wakeup fix is reverted, so those sessions stay asleep

The release undoes two earlier changes. The 2.1.290 fix targeted cloud sessions that stayed asleep after a container restart lost a pending /loop wakeup or scheduled task. With it gone, Claude is no longer told about the lost wakeup, and the session stays asleep. The 2.1.281 auto mode denial message, which told Claude that a denial covers the outcome and not only the exact command, is reverted too.

Remote Control and cloud sessions get fixes of their own. In very long sessions, replies could still arrive a block at a time instead of streaming in. Remote Control re-uploaded a session's starting history after every credential recovery, and PushNotification reported "Remote Control inactive" in sessions started with claude remote-control.

Some background chores now run less often or at staggered times. While no session is in use, claude.ai skill syncing checks for changes about every 40 minutes instead of every 10. On self-hosted runners, the orchestrator sleeps 4 to 6 seconds between polls instead of a constant 5, so several replicas for one environment stop polling at the same moment.

Compaction and tool search both control what Claude sees, and this release changes both

Compaction is how Claude Code keeps a long session going. When the context fills up, older turns are condensed into a summary and work continues from there. The bug lived at that seam. Picture a shift handover: if the notes don't make clear whether a job was done before or after the handover, the next person may undo it or do it again.

Tool search works on a different problem. Instead of putting every tool's schema in the prompt, Claude Code can keep some tools behind a search step and load them when needed. Setting isDeferred to false on a mod's tool opts it out of that, and the schema sits in the prompt from the first turn.

The notes leave a lot unsaid. They give no benchmarks for Haiku 5.5, don't name the Haiku it replaces as the default, and offer no reason for either revert. Oddly, the 2.1.290 revert spells out its cost in plain words, that Claude is no longer told and the session stays asleep, yet the notes mention no replacement fix.

Waking the sleeping cloud sessions

If you run /loop or scheduled tasks in cloud sessions, the open question is when a working fix comes back. The 2.1.293 notes give no date or version for one. Until then, a container restart that loses a pending wakeup leaves the session asleep without telling Claude. Checking long-running cloud loops by hand looks like the safer habit for now.

Related stories

  1. Haiku 5.5 cuts token prices 90% on prompts under 100k
  2. Claude Code cloud credit has to be claimed by Oct 7
  3. Claude Code 2.1.292 gives sub-agents their own effort dial
  4. Claude Code 2.1.290 gives mod hooks the subagent's ID
  5. A Claude Code sideagent now flags what you might miss
  6. Claude Code 2.1.288 brings back the prompt you Ctrl+C'd

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.

We only use your name and avatar from Google. We never store your email address.