Release notes

FEATURE

/usage adds Loops breakdown, with idle wake-ups folded cleanly

When running recurring tasks with /loop, monitoring execution details is now much easier. Running /usage introduces a dedicated Loops breakdown that details per-loop run counts, total tokens, tokens per run, and the last run timestamp, making it easy to spot runaway or chatty tasks. Furthermore, consecutive wake-ups where Claude has nothing to do are now folded into a single terminal line instead of printing every single empty turn.

FEATURE

Customizable model picker ordering, with instant commands on cloud platforms

You can now curate your model lineup exactly as you prefer. Adding the modelPicker setting lets you customize the /model picker with an ordered, labeled list of models (supporting any identifier spelling, including Vertex and Bedrock IDs), either appended to or replacing the built-in selection. Selecting Ultracode in the picker is also fixed and now applies directly to the current session. The picker and bundled claude-api skill show Sonnet 5's $2/$10 per Mtok pricing as standard list price rather than a temporary promotion. Furthermore, /model, /fast, and /effort execute immediately on Bedrock, Vertex, Foundry, or when telemetry is disabled instead of queueing until the turn ends.

FEATURE

Independent prompt cache TTL controls for main sessions and subagents

Users connecting via API keys or cloud providers can now independently configure prompt caching lifetimes. The newly added promptCacheTtl and subagentPromptCacheTtl settings allow you to keep a 1-hour prompt cache on the main conversation to minimize redundant processing, while keeping short-lived subagents on a 5-minute cache to balance storage costs.

FEATURE

Contracted model pricing in cost estimates, with clear managed settings sources

Enterprise configuration distribution and cost tracking are now much more transparent. Organizations can configure the modelPricing managed setting. This allows /cost, the status line, and telemetry metrics to reflect custom contracted rates and discount multipliers instead of public list prices. Running /status now includes a Skipped sources line that explicitly enumerates managed configuration files (such as managed-settings.json) that are present but ignored due to higher-precedence sources. Additionally, claude.ai connectors in /mcp and /plugins whose authentication is managed by your organization are clearly badged with a managed tag.

BUGFIX

Keyless Console sign-in option, with polished SSH login and announcements

The authentication experience has received multiple refinements. Under /login → Anthropic Console, a keyless "Sign in with your Console account" option is now available (and recommended) alongside API key creation, allowing organizations that forbid manual API keys to sign in cleanly. Over SSH, the sign-in URL renders immediately, pressing c accurately reports how the URL was copied rather than always claiming success, and fullscreen hints explain how to select text. Long URLs overflowing container boundaries no longer lose their leading columns during repaints, and server-managed companyAnnouncements correctly display upon startup right after logging in.

FEATURE

GitHub connection status for web sessions, with legacy GitHub CLI support

Connecting web-based Claude Code sessions to your GitHub repositories is now much smoother. For claude.ai users who haven't yet linked GitHub for Claude Code on the web, a helpful tip guides you directly to /web-setup. Checking /status displays a dedicated line showing whether GitHub is connected for your Pro or Max web workspace, pointing you to /web-setup whenever it isn't. Furthermore, running /web-setup no longer gets stuck repeatedly demanding logins when an older GitHub CLI installation without the gh auth token command is already authenticated.

BUGFIX

Subagent model and effort visibility, with reliable wake-up and view persistence

Inspecting subagent tasks is now far clearer. Running /tasks or opening subagent detail dialogs explicitly displays the exact model and effort level assigned to each agent. When background subagents run long Bash jobs, an issue where agents failed to wake after their final background task completed has been resolved, ensuring uninterrupted workflow continuations. In VSCode, sections you manually expand inside the Focus view will no longer spontaneously collapse whenever subagents execute background tools.

BUGFIX

Remote MCP reconnection in headless runs, with desktop auth and status fixes

Connecting to external tools via MCP is now significantly more dependable. In non-interactive -p runs and SDK sessions, dropped connections to remote MCP (Model Context Protocol) servers now automatically reconnect or report an explicit failure instead of silently hanging. For services supporting client ID metadata documents such as Linear, MCP server sign-in initiated from the desktop application no longer fails with an invalid redirect URI error. Additionally, when ~/.claude.json contains a malformed MCP server configuration, /status explicitly prints the offending filename instead of displaying an unhelpful dot without a path.

