Claude Code 2.1.293 Makes Haiku 5.5 the Default and Stops Agents Re-Doing Finished Work
Claude Code v2.1.293 ships Claude Haiku 5.5 as the default Haiku model with 1M context and new pricing tiers, fixes a bug where Claude re-did finished work after context compaction, patches an HTTP MCP memory leak, and adds agentType to subagent status lines.
Claude Code 2.1.293 shipped on October 7, 2026, and it is a more consequential release than the patch number suggests. Two changes matter for anyone running agent fleets: Claude Haiku 5.5 is now the default Haiku model on the Anthropic API, and a correctness bug that made Claude retract and re-do finished work after a context compaction is fixed. The full notes are on the GitHub release tag and in the raw changelog, which also carries the 2.1.292 and 2.1.290 entries for context.

Haiku 5.5 becomes the default fast lane
The headline change: the changelog lists Claude Haiku 5.5 (claude-haiku-5-5) as the new default Haiku model on the Anthropic API, with a 1M-token context window and pricing of $0.10 per Mtok of input and $0.50 per Mtok of output, rising to $0.50 and $2.50 for prompts above 100K tokens. That combination — long context at a low per-token price — is exactly the profile operators want for cheap fan-out lanes.
| Haiku slot | Context window | Input price | Output price |
|---|---|---|---|
| Claude Haiku 5.5, now the default | 1M tokens | $0.10 per Mtok ($0.50 above 100K prompt tokens) | $0.50 per Mtok ($2.50 above 100K prompt tokens) |
If your setup follows the fast-worker-lane pattern — a strong lead agent delegating bulk work to Haiku subagents — this release changes your unit economics without a config edit. The 1M context also means a Haiku subagent can now hold an entire large repository or a long log corpus in one window, which removes some of the chunking glue fleet scripts carry today. The official Claude Code docs describe background agents and parallel sessions as a first-class pattern, so a cheaper, longer-context Haiku directly lowers the cost of that architecture. Our guide on metering subagent token cost at fan-out is worth revisiting against the new tiers.
There is also a small but useful fleet-observability addition: the subagentStatusLine payload now carries an agentType field, so status-line scripts can tell custom subagent types apart instead of guessing from names. And mod authors get isDeferred on $.tool.register — set it to false and the tool’s schema is listed in the prompt from the start rather than hidden behind tool search.
The compaction retraction fix
The most important correctness fix in this release addresses a subtle failure mode in long sessions. Before 2.1.293, Claude could treat its own last actions before a context compaction as if they had happened after it — and then retract or re-do work that was already finished. In a long unattended session that corrupts state: files rewritten, commits re-applied, API calls replayed. Our compaction ownership playbook treats exactly this class of bug as a lane-blocking hazard, and 2.1.293 removes one of its causes at the harness level.
Fleet hygiene: MCP leak and bypass consent
Two fixes target long-lived background infrastructure. First, a memory leak where an HTTP MCP connection retained every request it had sent until it closed — fleet runners with persistent MCP connections would grow in RAM over days. Second, a consent bug: claude agents could offer bypass permissions that background sessions then ignored when consent was saved only in .claude/settings.local.json or a --settings file. Background sessions now ask for consent first, and a session that ignores bypass shows a short persistent notice.
Note also what 2.1.293 takes away. The release reverts the 2.1.290 fix for cloud sessions staying asleep after a container restart lost a pending /loop wakeup — sessions now simply stay asleep. If you run scheduled cloud routines, plan your wakeup monitoring around that.
Smaller fixes worth knowing
Beyond the headline items, the release fixes a cluster of interaction bugs that add up in daily use. The /model effort picker no longer wraps past its highest or lowest level when you arrow through it — previously you could accidentally save Low as a model’s default effort. Moving a session to the background with ← is safer: a queued message that cannot move now keeps the session in place and says so, and ← cancels the move instead of backgrounding a session that holds unsent text or a waiting question. Pressing Esc, or answering No without feedback, on a permission prompt now actually stops the turn in those hand-off cases. /tui sessions started with --chrome no longer disconnect Claude in Chrome, and --no-chrome is respected again. Several session-management commands — claude logs, stop, kill, rm and the claude daemon family — no longer sign you out when your login had expired or was about to. Subagents and --agent sessions are no longer told a built-in tool was disabled for the whole session when only their own tool list omitted it, and Claude is no longer instructed to message subagents with SendMessage in sessions where a host, a permission rule or a --tools list removed that tool. Artifacts improve too: Claude now pins libraries to exact versions two weeks old or older.
What to do this week
- Upgrade before long unattended sessions. The compaction-retraction and MCP-leak fixes only protect sessions that start on 2.1.293 or later.
- Re-price your Haiku lanes. Recompute fan-out cost per completed task against the 1M-context tiers and the higher rates above 100K prompt tokens; very long prompts on Haiku may now cost more than you assumed.
- Update status-line scripts. Read
agentTypefrom thesubagentStatusLinepayload to label custom subagents correctly in fleet dashboards. - Audit background-session consent. If you saved bypass consent in local or
--settingsfiles, expect fresh consent prompts and a persistent notice when a session ignores bypass.
This follows our coverage of Claude Code 2.1.292 earlier the same week; the release list confirms 2.1.293 as the latest tag.