- Update Vertex AI prose references to Agent Platform across the example
(READMEs, script/terraform comments, config template). Functional
identifiers are unchanged: the 'provider: vertex' config key,
roles/aiplatform.user, aiplatform.googleapis.com, and the terraform
resource label (renaming it would recreate the IAM binding in existing
states). First mentions keep '(formerly Vertex AI)' for searchability.
- Drop the README's self-referential public-mirror link.
- Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted
- Added a grey ⏸ badge to the footer when in manual permission mode, making the active mode always visible
- Added the session's additional working directories to MCP `roots/list`, with `notifications/roots/list_changed` sent when the set changes
- Fixed opening or switching background agent sessions on macOS stalling for 15–20 seconds due to a false low-memory detection (regression in 2.1.196)
- Fixed background sessions becoming permanently unresponsive to attach, replies, and stop when the daemon's session token went stale — the session now recovers automatically
- Fixed returning to `claude agents` silently stopping running subagents and re-running the prompt from scratch — their work now carries over
- Fixed a memory and per-turn CPU regression in interactive sessions: the context-usage indicator no longer re-analyzes the entire transcript after every turn
- Fixed background agents inheriting a stale `PATH` from the daemon instead of the dispatching shell, causing missing tools on Windows
- Fixed background and agent-view sessions dropping a shell-exported `ANTHROPIC_BASE_URL`, which sent API keys to the default endpoint and failed with 401
- Fixed Bash failing with "argument list too long" in repos with many git worktrees
- Fixed worktree-isolated subagents sometimes running shell commands in the parent checkout instead of their own worktree
- Fixed worktree creation rejecting nested repositories in multi-repo workspaces, leaving background sessions unable to isolate and edit
- Fixed background agents crash-looping when their working directory was deleted, replaced by a file, or became an invalid path — they now fail once with a clear error
- Fixed a background daemon auto-upgrade failure silently killing all running background sessions
- Fixed `TaskStop` and `TaskOutput` failing to find background agents spawned by another agent — errors now list running agents by id and description
- Fixed the `claude agents` composer discarding your typed message when a slash command isn't available there
- Fixed the agent list crashing when opening a stopped session whose conversation was already open in another session
- Fixed background sessions showing "Needs input" in the agent list after the question was already answered
- Fixed background agent startup failures showing only "exit_with_message" instead of the actual error
- Fixed background sessions ignoring `effortLevel` changes in settings.json when forked through the daemon
- Fixed attached background sessions ignoring `CLAUDE_CODE_DISABLE_MOUSE` and `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` opt-outs
- Fixed `/exit` incorrectly warning about running background agents after all named agents had completed
- Fixed background sessions started from a non-git directory unable to edit files when a `WorktreeCreate` hook was configured
- Fixed the `@` directory picker in `claude agents` not showing registered git worktrees
- Fixed background task output on Windows being permanently replaced by an empty file after `/clear`
- Fixed content jumping when scrolling up through long transcript history
- Fixed the terminal flickering and jumping while typing in bash mode when a shell-history suggestion was shown
- Fixed literal `^[[I` / `^[[O` escape codes being printed when reattaching to a background session
- Fixed LSP-only plugins being incorrectly flagged for disuse when their language servers deliver diagnostics or answer navigation requests
- Improved responsiveness while long responses stream: live-preview updates no longer re-render the whole screen
- Improved subagent behavior: agents are now less likely to re-delegate their entire task to another subagent
- Reduced binary size by ~7 MB and startup memory by ~7 MB by loading a large bundled dependency lazily instead of inlining it
- Changed left arrow to no longer close the background tasks, diff, and workflow detail views — press Esc instead
- Changed the empty `claude agents` view to always show the organized sections (Needs input / Working / Completed) with descriptions
- Removed the startup "claude command missing or broken" warnings — they now appear in `/doctor` and `/status` instead
- Removed a redundant navigation hint from the `claude agents` footer
- [VSCode] Added a Settings toggle for "Enable Remote Control for all sessions"
## 2.1.202
- Added a "Dynamic workflow size" setting in `/config` for controlling how large Claude generally makes dynamic workflows (small/medium/large agent counts) — an advisory guideline, not an enforced cap
- Added `workflow.run_id` and `workflow.name` OpenTelemetry attributes to telemetry emitted by workflow-spawned agents, so a workflow run's activity can be reconstructed from OTel data
- Fixed a crash in the inline Ctrl+R history search when accepting or cancelling while the search was still scanning the history file
- Fixed `/rename` on background sessions being reverted when the job restarts, which broke addressing the session by its new name
- Fixed transient mTLS handshake failures when settings were re-applied during an in-place client certificate rotation
- Fixed commands sent from Remote Control (mobile/web) into an interactive session failing with "Unknown command"
- Fixed images and files sent from the Remote Control mobile or web app without a caption being silently dropped
- Fixed the sign-in URL printed by `claude auth login` and `claude mcp login --no-browser` not being reliably clickable when it wraps over SSH — it is now emitted as a single hyperlink
- Fixed opening a chat from `claude agents` sometimes failing with "currently running as a background agent" followed by a worker crash/respawn loop
- Fixed workflow scripts with unicode quote escapes in strings being corrupted before parsing; workflow parse errors now show the offending line instead of always blaming TypeScript
- Fixed voice dictation retrying in an unbounded loop when the microphone or audio recorder fails — repeated capture failures now pause voice input
- Fixed `/remote-control` sessions showing the wrong permission mode in the mobile and web apps
- Fixed resuming a session by name, or opening the resume picker, taking minutes and using a large amount of memory in repositories with many git worktrees
- Fixed installer and updater downloads failing immediately with "aborted" when a proxy or network drops the connection mid-download — transient connection drops now retry
- Fixed re-invoking an already-loaded skill appending a duplicate copy of its instructions to context
- Improved `/workflows` agent list layout: wider titles, a dedicated time column, shorter model names, and no per-row tool-call counts
- Improved MCP error messages: clearer error when a server config has `url` but no `type`, suggesting `"type": "http"` instead of the misleading "command: expected string"
- Changed `/review <pr>` back to a fast single-pass review; use `/code-review <level> <pr#>` for the multi-agent review at a chosen effort level
## 2.1.201
- Claude Sonnet 5 sessions no longer use the mid-conversation system role for harness reminders
## 2.1.200
- Changed `AskUserQuestion` dialogs to no longer auto-continue by default; opt into an idle timeout via `/config`
- Changed the "default" permission mode to "Manual" across the CLI, `--help`, VS Code, and JetBrains; `--permission-mode manual` and `"defaultMode": "manual"` are accepted alongside `default`
- Fixed a crash at startup when `disabledMcpServers` or `enabledMcpServers` in `.claude.json` is set to a non-array value
- Fixed background sessions silently stopping mid-turn after sleep/wake or when reopening a stalled session
- Fixed background sessions re-running a turn cancelled with Esc after a stall respawn
- Fixed background agents never starting again after a crash left a stale `daemon.lock` whose PID the OS reused
- Fixed background-agent daemon handover so a reinstalled older build can no longer take over the daemon; build recency is now judged by the version's embedded build timestamp
- Fixed background-agent roster issues: transient corruption permanently disabling orphan cleanup, older binaries not preserving fields written by newer versions, and socket auth tokens being stripped during daemon restarts
- Fixed subagents cut off by a rate limit before producing any text output returning an empty result instead of failing cleanly
- Fixed control bytes from background-agent output reaching the terminal in the agent view
- Fixed `claude agents --plugin-dir <dir>` not showing the plugin's agents and skills in the agent view when the flag is placed after `agents`
- Fixed project-scoped plugins not loading correctly from git worktrees of the same repository
- Fixed `/mcp` server list not tracking focus for screen readers and magnifiers
- Fixed voice dictation showing a misleading "Voice connection failed" message when a recording captures no audio
- Fixed rendering flicker under tmux 3.4+ by enabling synchronized terminal output
- Improved screen-reader output: decorative glyphs are now hidden, transcript symbols read as short labels, and nested tables read as `Header: value.` lines
- Improved the install script to explain when installation is killed by the system running out of memory
## 2.1.199
- Stacked slash-skill invocations like `/skill-a /skill-b do XYZ` now load all leading skills (up to 5), not just the first
- Fixed SSL certificate errors (TLS-inspecting proxies, missing `NODE_EXTRA_CA_CERTS`, expired certs) burning retries before showing actionable guidance — they now fail immediately with the fix hint
- Fixed streaming responses being discarded when the API emits a mid-stream overloaded/server error after partial output — the partial is now kept with an incomplete-response notice
- Fixed subagents cut off by a rate limit or server error silently failing instead of returning their partial work to the parent
- Fixed subagents reporting API errors (e.g. usage limit reached) as successful results — the error is now reported to the parent agent
- Fixed the background-agent daemon on Linux killing itself and every running agent every ~50 seconds after an unclean shutdown left a corrupted worker record
- Fixed background agents failing to cold-start over SSH on macOS with "Could not switch to audit session" (regression in 2.1.196)
- Fixed `claude stop` being silently undone when it raced a background-agent respawn — the respawn now honors the stop
- Fixed background job progress indicators stalling for minutes while the job ran long commands
- Fixed background sessions on memory-starved machines showing a generic error — they now indicate low memory and suggest freeing resources
- Fixed remote sessions briefly flapping between Working and Idle in the agent view when a background agent completes
- Fixed idle subagents vanishing from the agent panel while other subagents were still working; surplus idle agents now collapse into an expandable summary row
- Fixed typing `/model` or `/fast` while viewing a subagent silently opening the lead's model picker — a notice now explains the command applies to the lead
- Fixed `SessionStart`, `Setup`, and `SubagentStart` hooks silently hiding stderr when exiting with code 2 — the error is now shown in the transcript
- Fixed `claude --dangerously-skip-permissions daemon <subcommand>` being treated as a chat prompt instead of running the subcommand
- Fixed `SendMessage` silently misrouting when a re-spawned agent reuses a previous agent's name — the tool now detects the mismatch and asks the caller to retarget
- Fixed opening or resuming a session with no new messages needlessly growing the transcript file
- Fixed backgrounding a session with `←` or `/background` dropping its `/color` from the agent view row
- Fixed resetting a corrupted config file from the startup recovery dialog destroying it unrecoverably — it now backs up the file first
- Fixed Claude in Chrome repeatedly opening the reconnect page when sessions run from different builds or config directories
- Fixed plan mode not prompting for state-changing browser tool calls; read-only `browser_batch` calls are now correctly auto-allowed
- Transient server rate-limit errors (429s unrelated to your usage limit) are now retried automatically with backoff for subscribers instead of failing the turn
-`CLAUDE_CODE_RETRY_WATCHDOG` now raises the default retry count for non-capacity transient errors to 300 and lifts the cap of 15 on `CLAUDE_CODE_MAX_RETRIES`
-`claude agents` session rows now show pull-request links as bare `#N` without the redundant "PR" label
## 2.1.198
- Subagents now run in the background by default, so Claude keeps working while they run and is notified when they finish (previously a gradual rollout)
- Claude in Chrome is now generally available
- Added background agent notifications in `claude agents` — sessions that need input or finish now fire the `Notification` hook (`agent_needs_input` / `agent_completed`)
- Added `/dataviz` skill for chart and dashboard design guidance with a runnable color-palette validator
- Gateway: added Claude Platform on AWS (anthropicAws) as an upstream provider; model-not-found responses now advance the failover chain
- Background agents launched from `claude agents` now commit, push, and open a draft PR when they finish code work in a worktree, instead of stopping to ask
- The built-in Explore agent now inherits the main session's model (capped at opus) instead of running on haiku
- Subagents and context compaction now inherit the session's extended thinking configuration, improving output quality on delegated tasks
- Fixed brief network drops mid-response aborting the turn — transient errors like ECONNRESET now retry with backoff instead of failing
- Fixed excessive background classifier requests when sandboxed processes repeatedly accessed the same network host
- Fixed background tasks in web, desktop, and VS Code task panels getting stuck on "Running" after they finish or after resuming a session
- Fixed agent teams: a teammate that dies on an API error now reports "failed" to the lead, and messaging a stuck teammate wakes it to retry immediately
- Fixed the `/diff` panel not refreshing when you switch branches or commit outside the session
- Fixed markdown tables overflowing and wrapping their right border when rendered in fullscreen mode
- Fixed Claude Platform on AWS and Mantle sessions dead-ending with "Please run /login" when the STS token expires — `awsAuthRefresh` now runs automatically
- Fixed "no route to host" for local-network hosts in macOS background agent sessions by declaring Local Network entitlements
- Fixed `/desktop` failing with "Cannot determine working directory" after entering and exiting a worktree
- Fixed background agents repeatedly showing "Reconnecting…" every ~52 seconds on macOS while the agents view was open
- Fixed pressing `←` inside `claude attach <id>` exiting to the shell instead of opening the agent view
- Fixed `claude --bg` silently creating an unattachable session when combined with `--print`/`-p`; the conflicting flags are now rejected up front
- Fixed the workflow progress view dropping the earliest agents from the list while the phase counter stayed correct in SDK and desktop-app sessions
- Fixed `.claude/rules/` conditional rules not loading when the target file is reached via a symlinked path
- Fixed Cmd+click not opening URLs in fullscreen mode in Warp on macOS
- Fixed double-click word selection in fullscreen mode to select the entire URL including the scheme
- Fixed plan mode not auto-allowing read-only tool calls when a session starts in plan mode
- Fixed `/branch` deriving its default fork name from the compaction summary instead of the first real prompt
- Improved focus mode: subagents launched in a turn now appear in its activity summary, and completed background notifications fold into a single count
- Improved syntax highlighting accuracy in code blocks, diffs, and file previews by upgrading to highlight.js 11
- Keyboard shortcut hints now show opt/cmd instead of alt/super when connected from a Mac over SSH
- Improved API retry UX: the error reason is now shown after the second attempt, and a status page link replaces the spinner tip when the API is overloaded
-`/login` now opens the sign-in dialog from the `claude agents` view instead of saying it isn't available
- Subagents now treat messages from the agent that launched them as normal task direction; an agent's message is still never treated as the user's approval
- Removed the `/agents` wizard; ask Claude to create or manage subagents, or edit `.claude/agents/` directly
## 2.1.197
- Introducing Claude Sonnet 5: now the default model in Claude Code, with a native 1M-token context window and promotional pricing of $2/$10 per Mtok through August 31. Update to version 2.1.197 for access. https://www.anthropic.com/news/claude-sonnet-5
## 2.1.196
- Added support for organization default models — admins set it in the org console; it shows as "Org default" (or "Role default") in `/model` when you haven't picked one yourself
- Added readable default names for sessions at start, making them easier to identify and message
- Added clickable file attachments in chat — Cmd/Ctrl-click reveals the file in Finder/Explorer
- Security: `claude mcp list`/`get` no longer spawn `.mcp.json` servers that a repo self-approved via a committed `.claude/settings.json`; untrusted workspaces show `⏸ Pending approval`
- Fixed waking a background job permanently deleting its conversation and re-running the original prompt when the transcript probe misread a real transcript; the file is now set aside, never deleted
- Fixed the rate-limit warning flickering off and rate-limit telemetry being over-counted when multiple parallel requests were in flight at the moment a usage limit was hit
- Fixed duplicate recap lines after a background session's turn: a schema-rejected StructuredOutput attempt no longer renders alongside its retry
- Fixed PowerShell `git diff`/`git grep`, `egrep`/`fgrep`, and quoted search patterns containing `|` being reported as failures when they exit 1, matching Bash behavior
- Fixed multiple `claude agents` side panel issues: keyboard focus getting stuck when opening an agent, background jobs losing their subagent types on every open, and sessions showing incorrect status while actively running
- Fixed `claude agents --dangerously-skip-permissions` silently falling back to auto mode instead of showing the bypass disclaimer and applying bypass mode to spawned agents
- Fixed mid-turn crash recovery for Remote sessions — sessions interrupted by a server restart now auto-resume on the next worker
- Fixed sessions moved with `/cd` reappearing in the old directory's resume list after a non-graceful exit when the old path contained special characters
- Fixed `claude plugin validate` skipping local plugins whose source is "." and stopping after the first error class
- Fixed Esc Esc at an idle prompt not opening the rewind menu (regression); use Ctrl+C or Ctrl+X Ctrl+K to stop background agents
- Fixed MCP OAuth requesting the authorization server's full `scopes_supported` catalog when no scope is specified, causing `invalid_scope` failures on GitLab self-hosted and other enterprise IdPs
- Fixed `/context` showing 0 tokens for all tool groups on Bedrock
- Fixed `/deep-research` misreporting verifier failures as "all claims refuted" instead of `unverified`
- Fixed plugin dependency version pins not being honored when the marketplace was added as a local folder path backed by a git repo
- Fixed `claude agents` session status: completed rows no longer flip between "Done" and "Needs your input", stalled agents are now labeled "Needs attention", and results that mention a PR show a clickable link
- Fixed voice dictation swallowing spaces and spuriously starting a recording during very fast typing when voice mode is enabled
- Improved background session reliability: long-running commands and workflows now survive the session's process being stopped, restarted, or updated — including on Windows, where background shells are handed off instead of being killed
- Improved background agents: workers killed by a daemon restart are now automatically resumed from where they left off the next time the agents view opens
- Improved `/code-review` workflow: merged five cleanup finders into one, cutting token usage by roughly 25%
- Reduced per-frame rendering work in the terminal UI by skipping no-op subtree walks during streaming
- The streaming idle watchdog is now on by default for all providers — it aborts and retries when a response stream produces no events for 5 minutes. Set `CLAUDE_ENABLE_STREAM_WATCHDOG=0` to disable.
- Remote Control is now disabled when `ANTHROPIC_BASE_URL` points at a non-Anthropic host, matching the existing behavior under `CLAUDE_CODE_USE_BEDROCK`/`_VERTEX`/`_FOUNDRY`
- Changed opening the agents view from a foreground session to require a single `←` press instead of two, matching the behavior in background sessions
## 2.1.195
- Added `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` to disable mouse click/drag/hover in fullscreen mode while keeping wheel scroll
<contenttype="html"><p>• Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted</p>
<p>• Added a grey ⏸ badge to the footer when in manual permission mode, making the active mode always visible</p>
<p>• Added the session's additional working directories to MCP roots/list, with notifications/roots/list_changed sent when the set changes</p>
<p>• Fixed opening or switching background agent sessions on macOS stalling for 15–20 seconds due to a false low-memory detection (regression in 2.1.196)</p>
<p>• Fixed background sessions becoming permanently unresponsive to attach, replies, and stop when the daemon's session token went stale — the session now recovers automatically</p>
<p>• Fixed returning to claude agents silently stopping running subagents and re-running the prompt from scratch — their work now carries over</p>
<p>• Fixed a memory and per-turn CPU regression in interactive sessions: the context-usage indicator no longer re-analyzes the entire transcript after every turn</p>
<p>• Fixed background agents inheriting a stale PATH from the daemon instead of the dispatching shell, causing missing tools on Windows</p>
<p>• Fixed background and agent-view sessions dropping a shell-exported ANTHROPIC_BASE_URL, which sent API keys to the default endpoint and failed with 401</p>
<p>• Fixed Bash failing with "argument list too long" in repos with many git worktrees</p>
<p>• Fixed worktree-isolated subagents sometimes running shell commands in the parent checkout instead of their own worktree</p>
<p>• Fixed worktree creation rejecting nested repositories in multi-repo workspaces, leaving background sessions unable to isolate and edit</p>
<p>• Fixed background agents crash-looping when their working directory was deleted, replaced by a file, or became an invalid path — they now fail once with a clear error</p>
<p>• Fixed a background daemon auto-upgrade failure silently killing all running background sessions</p>
<p>• Fixed TaskStop and TaskOutput failing to find background agents spawned by another agent — errors now list running agents by id and description</p>
<p>• Fixed the claude agents composer discarding your typed message when a slash command isn't available there</p>
<p>• Fixed the agent list crashing when opening a stopped session whose conversation was already open in another session</p>
<p>• Fixed background sessions showing "Needs input" in the agent list after the question was already answered</p>
<p>• Fixed background agent startup failures showing only "exit_with_message" instead of the actual error</p>
<p>• Fixed background sessions ignoring effortLevel changes in settings.json when forked through the daemon</p>
<p>• Fixed attached background sessions ignoring CLAUDE_CODE_DISABLE_MOUSE and CLAUDE_CODE_DISABLE_MOUSE_CLICKS opt-outs</p>
<p>• Fixed /exit incorrectly warning about running background agents after all named agents had completed</p>
<p>• Fixed background sessions started from a non-git directory unable to edit files when a WorktreeCreate hook was configured</p>
<p>• Fixed the @ directory picker in claude agents not showing registered git worktrees</p>
<p>• Fixed background task output on Windows being permanently replaced by an empty file after /clear</p>
<p>• Fixed content jumping when scrolling up through long transcript history</p>
<p>• Fixed the terminal flickering and jumping while typing in bash mode when a shell-history suggestion was shown</p>
<p>• Fixed literal ^[[I / ^[[O escape codes being printed when reattaching to a background session</p>
<p>• Fixed LSP-only plugins being incorrectly flagged for disuse when their language servers deliver diagnostics or answer navigation requests</p>
<p>• Improved responsiveness while long responses stream: live-preview updates no longer re-render the whole screen</p>
<p>• Improved subagent behavior: agents are now less likely to re-delegate their entire task to another subagent</p>
<p>• Reduced binary size by ~7 MB and startup memory by ~7 MB by loading a large bundled dependency lazily instead of inlining it</p>
<p>• Changed left arrow to no longer close the background tasks, diff, and workflow detail views — press Esc instead</p>
<p>• Changed the empty claude agents view to always show the organized sections (Needs input / Working / Completed) with descriptions</p>
<p>• Removed the startup "claude command missing or broken" warnings — they now appear in /doctor and /status instead</p>
<p>• Removed a redundant navigation hint from the claude agents footer</p>
<p>• [VSCode] Added a Settings toggle for "Enable Remote Control for all sessions"</p></content>
<contenttype="html"><p>• Added a "Dynamic workflow size" setting in /config for controlling how large Claude generally makes dynamic workflows (small/medium/large agent counts) — an advisory guideline, not an enforced cap</p>
<p>• Added workflow.run_id and workflow.name OpenTelemetry attributes to telemetry emitted by workflow-spawned agents, so a workflow run's activity can be reconstructed from OTel data</p>
<p>• Fixed a crash in the inline Ctrl+R history search when accepting or cancelling while the search was still scanning the history file</p>
<p>• Fixed /rename on background sessions being reverted when the job restarts, which broke addressing the session by its new name</p>
<p>• Fixed transient mTLS handshake failures when settings were re-applied during an in-place client certificate rotation</p>
<p>• Fixed commands sent from Remote Control (mobile/web) into an interactive session failing with "Unknown command"</p>
<p>• Fixed images and files sent from the Remote Control mobile or web app without a caption being silently dropped</p>
<p>• Fixed the sign-in URL printed by claude auth login and claude mcp login --no-browser not being reliably clickable when it wraps over SSH — it is now emitted as a single hyperlink</p>
<p>• Fixed opening a chat from claude agents sometimes failing with "currently running as a background agent" followed by a worker crash/respawn loop</p>
<p>• Fixed workflow scripts with unicode quote escapes in strings being corrupted before parsing; workflow parse errors now show the offending line instead of always blaming TypeScript</p>
<p>• Fixed voice dictation retrying in an unbounded loop when the microphone or audio recorder fails — repeated capture failures now pause voice input</p>
<p>• Fixed /remote-control sessions showing the wrong permission mode in the mobile and web apps</p>
<p>• Fixed resuming a session by name, or opening the resume picker, taking minutes and using a large amount of memory in repositories with many git worktrees</p>
<p>• Fixed installer and updater downloads failing immediately with "aborted" when a proxy or network drops the connection mid-download — transient connection drops now retry</p>
<p>• Fixed re-invoking an already-loaded skill appending a duplicate copy of its instructions to context</p>
<p>• Improved /workflows agent list layout: wider titles, a dedicated time column, shorter model names, and no per-row tool-call counts</p>
<p>• Improved MCP error messages: clearer error when a server config has url but no type, suggesting "type": "http" instead of the misleading "command: expected string"</p>
<p>• Changed /review &lt;pr&gt; back to a fast single-pass review; use /code-review &lt;level&gt; &lt;pr#&gt; for the multi-agent review at a chosen effort level</p></content>
<contenttype="html"><p>• Changed AskUserQuestion dialogs to no longer auto-continue by default; opt into an idle timeout via /config</p>
<p>• Changed the "default" permission mode to "Manual" across the CLI, --help, VS Code, and JetBrains; --permission-mode manual and "defaultMode": "manual" are accepted alongside default</p>
<p>• Fixed a crash at startup when disabledMcpServers or enabledMcpServers in .claude.json is set to a non-array value</p>
<p>• Fixed background sessions silently stopping mid-turn after sleep/wake or when reopening a stalled session</p>
<p>• Fixed background sessions re-running a turn cancelled with Esc after a stall respawn</p>
<p>• Fixed background agents never starting again after a crash left a stale daemon.lock whose PID the OS reused</p>
<p>• Fixed background-agent daemon handover so a reinstalled older build can no longer take over the daemon; build recency is now judged by the version's embedded build timestamp</p>
<p>• Fixed background-agent roster issues: transient corruption permanently disabling orphan cleanup, older binaries not preserving fields written by newer versions, and socket auth tokens being stripped during daemon restarts</p>
<p>• Fixed subagents cut off by a rate limit before producing any text output returning an empty result instead of failing cleanly</p>
<p>• Fixed control bytes from background-agent output reaching the terminal in the agent view</p>
<p>• Fixed claude agents --plugin-dir &lt;dir&gt; not showing the plugin's agents and skills in the agent view when the flag is placed after agents</p>
<p>• Fixed project-scoped plugins not loading correctly from git worktrees of the same repository</p>
<p>• Fixed /mcp server list not tracking focus for screen readers and magnifiers</p>
<p>• Fixed voice dictation showing a misleading "Voice connection failed" message when a recording captures no audio</p>
<p>• Fixed rendering flicker under tmux 3.4+ by enabling synchronized terminal output</p>
<p>• Improved screen-reader output: decorative glyphs are now hidden, transcript symbols read as short labels, and nested tables read as Header: value. lines</p>
<p>• Improved the install script to explain when installation is killed by the system running out of memory</p></content>
<contenttype="html"><p>• Stacked slash-skill invocations like /skill-a /skill-b do XYZ now load all leading skills (up to 5), not just the first</p>
<p>• Fixed SSL certificate errors (TLS-inspecting proxies, missing NODE_EXTRA_CA_CERTS, expired certs) burning retries before showing actionable guidance — they now fail immediately with the fix hint</p>
<p>• Fixed streaming responses being discarded when the API emits a mid-stream overloaded/server error after partial output — the partial is now kept with an incomplete-response notice</p>
<p>• Fixed subagents cut off by a rate limit or server error silently failing instead of returning their partial work to the parent</p>
<p>• Fixed subagents reporting API errors (e.g. usage limit reached) as successful results — the error is now reported to the parent agent</p>
<p>• Fixed the background-agent daemon on Linux killing itself and every running agent every ~50 seconds after an unclean shutdown left a corrupted worker record</p>
<p>• Fixed background agents failing to cold-start over SSH on macOS with "Could not switch to audit session" (regression in 2.1.196)</p>
<p>• Fixed claude stop being silently undone when it raced a background-agent respawn — the respawn now honors the stop</p>
<p>• Fixed background job progress indicators stalling for minutes while the job ran long commands</p>
<p>• Fixed background sessions on memory-starved machines showing a generic error — they now indicate low memory and suggest freeing resources</p>
<p>• Fixed remote sessions briefly flapping between Working and Idle in the agent view when a background agent completes</p>
<p>• Fixed idle subagents vanishing from the agent panel while other subagents were still working; surplus idle agents now collapse into an expandable summary row</p>
<p>• Fixed typing /model or /fast while viewing a subagent silently opening the lead's model picker — a notice now explains the command applies to the lead</p>
<p>• Fixed SessionStart, Setup, and SubagentStart hooks silently hiding stderr when exiting with code 2 — the error is now shown in the transcript</p>
<p>• Fixed claude --dangerously-skip-permissions daemon &lt;subcommand&gt; being treated as a chat prompt instead of running the subcommand</p>
<p>• Fixed SendMessage silently misrouting when a re-spawned agent reuses a previous agent's name — the tool now detects the mismatch and asks the caller to retarget</p>
<p>• Fixed opening or resuming a session with no new messages needlessly growing the transcript file</p>
<p>• Fixed backgrounding a session with ← or /background dropping its /color from the agent view row</p>
<p>• Fixed resetting a corrupted config file from the startup recovery dialog destroying it unrecoverably — it now backs up the file first</p>
<p>• Fixed Claude in Chrome repeatedly opening the reconnect page when sessions run from different builds or config directories</p>
<p>• Fixed plan mode not prompting for state-changing browser tool calls; read-only browser_batch calls are now correctly auto-allowed</p>
<p>• Transient server rate-limit errors (429s unrelated to your usage limit) are now retried automatically with backoff for subscribers instead of failing the turn</p>
<p>• CLAUDE_CODE_RETRY_WATCHDOG now raises the default retry count for non-capacity transient errors to 300 and lifts the cap of 15 on CLAUDE_CODE_MAX_RETRIES</p>
<p>• claude agents session rows now show pull-request links as bare #N without the redundant "PR" label</p></content>
<contenttype="html"><p>• Subagents now run in the background by default, so Claude keeps working while they run and is notified when they finish (previously a gradual rollout)</p>
<p>• Claude in Chrome is now generally available</p>
<p>• Added background agent notifications in claude agents — sessions that need input or finish now fire the Notification hook (agent_needs_input / agent_completed)</p>
<p>• Added /dataviz skill for chart and dashboard design guidance with a runnable color-palette validator</p>
<p>• Gateway: added Claude Platform on AWS (anthropicAws) as an upstream provider; model-not-found responses now advance the failover chain</p>
<p>• Background agents launched from claude agents now commit, push, and open a draft PR when they finish code work in a worktree, instead of stopping to ask</p>
<p>• The built-in Explore agent now inherits the main session's model (capped at opus) instead of running on haiku</p>
<p>• Subagents and context compaction now inherit the session's extended thinking configuration, improving output quality on delegated tasks</p>
<p>• Fixed brief network drops mid-response aborting the turn — transient errors like ECONNRESET now retry with backoff instead of failing</p>
<p>• Fixed excessive background classifier requests when sandboxed processes repeatedly accessed the same network host</p>
<p>• Fixed background tasks in web, desktop, and VS Code task panels getting stuck on "Running" after they finish or after resuming a session</p>
<p>• Fixed agent teams: a teammate that dies on an API error now reports "failed" to the lead, and messaging a stuck teammate wakes it to retry immediately</p>
<p>• Fixed the /diff panel not refreshing when you switch branches or commit outside the session</p>
<p>• Fixed markdown tables overflowing and wrapping their right border when rendered in fullscreen mode</p>
<p>• Fixed Claude Platform on AWS and Mantle sessions dead-ending with "Please run /login" when the STS token expires — awsAuthRefresh now runs automatically</p>
<p>• Fixed "no route to host" for local-network hosts in macOS background agent sessions by declaring Local Network entitlements</p>
<p>• Fixed /desktop failing with "Cannot determine working directory" after entering and exiting a worktree</p>
<p>• Fixed background agents repeatedly showing "Reconnecting…" every ~52 seconds on macOS while the agents view was open</p>
<p>• Fixed pressing ← inside claude attach &lt;id&gt; exiting to the shell instead of opening the agent view</p>
<p>• Fixed claude --bg silently creating an unattachable session when combined with --print/-p; the conflicting flags are now rejected up front</p>
<p>• Fixed the workflow progress view dropping the earliest agents from the list while the phase counter stayed correct in SDK and desktop-app sessions</p>
<p>• Fixed .claude/rules/ conditional rules not loading when the target file is reached via a symlinked path</p>
<p>• Fixed Cmd+click not opening URLs in fullscreen mode in Warp on macOS</p>
<p>• Fixed double-click word selection in fullscreen mode to select the entire URL including the scheme</p>
<p>• Fixed plan mode not auto-allowing read-only tool calls when a session starts in plan mode</p>
<p>• Fixed /branch deriving its default fork name from the compaction summary instead of the first real prompt</p>
<p>• Improved focus mode: subagents launched in a turn now appear in its activity summary, and completed background notifications fold into a single count</p>
<p>• Improved syntax highlighting accuracy in code blocks, diffs, and file previews by upgrading to highlight.js 11</p>
<p>• Keyboard shortcut hints now show opt/cmd instead of alt/super when connected from a Mac over SSH</p>
<p>• Improved API retry UX: the error reason is now shown after the second attempt, and a status page link replaces the spinner tip when the API is overloaded</p>
<p>• /login now opens the sign-in dialog from the claude agents view instead of saying it isn't available</p>
<p>• Subagents now treat messages from the agent that launched them as normal task direction; an agent's message is still never treated as the user's approval</p>
<p>• Removed the /agents wizard; ask Claude to create or manage subagents, or edit .claude/agents/ directly</p></content>
<contenttype="html"><p>• Introducing Claude Sonnet 5: now the default model in Claude Code, with a native 1M-token context window and promotional pricing of $2/$10 per Mtok through August 31. Update to version 2.1.197 for access. https://www.anthropic.com/news/claude-sonnet-5</p></content>
<contenttype="html"><p>• Added support for organization default models — admins set it in the org console; it shows as "Org default" (or "Role default") in /model when you haven't picked one yourself</p>
<p>• Added readable default names for sessions at start, making them easier to identify and message</p>
<p>• Added clickable file attachments in chat — Cmd/Ctrl-click reveals the file in Finder/Explorer</p>
<p>• Security: claude mcp list/get no longer spawn .mcp.json servers that a repo self-approved via a committed .claude/settings.json; untrusted workspaces show ⏸ Pending approval</p>
<p>• Fixed waking a background job permanently deleting its conversation and re-running the original prompt when the transcript probe misread a real transcript; the file is now set aside, never deleted</p>
<p>• Fixed the rate-limit warning flickering off and rate-limit telemetry being over-counted when multiple parallel requests were in flight at the moment a usage limit was hit</p>
<p>• Fixed duplicate recap lines after a background session's turn: a schema-rejected StructuredOutput attempt no longer renders alongside its retry</p>
<p>• Fixed PowerShell git diff/git grep, egrep/fgrep, and quoted search patterns containing | being reported as failures when they exit 1, matching Bash behavior</p>
<p>• Fixed multiple claude agents side panel issues: keyboard focus getting stuck when opening an agent, background jobs losing their subagent types on every open, and sessions showing incorrect status while actively running</p>
<p>• Fixed claude agents --dangerously-skip-permissions silently falling back to auto mode instead of showing the bypass disclaimer and applying bypass mode to spawned agents</p>
<p>• Fixed mid-turn crash recovery for Remote sessions — sessions interrupted by a server restart now auto-resume on the next worker</p>
<p>• Fixed sessions moved with /cd reappearing in the old directory's resume list after a non-graceful exit when the old path contained special characters</p>
<p>• Fixed claude plugin validate skipping local plugins whose source is "." and stopping after the first error class</p>
<p>• Fixed Esc Esc at an idle prompt not opening the rewind menu (regression); use Ctrl+C or Ctrl+X Ctrl+K to stop background agents</p>
<p>• Fixed MCP OAuth requesting the authorization server's full scopes_supported catalog when no scope is specified, causing invalid_scope failures on GitLab self-hosted and other enterprise IdPs</p>
<p>• Fixed /context showing 0 tokens for all tool groups on Bedrock</p>
<p>• Fixed /deep-research misreporting verifier failures as "all claims refuted" instead of unverified</p>
<p>• Fixed plugin dependency version pins not being honored when the marketplace was added as a local folder path backed by a git repo</p>
<p>• Fixed claude agents session status: completed rows no longer flip between "Done" and "Needs your input", stalled agents are now labeled "Needs attention", and results that mention a PR show a clickable link</p>
<p>• Fixed voice dictation swallowing spaces and spuriously starting a recording during very fast typing when voice mode is enabled</p>
<p>• Improved background session reliability: long-running commands and workflows now survive the session's process being stopped, restarted, or updated — including on Windows, where background shells are handed off instead of being killed</p>
<p>• Improved background agents: workers killed by a daemon restart are now automatically resumed from where they left off the next time the agents view opens</p>
<p>• Improved /code-review workflow: merged five cleanup finders into one, cutting token usage by roughly 25%</p>
<p>• Reduced per-frame rendering work in the terminal UI by skipping no-op subtree walks during streaming</p>
<p>• The streaming idle watchdog is now on by default for all providers — it aborts and retries when a response stream produces no events for 5 minutes. Set CLAUDE_ENABLE_STREAM_WATCHDOG=0 to disable.</p>
<p>• Remote Control is now disabled when ANTHROPIC_BASE_URL points at a non-Anthropic host, matching the existing behavior under CLAUDE_CODE_USE_BEDROCK/_VERTEX/_FOUNDRY</p>
<p>• Changed opening the agents view from a foreground session to require a single ← press instead of two, matching the behavior in background sessions</p></content>
<p>• Fixed cloud sessions failing with "Could not resolve authentication method" when idle for too long before being claimed</p>
<p>• Background sessions now show clearer guidance when a window left open across an auto-update can't submit a reply, and claude daemon status explains version-skew behavior</p></content>
<contenttype="html"><p>• Added enforceAvailableModels managed setting — when enabled, the availableModels allowlist also constrains the Default model (a Default that would resolve to a disallowed model now falls back to the first allowed model), and user or project settings can no longer widen a managed availableModels list</p></content>
<contenttype="html"><p>• Added wheelScrollAccelerationEnabled setting to disable mouse-wheel scroll acceleration in fullscreen mode</p>
<p>• Fixed the /model picker hiding the model family that Default resolves to — Opus now appears as its own row on Max/Team Premium/Enterprise plans, Sonnet on Pro/Team plans, and Opus on pay-as-you-go API accounts</p>
<p>• Fixed /model picker showing a hardcoded Sonnet version label when ANTHROPIC_DEFAULT_SONNET_MODEL pins a different Sonnet</p>
<p>• Fixed the "Fable 5 is now consuming usage credits" banner incorrectly showing for enterprise accounts with usage-based billing</p>
<p>• Fixed Bedrock GovCloud regions (us-gov-*) deriving the wrong inference profile prefix (global instead of us-gov), causing 400 errors on derived model IDs</p>
<p>• Fixed background sessions inheriting another session's ANTHROPIC_* provider env (gateway URL, custom headers, /model aliases) from the shell that started the background daemon</p>
<p>• Fixed a 1-2 second pause when exiting Claude Code shortly after a shell command was interrupted or killed on macOS and Linux</p>
<p>• Fixed git commit co-author attribution showing an incorrect model name for some models</p>
<p>• Fixed the /advisor dialog pre-selecting a saved advisor model that is blocked by the availableModels allowlist</p>
<p>• Fixed skill hot-reload re-sending the entire skill listing when a single skill changed; only changed skills are now re-announced</p>
<p>• [VSCode] Added usage attribution to the Account &amp; usage dialog (/usage) showing cache misses, long context, subagents, and per-skill/agent/plugin/MCP breakdowns over the last 24h or 7d</p>
<p>• Fixed pre-warmed background workers failing with "Could not resolve authentication method" when claimed after sitting idle</p></content>
<contenttype="html"><p>• Fixed Fable 5 model names with a [1m] suffix not being normalized — Fable 5 includes 1M context by default, so the suffix is now stripped automatically</p>
<p>• Fixed a spurious "sandbox dependencies missing" startup warning on Windows when sandbox was enabled in settings</p></content>
<contenttype="html"><p>• Sub-agents can now spawn their own sub-agents (up to 5 levels deep)</p>
<p>• Amazon Bedrock now reads the AWS region from ~/.aws config files when AWS_REGION isn't set, matching AWS SDK precedence; /status shows where the region came from</p>
<p>• Added a search bar when browsing a marketplace's plugins in /plugin</p>
<p>• Added model attribute to the claude_code.lines_of_code.count OTEL metric</p>
<p>• Fixed sessions using 1M context without usage credits getting permanently stuck — the session now automatically compacts back under the standard context limit</p>
<p>• Fixed a repeating "an image in the conversation could not be processed and was removed" error when the conversation contained multiple images</p>
<p>• Fixed the agents view keeping a session under Working with a busy spinner for up to 30 seconds after the worker replied</p>
<p>• Fixed background agents potentially reading another directory's project settings (.mcp.json approvals, trust) when dispatched onto a pre-warmed worker</p>
<p>• Fixed background-session attach failing with EAUTH for sessions started on an older version after the daemon auto-updated</p>
<p>• Fixed a background sub-agent staying stuck as "active" in the agent panel after a nested agent it spawned was stopped</p>
<p>• Fixed /model suggestions in the claude agents dispatch input rendering with a misleading slash prefix and showing models disabled for your org</p>
<p>• Fixed availableModels restrictions not being applied to subagent model overrides, the agent dispatch model picker, and the advisor model</p>
<p>• Fixed availableModels allowlists hiding the /model picker's Opus and Sonnet 1M rows when entries use version-specific IDs like claude-opus-4-8</p>
<p>• Fixed the /model picker on Bedrock offering models the provider doesn't serve — selecting one silently switched the session model and lit the selection marker on multiple rows</p>
<p>• Fixed model IDs getting a doubled 1M-context suffix (e.g. [1M][1m]) when ANTHROPIC_DEFAULT_OPUS_MODEL already includes one</p>
<p>• Fixed opusplan model setting not shipping with 1M context in plan mode for entitled users; the opusplan[1m] workaround now also correctly switches to Opus in plan mode</p>
<p>• Fixed WebFetch(domain:*.example.com) wildcard domain rules never matching subdomains in allow, deny, and ask position, and file permission rules with mid-pattern wildcards (e.g. Read(secrets-*/config.json)) being rejected at startup</p>
<p>• Fixed up-arrow prompt history showing the main agent's prompts while a subagent's chat tab is open</p>
<p>• Fixed memory recall not finding mounted team memory stores (CLAUDE_MEMORY_STORES) in remote sessions</p>
<p>• Disable mouse tracking on Windows consoles that don't fully support it</p>
<p>• Fixed the /plugin marketplace list losing its cursor after backing out of a long plugin list, and Esc from the plugin browser returning to the wrong tab</p>
<p>• Improved performance in long conversations by removing redundant message normalization and avoiding full message-history transforms when streaming tool-use state is unchanged</p>
<p>• Reduced idle CPU usage: /goal status chip no longer re-renders the terminal at 5 Hz while idle, and fewer UI re-renders while subagents run in parallel</p>
<p>• Improved Claude in Chrome tool loading: browser tools now load in a single batched call instead of one per tool</p>
<p>• Improved the non-interactive Usage Policy refusal message to suggest starting a new session or changing your model</p>
<p>• /code-review now keeps the ultra option visible when you're not signed in to claude.ai, with an explanation that the cloud review requires a claude.ai account</p>
<p>• Shortened the Remote Control footer indicator to "/rc active" and hid it on narrow terminals</p>
<p>• Stopped promoting /loop in remote sessions, where pending loops don't keep the container alive</p>
<p>• [VSCode] Fixed PowerShell tool calls rendering as raw JSON instead of a proper command display and permission dialog, and stripped ANSI escape codes from displayed shell output</p></content>
<contenttype="html"><p>• Introducing Claude Fable 5: a Mythos-class model that we’ve made safe for general use. Fable’s capabilities exceed those of any model we’ve ever made generally available. Update to version 2.1.170 for access. https://www.anthropic.com/news/claude-fable-5-mythos-5</p>
<p>• Fixed sessions not saving transcripts (and not appearing in --resume) when launched from the VS Code integrated terminal or any shell that inherited Claude Code environment variables.</p></content>
<contenttype="html"><p>• Self-hosted runner: added a post-session lifecycle hook that runs after the session ends and before the workspace is deleted, so you can snapshot uncommitted work or export logs; also made the child-process SIGTERM→SIGKILL window configurable (default unchanged at 5s)</p>
<p>• Added --safe-mode flag (and CLAUDE_CODE_SAFE_MODE) to start Claude Code with all customizations (CLAUDE.md, plugins, skills, hooks, MCP servers) disabled for troubleshooting</p>
<p>• Added /cd command to move a session to a new working directory without breaking the prompt cache mid-session</p>
<p>• Added a disableBundledSkills setting and CLAUDE_CODE_DISABLE_BUNDLED_SKILLS environment variable to hide bundled skills, workflows, and built-in slash commands from the model</p>
<p>• Fixed Up/Down arrows jumping to command history past the wrapped rows of a long input line — they now move through each visual row first, and history recall enters at the near edge</p>
<p>• Fixed enterprise managed MCP policies (allowedMcpServers/deniedMcpServers) not being enforced on reconnect, IDE-typed configs, --mcp-config servers during the first session after install, or before remote settings loaded; also fixed slow cold starts for orgs without remote settings</p>
<p>• Fixed a ~30-50ms UI stall at the start of each turn for macOS users logged in with claude.ai credentials</p>
<p>• Fixed claude -p being slow or appearing to hang on Windows while waiting for the slash-command/skill scan (regression in 2.1.161)</p>
<p>• Fixed Remote Control getting stuck on "reconnecting" after resuming a session when an OAuth token refresh happened at the same time</p>
<p>• Fixed Git Credential Manager's "Connect to GitHub" popup appearing on Windows at startup when background git commands ran without cached credentials</p>
<p>• Fixed footer hints (e.g. "esc to interrupt") not showing for users with a custom statusline</p>
<p>• Fixed stale permission and dialog prompts reappearing every time you reattached to a remote session whose worker had died while waiting on them</p>
<p>• Fixed claude agents --json omitting blocked and just-dispatched background sessions; added --all to include completed sessions, plus new id and state fields</p>
<p>• Fixed agents view leaving a stale/garbled frame after navigating back from an agent on WSL in Windows Terminal</p>
<p>• Fixed background agents ignoring project-level settings env values (e.g. ANTHROPIC_MODEL) when dispatched onto a pre-warmed worker</p>
<p>• Fixed MCPB plugin cache being spuriously invalidated on Windows, causing unnecessary re-extraction</p>
<p>• Fixed plugin .in_use PID lock files accumulating without bound; stale markers from crashed sessions are now swept once per day</p>
<p>• Fixed untrusted project settings being able to set OTEL client-certificate paths without trust confirmation</p>
<p>• /workflows now opens immediately even while a turn is in progress</p>
<p>• Improved TaskCreate reliability: malformed inputs are repaired automatically and validation errors for unloaded tools include the schema</p>
<p>• Improved the error message shown when your organization has disabled API key authentication, with guidance based on where the active API key comes from</p>
<p>• Reduced CPU usage while responses stream and during spinner animations</p>
<p>• Restored a default 5-minute idle timeout on Vertex/Foundry so a stalled stream aborts instead of hanging indefinitely; set API_FORCE_IDLE_TIMEOUT=0 to opt out</p>
<p>• Remote-managed settings with an invalid entry now apply their remaining valid policies and surface the validation error, instead of silently dropping the whole payload</p>
<p>• Background sessions now preserve --ide, --chrome, --bare, --remote-control, and other flags across retire→wake, and respawn state validation was hardened</p>
<p>• Background sessions are now told that shared-checkout edits are blocked until they enter a worktree, avoiding a wasted rejected edit before EnterWorktree</p>
<p>• The "CLAUDE.md is too long" warning threshold now scales with the model's context window</p>
<p>• Auto-updater on Windows now stops retrying within a session once claude.exe is held by another process</p>
<p>• Improved color contrast for skill tags in the slash-command menu</p>
<p>• Promo credit claims for Apple/Google-billed subscribers without a payment method now explain where to add one</p>
<p>• Added a tip suggesting claude agents when running multiple concurrent sessions</p></content>
<contenttype="html"><p>• Bug fixes and reliability improvements</p></content>
</entry>
</feed>
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.