BUGFIX

Marketplace plugin dependency resolution, with LSP reload warnings

Plugin development and lifecycle management are significantly more dependable. When loading multiple local plugins together via --plugin-dir, dependencies declaring a marketplace field now resolve smoothly rather than failing indefinitely. Running /reload-plugins properly removes the LSP (Language Server Protocol) tool once the final LSP-providing plugin is disabled. Additionally, if an LSP plugin modification requires re-reading the entire conversation history, the command proactively surfaces a warning before proceeding.

BUGFIX

Auto mode transient lockup fixes, overload retry, and VSCode launch defaults

Auto mode (where Claude acts without prompting for approval on every action) has received critical reliability fixes. If a temporary server-side disable was cached, subsequent feature flag fetch failures will no longer keep auto mode permanently disabled at startup. When the API experiences brief overload and requests client retries, tool calls in auto mode will no longer be rejected as "temporarily unavailable" after waiting about 1 minute. In VSCode, sessions started before feature flags finish their initial fetch (such as immediately after installation) now cleanly open in auto mode or your configured default mode rather than falling back to default permission prompts.

BUGFIX

Infinite scrolling for session picker, with teleport stash prompts

Picking up past conversations is now much smoother. Running /resume is no longer capped at displaying the 50 most recent sessions; scrolling down continuously fetches older conversations. When running claude --teleport <session> with uncommitted git changes, the CLI prompts to stash your changes and proceed rather than abruptly exiting. In cloud environments, sessions resuming after a mid-turn restart now send pending hook or background task notifications as regular continuation messages instead of mistaking them for user prompts.

BUGFIX

Terminal history resilience, session title preservation, and keybinding fixes

