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