Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.278 Feeds RSS JSON llms.txt Unofficial
One change · claude-code

Claude Code changelog changed

changelog

Nearest release: v2.1.274, published 2 hours before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Read
Lines+111added
Lines−0removed
From line 6 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits39to this page, all time

The whole hunk

from line 6, old and new numbered
/
lines

This page is larger than the 256 KiB this site keeps, so one side of the diff below stops where the stored text does.

from line 6
66 
77Run `claude --version` to check your installed version.
88 
9<Update label="2.1.274" description="September 17, 2026">
10 * Added a visible warning when memory usage is critical, with steps to free memory or restart safely
11 * Added `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` to bound how long the first non-interactive turn waits for connecting MCP servers (`0` = don't wait)
12 * Added `effort` attribute to the `claude_code.llm_request` OpenTelemetry trace span, matching the `api_request` event
13 * Added `claude_code.managed_settings_resolved` OTel event: managed-settings sources and policy helper state; redacted settings and digests with `OTEL_LOG_MANAGED_SETTINGS=1`
14 * Added `store.connect_timeout_seconds` to the Claude apps gateway config to lengthen the Postgres connect timeout (default 5 seconds), and improved the boot error when the database is unreachable to point to `store.postgres_url` and the configured timeout
15 * Added `enduser.sub`, the IdP subject, to the telemetry Claude Desktop and Cowork send through a Claude apps gateway
16 * Added a Claude apps gateway warning when a replica has more requests open than the 256 it sends upstream at once, and a startup log line showing that limit
17 * Added click-to-expand for collapsed teammate and agent messages in fullscreen mode
18 * Fixed sessions getting stuck endlessly retrying "unexpected tool\_use\_id" 400 errors: corrupted transcripts now self-heal where possible, and otherwise a clear error (with a `/rewind` hint) ends the loop
19 * Fixed MCP servers configured as `http` that only speak legacy HTTP+SSE failing to connect when they answer the first request with 422 or another 4xx error
20 * Fixed Streamable HTTP MCP tool calls timing out after about 5 minutes even when a longer per-server `timeout` was set
21 * Fixed MCP prompts and resources not refreshing when a server sends list-changed notifications without declaring `listChanged`
22 * Fixed MCP tool calls refused with 403 insufficient\_scope being reported as an expired sign-in: the error now names the missing permissions and points to `/mcp` re-authentication
23 * Fixed hook-driven sessions (such as an active `/goal`) ending with "Prompt is too long" instead of compacting when the context overflowed again after a reactive compaction
24 * Fixed an active `/goal` being lost when resuming (`--continue` / `--resume`) a session that had compacted
25 * Fixed `claude agents` losing `--model`, `--effort`, `--permission-mode`, `--allow-dangerously-skip-permissions` and `--agent` after an auto-update relaunch
26 * Fixed a per-turn slowdown when a language server publishes project-wide diagnostics for thousands of files
27 * Fixed subagents with `model: "opus"` on Bedrock, Vertex or Foundry leaving the session's model when its id has no recognizable model family (unless `ANTHROPIC_DEFAULT_OPUS_MODEL` is set)
28 * Fixed self-hosted runner sessions failing every turn with a 401 after a few failed token refreshes, until the next scheduled refresh; the runner now keeps retrying, and fetches a new token after a 401
29 * Fixed clickable links to local file paths doing nothing in VS Code and other terminals that require a `file://` URI
30 * Fixed the transcript renumbering ordered lists in your own messages (typing "3. 2. 1." displayed "3. 4. 5."); numbers and "N)" markers now show as typed
31 * Fixed AskUserQuestion preview notes being attached to a previously chosen option instead of the highlighted one
32 * Fixed AskUserQuestion preview mode dropping the highlighted option when submitting a note with Enter
33 * Fixed a resumed background agent keeping half of an interrupted tool batch when one of its calls was approved with a message
34 * Fixed a local `claude -p --resume` started with `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` not reporting background tasks the previous process left unfinished
35 * Fixed the first turn of a cloud session sometimes starting without the tools of an SDK-hosted MCP server that was still connecting
36 * Fixed background agent notifications claiming the agent had no live background work when it was still waiting on its own background task and would resume
37 * Fixed error hints in Claude Desktop sessions to suggest slash commands like `/usage-credits` instead of CLI flags that cannot be used there
38 * Fixed `/schedule` saving a routine's prompt without its message role when Claude writes the routine in the shape that listing routines returns
39 * Fixed `/status` not showing the `apiKeyHelper` failure that its own error banner told you to check
40 * Fixed `/fast on` in non-interactive sessions reporting on and then turning off under an organization's managed fast mode policy; it now says the organization has disabled it
41 * Fixed the Artifact tool asking you to approve an update to an artifact that it then refused because the session had not read the latest version
42 * Fixed Cowork and claude.ai cloud sessions with network access on treating reads of a teammate's artifact as if network access were off
43 * Fixed a plugin or marketplace directory with no git repository of its own taking its version from an enclosing git repository, such as a git-managed `~/.claude`
44 * Fixed `--strict-mcp-config` with an empty `--mcp-config` holding the first non-interactive turn for up to `MCP_TIMEOUT` on incidental MCP servers
45 * Fixed Stop prompt hooks re-sending their whole prompt on every block in a conversation; repeat blocks now name the condition with a 500-character label
46 * Fixed extra empty editor windows opening at startup on Linux under Wayland when running inside the Cursor or VS Code terminal
47 * Fixed an unhandled promise rejection in the Claude apps gateway when Postgres drops a connection during a spend check
48 * Fixed Claude apps gateway cutting every open stream on SIGTERM: it now lets in-flight requests finish for up to 25 seconds before exiting (`CLAUDE_GATEWAY_DRAIN_TIMEOUT_MS`)
49 * Fixed `installed_plugins.json` being rewritten on nearly every start-up when plugin policy comes from remote managed settings, which made Claude Desktop reload every open session's plugins
50 * Fixed headless and SDK sessions making a separate model call for every background task that finished; completions already queued are now answered by one call
51 * Fixed the Bash tool re-sourcing the shell profile (a multi-second stall on the next command) after every plugin reload; it now does so only when the plugins' `bin/` directories changed
52 * Fixed plugins with a top-level `$schema` in `hooks/hooks.json` showing an "unknown key" notice
53 * Fixed MCP connection errors and the MCP login tool's description showing secrets resolved from `${VAR}` placeholders in MCP configs
54 * Fixed Bash permission checks for commands that loop over or assign certain special shell variables; these commands now ask for permission
55 * Fixed worktree-isolated sessions accepting Bash commands with certain nested shell expansions; these are now refused
56 * Fixed the Edit permission prompt preview sometimes showing a different location than the approved edit in files with multi-byte characters
57 * Fixed background commands being stopped after 30 idle minutes on machines under mild memory pressure; they're now stopped only when memory is critically low, and the debug log says why
58 * Fixed a message a subagent sends to the main session disappearing from the Claude Desktop transcript after a relaunch
59 * Fixed a plugin loaded from a `.zip` being served from a stale extraction after several overlapping reloads
60 * Fixed a sub-agent's progress summary being replaced by a runaway multi-paragraph reply
61 * Improved startup in `--input-format stream-json` sessions: the first turn no longer waits up to 2s for still-connecting MCP servers whose tools tool search defers; they arrive on a later turn
62 * Improved Monitor tool notifications: a script's final output and its exit now arrive as one notification instead of two, saving a model turn
63 * Improved Artifact tool errors: when you are not signed in to claude.ai the terminal now says so on the first attempt, and Claude is told to stop retrying a rejected call sooner
64 * Improved artifact publishing: a publish built on an older version is stopped before it is sent, with the newer page to merge
65 * Improved safety checks before removing an agent worktree that contains submodule checkouts
66 * Improved `OTEL_LOG_RAW_API_BODIES=file:<dir>` output: a new `index.jsonl` and `request_body_id` / `message.id` event attributes link each response to its request file and transcript message
67 * Improved Claude apps gateway boot: it now tries the first Postgres connection up to three times before exiting, so a database that is reachable a few seconds late no longer fails the boot
68 * Improved the Claude apps gateway's spend-limit check under load: it now takes one database round trip instead of four, so fewer checks time out on a busy gateway
69 * Improved Claude apps gateway sign-in rate limit errors: `/login` now explains the refusal, and the gateway log says which limit was hit and which setting to change
70 * Changed Bedrock, Vertex, Foundry and telemetry-disabled installs to use the v2 MCP client and MCP 2026-07-28 negotiation with direct HTTP servers by default, as other installs already do (opt out: `MCP_SDK_GENERATION=v1` or `MCP_PROTOCOL_NEGOTIATION=legacy`)
71 * Changed `/code-review` to use leaner inline review prompts for every model that has no tuned settings of its own, instead of spawning many review subagents
72 * Changed `"type": "sdk"` MCP entries in `.mcp.json`, settings, plugins and agent files to be skipped with a warning: only an SDK host application can register in-process servers
73 * Changed artifact watching in local sessions: a new version published elsewhere no longer starts a turn; Claude learns of it from a later Artifact tool result
74 * Changed plugin and marketplace clones to leave Git LFS files as pointers instead of downloading them; `git lfs pull` in the checkout fetches them
75 * Changed self-hosted runners to skip a read-only repository the git host refuses at the access check instead of failing the session start
76 * Changed the `/status` GitHub line to read "Cloud sessions", and `/web-setup`, `/ultrareview`, and teleport messages to say "cloud session" instead of "Claude Code on the web"
77 * \[VSCode] Added continuation of the step a window reload interrupted, labeled in the chat, with a Claude Code: Continue After Reload setting to turn it off
78 * \[VSCode] Added Memory and Instructions entries to the Customize menu: Memory shows the auto-memory toggles, the saved memories and the memory folders, and Instructions edits the CLAUDE.md files
79 * \[VSCode] Added a `claudeCode.lockEditorGroups` setting to stop Claude from locking the editor groups it opens in
80 * \[VSCode] Fixed a `/btw` side question asked in a new conversation's first seconds occasionally showing another session's side-question history
81 * \[VSCode] Fixed a brief freeze when the extension first looks up your global gitignore file
82 * \[VSCode] Fixed a message sent while Claude was running a tool disappearing from the conversation after a window reload
83 * \[VSCode] Fixed the Manage Plugins enable toggle and MCP servers dialog rows being unreachable from the keyboard
84 * \[VSCode] Fixed sign-ins and sign-outs made in a terminal not showing until a reload after `CLAUDE_CONFIG_DIR` changed in the Environment Variables setting
85 * \[VSCode] Fixed Edit diffs in the chat being cut off at the bottom at some panel widths and for long wrapped lines; diff boxes now fit the rows shown
86 * \[VSCode] Fixed overlapping settings writes from the extension leaving `~/.claude/settings.json` unparseable or dropping a setting
87 * \[VSCode] Fixed Open in New Tab (Ctrl/Cmd+Shift+Esc) sometimes leaving the new tab's message box unfocused, so typing went nowhere until you clicked it
88 * \[VSCode] Fixed reopening a closed Claude tab splitting the editor layout when its locked group still holds another Claude tab and a file
89 * \[VSCode] Fixed New session opening another locked editor group whenever a file tab shared the group with your Claude tab
90 * \[VSCode] Fixed session names shifting sideways in the session picker while typing a search query
91 * \[VSCode] Fixed the plan review card cutting off its Send feedback button and reason field when a plan has several comments; the comment list now scrolls
92 * \[VSCode] Fixed inline code and code blocks in chat replies being unreadable under the High Contrast themes
93 * \[VSCode] Improved screen reader navigation of the conversation: each message is announced as "You" or "Claude", with the tool name for tool steps
94 * \[VSCode] Changed the default global gitignore file to `$XDG_CONFIG_HOME/git/ignore` when `XDG_CONFIG_HOME` is an absolute path
95 * \[Claude Code on the web] Added a "Compare against" branch picker to a cloud session's diff view, so you can diff its changes against any branch instead of only the base branch
96 * \[Claude Code on the web] Fixed git operations in cloud sessions failing with "service unavailable" when GitHub's token renewal briefly errors
97 * \[Claude Code on the web] Fixed editing a routine occasionally making it fire twice or re-enabling a routine that had just been paused
98 * \[Claude Code on the web] Fixed commits in cloud sessions occasionally failing with a signing error for a few minutes after the session's credentials refreshed
99 * \[Claude Code on the web] Fixed the toast after saving a routine whose GitHub trigger couldn't be linked to show the reason, such as a per-repository trigger limit, instead of only "edit to retry"
100 * \[Claude Code on the web] Fixed sessions sometimes flipping back to unread right after you mark them read
101 * \[Claude Code on the web] Changed routines to skip a run and retry for up to 72 hours when the owner's GitHub connection is missing, instead of switching the routine off at the first failed check
102 * \[Claude Code on the web] Changed a routine's on-hold notice: when your subscription is paused it now tells you to turn the routine back on yourself instead of promising an automatic resume
103 * \[Claude Tag] Added a Guests setting to the Add channel and Add workspace forms in Claude Tag admin settings, so owners can pick Inherit, Allow, Channel only or Restrict up front
104 * \[Claude Tag] Fixed Claude not answering when another Slack app or bot @mentions it; the tag now gets a reply and wakes Claude in a channel it had stopped following after days of inactivity
105 * \[Claude Tag] Fixed Claude missing another app's message that tagged @Claude right after a new Slack channel was created; it's now delivered once Claude has joined
106 * \[Claude Tag] Fixed Claude folding a follow-up sent minutes after its last Slack message into it as a silent edit; late updates such as blockers now post as a new reply that notifies
107 * \[Claude Tag] Fixed Claude's Slack search failing with an error whenever it searched within a single channel; it now returns that channel's matching messages
108 * \[Claude Tag] Fixed a safety-filter stop silently resetting a Slack thread's context when nobody was waiting; Claude now always says so and no longer cancels background work still running
109 * \[Claude Tag] Fixed email addresses in Claude's Slack replies rendering with a visible `mailto:` prefix; they now show as the plain, clickable address
110 * \[Claude Tag] Fixed Claude refusing to watch an Enterprise Grid channel shared with the whole organization when asked from another workspace in the grid
111 * \[Claude Tag] Fixed the Environment picker in Claude Tag admin settings showing a raw environment ID instead of the environment's name for archived or app-created environments
112 * \[Claude Tag] Improved Claude's live progress checklist in Slack: capped at 2,000 characters, reposted at most every 15 minutes in busy threads, with older "Latest task list" links updated
113 * \[Claude Tag] Removed the repeated guest-attribution note Claude appended to a Slack canvas each time it edited one in a channel using the "Channel only" guest setting
114 * \[Code Review] Fixed re-reviews occasionally leaving a fixed finding's thread open when the new review also filed a lower-severity note under it
115 * \[Code Review] Fixed rare reviews ending with "Code review encountered an error" when GitHub or an internal service failed transiently at launch; they now wait and retry
116 * \[Code Review] Improved how Code Review words each posted finding: short plain sentences that say who is affected, where the code goes wrong, and the fix up front
117 * \[Code Review] Improved the check-run card and PR comment when a review is skipped because of an organization limit: each cause now links the admin page that fixes it
118</Update>
119 
9120<Update label="2.1.273" description="September 15, 2026">
10121 * Added `x-claude-code-request-class`, `x-claude-code-agent-type`, `x-claude-code-prev-tool-durations`, `x-claude-code-compaction` and `x-claude-code-context-compacted` request headers for LLM gateways; opt in with `CLAUDE_CODE_GATEWAY_HINT_HEADERS=1`
11122 * Added a notification when an MCP server disconnects mid-session and automatic reconnection gives up, pointing at `/mcp`
from line 1831
17201831 * Fixed Claude-in-Chrome 403-looping on reconnect when the session's OAuth token lacks a required scope
17211832 * Fixed workflow saves and scheduled-task writes following a symlink at `.claude`, which could redirect writes outside the project
17221833 * Fixed MCP re-authenticate revoking working credentials before the new sign-in succeeds, and the reconnect needs-auth message in background sessions pointing at an unusable command
1723 * Fixed read-only commands on Windows accessing network paths without a permission prompt
1724 * Fixed Bash command parsing of non-ASCII characters to match real shell word boundaries
1725 * Fixed PowerShell tool permission validation of commands containing invisible Unicode characters
1726 * Fixed dialogs in fullscreen mode stretching past the right-hand edge of their panel
1727 * Fixed the `/config` settings list in fullscreen mode clipping its keyboard-hint footer
1728 * Fixed the transcript-mode (Ctrl+O) footer hint wrapping on terminals narrower than 104 columns
1729 * Fixed the Prometheus metrics endpoint (`OTEL_METRICS_EXPORTER=prometheus`) emitting invalid `# UNIT` lines
1730 * Fixed skills and commands changed during a session not appearing in the slash menu until restart
1731 * Fixed plugin skills with a `name` frontmatter field losing their plugin prefix in slash-command autocomplete
1732 * Fixed telemetry misreporting permission denials: failed permission-prompt requests no longer count as user rejections, and user interrupts are now reported as user aborts instead of rejections
1733 * Improved the `/fork` confirmation to one line with the new session's name, `claude attach` id, and a note when the copy shares your checkout
1734 * Improved validation of `git` and `gh` command arguments in the PowerShell tool
1735 * Improved the `/ultrareview` diff-too-large error to show configured limits, measured diff size, and largest contributing files
1736 * Improved `/code-review ultra` empty-diff message to name the exact base ref and suggest passing an explicit base
1737 * Improved the spend limit adjustment prompt to show the server's reason when a spend limit change is rejected
1738 * `/context` now shows an explicit warning when the conversation exceeds the context window, and a failed `/compact` displays as an error
1739 * `/rewind` no longer restores or deletes files through symlinks or hard links at tracked paths and reports how many paths it skipped
1740 * Background sessions: `/mcp` and `/install-github-app` now park a "needs input" request in the agent view when no client is attached
1741 * Updated the bundled dataviz skill: reordered the default chart palette and fixed guidance that suggested direct labels for four-series charts
1742 * \[VSCode] Fixed right-to-left text (Arabic, Hebrew, Persian) rendering in the wrong order when mixed with English or code
1743 * Fixed cloud sessions dropping the in-flight message when the session's container restarts mid-turn — the interrupted turn now re-runs on resume instead of leaving the session unresponsive
1744</Update>
1745 
1746<Update label="2.1.215" description="July 19, 2026">
1747 * Claude no longer runs the `/verify` and `/code-review` skills on its own; invoke them with `/verify` or `/code-review` when you want them
1748</Update>
1749 
1750<Update label="2.1.214" description="July 18, 2026">
1751 * Fixed single-segment `dir/**` allow rules like `Edit(src/**)` auto-approving writes to nested `dir/` directories anywhere in the tree instead of only `<cwd>/dir`
1752 * Fixed a permission-check bypass affecting commands run in Windows PowerShell 5.1 sessions
1753 * Fixed Bash permission checks to fail closed on file-descriptor redirect forms that bash parses differently than the permission analyzer
1754 * Fixed Bash permission checks misjudging very long commands — commands over 10,000 characters now always prompt instead of running automatically
1755 * Fixed Bash permission checks treating zsh variable subscripts and modifiers in `[[ ]]` comparisons as inert text — these commands now prompt for approval
1756 * Fixed Bash permission checks to no longer auto-approve certain `help` and `man` commands that could run unsafe options, command substitutions, or backslash paths
1757 * Fixed permission prompts on remote sessions that could proceed before the local confirmation dialog
1758 * Added the EndConversation tool: Claude can end sessions with highly abusive users or jailbreak attempts, as on claude.ai since 2025 — see [https://www.anthropic.com/research/end-subset-conversations](https://www.anthropic.com/research/end-subset-conversations)
1759 * Added a periodic progress heartbeat for long-running tool calls that previously went silent
1760 * Added an ISO `modified` timestamp to memory file frontmatter
1761 * Added `message.uuid`, `client_request_id`, and `tool_source` attributes to OpenTelemetry log events for message-level correlation and tool provenance
1762 * Added `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` to configure the 60 KB truncation limit on OpenTelemetry content attributes
1763 * Added reasoning effort to the `subagentStatusLine` payload, so custom agent rows can render model and effort
1764 * Added permission prompts for `docker` commands (including the Podman `docker` shim) carrying daemon-redirect flags (`--url`, `--connection`, `--identity`, and Podman's remote mode) that previously ran without one
1765 * Fixed a crash when a GrowthBook feature evaluates to null, and a bug where a malformed flag payload could wipe the cached feature flags
1766 * Fixed Bash tool killing the Claude session when a `pkill -f` pattern accidentally matched the CLI's own process (Linux)
1767 * Fixed unbounded memory growth when `--settings` points at a device file or multi-GB file; oversized (>2 MiB) settings files now fail at startup with a clear error
1768 * Fixed streaming turns failing with "Socket is closed" behind corporate proxies on Windows
1769 * Fixed stream-json output truncation at exit for slow-reading SDK/pipeline consumers; the exit drain now scales with queued bytes instead of a flat 2s cap
1770 * Fixed scheduled tasks refusing their own configured prompt as untrusted input — the fired prompt is now delivered as the session's assigned task
1771 * Fixed PowerShell tool commands hanging until timeout when a child process waited on standard input (Windows)
1772 * Fixed Python scripts under the PowerShell tool crashing with UnicodeDecodeError when reading non-UTF-8 data from standard input (Windows)
1773 * Fixed Python scripts run via the PowerShell tool crashing with UnicodeEncodeError on non-ASCII output, and PowerShell 7 error messages containing raw ANSI escape sequences (Windows)
1774 * Fixed the PowerShell tool reporting `where.exe`, `fc.exe`, and `diff.exe` as errors when they return a valid negative answer (Windows)
1775 * Fixed `>` and `>>` under the PowerShell tool on Windows PowerShell 5.1 writing UTF-16LE files that other tools couldn't read as UTF-8
1776 * Fixed a displaced background daemon deleting its successor's control socket on shutdown, which made the next client kill the healthy replacement daemon
1777 * Fixed background sessions parked with `←` or `/background` and left idle keeping the background daemon and a worker process alive indefinitely
1778 * Fixed completed background sessions being impossible to remove via `claude rm` or the agent view once the background service had gone idle
1779 * Fixed background sessions dispatched from a non-git folder being impossible to delete from the agents view
1780 * Fixed reopening a stopped background session failing to restore its saved conversation when an unreadable folder exists in the session store
1781 * Fixed the Remote Control "session ready" push notification firing for sessions where Remote Control was not explicitly enabled
1782 * Fixed `/install-github-app` and the `/mcp` settings menu being blocked in agent-view sessions — they're now refused only in background sessions with no terminal attached
1783 * Fixed plugins enabled via the `--settings` CLI flag not loading (regression since v2.1.181)
1784 * Fixed feature flags going stale in long-running sessions after the OAuth token rotates
1785 * Fixed `/ultrareview` refusing to run in repos with no merge base — it now offers to review all tracked files
1786 * Fixed `claude update` and `claude doctor` hanging silently, and the `/status` System diagnostics section going blank, when a shell-config path is a directory
1787 * Fixed memory frontmatter values being silently truncated at an inline `#` when memory files are saved
1788 * Fixed session cost and token telemetry double-counting on streams that emit multiple cumulative `message_delta` frames
1789 * Fixed a spurious "check your network" warning that appeared while the advisor was thinking
1790 * Fixed hooks with exit code 2 not blocking as documented when the hook's stdout JSON fails schema validation
1791 * Fixed OTel log events emitted outside the turn's async context missing the interaction span's trace context
1792 * Fixed MCP transient errors during prompts/resources refresh clearing the server's slash commands and resources
1793 * Improved the `claude rc` workspace-trust error in the home directory to say trust there is never saved and to suggest running from a project directory
1794 * Changed single-segment `dir/**` hook `if:` conditions to match only `<cwd>/dir`; write `**/dir/**` for any-depth matching. `deny`/`ask` permission rules keep their any-depth match.
1795 * Changed `file` commands using `-m`/`--magic-file` or `-f`/`--files-from` to require permission instead of being auto-allowed as read-only
1796 * Changed keep-alive connection pooling to disable after a stale-connection error, so retries open a fresh socket
1797 * Changed SessionStart hooks to report source `"fork"` when a session begins as a fork instead of `"resume"`
1798</Update>
1799 
1800<Update label="2.1.212" description="July 17, 2026">
1801 * `/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`
1802 * Added `claude auto-mode reset` to restore the default auto-mode configuration, with a confirmation prompt (pass `--yes` to skip)
1803 * 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
1804 * 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
1805 * 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`
1806 * 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
1807 * Fixed plan mode auto-running file-modifying Bash commands (e.g. `touch`, `rm`) without a permission prompt or SDK `canUseTool` callback
1808 * Fixed worktree creation following a repository-committed symlink at `.claude/worktrees`, which could create files outside the repository
1809 * 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
1810 * 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
1811 * 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
1812 * Fixed shell mode (`!`) not executing commands containing file paths while the path autocomplete popup was open
1813 * Fixed auto-mode denial notifications rendering broken characters when a long denial reason was truncated mid-emoji
1814 * 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
1815 * Fixed `/ultrareview` rejecting PR references like `#123`, `PR 123`, and pasted PR URLs; error hints now name the command you actually typed
1816 * Fixed `/ultrareview <branch>` not fetching the branch from origin when it exists remotely; it now suggests the closest branch name on typos
1817 * Fixed `/ultrareview` skipping the billing confirmation in a new conversation after `/clear`
1818 * Fixed `/ultrareview`'s "not a git repository" error on Claude Desktop now suggesting the project's repository folder instead of terminal commands
1819 * 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
1820 * 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
1821 * Fixed `ExitWorktree` failing with "no active EnterWorktree session" after resuming a session with `--continue`/`--resume` in print/SDK mode
1822 * Fixed the workflow agent grid staying empty for Remote Control clients that join a session mid-run
1823 * Fixed streaming-mode control requests being marked complete before their handler finished, which could lose the request on session restart
1824 * Fixed background sessions created with `/fork` losing their live-parent protection after a state write failure
1825 * 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
1826 * Fixed agent teams: a stopping teammate could send the leader duplicate idle notifications when team initialization re-ran within a session
1827 * Fixed the plan-approval dialog footer splitting "ctrl+g to edit in `<editor>`" apart when the file path is long
1828 * Fixed the welcome banner keeping its old panel widths after a combined width+height terminal resize in fullscreen mode
1829 * Fixed diff previews losing their line numbers and +/- markers in narrow layouts
1830 * Fixed @-mentions attaching nothing after a partial file read, plugin uninstall targeting the wrong marketplace, and false "Command timed out" on exit code 143
1831 * Fixed OpenTelemetry HTTP exports being rejected with 411/400 by Azure Monitor and other endpoints that don't accept chunked transfer encoding
1832 * Fixed OTLP event log records missing `trace_id`/`span_id` when `TRACEPARENT` is set in SDK/headless mode
1833 * Fixed conversations with many images incorrectly failing with "Request too large" errors, and improved the error message to explain the actual cause
1834 * Fixed web search and web fetch returning "API Error" text as search results or page content when the API was overloaded
1835 * Improved web search and web fetch reliability by retrying 529 errors and rate-limited requests with bounded backoff
1836 * Improved prompt caching: the mid-conversation system block now works behind LLM gateways and custom base URLs (Bedrock, Vertex, 1P)
1837 * Improved background agent attach: cold-attaching now instantly shows the formatted transcript while the session boots, instead of a blank wait
1838 * Reduced token usage in inter-agent messaging: `SendMessage` bodies are no longer duplicated into replayed history and tool results
1839 * Changed `/fork` to name the copy after your prompt when the session has no title, so the row is recognizable in the agent view
1840 * Changed bare `/btw` to reopen the side-question panel on your most recent exchange so you can browse earlier answers
1841 * Changed the `←` footer hint to pulse `N done` for a moment when a background agent finishes while nothing needs your input
1842 * Deprecated the Task tool's `mode` parameter (now ignored); subagents inherit the parent session's permission mode by default
1843 * Changed Enterprise `forceLoginMethod` to be enforced for VS Code extension, SDK, `setup-token`, and `install-github-app` logins, not just the terminal
1844 * Changed session transcripts to record the reasoning effort level on each assistant message
1845 * 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
1846 * 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"
1847 * Updated the auth status panel title from "Cloud authentication" to "Authentication"
1848 * Corrected an earlier release note (2.1.200): tmux through the 3.6 series lacks synchronized output; newer tmux with support is detected automatically
1849</Update>
1850 
1851<Update label="2.1.211" description="July 15, 2026">
1852 * Added `--forward-subagent-text` flag and `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` environment variable to include subagent text and thinking in stream-json output
1853 * Fixed permission previews relayed to chat channels not neutralizing bidirectional-override, zero-width, and look-alike quote characters, so tool inputs cannot visually alter the approval message
1854 * Fixed auto mode overriding a PreToolUse hook's `ask` decision for unsandboxed Bash — a hook `ask` now floors the decision at a prompt
1855 * Fixed parallel Claude Code sessions al
1834 * Fixed read-only commands on W