Everyday terminal interactions are now significantly more reliable. Running /clear preserves your renamed session title in the prompt bar for the new session instead of dropping it. When ~/.claude/history.jsonl contains a malformed entry, searching history via Ctrl+R or pressing the up-arrow no longer breaks command browsing. Terminals that encode modified keys (such as modifyOtherKeys or kitty protocol) now properly exit Vim INSERT mode when pressing Ctrl+[. Furthermore, spellcheck accurately underlines misspelled words typed immediately following an emoji.

BUGFIX

Cross-session messaging in rootless containers, with socket idle timeouts

Inter-session communication is now significantly more dependable. Following directory security hardening in version 2.1.232, cross-session messaging that silently disabled itself inside user namespaces and rootless containers has been restored. Furthermore, the cross-session inbox socket now closes any connection that fails to send a complete line within 30 seconds, so custom scripts should connect only when payloads are ready to transmit.

BUGFIX

Remote Control environment auto-recovery, role fixes, and cross-machine notices

Remote session control is significantly more resilient against network interruptions. When a server drops its environment mid-session, claude remote-control automatically recovers instead of exiting and stranding attached sessions. For Team and Enterprise members without admin or owner roles, sessions served by claude remote-control no longer get stuck after being stopped and restarted. When resuming a conversation currently locked by another terminal, the prompt explicitly informs you that sessions on other machines cannot be viewed from or reach your current host.

BUGFIX

Sandboxed Bash network requests on demand, proxy casing, and violation logs

Network handling inside the execution sandbox is now much more flexible. The sandboxed Bash tool prompt no longer pre-lists allowed hosts, encouraging Claude to attempt requests so you can approve new domains on the fly instead of having the model assume unlisted hosts are blocked. When a blocked command exits with code 0 (such as curl outputting a proxy 403 page), the full network violation details are preserved in the tool results. Furthermore, local IDE connections now honor both uppercase NO_PROXY and lowercase no_proxy environment variables to prevent local traffic from routing through HTTP proxies.

BUGFIX

Three-minute API timeout with auto-retry, clean error lines, and usage refresh

Handling API dropouts and rate limits is now much more predictable. If the Anthropic API never begins streaming a response, requests no longer sit silent for 10+ minutes; they now time out after ~3 minutes, retry once, and surface API Error: No response from API if unresolved. Client-generated error messages (such as authentication or model availability errors) render as explicit error lines instead of normal model output. Furthermore, idle sessions accurately reset the status line rate_limits and /usage percentages once windows reset.

FEATURE

Workload identity token sharing in CI, with enterprise telemetry attribution

Automated CI workflows and organization telemetry tracking have been significantly upgraded. Under workload identity federation in CI pipelines, multiple processes within a single job now share the exchanged token instead of attempting to reuse a single-use token. Rejected exchanges fail fast alongside informative server messages. For sessions authenticating directly against the Anthropic API using ANTHROPIC_AUTH_TOKEN, usage telemetry is accurately attributed to your organization so its data-handling policies apply. In VSCode, extension telemetry similarly routes to your organization when signed in via a Claude account.

FEATURE

Instant startup skipping MCP blocks, zstd binary compression, and on-demand memory

Startup speed and memory footprints have been thoroughly optimized. Startup no longer blocks its initial frame on sandbox and MCP bring-up, bare launches skip subcommand registration, and settings or trust-store lookups are significantly lighter. Installation and auto-update downloads now use zstd compression, shrinking the Linux x64 binary download from ~340 MB down to ~75 MB, while compact prompt storage shaves ~2 MB off the final binary. During execution, code loads on demand rather than keeping the entire bundle resident. Each session saves roughly 40–70 MB memory, and garbage collection triggers earlier in long sessions to tame peak heap memory.

BUGFIX

Strict agent definition validation, hook substitution, and thinking effort fixes

Command line inputs and automation rules now feature stricter validations. When launching with --agents, malformed JSON or invalid agent definitions will no longer be silently ignored; the CLI exits immediately with a descriptive error, matching --mcp-config. Hook if conditions like Bash(cat *) no longer mistakenly fire on unrelated commands containing $() or backtick substitutions. Additionally, setting effort levels to xhigh or max while thinking is disabled triggers a clear error naming the configured level, the offending setting, and /effort high as the fix.

FEATURE

macOS desktop Finder permissions, Chrome reconnects, and VSCode history trimming

Desktop integrations and extension reliability have been polished. On macOS, computer use actions that click the desktop, Dock, or Finder windows now explicitly require granting Finder permission via the system access dialog, aligning with standard application security policies. In the Claude in Chrome extension, connection drops caused by auto-updates cleaning up past binaries are resolved by having the native messaging host launch through the stable claude launcher. In VSCode long sessions, history trimming prioritizes dropping older tool-activity rows first, ensuring your prompts and Claude's replies remain visible.

Original changelog

Original changelog/usage adds Loops breakdown, with idle wake-ups folded cleanly
Added a Loops breakdown to `/usage`: per-loop run count, total tokens, tokens per run, and last run, so runaway or chatty `/loop` tasks are easy to spot
Improved `/loop`: consecutive wake-ups where Claude has nothing to do now fold into a single line in the terminal instead of printing each one
Original changelogCustomizable model picker ordering, with instant commands on cloud platforms
Added `modelPicker` setting: curate the `/model` picker with an ordered, labeled list of models (any id spelling, including Vertex/Bedrock ids), appended to or replacing the built-in lineup
Fixed the `/model` picker silently ignoring an Ultracode selection; picking Ultracode now applies it to the current session
Updated the `/model` picker and the bundled `claude-api` skill to show Sonnet 5's $2/$10 per Mtok pricing as its standard list price rather than a limited-time promo
Changed `/model`, `/fast`, and `/effort` to also run immediately instead of queueing until the turn ends on Bedrock, Vertex, and Foundry and when telemetry is disabled
Original changelogIndependent prompt cache TTL controls for main sessions and subagents
Added `promptCacheTtl` and `subagentPromptCacheTtl` settings so API-key and cloud-provider users can keep a 1-hour prompt cache on the main conversation while subagents stay at 5 minutes
Original changelogContracted model pricing in cost estimates, with clear managed settings sources
Added `modelPricing` managed setting so an organization's contracted per-model rates and discount multiplier are used for `/cost`, the status line, and telemetry cost figures instead of list price
Added a `Skipped sources` line to `/status` that lists managed settings sources (for example `managed-settings.json`) present but not applied because a higher-precedence managed source is active
Added a `managed` marker in `/mcp` and `/plugins` on claude.ai connectors whose authentication is managed by your organization
Original changelogKeyless Console sign-in option, with polished SSH login and announcements
Added a keyless sign-in under `/login` → Anthropic Console: "Sign in with your Console account" (recommended) alongside creating an API key, so organizations that don't allow API keys can sign in
Fixed text that hangs outside its container (for example the sign-in URL in `/login`) losing its leading columns when another part of the screen repaints
Fixed server-managed `companyAnnouncements` not showing at startup in a session that began with signing in (for example the first launch after `/logout`)
Improved `/login` over SSH: the sign-in URL appears immediately, pressing `c` reports how the URL was copied instead of always claiming success, and a hint explains how to select text in fullscreen
Original changelogGitHub connection status for web sessions, with legacy GitHub CLI support
Added a tip pointing claude.ai users who haven't connected GitHub for Claude Code on the web to `/web-setup`
Added a `/status` line showing whether GitHub is connected for Claude Code on the web (Pro/Max), pointing to `/web-setup` when it isn't
Fixed `/web-setup` repeatedly asking you to log in when an older GitHub CLI (without `gh auth token`) was already authenticated
Original changelogSubagent model and effort visibility, with reliable wake-up and view persistence
Added the model (and effort level) each subagent ran on to `/tasks` and the agent detail dialogs
Fixed background subagents not waking when their last background Bash task completes
[VSCode] Fixed Focus view sections you expanded collapsing on their own during subagent tool activity
Original changelogRemote MCP reconnection in headless runs, with desktop auth and status fixes
Fixed remote MCP servers in non-interactive (`-p`) and SDK sessions never recovering after a dropped connection; they now reconnect automatically or report as failed
Fixed MCP server sign-in started from the desktop app failing with "Invalid redirect URI" on servers that support client ID metadata documents (for example Linear)
Fixed `/status` showing "Found invalid entries in: ." with no filename when `~/.claude.json` has an invalid MCP server entry
Original changelogMarketplace plugin dependency resolution, with LSP reload warnings
Fixed plugin dependencies declared with a `marketplace` field never resolving when both plugins are loaded together via `--plugin-dir`
Fixed `/reload-plugins` keeping the LSP tool after the last LSP plugin is disabled; it now also warns before an LSP plugin change that would re-read the conversation
Original changelogAuto mode transient lockup fixes, overload retry, and VSCode launch defaults
Fixed auto mode staying unavailable at startup when a temporary server-side disable was cached and later flag fetches failed
Fixed auto mode tool calls being denied as "temporarily unavailable" after about a minute of waiting when the API was briefly overloaded and asked the client to retry
[VSCode] Fixed sessions started before feature flags were first fetched (for example right after install) opening in the default permission mode instead of auto mode or your configured default mode
Original changelogInfinite scrolling for session picker, with teleport stash prompts
Fixed `/resume` only listing the 50 most recent sessions; the picker now loads more as you scroll
Fixed cloud sessions resuming after a mid-turn restart with a pending hook or background-task notification re-sent as the prompt instead of the normal continuation message
Fixed `claude --teleport <session>` exiting on uncommitted changes instead of offering to stash them and continue, as the session picker already does
Original changelogTerminal history resilience, session title preservation, and keybinding fixes
Fixed `spellcheck` not underlining a misspelled word typed directly after an emoji
Fixed `/clear` removing the `/rename` session name from the prompt bar even though the name was kept for the new session
Fixed Ctrl+R history search and up-arrow history breaking when `~/.claude/history.jsonl` contains a malformed entry
Fixed Ctrl+[ not leaving vim INSERT mode in terminals that encode modified keys (modifyOtherKeys / kitty protocol)
Original changelogCross-session messaging in rootless containers, with socket idle timeouts
Fixed cross-session messaging silently turning off inside user namespaces and rootless containers after the 2.1.232 socket-directory hardening
Changed the cross-session messaging inbox socket to close connections that send no complete line within 30 seconds; scripts posting to it should connect once their data is ready
Original changelogRemote Control environment auto-recovery, role fixes, and cross-machine notices
Fixed `claude remote-control` exiting and stranding attached Remote Control sessions when the server drops its environment mid-session; it now recovers
Fixed Remote Control sessions served by `claude remote-control` sometimes getting stuck after it was stopped and restarted, for Team and Enterprise members without an admin or owner role
Improved the notice when resuming a conversation whose Remote Control is held by another terminal: it now says sessions on other machines can't be seen from, or reach, this one
Original changelogSandboxed Bash network requests on demand, proxy casing, and violation logs
Fixed the local IDE connection being routed through `HTTPS_PROXY` (and sometimes failing) when `localhost` was listed in `NO_PROXY` but not lowercase `no_proxy`; both casings are now honored
Fixed sandbox network-violation details being dropped from the Bash tool result when the blocked command still exited 0 (for example `curl` printing the proxy's 403 page)
Changed the sandboxed Bash tool prompt to no longer list allowed network hosts, so Claude attempts requests (and you can approve new hosts) instead of assuming unlisted hosts are blocked
Original changelogThree-minute API timeout with auto-retry, clean error lines, and usage refresh
Fixed sessions going silent for 10+ minutes when the Anthropic API never starts a response: the request now times out after ~3 minutes, retries once, then shows `API Error: No response from API`
Fixed auth, model-availability, and other client-generated error messages rendering like model output instead of as error lines
Fixed the status line `rate_limits` fields and `/usage` still showing a rate-limit window's pre-reset usage percentage after the window reset while the session was idle
Original changelogWorkload identity token sharing in CI, with enterprise telemetry attribution
Fixed workload identity federation in CI: processes in one job share the exchanged token instead of re-exchanging the single-use token; a rejected exchange fails fast with the server's message
Improved attribution of usage telemetry to your organization for sessions that authenticate with `ANTHROPIC_AUTH_TOKEN` directly against the Anthropic API, so its data-handling settings apply
[VSCode] Improved attribution of the extension's own usage telemetry to your organization when you are signed in with a Claude account, so its data-handling settings apply
Original changelogInstant startup skipping MCP blocks, zstd binary compression, and on-demand memory
Improved startup time: sandbox and MCP bring-up no longer block the first frame, bare launches skip subcommand registration, and workflow discovery, settings, and trust-store work is cheaper
Improved native install and auto-update download size: the binary is now zstd-compressed (about 75 MB instead of 340 MB on Linux x64)
Improved native binary size: about 2 MB smaller by storing the bundled skill and prompt text more compactly
Improved memory usage of native builds: code is now loaded on demand instead of keeping the whole bundle resident (roughly 40–70 MB less memory per session)
Improved peak memory usage in long-running sessions (the runtime now garbage-collects sooner as the heap grows)
Original changelogStrict agent definition validation, hook substitution, and thinking effort fixes
Fixed hook `if` conditions like `Bash(cat *)` firing on unrelated Bash commands when the command contained `$()` or backtick command substitution followed by more arguments
Fixed `--agents` silently ignoring invalid JSON or invalid agent definitions; it now exits with a clear error, like `--mcp-config`
Improved the error when effort `xhigh`/`max` is used with thinking turned off: it now names the level, the setting that disabled thinking, and `/effort high` as the fix
Original changelogmacOS desktop Finder permissions, Chrome reconnects, and VSCode history trimming
Fixed Claude in Chrome losing its connection to Claude Code after an auto-update cleaned up the version it was set up with; the native host now launches via the stable `claude` launcher
Changed computer use on macOS so clicking the desktop, Dock, or a Finder window requires granting Finder via the access dialog, like any other app
[VSCode] Improved history trimming in long sessions: older tool-activity rows are dropped first so your messages and Claude's replies stay visible