Release notes

FEATURE

Conversation copies name themselves, and the helper gets its own lane

You have spent half an hour revising a report with Claude, and it now understands your thinking. Then you want it to make a slide deck too. Ask in the same conversation and the discussion becomes a jumble; start a new one and Claude remembers nothing, so you must explain it all again for half an hour. That is when to use /fork: named after a fork in a tree, it branches off from the current conversation. Run it and Claude gives a copy everything discussed so far as an independent background session, which makes the slide deck with all that context while you keep revising the report. The copy is like a delivery order you hand off: it gets its own row in claude agents, and if unnamed, takes your prompt as its name so you can tell them apart. For a small job such as “look up this term,” where you need the answer before continuing, use /subtask. It is the built-in subagent that /fork used to launch along the way, but they now have separate homes—like a delivery app splitting “order delivery” and “ask the shop assistant to run an errand” into two buttons, so you no longer press the wrong one.

FEATURE

Deleted sessions can come back, and copies report when they're done

The copy you sent out is now harder to lose and better at reporting back. Did you accidentally delete a conversation yesterday and want to continue it today? Type /resume in the agent view and you can choose from past sessions — including ones manually removed from the list — then send it back to the background to keep running, like re-dispatching a cancelled delivery order. Two bugs that could disrupt a copy are fixed: after a state write failure, it used to lose its protection tied to the parent conversation; reopening a just-stopped copy also sometimes failed without a word. Now reopening either succeeds or explains why it cannot and lets you force a restart. Open a copy that is still booting and, instead of staring at a blank screen, you first see the formatted transcript. When a copy finishes while you have nothing to answer, the footer briefly pulses N done to alert you. Like every courier reporting a delivery, you no longer need to keep watching the door.

FEATURE

Auto-mode gets brakes that stop runaway loops before they spiral

Have you ever watched auto-mode run wild? When Claude spirals into endless searches or subagent loops, your budget can vanish instantly. Now there is a breaker in place. A session is capped at 200 WebSearch calls and 200 subagent spawns by default, with /clear resetting the counter. Any MCP (Model Context Protocol) call running past 2 minutes automatically moves to the background so your window does not freeze. If you want to wipe the slate clean, that is when to run claude auto-mode reset (adding --yes skips the confirmation prompt). It is like adding a surge protector to your home—a single faulty plug trips the switch instead of burning down the house.

BUGFIX

Holes that let risky commands slip through without asking are patched

Handing your keys to a helper is risky if they unlock doors without asking. Under plan mode, file-modifying commands like touch or rm sometimes ran without permission; they are now locked down. When you create a worktree (Git's feature for parallel copies), Claude will no longer write files outside your folder by following a symlink (a shortcut file pointing elsewhere). In addition, when a hook (a script triggered by events) requests a halt, infrastructure errors will no longer swallow the command. Even if a process receives SIGTERM, the CLI kills the whole process tree. It is like a security system patching unlocked back doors—what should be blocked actually is.

BUGFIX

Four `/ultrareview` snags fixed in one pass

Need a code review but the command keeps failing to understand you? Four /ultrareview snags are now fixed in one go. It now accepts #123, PR 123, or a full PR link instead of throwing errors. Specifying a remote-only branch automatically triggers a fetch from origin, and typos will get suggestions for the closest match. In a fresh session after /clear, the billing confirmation is no longer skipped. Finally, if you run into repository errors on Claude Desktop, the app will guide you to switch folders. It is like a customer hotline that stopped dropping calls, transferring you to the wrong desk, or forgetting to bill you.

BUGFIX

Terminal input glitches and layout jank are fixed

Are terminal glitches and broken layouts slowing down your typing? This batch smooths out those interface friction points. On Windows, if policies block PowerShell 5.1, the daemon prefers PowerShell 7. In shell mode (!), path autocomplete will no longer freeze commands containing file paths. Keyboards with extended reporting can now use Ctrl+J for newlines correctly. Layout bugs like truncated text in the approval dialog, static panels on window resizing, and missing markers in narrow diff views are all patched. It is like oiling a few sticky door locks—everything finally moves smoothly.

BUGFIX

A few reasons sessions failed to start are fixed

Are you rushing a task only to have your session freeze right at startup? A few bugs preventing conversations from launching are now gone. Cloud-managed sessions that used to crash due to project certs like mTLS or custom CA bundles will now ignore those settings with a warning and start anyway. We fixed an error where editing a file previously read in chunks would block you on resuming. Also, calling ExitWorktree after picking up a session with resume parameters works fine now. It is like building security learning to accept different ID card styles instead of locking you out.

BUGFIX

Telemetry export and web search reliability fixed

Do network drops and fetch errors interrupt your metrics exports and web searches? We have hardened telemetry and web tools. OpenTelemetry HTTP exports to Azure Monitor will use compatible settings to avoid chunked transfer rejections. Under headless mode (running without terminal windows), OTLP logs will not lose trace IDs when TRACEPARENT is set. If web search hits an overloaded server or rate limits, the tool now retries with backoff instead of giving up with an API error text. It is like an agent waiting for a line to clear and calling back later, instead of reporting a busy signal as the final answer.

FEATURE

Lighter inter-agent talk and faster mid-turn model swaps

Are you spending too much on AI tokens, or waiting until the next turn just to switch models? We have made communications faster and lighter. Prompt caching (saving past prompts to reduce costs) now works across gateways like Bedrock or custom base URLs. In multi-agent systems, messages are no longer duplicated in histories, saving your token budget. Under headless mode, when you need to swap models, that is when to send a set_model request, which changes the model on the spot instead of waiting for the next turn. It is like a delivery app distinguishing between "out for delivery" and "waiting for approval," so you are never left guessing.

FEATURE

UI wording and rule adjustments

Did you close your side-question panel only to realize you still need the answers? This batch polishes the UI text and permissions. When you want to review previous side discussions, that is when to type /btw, which reopens your most recent exchange on the side panel. In addition, subagents now inherit the parent session's permissions directly. Enterprise sign-in rules now apply to VS Code extensions and the SDK, not just the terminal. A tmux sync warning was also corrected. It is like correcting a typo in a device manual—getting the details straight ensures a smooth setup.

BUGFIX

Another round of connection and syncing fixes

Are remote controllers and teammates losing connection or showing blank grids mid-run? We have cleared a batch of connectivity bugs. Remote Control clients joining a running session will no longer see an empty workflow grid. In streaming mode, restarting a session won't drop control requests that were prematurely marked complete. Teammate agents won't spam leaders with duplicate idle alerts when teams are initialized again. Small bugs like failing @-mentions after offset reads and exit code 143 timeout alerts are also resolved. It is like a technician fixing scattered minor bugs in a building all at once.

Original changelog

Original changelogConversation copies name themselves, and the helper gets its own lane
`/fork` now copies your conversation into a new background session (its own row in `claude agents`) while you keep working; the in-session subagent it used to launch is now `/subtask`
Changed `/fork` to name the copy after your prompt when the session has no title, so the row is recognizable in the agent view
Original changelogDeleted sessions can come back, and copies report when they're done
Typing `/resume` in the agent view now opens a picker of past sessions — including sessions deleted from the list — and resumes your pick as a background session
Fixed background sessions created with `/fork` losing their live-parent protection after a state write failure
Fixed reopening a stopped background session from the agent view failing silently — it now resumes the session, or shows why it can't and lets you force a restart
Improved background agent attach: cold-attaching now instantly shows the formatted transcript while the session boots, instead of a blank wait
Changed the `←` footer hint to pulse `N done` for a moment when a background agent finishes while nothing needs your input
Original changelogAuto-mode gets brakes that stop runaway loops before they spiral
Added `claude auto-mode reset` to restore the default auto-mode configuration, with a confirmation prompt (pass `--yes` to skip)
Added a session-wide limit on WebSearch tool calls (default 200, tunable via `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION`) to stop runaway search loops
Added a per-session cap on subagent spawns (default 200, override with `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION`) to stop runaway delegation loops; `/clear` resets the budget
MCP tool calls running longer than 2 minutes now move to the background automatically so the session stays usable; configure the threshold or disable with `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS`
Fixed auto-mode denial notifications rendering broken characters when a long denial reason was truncated mid-emoji
Original changelogHoles that let risky commands slip through without asking are patched
Fixed plan mode auto-running file-modifying Bash commands (e.g. `touch`, `rm`) without a permission prompt or SDK `canUseTool` callback
Fixed worktree creation following a repository-committed symlink at `.claude/worktrees`, which could create files outside the repository
Fixed a `continue:false` hook's halt being dropped when the tool fails or completes mid-stream, and hook infrastructure errors being misreported as user rejections
Fixed SIGTERM during a running Bash tool orphaning the command's process tree in print/SDK mode; the CLI now aborts the turn, kills the tree, and exits 143
Original changelogFour `/ultrareview` snags fixed in one pass
Fixed `/ultrareview` rejecting PR references like `#123`, `PR 123`, and pasted PR URLs; error hints now name the command you actually typed
Fixed `/ultrareview <branch>` not fetching the branch from origin when it exists remotely; it now suggests the closest branch name on typos
Fixed `/ultrareview` skipping the billing confirmation in a new conversation after `/clear`
Fixed `/ultrareview`'s "not a git repository" error on Claude Desktop now suggesting the project's repository folder instead of terminal commands
Original changelogTerminal input glitches and layout jank are fixed
Fixed `/background` and `claude --bg` failing with "EUNKNOWN: unknown error, uv_spawn" on Windows when Group Policy blocks PowerShell 5.1; the daemon now prefers PowerShell 7
Fixed shell mode (`!`) not executing commands containing file paths while the path autocomplete popup was open
Fixed Ctrl+J not inserting a newline in the agent view dispatch input on terminals with extended key reporting, and surfaced the newline shortcut in the `?` help overlay
Fixed the plan-approval dialog footer splitting "ctrl+g to edit in <editor>" apart when the file path is long
Fixed the welcome banner keeping its old panel widths after a combined width+height terminal resize in fullscreen mode
Fixed diff previews losing their line numbers and +/- markers in narrow layouts
Original changelogA few reasons sessions failed to start are fixed
Fixed hosted (host-managed) sessions failing at startup when repository settings configured mTLS certs, extra CA bundles, or OAuth scopes; these transport settings are now ignored with a warning
Fixed a spurious "File has not been read yet" error when editing a file that had been read with offset/limit before resuming a session
Fixed `ExitWorktree` failing with "no active EnterWorktree session" after resuming a session with `--continue`/`--resume` in print/SDK mode
Original changelogTelemetry export and web search reliability fixed
Fixed OpenTelemetry HTTP exports being rejected with 411/400 by Azure Monitor and other endpoints that don't accept chunked transfer encoding
Fixed OTLP event log records missing `trace_id`/`span_id` when `TRACEPARENT` is set in SDK/headless mode
Fixed conversations with many images incorrectly failing with "Request too large" errors, and improved the error message to explain the actual cause
Fixed web search and web fetch returning "API Error" text as search results or page content when the API was overloaded
Improved web search and web fetch reliability by retrying 529 errors and rate-limited requests with bounded backoff
Original changelogLighter inter-agent talk and faster mid-turn model swaps
Improved prompt caching: the mid-conversation system block now works behind LLM gateways and custom base URLs (Bedrock, Vertex, 1P)
Reduced token usage in inter-agent messaging: `SendMessage` bodies are no longer duplicated into replayed history and tool results
Changed headless/SDK sessions to apply a `set_model` control request mid-turn; the next model round-trip uses the new model instead of waiting for the next turn
Changed agent view / `claude agents --json`: sessions waiting on a sandbox, MCP-input, or managed-settings prompt now show as "Needs input" instead of "Working"
Original changelogUI wording and rule adjustments
Changed bare `/btw` to reopen the side-question panel on your most recent exchange so you can browse earlier answers
Deprecated the Task tool's `mode` parameter (now ignored); subagents inherit the parent session's permission mode by default
Changed Enterprise `forceLoginMethod` to be enforced for VS Code extension, SDK, `setup-token`, and `install-github-app` logins, not just the terminal
Changed session transcripts to record the reasoning effort level on each assistant message
Updated the auth status panel title from "Cloud authentication" to "Authentication"
Corrected an earlier release note (2.1.200): tmux through the 3.6 series lacks synchronized output; newer tmux with support is detected automatically
Original changelogAnother round of connection and syncing fixes
Fixed the workflow agent grid staying empty for Remote Control clients that join a session mid-run
Fixed streaming-mode control requests being marked complete before their handler finished, which could lose the request on session restart
Fixed agent teams: a stopping teammate could send the leader duplicate idle notifications when team initialization re-ran within a session
Fixed @-mentions attaching nothing after a partial file read, plugin uninstall targeting the wrong marketplace, and false "Command timed out" on exit code 143