<?xml version="1.0" encoding="UTF-8"?><rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Claude Code Changelog</title><link>https://code.claude.com/docs/en/changelog</link><atom:link href="http://rss.144-124-237-35.sslip.io/claude/code/changelog" rel="self" type="application/rss+xml"></atom:link><description>Changelog for Claude Code CLI - Powered by AtomRSS</description><generator>AtomRSS</generator><webMaster>contact@atomgroup.dev (AtomRSS)</webMaster><language>en</language><lastBuildDate>Sat, 08 Aug 2026 05:12:16 GMT</lastBuildDate><ttl>5</ttl><item><title>2.1.226</title><description>&lt;ul&gt;
&lt;li&gt;Bug fixes and reliability improvements&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-226</link><guid isPermaLink="false">claude-code-2.1.226</guid><pubDate>Fri, 07 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.225</title><description>&lt;ul&gt;
&lt;li&gt;Added gateway spend-limit support to Claude Code’s usage warning; the limit-reached message now names the cap, its reset time, and the operator’s message (requires the gateway on 2.1.225)&lt;/li&gt;
&lt;li&gt;Added a workspace trust prompt to &lt;code&gt;claude agents&lt;/code&gt; for untrusted directories, matching the behavior of &lt;code&gt;claude&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed a transient 401 replacing a long-lived &lt;code&gt;CLAUDE_CODE_OAUTH_TOKEN&lt;/code&gt; with a stored login’s short-lived token, breaking headless sessions until restart&lt;/li&gt;
&lt;li&gt;Fixed MCP OAuth servers on macOS intermittently failing with a burst of 401 errors, as if never authenticated, after a keychain read timed out&lt;/li&gt;
&lt;li&gt;Fixed auto mode counting a safety-filter refusal of its own permission check toward the consecutive-block limit; the action is still denied, but the model is now told to move on rather than retry&lt;/li&gt;
&lt;li&gt;Fixed cross-session messages staying parked without a notice or expiry in headless sessions and during startup&lt;/li&gt;
&lt;li&gt;Fixed conversation history breaking on Remote Control session resume after very large conversations were compacted&lt;/li&gt;
&lt;li&gt;Fixed hovering over a session in another project in the agents list changing the directory the next agent starts in&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude self-hosted-runner&lt;/code&gt; registering and then failing every session when &lt;code&gt;--base-dir&lt;/code&gt; cannot be created or written; it now exits at startup with a clear error&lt;/li&gt;
&lt;li&gt;Fixed Claude Code on the web sessions being misreported as stuck, re-sending a growing event backlog on every reconnect&lt;/li&gt;
&lt;li&gt;Improved Remote Control: photos attached from the Claude app are now shown to Claude directly instead of being read from disk with a separate tool call&lt;/li&gt;
&lt;li&gt;[VSCode] Fixed Focus view folding away the latest to-do list, a pending question’s context, and settled answers; thinking-only folds show “Thought for Ns” and re-collapse when their turn completes&lt;/li&gt;
&lt;li&gt;SendMessage can now start a conversation with your Remote Control sessions on other machines by name (&lt;code&gt;ListAgents&lt;/code&gt; shows them as &lt;code&gt;name [ref]&lt;/code&gt;), instead of only replying after they message you first&lt;/li&gt;
&lt;li&gt;SendMessage: a Remote Control recipient you already confirmed is never swapped for a same-named session on this machine when its own list couldn’t be checked&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-225</link><guid isPermaLink="false">claude-code-2.1.225</guid><pubDate>Fri, 07 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.224</title><description>&lt;ul&gt;
&lt;li&gt;Added self-hosted environments: &lt;code&gt;claude self-hosted-runner&lt;/code&gt; turns your own machines or containers into a place Claude Code web, mobile, and desktop sessions can run, on Team and Enterprise plans&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;archive&lt;/code&gt; plugin source: install plugins from a zip over HTTPS without git or npm, with optional SHA-256 pinning&lt;/li&gt;
&lt;li&gt;Added a cancel-and-confirm step when removing an unavailable paste changes a command’s text&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;ANTHROPIC_BEDROCK_REGION_PREFIX&lt;/code&gt; env var for Bedrock to prefer a specific cross-region inference profile over the &lt;code&gt;AWS_REGION&lt;/code&gt;-derived one&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;crossSessionInbound&lt;/code&gt; and &lt;code&gt;dialogExpiry&lt;/code&gt; settings: cross-session messages sent to a session running with bypassed permissions are held for your approval, and messages to other sessions auto-deliver&lt;/li&gt;
&lt;li&gt;Added sandbox credential-masking options: &lt;code&gt;extract&lt;/code&gt; and &lt;code&gt;onExtractNoMatch&lt;/code&gt; for structured env values, &lt;code&gt;decode: &quot;jwt&quot;&lt;/code&gt; with &lt;code&gt;maskClaims&lt;/code&gt; for JWT-aware masking, and &lt;code&gt;awsPairs&lt;/code&gt;/&lt;code&gt;sigv4&lt;/code&gt; for AWS SigV4 re-signing; these need &lt;code&gt;network.tlsTerminate&lt;/code&gt; and are honored only from user, managed, or &lt;code&gt;--settings&lt;/code&gt; settings&lt;/li&gt;
&lt;li&gt;Added cross-session &lt;code&gt;SendMessage&lt;/code&gt;: Claude Code sessions can now message each other, on any of your machines, with &lt;code&gt;ListAgents&lt;/code&gt; to discover them (macOS and Linux)&lt;/li&gt;
&lt;li&gt;Fixed long (&amp;gt;200 char) project paths resolving to another project’s session directory under a shared sanitized prefix; session list, rename, fork, delete and &lt;code&gt;/resume&lt;/code&gt; no longer cross projects&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;SendMessage&lt;/code&gt; reporting “Message sent” when the write to a teammate’s inbox had actually failed; failed deliveries are now reported as errors&lt;/li&gt;
&lt;li&gt;Fixed sandbox filesystem deny entries written with a trailing slash (e.g. &lt;code&gt;denyRead: &quot;~/.aws/&quot;&lt;/code&gt;) being silently bypassable on Linux and macOS&lt;/li&gt;
&lt;li&gt;Fixed sandbox violation details never appearing in Bash tool results; Claude now sees which file or network access was denied and why&lt;/li&gt;
&lt;li&gt;Fixed MCP tools that connect mid-turn being deferred for tool search without their names announced to the model&lt;/li&gt;
&lt;li&gt;Fixed plugin install records being silently corrupted when the same plugin is installed in multiple projects&lt;/li&gt;
&lt;li&gt;Fixed recalled or restored paste content occasionally attaching wrong data or silently losing text when the paste had aged out or placeholder numbers collided&lt;/li&gt;
&lt;li&gt;Fixed copy-on-select on Wayland sometimes not reaching the clipboard; the two selection writes no longer race&lt;/li&gt;
&lt;li&gt;Fixed the feedback survey’s transcript share silently failing on long sessions; a failed share now shows an error instead of a success message&lt;/li&gt;
&lt;li&gt;Fixed Remote Control auto-start intermittently failing with “Remote credentials fetch failed” on a cold start with a stale login token&lt;/li&gt;
&lt;li&gt;Fixed Remote Control and SDK clients showing a blank “(no content)” message after &lt;code&gt;/clear&lt;/code&gt; and other output-less commands&lt;/li&gt;
&lt;li&gt;Fixed a Remote Control session recreated after its server session expired uploading prior local conversation history into the new session&lt;/li&gt;
&lt;li&gt;Improved fullscreen mode to keep the full pre-compaction history in scrollback across repeated compactions, instead of only the most recent interval&lt;/li&gt;
&lt;li&gt;Improved Remote Control: attached web and mobile clients now see compaction progress and the post-compaction boundary instead of a silent pause; &lt;code&gt;/clear&lt;/code&gt; resets now propagate to attached clients&lt;/li&gt;
&lt;li&gt;Improved Remote Control: connection failures now show a persistent failure indicator with details and a reconnect shortcut, instead of only an 8-second toast&lt;/li&gt;
&lt;li&gt;Removed the 200-subagent-per-session spawn cap; long-running sessions no longer refuse new agents (concurrency and depth limits still apply)&lt;/li&gt;
&lt;li&gt;Changed managed settings: the approval prompt no longer re-appears after re-login or org switching when the organization’s settings are unchanged&lt;/li&gt;
&lt;li&gt;Changed the feedback-survey transcript share: with your consent it now also uploads the last request’s model settings — the system prompt (which includes your &lt;code&gt;CLAUDE.md&lt;/code&gt; instructions), tool definitions, and model parameters. Secrets are redacted as before, and these fields are dropped first if the share is too large&lt;/li&gt;
&lt;li&gt;Changed the Bash tool description to always note that command output is displayed to the model, not reliably to the user&lt;/li&gt;
&lt;li&gt;Changed recalled paste placeholder numbers to renumber when accepted into the input&lt;/li&gt;
&lt;li&gt;Changed Remote Control to archive the stale server session instead of leaving a dead one listed when a fresh session is minted after compaction or &lt;code&gt;/resume&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;[VSCode] Fixed the extension showing Remote Control as connected after the connection failed&lt;/li&gt;
&lt;li&gt;Fixed a session resume silently reconnecting Remote Control after the user turned it off (&lt;code&gt;--resume&lt;/code&gt;, SDK hosts, and the VS Code extension)&lt;/li&gt;
&lt;li&gt;[VSCode] Fixed sessions not honoring &lt;code&gt;remoteControlAtStartup&lt;/code&gt; when explicitly enabled&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-224</link><guid isPermaLink="false">claude-code-2.1.224</guid><pubDate>Thu, 06 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.223</title><description>&lt;ul&gt;
&lt;li&gt;Added owner wildcard entries (&lt;code&gt;&quot;owner/*&quot;&lt;/code&gt;) to the &lt;code&gt;strictKnownMarketplaces&lt;/code&gt; and &lt;code&gt;blockedMarketplaces&lt;/code&gt; managed settings for allowing or blocking all marketplace repos under a GitHub org&lt;/li&gt;
&lt;li&gt;Added a warning when workflow agents, forked skills, slash commands, or resumed background agents’ requested subagent model is restricted and the parent model runs instead&lt;/li&gt;
&lt;li&gt;Added a &lt;code&gt;/teleport&lt;/code&gt; hint in cloud sessions showing how to continue locally with &lt;code&gt;claude --teleport &amp;lt;session id&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed a Bash permission bypass where a crafted command could hide parts of itself from permission checks&lt;/li&gt;
&lt;li&gt;Fixed permission prompts so commands padded with tabs or invisible Unicode can no longer hide part of the command from the approval dialog&lt;/li&gt;
&lt;li&gt;Fixed workflow scripts being able to use dynamic &lt;code&gt;import()&lt;/code&gt; to run code outside the workflow sandbox&lt;/li&gt;
&lt;li&gt;Fixed a permission gap where an agent definition’s &lt;code&gt;bypassPermissions&lt;/code&gt; mode ignored the org bypass-permissions disable policy&lt;/li&gt;
&lt;li&gt;Fixed resuming a session after a mid-session &lt;code&gt;/cd&lt;/code&gt; coming back empty&lt;/li&gt;
&lt;li&gt;Fixed gateway model discovery hiding Claude models registered under provider-prefixed IDs such as &lt;code&gt;vertex_ai/claude-*&lt;/code&gt; or &lt;code&gt;bedrock/anthropic.claude-*&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;modelOverrides&lt;/code&gt; keys that aren’t Anthropic model IDs being treated as the session’s canonical model ID; unknown keys are now ignored as documented&lt;/li&gt;
&lt;li&gt;Fixed managed settings: server-delivered settings no longer disable the env block of a machine-local &lt;code&gt;managed-settings.json&lt;/code&gt; or MDM profile; admin env now merges per key&lt;/li&gt;
&lt;li&gt;Fixed sandboxed commands failing to start on Linux when &lt;code&gt;sandbox.filesystem.denyWrite&lt;/code&gt; covers the working directory&lt;/li&gt;
&lt;li&gt;Fixed forked background agents getting stuck “already resuming” for the rest of the session when rebuilding the fork’s parent prompt failed during resume&lt;/li&gt;
&lt;li&gt;Fixed a resumed session failing every turn, or leaving the interactive app on an unresponsive error screen, when its history held a malformed diagnostics attachment&lt;/li&gt;
&lt;li&gt;Fixed a rare hang when parsing unusual &lt;code&gt;git push&lt;/code&gt; output&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;CLAUDE_CODE_DISABLE_1M_CONTEXT&lt;/code&gt; to hold every Claude model with a native 1M window to 200K via auto-compaction, not just a fixed list; a startup warning now appears when auto-compaction isn’t holding the session to 200K&lt;/li&gt;
&lt;li&gt;Changed auto-compact to keep sessions on unrecognized model IDs within the assumed context window instead of letting them grow past it; set &lt;code&gt;CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT=1&lt;/code&gt; to restore the previous behavior&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/review&lt;/code&gt; to be an alias of &lt;code&gt;/code-review&lt;/code&gt;, which reviews the current diff or a PR (&lt;code&gt;/code-review &amp;lt;level&amp;gt; &amp;lt;pr#&amp;gt;&lt;/code&gt;); use &lt;code&gt;/code-review ultra&lt;/code&gt; for a deep cloud review&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/code-review&lt;/code&gt; with no effort level to reuse the level you typed last; type a level like &lt;code&gt;/code-review high&lt;/code&gt; to change it&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-223</link><guid isPermaLink="false">claude-code-2.1.223</guid><pubDate>Wed, 05 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.222</title><description>&lt;ul&gt;
&lt;li&gt;Fixed worktree-isolated sessions and their subagents being able to run destructive git commands against the main checkout; isolation now applies to file edits and Bash in every session type&lt;/li&gt;
&lt;li&gt;Fixed PreToolUse auto-allow hooks bypassing tool restrictions in background agent tasks (summaries, compaction, renames)&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/usage-credits&lt;/code&gt; on Team and Enterprise showing “you’ve already sent a usage credit request” for members whose earlier request was dismissed, blocking them from sending a new one&lt;/li&gt;
&lt;li&gt;Fixed the startup connectivity check hanging and then failing behind an HTTPS proxy; it now uses the same proxy-aware transport as API requests and times out with a clear message&lt;/li&gt;
&lt;li&gt;Fixed “Connection closed mid-response” errors being reported on responses that had actually completed&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/usage&lt;/code&gt; overattributing usage to MCP servers: a server’s share now reflects only the requests that actually consumed its tool results, instead of every turn after any call to it&lt;/li&gt;
&lt;li&gt;Fixed sessions not linking to pull requests created after the branch was pushed, including through the GitHub REST API&lt;/li&gt;
&lt;li&gt;Fixed org-restricted &lt;code&gt;model: opus&lt;/code&gt;-style subagent and teammate family aliases dropping to the parent model instead of stepping down to the newest org-allowed model in the family&lt;/li&gt;
&lt;li&gt;Fixed stream idle timeout firing on custom &lt;code&gt;ANTHROPIC_BASE_URL&lt;/code&gt; gateways despite server keep-alive pings arriving on the wire&lt;/li&gt;
&lt;li&gt;Fixed claude.ai connectors being falsely marked as needing authorization when the session token is invalid — they now show a &lt;code&gt;/login&lt;/code&gt; hint instead&lt;/li&gt;
&lt;li&gt;Fixed tool errors not being displayed for tools no longer available locally, for example after an MCP server is removed&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;SendMessage&lt;/code&gt; rejecting a long summary — it now truncates instead, so sends no longer fail on a character limit&lt;/li&gt;
&lt;li&gt;Fixed the spinner’s effort label in a subagent’s transcript view showing the session’s effort level instead of the subagent’s own &lt;code&gt;effort:&lt;/code&gt; setting&lt;/li&gt;
&lt;li&gt;Fixed rare crashes when a file watcher hit a filesystem error or during file-watcher teardown&lt;/li&gt;
&lt;li&gt;Fixed screen readers re-reading the whole input line on every backspace in &lt;code&gt;--ax-screen-reader&lt;/code&gt; mode — end-of-line deletions now echo just the deleted characters&lt;/li&gt;
&lt;li&gt;Fixed host model-selection keys not taking precedence over a stale on-disk &lt;code&gt;managed-settings.json&lt;/code&gt; when &lt;code&gt;CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST&lt;/code&gt; is set&lt;/li&gt;
&lt;li&gt;Improved auto mode safety: messages sent to other agent sessions via &lt;code&gt;SendMessage&lt;/code&gt; are now evaluated by the permission classifier before dispatch&lt;/li&gt;
&lt;li&gt;Improved the refusal when Claude tries to invoke a skill with &lt;code&gt;disable-model-invocation&lt;/code&gt;: Claude is now told to ask you to run the skill instead of replicating its workflow&lt;/li&gt;
&lt;li&gt;Improved the &lt;code&gt;/diff&lt;/code&gt; view, the Remote Control workspace diff, and file-edit diffs in Claude Code on the web sessions to use raw git blob content, ignoring workspace-configured diff drivers and textconv&lt;/li&gt;
&lt;li&gt;Changed Remote Control auto-start so repo-local settings (&lt;code&gt;.claude/settings.json&lt;/code&gt; or &lt;code&gt;.claude/settings.local.json&lt;/code&gt;) can no longer turn it on (they can still turn it off); enable it at user scope via &lt;code&gt;/config&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Removed ultraplan feature&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-222</link><guid isPermaLink="false">claude-code-2.1.222</guid><pubDate>Mon, 03 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.221</title><description>&lt;ul&gt;
&lt;li&gt;[VSCode] Added Focus view: a chat-menu toggle that hides tool activity behind an expandable per-turn summary with a live running-tool indicator, toggled with &lt;code&gt;Ctrl+Alt+F&lt;/code&gt; or the “Claude Code: Toggle Focus view” command&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;mode: &quot;mask&quot;&lt;/code&gt; for sandbox credential files on Linux and WSL — sandboxed commands read a sentinel copy (the whole file, or just the spans captured by an &lt;code&gt;extract&lt;/code&gt; regex) while the sandbox proxy substitutes the real value on egress; on macOS file masking falls back to &lt;code&gt;deny&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Added warnings to &lt;code&gt;claude plugin validate&lt;/code&gt; when a marketplace or plugin name would be rejected by Claude Desktop’s managed marketplace sync&lt;/li&gt;
&lt;li&gt;Added a &lt;code&gt;prompt-audit&lt;/code&gt; subcommand to the &lt;code&gt;claude-api&lt;/code&gt; skill for auditing prompts and tool descriptions for patterns written for older models&lt;/li&gt;
&lt;li&gt;Fixed a Bash tool permission-check bypass where zsh could execute hidden commands in &lt;code&gt;[[ ]]&lt;/code&gt; regex conditionals; affected commands now prompt for permission&lt;/li&gt;
&lt;li&gt;Fixed PowerShell permission checks mishandling paths containing quote characters on Windows; such paths now prompt for approval&lt;/li&gt;
&lt;li&gt;Fixed the thinking toggle having no effect for the rest of a session that started with thinking off; disabling an MCP server mid-connect no longer silently reverts&lt;/li&gt;
&lt;li&gt;Fixed MCP servers from &lt;code&gt;--mcp-config&lt;/code&gt; not being connected before the first turn in print mode (&lt;code&gt;-p&lt;/code&gt;), which made the model emit tool calls as literal text&lt;/li&gt;
&lt;li&gt;Fixed @-mentioned files being silently dropped when pressing Esc to retract a prompt and resubmitting it&lt;/li&gt;
&lt;li&gt;Fixed a crash when preparing API requests for SDK MCP tools named after built-in object properties such as &lt;code&gt;constructor&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed WebSearch failing with a 400 error at effort &lt;code&gt;xhigh&lt;/code&gt;/&lt;code&gt;max&lt;/code&gt; when thinking is disabled&lt;/li&gt;
&lt;li&gt;Fixed sandboxed large uploads failing with TLS errors through the sandbox proxy&lt;/li&gt;
&lt;li&gt;Fixed Team and Enterprise spend-limit message incorrectly blaming the org’s monthly limit instead of your individual spend limit&lt;/li&gt;
&lt;li&gt;Fixed Bedrock authentication with AWS SSO named profiles failing in desktop-managed sessions on Windows machines that set a stray &lt;code&gt;HOME&lt;/code&gt; environment variable&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;CLAUDE_CODE_RESUME_INTERRUPTED_TURN=0&lt;/code&gt; not disabling interrupted-turn auto-resume; falsy values are now honored&lt;/li&gt;
&lt;li&gt;Fixed a rare wake-from-sleep race where two Claude Code processes could both refresh the same MCP connector or WIF OAuth token at once, forcing re-authentication&lt;/li&gt;
&lt;li&gt;Fixed renaming a session from Claude Code Desktop or claude.ai not updating the CLI’s session name; session names from every rename surface are now sanitized&lt;/li&gt;
&lt;li&gt;Fixed plugin- and org-delivered skills named after terminal-only built-ins (e.g. &lt;code&gt;/help&lt;/code&gt;, &lt;code&gt;/feedback&lt;/code&gt;) being un-invocable in non-interactive sessions&lt;/li&gt;
&lt;li&gt;Fixed the “Plugins changed” notification lingering after plugins were reloaded instead of clearing&lt;/li&gt;
&lt;li&gt;Fixed Vim mode: the yank register now survives dialogs, history search, and the transcript view instead of being silently emptied&lt;/li&gt;
&lt;li&gt;Fixed Vim mode: undoing back to an empty prompt now arms the “press ← again” confirm before returning to the agent view&lt;/li&gt;
&lt;li&gt;Improved tool search on Google Vertex AI: re-enabled for Claude 4.5-generation and newer models&lt;/li&gt;
&lt;li&gt;Improved auto mode: permission checks for parallel tool calls are now cache-efficient, and switching modes while a check is pending reliably prompts instead of applying the stale result&lt;/li&gt;
&lt;li&gt;Reduced prompt-cache costs for auto-mode permission checks by reusing the cached conversation prefix across decisions&lt;/li&gt;
&lt;li&gt;Improved Stats panel to count cache tokens in its token totals, with a breakdown by input, output, cache read, and cache write&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;/ultrareview&lt;/code&gt; error messages when a repo shares no history with its base: a checkout with no branches is now refused up front with advice to create one, and refusal hints no longer suggest &lt;code&gt;git fetch --unshallow&lt;/code&gt; on clones that are already complete&lt;/li&gt;
&lt;li&gt;Improved Windows startup: process creation times are now read via a native kernel32 call instead of spawning PowerShell, so endpoint security tools that gate &lt;code&gt;powershell.exe&lt;/code&gt; no longer prompt&lt;/li&gt;
&lt;li&gt;Changed background sessions to commit and push to preserve work, open a draft PR only when the task calls for one, follow your CLAUDE.md git instructions, and always end by reporting where the work lives&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/plugin install&lt;/code&gt; to refresh a stale marketplace catalog and retry before reporting a plugin not found&lt;/li&gt;
&lt;li&gt;Changed plugins installed from &lt;code&gt;/plugin&lt;/code&gt; to activate immediately when safe, instead of always requiring &lt;code&gt;/reload-plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Changed plugins to accept &lt;code&gt;&quot;.&quot;&lt;/code&gt; as a &lt;code&gt;skills&lt;/code&gt; path, and the root-level &lt;code&gt;SKILL.md&lt;/code&gt; validation error now suggests using the plugin root&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/status&lt;/code&gt; to show the session kind: &lt;code&gt;interactive&lt;/code&gt;, or a background job that is &lt;code&gt;attached&lt;/code&gt; or &lt;code&gt;unattended&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Changed emoji autocomplete to accept common alternate shortcodes like &lt;code&gt;:thumbsup:&lt;/code&gt;, &lt;code&gt;:thumbsdown:&lt;/code&gt;, and &lt;code&gt;:love:&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Changed sessions forked with &lt;code&gt;/fork&lt;/code&gt; to create a new worktree of their own instead of working in the original session’s checkout&lt;/li&gt;
&lt;li&gt;Changed Claude in Chrome to close the browser tabs it opens once it no longer needs them&lt;/li&gt;
&lt;li&gt;Changed fast mode to report on the stream when usage credits run out mid-session, instead of failing silently&lt;/li&gt;
&lt;li&gt;Changed Monitor: a watch that exits without producing any output now says so instead of reporting “stream ended”&lt;/li&gt;
&lt;li&gt;Changed the Gateway &lt;code&gt;model&lt;/code&gt; field validation: non-string values are rejected with a 400 instead of being forwarded&lt;/li&gt;
&lt;li&gt;Removed the repeated “Permission mode changed while the auto-mode classifier call was queued” notice from approval prompts&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-221</link><guid isPermaLink="false">claude-code-2.1.221</guid><pubDate>Mon, 03 Aug 2026 16:00:00 GMT</pubDate></item><item><title>2.1.220</title><description>&lt;ul&gt;
&lt;li&gt;Bug fixes and reliability improvements&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-220</link><guid isPermaLink="false">claude-code-2.1.220</guid><pubDate>Fri, 24 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.219</title><description>&lt;ul&gt;
&lt;li&gt;Added Claude Opus 5 (&lt;code&gt;claude-opus-5&lt;/code&gt;), now the default Opus model — 1M context, fast mode at &lt;span class=&quot;katex&quot;&gt;&lt;span class=&quot;katex-mathml&quot;&gt;&lt;math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mn&gt;10&lt;/mn&gt;&lt;mi mathvariant=&quot;normal&quot;&gt;/&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;10/&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class=&quot;katex-html&quot; aria-hidden=&quot;true&quot;&gt;&lt;span class=&quot;base&quot;&gt;&lt;span class=&quot;strut&quot; style=&quot;height:1em;vertical-align:-0.25em&quot;&gt;&lt;/span&gt;&lt;span class=&quot;mord&quot;&gt;10/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;50 per Mtok&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;sandbox.network.strictAllowlist&lt;/code&gt; setting to deny non-allowlisted hosts for sandboxed commands without prompting&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;DirectoryAdded&lt;/code&gt; hook that fires after &lt;code&gt;/add-dir&lt;/code&gt; or the SDK &lt;code&gt;register_repo_root&lt;/code&gt; control request registers a new working directory mid-session&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;mcp_server_errors&lt;/code&gt; to the headless stream-json init event, listing &lt;code&gt;--mcp-config&lt;/code&gt; entries skipped by config validation; terminal runs print a startup warning&lt;/li&gt;
&lt;li&gt;Added the &lt;code&gt;workflowSizeGuideline&lt;/code&gt; settings key so the advisory Dynamic workflow size guideline can be set from any settings file; the &lt;code&gt;/config&lt;/code&gt; row is hidden while one does&lt;/li&gt;
&lt;li&gt;Added nested subagent forwarding in stream-json: subagents spawned at depth-2+ now appear when &lt;code&gt;--forward-subagent-text&lt;/code&gt; is set, keyed by their spawning Agent &lt;code&gt;tool_use&lt;/code&gt; id&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude -p&lt;/code&gt; text output dropping the answer already produced when a turn dies on a mid-stream API error&lt;/li&gt;
&lt;li&gt;Added HTTP status and error text to &lt;code&gt;claude mcp list&lt;/code&gt; and &lt;code&gt;/mcp&lt;/code&gt; when a server fails to connect, and a warning for MCP config values with hidden leading or trailing whitespace&lt;/li&gt;
&lt;li&gt;Fixed the Fable model row showing “Requires usage credits” for plans that include it, when a stale cache had baked the label in&lt;/li&gt;
&lt;li&gt;Fixed the &lt;code&gt;/model&lt;/code&gt; picker showing the merged Opus row as plain “Opus” instead of “Opus (1M context)”&lt;/li&gt;
&lt;li&gt;Fixed copy-on-select inside GNU screen printing base64 into the terminal instead of copying the selection&lt;/li&gt;
&lt;li&gt;Fixed Remote Control clients keeping a stale fast-mode status after a model switch, reconnect, or failed org check&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;CLAUDE_CODE_GIT_BASH_PATH&lt;/code&gt; on Windows exiting or being used as bash when the path isn’t a bash/sh binary; it’s now ignored with a warning&lt;/li&gt;
&lt;li&gt;Fixed Vim mode: pressing ← on an empty prompt now returns to the agent view from NORMAL mode, not just INSERT&lt;/li&gt;
&lt;li&gt;Fixed screen-reader mode rewriting the entire input line on every keystroke instead of echoing only the typed character&lt;/li&gt;
&lt;li&gt;Improved the “Remote Control is only available via api.anthropic.com” error to name the specific setting that caused it&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;claude --teleport&lt;/code&gt; to show which repo your current checkout points at when it doesn’t match the session’s repo&lt;/li&gt;
&lt;li&gt;Changed dynamic workflows to default to a medium size guideline (aim for fewer than 15 agents); pick another size or unrestricted with Dynamic workflow size in &lt;code&gt;/config&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Changed managed MCP allowlist/denylist &lt;code&gt;${VAR}&lt;/code&gt; entries to resolve from the startup environment and managed-settings env instead of settings-file env&lt;/li&gt;
&lt;li&gt;Changed the &lt;code&gt;/model&lt;/code&gt; picker to highlight only the newest model’s name, so the highlight marks the new release rather than an arbitrary subset of the list&lt;/li&gt;
&lt;li&gt;Added the current default workflow size to the running-workflow status line, with a pointer to &lt;code&gt;/config&lt;/code&gt; for changing it&lt;/li&gt;
&lt;li&gt;Removed Opus 4.7 from fast mode; &lt;code&gt;/fast&lt;/code&gt; now applies to Opus 5 and Opus 4.8&lt;/li&gt;
&lt;li&gt;Updated the claude-api skill to default to Claude Opus 5, with a migration path from Opus 4.8&lt;/li&gt;
&lt;li&gt;Subagents can now spawn nested subagents up to depth 3 by default (was 1); set CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=1 to disable nesting&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-219</link><guid isPermaLink="false">claude-code-2.1.219</guid><pubDate>Thu, 23 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.218</title><description>&lt;ul&gt;
&lt;li&gt;Changed &lt;code&gt;/code-review&lt;/code&gt; to run as a background subagent, so review work no longer fills your conversation and keeps stacked slash commands as its review target&lt;/li&gt;
&lt;li&gt;Added screen-reader announcements of deleted text for word and line deletions (&lt;code&gt;Option+Delete&lt;/code&gt;, &lt;code&gt;Ctrl+W&lt;/code&gt;, &lt;code&gt;Cmd+Backspace&lt;/code&gt;, &lt;code&gt;Ctrl+U&lt;/code&gt;, &lt;code&gt;Ctrl+K&lt;/code&gt;) in &lt;code&gt;--ax-screen-reader&lt;/code&gt; mode&lt;/li&gt;
&lt;li&gt;Fixed Windows paths with &lt;code&gt;\u&lt;/code&gt;-prefixed segments (like &lt;code&gt;C:\Users\unicorn&lt;/code&gt;) being corrupted into CJK characters in tool inputs, which made those files inaccessible&lt;/li&gt;
&lt;li&gt;Fixed the left arrow key discarding the conversation with no undo: presses right after editing now ask to confirm, and Esc in the agent view returns to the conversation it backgrounded&lt;/li&gt;
&lt;li&gt;Fixed multi-line paste collapsing into one line with &lt;code&gt;j&lt;/code&gt; in place of newlines in terminals that encode pasted newlines as Ctrl+J&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/context&lt;/code&gt; reporting stale pre-compact token usage after compacting from the message picker&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview&lt;/code&gt; failing on descriptive arguments like “review my auth changes” — they now run a review of your current branch with the text applied as a note to the findings&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/code-review ultra&lt;/code&gt; silently running a local review in non-interactive sessions — it now launches the cloud review&lt;/li&gt;
&lt;li&gt;Fixed gateway spend metering to price Bedrock application-inference-profile ARNs and other config-mapped upstream model IDs at the configured model’s rates&lt;/li&gt;
&lt;li&gt;Fixed mojibake when a long IDE selection was truncated mid-emoji, and a case where a tool executor error could be silently dropped&lt;/li&gt;
&lt;li&gt;Fixed an engine teardown race that could start and abandon a phantom turn, and made input pushed after close consistently rejected&lt;/li&gt;
&lt;li&gt;Fixed spurious “[Request interrupted by user]” messages after interrupted tool calls, and an unpaired &lt;code&gt;tool_use&lt;/code&gt; block left in the transcript when a tool aborted mid-response&lt;/li&gt;
&lt;li&gt;Fixed VoiceOver reading “new line” instead of echoing the typed space at the end of the input in &lt;code&gt;--ax-screen-reader&lt;/code&gt; mode&lt;/li&gt;
&lt;li&gt;Fixed plugin and settings panels not moving the terminal cursor to the focused row, so screen readers and magnifiers can follow arrow-key navigation&lt;/li&gt;
&lt;li&gt;Fixed crashes (maximum call stack exceeded) when a deeply nested watched directory tree was deleted or moved, and when rendering deeply nested UI trees&lt;/li&gt;
&lt;li&gt;Fixed pull request events occasionally being lost when a session exited immediately after creating or linking a PR&lt;/li&gt;
&lt;li&gt;Fixed the Bedrock setup wizard failing profile verification for assume-role profiles in partitioned AWS regions and on proxy-only networks&lt;/li&gt;
&lt;li&gt;Fixed rare negative or incorrect turn duration measurements after a system clock adjustment by timing turns with a monotonic clock&lt;/li&gt;
&lt;li&gt;Fixed the “N MCP servers need authentication” startup notice over-counting claude.ai connectors that aren’t connected in claude.ai&lt;/li&gt;
&lt;li&gt;Fixed prompt history entries being dropped or duplicated when history writes raced or failed&lt;/li&gt;
&lt;li&gt;Fixed a retry loop that re-sent identical doomed requests after a context-overflow error with a large thinking budget; &lt;code&gt;Ctrl+B&lt;/code&gt; backgrounding now applies the same background-shell caps as other paths&lt;/li&gt;
&lt;li&gt;Fixed agent frontmatter hooks running from untrusted folders: hooks now require the agent file’s own folder to have accepted workspace trust&lt;/li&gt;
&lt;li&gt;Fixed fork-session lineage being lost after compaction in headless and SDK sessions&lt;/li&gt;
&lt;li&gt;Fixed a resumed session failing every turn, or crashing on resume, when its history held a malformed delta attachment&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;/ultrareview&lt;/code&gt; error feedback so Claude can correct an invalid argument instead of retrying it unchanged&lt;/li&gt;
&lt;li&gt;Improved auto mode: the dangerous-rm, background-&lt;code&gt;&amp;amp;&lt;/code&gt;, and suspicious-Windows-path checks no longer open permission dialogs; the auto-mode classifier adjudicates them instead&lt;/li&gt;
&lt;li&gt;Improved sandbox command restrictions for IDE interactions&lt;/li&gt;
&lt;li&gt;Improved trust dialogs to name the repository root the grant covers&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/deep-research&lt;/code&gt; to start only when invoked manually; Claude no longer launches it on its own&lt;/li&gt;
&lt;li&gt;Changed plan mode with auto to no longer prompt for Bash commands the static analyzer can’t prove read-only; the auto-mode classifier judges them instead&lt;/li&gt;
&lt;li&gt;Added an announcement when fast mode changes as a result of switching models via &lt;code&gt;/config model=&amp;lt;x&amp;gt;&lt;/code&gt; or Remote Control&lt;/li&gt;
&lt;li&gt;Changed server-managed settings so benign feature and cost toggles no longer trigger the settings-approval prompt&lt;/li&gt;
&lt;li&gt;Changed agent markdown files to reject agent names containing &lt;code&gt;:&lt;/code&gt;, which is reserved for plugin namespacing&lt;/li&gt;
&lt;li&gt;Changed skills with &lt;code&gt;context: fork&lt;/code&gt; to run in the background by default; opt out per skill with &lt;code&gt;background: false&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;yes&lt;/code&gt;/&lt;code&gt;no&lt;/code&gt;/&lt;code&gt;on&lt;/code&gt;/&lt;code&gt;off&lt;/code&gt;/&lt;code&gt;1&lt;/code&gt;/&lt;code&gt;0&lt;/code&gt; (case-insensitive) as accepted values for skill and plugin frontmatter booleans, alongside &lt;code&gt;true&lt;/code&gt;/&lt;code&gt;false&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed remote sessions continuing to send heartbeats after their worker was replaced, which left long-lived desktop and IDE processes retrying a rejected request every few seconds forever&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-218</link><guid isPermaLink="false">claude-code-2.1.218</guid><pubDate>Tue, 21 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.217</title><description>&lt;ul&gt;
&lt;li&gt;Added emoji shortcode autocomplete in the prompt input: type &lt;code&gt;:heart:&lt;/code&gt; to insert ❤️, or &lt;code&gt;:hea&lt;/code&gt; for suggestions — disable with the &lt;code&gt;emojiCompletionEnabled&lt;/code&gt; setting&lt;/li&gt;
&lt;li&gt;Added warnings when transcript writes are failing (e.g. disk full) or when session saving is off due to an inherited environment variable, instead of losing transcripts silently&lt;/li&gt;
&lt;li&gt;Fixed a memory leak where truncated MCP tool outputs kept the full untruncated result in memory for the rest of the session&lt;/li&gt;
&lt;li&gt;Fixed Windows auto-update failures that could leave &lt;code&gt;claude.exe&lt;/code&gt; missing; failed updates now restore the preserved executable automatically&lt;/li&gt;
&lt;li&gt;Fixed background session isolation not canonicalizing symlinked working directories, which could let sessions escape their workspace folder&lt;/li&gt;
&lt;li&gt;Fixed auto-compact never triggering for Claude Opus 4.8 on Bedrock and &lt;code&gt;/compact&lt;/code&gt; failing once over the limit&lt;/li&gt;
&lt;li&gt;Fixed corporate mTLS, TLS-verify, OAuth scope, and proxy settings being ignored in Claude Desktop sessions&lt;/li&gt;
&lt;li&gt;Fixed screen reader mode’s startup announcement being cut off by the first prompt render, and the thinking status row re-rendering every few seconds to update elapsed time and token counts&lt;/li&gt;
&lt;li&gt;Fixed managed settings that set &lt;code&gt;OTEL_EXPORTER_OTLP_ENDPOINT&lt;/code&gt; not governing all signals — lower-scope signal-specific overrides no longer redirect telemetry away from the managed endpoint&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;--resume&lt;/code&gt;/&lt;code&gt;--continue&lt;/code&gt; and &lt;code&gt;/resume&lt;/code&gt; failing with a TypeError when a transcript has a malformed attachment entry&lt;/li&gt;
&lt;li&gt;Fixed Remote Control sessions not showing a pending permission prompt or dialog to viewers that connected after it appeared&lt;/li&gt;
&lt;li&gt;Fixed background shells sometimes becoming impossible to stop after a session is sent to the background (&lt;code&gt;/background&lt;/code&gt; or &lt;code&gt;←&lt;/code&gt;) or when the session exits on a heavily loaded machine, most visible on Windows&lt;/li&gt;
&lt;li&gt;Fixed a &lt;code&gt;CLAUDE.md&lt;/code&gt; or &lt;code&gt;SKILL.md&lt;/code&gt; paths frontmatter value with many brace groups OOM-killing or stalling the CLI at startup — brace expansion is now budget-bounded&lt;/li&gt;
&lt;li&gt;Fixed the transcript preview sitting flush against the input area when attaching to a starting background session; it now leaves the same one-line gap as the live layout, so the transcript no longer shifts when the session takes over&lt;/li&gt;
&lt;li&gt;Improved footer PR badge links to be clickable hyperlinks even when terminal support can’t be detected (e.g. over ssh/tmux); set &lt;code&gt;FORCE_HYPERLINK=0&lt;/code&gt; to opt out&lt;/li&gt;
&lt;li&gt;Changed the login-expiry warning to appear 3 days before expiry instead of 5&lt;/li&gt;
&lt;li&gt;Capped the frontend-design plugin suggestion tip at 3 lifetime impressions instead of repeating indefinitely&lt;/li&gt;
&lt;li&gt;Added a cap on concurrently-running subagents (default 20, override with &lt;code&gt;CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS&lt;/code&gt;) so one message can’t fan out unbounded background agents&lt;/li&gt;
&lt;li&gt;Changed subagents to no longer spawn nested subagents by default; set &lt;code&gt;CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH&lt;/code&gt; to allow deeper nesting&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;--max-budget-usd&lt;/code&gt; not stopping background subagents: once the cap is reached, new spawns are denied and running background agents are halted&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-217</link><guid isPermaLink="false">claude-code-2.1.217</guid><pubDate>Mon, 20 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.216</title><description>&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;sandbox.filesystem.disabled&lt;/code&gt; setting to skip filesystem isolation while keeping network egress control&lt;/li&gt;
&lt;li&gt;Fixed a slowdown in long sessions where message normalization cost grew quadratically with the number of turns, causing multi-second stalls and slow resumes&lt;/li&gt;
&lt;li&gt;Fixed auto mode denying commands with “HTTP 401” classifier errors after the OAuth token expired or rotated mid-session&lt;/li&gt;
&lt;li&gt;Fixed AskUserQuestion telling Claude to continue even when your answer asked it to wait or explain first — free-text answers now get neutral wording&lt;/li&gt;
&lt;li&gt;Fixed Claude Code on the web re-asking the same question and dropping your answer after the session sat idle for a few minutes&lt;/li&gt;
&lt;li&gt;Fixed @-mentions silently attaching nothing after file-modifying hooks, vim dot-repeat of &lt;code&gt;c&lt;/code&gt;-operators and paste, statusline running twice on resume, and resume-picker hangs on failure&lt;/li&gt;
&lt;li&gt;Fixed resumed background agent sessions reverting to the default agent: the agent’s prompt and tool restrictions are now restored&lt;/li&gt;
&lt;li&gt;Fixed worktree-isolated subagents redirecting git into the shared checkout via &lt;code&gt;git -C&lt;/code&gt;, &lt;code&gt;--git-dir&lt;/code&gt;, or &lt;code&gt;GIT_DIR&lt;/code&gt;/&lt;code&gt;GIT_WORK_TREE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed worktree sessions landing in another project’s leftover worktree when the working directory did not match the selected project&lt;/li&gt;
&lt;li&gt;Fixed background sessions whose worktree has no git repository being undeletable&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude daemon stop --any&lt;/code&gt; potentially terminating an unrelated process via a stale legacy daemon lockfile&lt;/li&gt;
&lt;li&gt;Fixed Esc-Esc at an idle prompt not opening the rewind picker in long-running sessions with background tasks&lt;/li&gt;
&lt;li&gt;Fixed Bash command permission checking for compound statements with redirects inside &lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt; lists or negations&lt;/li&gt;
&lt;li&gt;Fixed pressing Ctrl+X twice in the agent list failing to delete a session, and deleted sessions reappearing when their background worker had died&lt;/li&gt;
&lt;li&gt;Fixed background subagents getting cancelled when a high-priority message arrives during their startup window&lt;/li&gt;
&lt;li&gt;Fixed mouse and focus garbage in the terminal while a GUI editor from &lt;code&gt;/memory&lt;/code&gt;, &lt;code&gt;/plan&lt;/code&gt;, &lt;code&gt;/keybindings&lt;/code&gt;, or Ctrl+G is open; &lt;code&gt;/memory&lt;/code&gt; no longer waits for the editor to close&lt;/li&gt;
&lt;li&gt;Fixed Claude-in-Chrome 403-looping on reconnect when the session’s OAuth token lacks a required scope&lt;/li&gt;
&lt;li&gt;Fixed workflow saves and scheduled-task writes following a symlink at &lt;code&gt;.claude&lt;/code&gt;, which could redirect writes outside the project&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed read-only commands on Windows accessing network paths without a permission prompt&lt;/li&gt;
&lt;li&gt;Fixed Bash command parsing of non-ASCII characters to match real shell word boundaries&lt;/li&gt;
&lt;li&gt;Fixed PowerShell tool permission validation of commands containing invisible Unicode characters&lt;/li&gt;
&lt;li&gt;Fixed dialogs in fullscreen mode stretching past the right-hand edge of their panel&lt;/li&gt;
&lt;li&gt;Fixed the &lt;code&gt;/config&lt;/code&gt; settings list in fullscreen mode clipping its keyboard-hint footer&lt;/li&gt;
&lt;li&gt;Fixed the transcript-mode (Ctrl+O) footer hint wrapping on terminals narrower than 104 columns&lt;/li&gt;
&lt;li&gt;Fixed the Prometheus metrics endpoint (&lt;code&gt;OTEL_METRICS_EXPORTER=prometheus&lt;/code&gt;) emitting invalid &lt;code&gt;# UNIT&lt;/code&gt; lines&lt;/li&gt;
&lt;li&gt;Fixed skills and commands changed during a session not appearing in the slash menu until restart&lt;/li&gt;
&lt;li&gt;Fixed plugin skills with a &lt;code&gt;name&lt;/code&gt; frontmatter field losing their plugin prefix in slash-command autocomplete&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Improved the &lt;code&gt;/fork&lt;/code&gt; confirmation to one line with the new session’s name, &lt;code&gt;claude attach&lt;/code&gt; id, and a note when the copy shares your checkout&lt;/li&gt;
&lt;li&gt;Improved validation of &lt;code&gt;git&lt;/code&gt; and &lt;code&gt;gh&lt;/code&gt; command arguments in the PowerShell tool&lt;/li&gt;
&lt;li&gt;Improved the &lt;code&gt;/ultrareview&lt;/code&gt; diff-too-large error to show configured limits, measured diff size, and largest contributing files&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;/code-review ultra&lt;/code&gt; empty-diff message to name the exact base ref and suggest passing an explicit base&lt;/li&gt;
&lt;li&gt;Improved the spend limit adjustment prompt to show the server’s reason when a spend limit change is rejected&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/context&lt;/code&gt; now shows an explicit warning when the conversation exceeds the context window, and a failed &lt;code&gt;/compact&lt;/code&gt; displays as an error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/rewind&lt;/code&gt; no longer restores or deletes files through symlinks or hard links at tracked paths and reports how many paths it skipped&lt;/li&gt;
&lt;li&gt;Background sessions: &lt;code&gt;/mcp&lt;/code&gt; and &lt;code&gt;/install-github-app&lt;/code&gt; now park a “needs input” request in the agent view when no client is attached&lt;/li&gt;
&lt;li&gt;Updated the bundled dataviz skill: reordered the default chart palette and fixed guidance that suggested direct labels for four-series charts&lt;/li&gt;
&lt;li&gt;[VSCode] Fixed right-to-left text (Arabic, Hebrew, Persian) rendering in the wrong order when mixed with English or code&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-216</link><guid isPermaLink="false">claude-code-2.1.216</guid><pubDate>Sun, 19 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.215</title><description>&lt;ul&gt;
&lt;li&gt;Claude no longer runs the &lt;code&gt;/verify&lt;/code&gt; and &lt;code&gt;/code-review&lt;/code&gt; skills on its own; invoke them with &lt;code&gt;/verify&lt;/code&gt; or &lt;code&gt;/code-review&lt;/code&gt; when you want them&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-215</link><guid isPermaLink="false">claude-code-2.1.215</guid><pubDate>Sat, 18 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.214</title><description>&lt;ul&gt;
&lt;li&gt;Fixed single-segment &lt;code&gt;dir/**&lt;/code&gt; allow rules like &lt;code&gt;Edit(src/**)&lt;/code&gt; auto-approving writes to nested &lt;code&gt;dir/&lt;/code&gt; directories anywhere in the tree instead of only &lt;code&gt;&amp;lt;cwd&amp;gt;/dir&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed a permission-check bypass affecting commands run in Windows PowerShell 5.1 sessions&lt;/li&gt;
&lt;li&gt;Fixed Bash permission checks to fail closed on file-descriptor redirect forms that bash parses differently than the permission analyzer&lt;/li&gt;
&lt;li&gt;Fixed Bash permission checks misjudging very long commands — commands over 10,000 characters now always prompt instead of running automatically&lt;/li&gt;
&lt;li&gt;Fixed Bash permission checks treating zsh variable subscripts and modifiers in &lt;code&gt;[[ ]]&lt;/code&gt; comparisons as inert text — these commands now prompt for approval&lt;/li&gt;
&lt;li&gt;Fixed Bash permission checks to no longer auto-approve certain &lt;code&gt;help&lt;/code&gt; and &lt;code&gt;man&lt;/code&gt; commands that could run unsafe options, command substitutions, or backslash paths&lt;/li&gt;
&lt;li&gt;Fixed permission prompts on remote sessions that could proceed before the local confirmation dialog&lt;/li&gt;
&lt;li&gt;Added the EndConversation tool: Claude can end sessions with highly abusive users or jailbreak attempts, as on claude.ai since 2025 — see &lt;a href=&quot;https://www.anthropic.com/research/end-subset-conversations&quot; target=&quot;_blank&quot; rel=&quot;noreferrer&quot; class=&quot;link&quot;&gt;https://www.anthropic.com/research/end-subset-conversations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added a periodic progress heartbeat for long-running tool calls that previously went silent&lt;/li&gt;
&lt;li&gt;Added an ISO &lt;code&gt;modified&lt;/code&gt; timestamp to memory file frontmatter&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;message.uuid&lt;/code&gt;, &lt;code&gt;client_request_id&lt;/code&gt;, and &lt;code&gt;tool_source&lt;/code&gt; attributes to OpenTelemetry log events for message-level correlation and tool provenance&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH&lt;/code&gt; to configure the 60 KB truncation limit on OpenTelemetry content attributes&lt;/li&gt;
&lt;li&gt;Added reasoning effort to the &lt;code&gt;subagentStatusLine&lt;/code&gt; payload, so custom agent rows can render model and effort&lt;/li&gt;
&lt;li&gt;Added permission prompts for &lt;code&gt;docker&lt;/code&gt; commands (including the Podman &lt;code&gt;docker&lt;/code&gt; shim) carrying daemon-redirect flags (&lt;code&gt;--url&lt;/code&gt;, &lt;code&gt;--connection&lt;/code&gt;, &lt;code&gt;--identity&lt;/code&gt;, and Podman’s remote mode) that previously ran without one&lt;/li&gt;
&lt;li&gt;Fixed a crash when a GrowthBook feature evaluates to null, and a bug where a malformed flag payload could wipe the cached feature flags&lt;/li&gt;
&lt;li&gt;Fixed Bash tool killing the Claude session when a &lt;code&gt;pkill -f&lt;/code&gt; pattern accidentally matched the CLI’s own process (Linux)&lt;/li&gt;
&lt;li&gt;Fixed unbounded memory growth when &lt;code&gt;--settings&lt;/code&gt; points at a device file or multi-GB file; oversized (&amp;gt;2 MiB) settings files now fail at startup with a clear error&lt;/li&gt;
&lt;li&gt;Fixed streaming turns failing with “Socket is closed” behind corporate proxies on Windows&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed scheduled tasks refusing their own configured prompt as untrusted input — the fired prompt is now delivered as the session’s assigned task&lt;/li&gt;
&lt;li&gt;Fixed PowerShell tool commands hanging until timeout when a child process waited on standard input (Windows)&lt;/li&gt;
&lt;li&gt;Fixed Python scripts under the PowerShell tool crashing with UnicodeDecodeError when reading non-UTF-8 data from standard input (Windows)&lt;/li&gt;
&lt;li&gt;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)&lt;/li&gt;
&lt;li&gt;Fixed the PowerShell tool reporting &lt;code&gt;where.exe&lt;/code&gt;, &lt;code&gt;fc.exe&lt;/code&gt;, and &lt;code&gt;diff.exe&lt;/code&gt; as errors when they return a valid negative answer (Windows)&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;gt;&amp;gt;&lt;/code&gt; under the PowerShell tool on Windows PowerShell 5.1 writing UTF-16LE files that other tools couldn’t read as UTF-8&lt;/li&gt;
&lt;li&gt;Fixed a displaced background daemon deleting its successor’s control socket on shutdown, which made the next client kill the healthy replacement daemon&lt;/li&gt;
&lt;li&gt;Fixed background sessions parked with &lt;code&gt;←&lt;/code&gt; or &lt;code&gt;/background&lt;/code&gt; and left idle keeping the background daemon and a worker process alive indefinitely&lt;/li&gt;
&lt;li&gt;Fixed completed background sessions being impossible to remove via &lt;code&gt;claude rm&lt;/code&gt; or the agent view once the background service had gone idle&lt;/li&gt;
&lt;li&gt;Fixed background sessions dispatched from a non-git folder being impossible to delete from the agents view&lt;/li&gt;
&lt;li&gt;Fixed reopening a stopped background session failing to restore its saved conversation when an unreadable folder exists in the session store&lt;/li&gt;
&lt;li&gt;Fixed the Remote Control “session ready” push notification firing for sessions where Remote Control was not explicitly enabled&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/install-github-app&lt;/code&gt; and the &lt;code&gt;/mcp&lt;/code&gt; settings menu being blocked in agent-view sessions — they’re now refused only in background sessions with no terminal attached&lt;/li&gt;
&lt;li&gt;Fixed plugins enabled via the &lt;code&gt;--settings&lt;/code&gt; CLI flag not loading (regression since v2.1.181)&lt;/li&gt;
&lt;li&gt;Fixed feature flags going stale in long-running sessions after the OAuth token rotates&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview&lt;/code&gt; refusing to run in repos with no merge base — it now offers to review all tracked files&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude update&lt;/code&gt; and &lt;code&gt;claude doctor&lt;/code&gt; hanging silently, and the &lt;code&gt;/status&lt;/code&gt; System diagnostics section going blank, when a shell-config path is a directory&lt;/li&gt;
&lt;li&gt;Fixed memory frontmatter values being silently truncated at an inline &lt;code&gt;#&lt;/code&gt; when memory files are saved&lt;/li&gt;
&lt;li&gt;Fixed session cost and token telemetry double-counting on streams that emit multiple cumulative &lt;code&gt;message_delta&lt;/code&gt; frames&lt;/li&gt;
&lt;li&gt;Fixed a spurious “check your network” warning that appeared while the advisor was thinking&lt;/li&gt;
&lt;li&gt;Fixed hooks with exit code 2 not blocking as documented when the hook’s stdout JSON fails schema validation&lt;/li&gt;
&lt;li&gt;Fixed OTel log events emitted outside the turn’s async context missing the interaction span’s trace context&lt;/li&gt;
&lt;li&gt;Fixed MCP transient errors during prompts/resources refresh clearing the server’s slash commands and resources&lt;/li&gt;
&lt;li&gt;Improved the &lt;code&gt;claude rc&lt;/code&gt; workspace-trust error in the home directory to say trust there is never saved and to suggest running from a project directory&lt;/li&gt;
&lt;li&gt;Changed single-segment &lt;code&gt;dir/**&lt;/code&gt; hook &lt;code&gt;if:&lt;/code&gt; conditions to match only &lt;code&gt;&amp;lt;cwd&amp;gt;/dir&lt;/code&gt;; write &lt;code&gt;**/dir/**&lt;/code&gt; for any-depth matching. &lt;code&gt;deny&lt;/code&gt;/&lt;code&gt;ask&lt;/code&gt; permission rules keep their any-depth match.&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;file&lt;/code&gt; commands using &lt;code&gt;-m&lt;/code&gt;/&lt;code&gt;--magic-file&lt;/code&gt; or &lt;code&gt;-f&lt;/code&gt;/&lt;code&gt;--files-from&lt;/code&gt; to require permission instead of being auto-allowed as read-only&lt;/li&gt;
&lt;li&gt;Changed keep-alive connection pooling to disable after a stale-connection error, so retries open a fresh socket&lt;/li&gt;
&lt;li&gt;Changed SessionStart hooks to report source &lt;code&gt;&quot;fork&quot;&lt;/code&gt; when a session begins as a fork instead of &lt;code&gt;&quot;resume&quot;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-214</link><guid isPermaLink="false">claude-code-2.1.214</guid><pubDate>Fri, 17 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.212</title><description>&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/fork&lt;/code&gt; now copies your conversation into a new background session (its own row in &lt;code&gt;claude agents&lt;/code&gt;) while you keep working; the in-session subagent it used to launch is now &lt;code&gt;/subtask&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;claude auto-mode reset&lt;/code&gt; to restore the default auto-mode configuration, with a confirmation prompt (pass &lt;code&gt;--yes&lt;/code&gt; to skip)&lt;/li&gt;
&lt;li&gt;Added a session-wide limit on WebSearch tool calls (default 200, tunable via &lt;code&gt;CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION&lt;/code&gt;) to stop runaway search loops&lt;/li&gt;
&lt;li&gt;Added a per-session cap on subagent spawns (default 200, override with &lt;code&gt;CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION&lt;/code&gt;) to stop runaway delegation loops; &lt;code&gt;/clear&lt;/code&gt; resets the budget&lt;/li&gt;
&lt;li&gt;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 &lt;code&gt;CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Typing &lt;code&gt;/resume&lt;/code&gt; 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&lt;/li&gt;
&lt;li&gt;Fixed plan mode auto-running file-modifying Bash commands (e.g. &lt;code&gt;touch&lt;/code&gt;, &lt;code&gt;rm&lt;/code&gt;) without a permission prompt or SDK &lt;code&gt;canUseTool&lt;/code&gt; callback&lt;/li&gt;
&lt;li&gt;Fixed worktree creation following a repository-committed symlink at &lt;code&gt;.claude/worktrees&lt;/code&gt;, which could create files outside the repository&lt;/li&gt;
&lt;li&gt;Fixed a &lt;code&gt;continue:false&lt;/code&gt; hook’s halt being dropped when the tool fails or completes mid-stream, and hook infrastructure errors being misreported as user rejections&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/background&lt;/code&gt; and &lt;code&gt;claude --bg&lt;/code&gt; failing with “EUNKNOWN: unknown error, uv_spawn” on Windows when Group Policy blocks PowerShell 5.1; the daemon now prefers PowerShell 7&lt;/li&gt;
&lt;li&gt;Fixed shell mode (&lt;code&gt;!&lt;/code&gt;) not executing commands containing file paths while the path autocomplete popup was open&lt;/li&gt;
&lt;li&gt;Fixed auto-mode denial notifications rendering broken characters when a long denial reason was truncated mid-emoji&lt;/li&gt;
&lt;li&gt;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 &lt;code&gt;?&lt;/code&gt; help overlay&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview&lt;/code&gt; rejecting PR references like &lt;code&gt;#123&lt;/code&gt;, &lt;code&gt;PR 123&lt;/code&gt;, and pasted PR URLs; error hints now name the command you actually typed&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview &amp;lt;branch&amp;gt;&lt;/code&gt; not fetching the branch from origin when it exists remotely; it now suggests the closest branch name on typos&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview&lt;/code&gt; skipping the billing confirmation in a new conversation after &lt;code&gt;/clear&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/ultrareview&lt;/code&gt;’s “not a git repository” error on Claude Desktop now suggesting the project’s repository folder instead of terminal commands&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;ExitWorktree&lt;/code&gt; failing with “no active EnterWorktree session” after resuming a session with &lt;code&gt;--continue&lt;/code&gt;/&lt;code&gt;--resume&lt;/code&gt; in print/SDK mode&lt;/li&gt;
&lt;li&gt;Fixed the workflow agent grid staying empty for Remote Control clients that join a session mid-run&lt;/li&gt;
&lt;li&gt;Fixed streaming-mode control requests being marked complete before their handler finished, which could lose the request on session restart&lt;/li&gt;
&lt;li&gt;Fixed background sessions created with &lt;code&gt;/fork&lt;/code&gt; losing their live-parent protection after a state write failure&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed agent teams: a stopping teammate could send the leader duplicate idle notifications when team initialization re-ran within a session&lt;/li&gt;
&lt;li&gt;Fixed the plan-approval dialog footer splitting “ctrl+g to edit in &lt;code&gt;&amp;lt;editor&amp;gt;&lt;/code&gt;” apart when the file path is long&lt;/li&gt;
&lt;li&gt;Fixed the welcome banner keeping its old panel widths after a combined width+height terminal resize in fullscreen mode&lt;/li&gt;
&lt;li&gt;Fixed diff previews losing their line numbers and +/- markers in narrow layouts&lt;/li&gt;
&lt;li&gt;Fixed @-mentions attaching nothing after a partial file read, plugin uninstall targeting the wrong marketplace, and false “Command timed out” on exit code 143&lt;/li&gt;
&lt;li&gt;Fixed OpenTelemetry HTTP exports being rejected with 411/400 by Azure Monitor and other endpoints that don’t accept chunked transfer encoding&lt;/li&gt;
&lt;li&gt;Fixed OTLP event log records missing &lt;code&gt;trace_id&lt;/code&gt;/&lt;code&gt;span_id&lt;/code&gt; when &lt;code&gt;TRACEPARENT&lt;/code&gt; is set in SDK/headless mode&lt;/li&gt;
&lt;li&gt;Fixed conversations with many images incorrectly failing with “Request too large” errors, and improved the error message to explain the actual cause&lt;/li&gt;
&lt;li&gt;Fixed web search and web fetch returning “API Error” text as search results or page content when the API was overloaded&lt;/li&gt;
&lt;li&gt;Improved web search and web fetch reliability by retrying 529 errors and rate-limited requests with bounded backoff&lt;/li&gt;
&lt;li&gt;Improved prompt caching: the mid-conversation system block now works behind LLM gateways and custom base URLs (Bedrock, Vertex, 1P)&lt;/li&gt;
&lt;li&gt;Improved background agent attach: cold-attaching now instantly shows the formatted transcript while the session boots, instead of a blank wait&lt;/li&gt;
&lt;li&gt;Reduced token usage in inter-agent messaging: &lt;code&gt;SendMessage&lt;/code&gt; bodies are no longer duplicated into replayed history and tool results&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/fork&lt;/code&gt; to name the copy after your prompt when the session has no title, so the row is recognizable in the agent view&lt;/li&gt;
&lt;li&gt;Changed bare &lt;code&gt;/btw&lt;/code&gt; to reopen the side-question panel on your most recent exchange so you can browse earlier answers&lt;/li&gt;
&lt;li&gt;Changed the &lt;code&gt;←&lt;/code&gt; footer hint to pulse &lt;code&gt;N done&lt;/code&gt; for a moment when a background agent finishes while nothing needs your input&lt;/li&gt;
&lt;li&gt;Deprecated the Task tool’s &lt;code&gt;mode&lt;/code&gt; parameter (now ignored); subagents inherit the parent session’s permission mode by default&lt;/li&gt;
&lt;li&gt;Changed Enterprise &lt;code&gt;forceLoginMethod&lt;/code&gt; to be enforced for VS Code extension, SDK, &lt;code&gt;setup-token&lt;/code&gt;, and &lt;code&gt;install-github-app&lt;/code&gt; logins, not just the terminal&lt;/li&gt;
&lt;li&gt;Changed session transcripts to record the reasoning effort level on each assistant message&lt;/li&gt;
&lt;li&gt;Changed headless/SDK sessions to apply a &lt;code&gt;set_model&lt;/code&gt; control request mid-turn; the next model round-trip uses the new model instead of waiting for the next turn&lt;/li&gt;
&lt;li&gt;Changed agent view / &lt;code&gt;claude agents --json&lt;/code&gt;: sessions waiting on a sandbox, MCP-input, or managed-settings prompt now show as “Needs input” instead of “Working”&lt;/li&gt;
&lt;li&gt;Updated the auth status panel title from “Cloud authentication” to “Authentication”&lt;/li&gt;
&lt;li&gt;Corrected an earlier release note (2.1.200): tmux through the 3.6 series lacks synchronized output; newer tmux with support is detected automatically&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-212</link><guid isPermaLink="false">claude-code-2.1.212</guid><pubDate>Thu, 16 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.211</title><description>&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;--forward-subagent-text&lt;/code&gt; flag and &lt;code&gt;CLAUDE_CODE_FORWARD_SUBAGENT_TEXT&lt;/code&gt; environment variable to include subagent text and thinking in stream-json output&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed auto mode overriding a PreToolUse hook’s &lt;code&gt;ask&lt;/code&gt; decision for unsandboxed Bash — a hook &lt;code&gt;ask&lt;/code&gt; now floors the decision at a prompt&lt;/li&gt;
&lt;li&gt;Fixed parallel Claude Code sessions all logging out simultaneously after wake-from-sleep when many sessions share one credential store&lt;/li&gt;
&lt;li&gt;Fixed plugin MCP servers not reconnecting after an idle web session woke, leaving MCP calls failing until the next message&lt;/li&gt;
&lt;li&gt;Fixed Claude Code on Vertex and Bedrock attempting the default Opus model at startup and printing a spurious fallback notice when a model is explicitly configured&lt;/li&gt;
&lt;li&gt;Fixed subagents spawned with an explicit model override reverting to the parent’s model when resumed or sent a follow-up message&lt;/li&gt;
&lt;li&gt;Fixed nested &lt;code&gt;.claude/rules/*.md&lt;/code&gt; files loading even when setting sources exclude project settings&lt;/li&gt;
&lt;li&gt;Fixed file upload validation: filenames ending in a DOS device suffix (&lt;code&gt;.prn&lt;/code&gt;) or trailing dot are now accepted, and files with multiple hard links are refused&lt;/li&gt;
&lt;li&gt;Fixed file uploads to Claude in Chrome from remote and CLI sessions&lt;/li&gt;
&lt;li&gt;Fixed edits that leave the input as ”?” being silently swallowed and toggling the shortcuts panel&lt;/li&gt;
&lt;li&gt;Fixed a startup hang when the Claude in Chrome extension is enabled but Chrome is not running&lt;/li&gt;
&lt;li&gt;Fixed a 300ms delay revealing async content (Settings tabs, Stats, diff views, and other loading states)&lt;/li&gt;
&lt;li&gt;Fixed reopening a just-stopped background session from the agents view starting a blank conversation under the same session id&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/loop&lt;/code&gt; hiding the session from &lt;code&gt;/resume&lt;/code&gt; after a single use&lt;/li&gt;
&lt;li&gt;Fixed screen reader users losing the audible terminal bell after &lt;code&gt;/terminal-setup&lt;/code&gt; or onboarding terminal setup&lt;/li&gt;
&lt;li&gt;Fixed background jobs on LLM gateway auth (&lt;code&gt;ANTHROPIC_AUTH_TOKEN&lt;/code&gt; + &lt;code&gt;ANTHROPIC_BASE_URL&lt;/code&gt;) coming back “Not logged in” after the daemon respawns them&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude agents&lt;/code&gt; jobs becoming permanently undeletable when git no longer recognizes their worktree — the row now shows why the delete was refused instead of silently reappearing&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/clear&lt;/code&gt; not resetting the session cost counter — the statusline’s cost now starts at $0 after &lt;code&gt;/clear&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed Claude in Chrome setup pages failing to open in the browser on Windows&lt;/li&gt;
&lt;li&gt;Fixed headless print-mode sessions on Windows crashing or silently exiting when stdin is unreadable&lt;/li&gt;
&lt;li&gt;Fixed background session titles in the agents view showing the naming model’s refusal text when the prompt contains a link&lt;/li&gt;
&lt;li&gt;Fixed background agents killed by the user auto-respawning, and revived agents re-running stale prompts from old sessions&lt;/li&gt;
&lt;li&gt;Fixed routines with no schedule reporting a next run time in the year 1&lt;/li&gt;
&lt;li&gt;Hardened synced skill/plugin directory naming on Windows and kept CCR web fetch/search proxies working after &lt;code&gt;/clear&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Improved terminal layout and rendering performance&lt;/li&gt;
&lt;li&gt;Improved background agent result reporting — Claude now reports the status of still-running agents and waits for the real completion instead of fabricating results&lt;/li&gt;
&lt;li&gt;Improved the memory index over-limit warning to measure only loaded content, excluding frontmatter and HTML comments&lt;/li&gt;
&lt;li&gt;Updated integer environment variables (timeouts, token budgets, retry counts) to accept scientific notation and digit-separator spellings like &lt;code&gt;1e6&lt;/code&gt; and &lt;code&gt;64_000&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Updated documentation links to the current docs sites&lt;/li&gt;
&lt;li&gt;Changed “always allow” permission rules to save at the repository root, so approvals granted in a git worktree persist across sessions and worktrees&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/usage-credits&lt;/code&gt; to ask for confirmation before sending a request to organization admins&lt;/li&gt;
&lt;li&gt;Changed Vim mode &lt;code&gt;s&lt;/code&gt; and &lt;code&gt;S&lt;/code&gt; (substitute char/line) to work in NORMAL mode, matching vim behavior&lt;/li&gt;
&lt;li&gt;[VSCode] Updated the Remote Control banner to describe what it does&lt;/li&gt;
&lt;li&gt;Claude in Chrome: hardened file-upload path validation&lt;/li&gt;
&lt;li&gt;Claude in Chrome: &lt;code&gt;save_to_disk&lt;/code&gt; on screenshot actions now writes the image to disk and returns the path; previously it did nothing&lt;/li&gt;
&lt;li&gt;Fixed a prompt-caching regression on Bedrock, Vertex, Mantle, and Foundry that billed the trailing system context block as fresh input tokens on every request.&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-211</link><guid isPermaLink="false">claude-code-2.1.211</guid><pubDate>Tue, 14 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.210</title><description>&lt;ul&gt;
&lt;li&gt;Added a live elapsed-time counter to the collapsed tool summary line so long-running tool calls visibly tick instead of looking stuck&lt;/li&gt;
&lt;li&gt;Added a startup warning for &lt;code&gt;Write(path)&lt;/code&gt;, &lt;code&gt;NotebookEdit(path)&lt;/code&gt;, and &lt;code&gt;Glob(path)&lt;/code&gt; permission rules — use &lt;code&gt;Edit(path)&lt;/code&gt; or &lt;code&gt;Read(path)&lt;/code&gt; instead&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;isolation: &#39;worktree&#39;&lt;/code&gt; subagents being able to run git-mutating commands against the main repo checkout instead of their own isolated worktree&lt;/li&gt;
&lt;li&gt;Fixed the &lt;code&gt;ultracode&lt;/code&gt; keyword opt-in firing on non-human-originated input such as webhook payloads and relayed PR comments&lt;/li&gt;
&lt;li&gt;Fixed a rendered text fragment leaking into crash telemetry when a UI component returned content outside a styled text element&lt;/li&gt;
&lt;li&gt;Fixed paste markers leaking into external editors opened from Claude Code, which could appear as stray È/É characters around pasted text&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude attach&lt;/code&gt; sometimes failing with “job not found” or “agent is still starting” errors during session transitions — attach now waits for the daemon to settle, and terminal resizes during a slow attach are applied once it completes&lt;/li&gt;
&lt;li&gt;Fixed a session crash when a tool’s result renderer returned a numeric bigint value or plain text instead of a UI element&lt;/li&gt;
&lt;li&gt;Fixed a hook callback timeout being misreported to the model as a user rejection, which made unattended sessions stop and wait&lt;/li&gt;
&lt;li&gt;Fixed Claude assuming a &lt;code&gt;cd&lt;/code&gt; took effect after its command was moved to the background; the tool result now states the working directory is unchanged&lt;/li&gt;
&lt;li&gt;Fixed plugin-provided MCP servers being torn down when MCP servers are re-synced mid-session&lt;/li&gt;
&lt;li&gt;Fixed plan approvals without edits being labeled “(edited by user)” and overwriting the plan file with a stale snapshot&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/doctor&lt;/code&gt; skipping its auto-mode-default proposal on Bedrock, Vertex, and Foundry, where auto mode no longer needs an opt-in&lt;/li&gt;
&lt;li&gt;Fixed Grep content mode claiming “No matches found” when paginating past the end of results&lt;/li&gt;
&lt;li&gt;Fixed unmatched &lt;code&gt;$1&lt;/code&gt;/&lt;code&gt;$2&lt;/code&gt; positional placeholders in skills and commands being silently stripped; they are now preserved verbatim&lt;/li&gt;
&lt;li&gt;Fixed plugin cache writes leaving temp files behind on failure and failing on locked-file renames on Windows and network filesystems&lt;/li&gt;
&lt;li&gt;Fixed background workers crash-looping when a client resets its connection to the background service&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude agents --effort ultracode&lt;/code&gt; not reaching dispatched sessions; the value was silently dropped&lt;/li&gt;
&lt;li&gt;Fixed pressing ← to open the agents view dropping the task tracker when returning to the session&lt;/li&gt;
&lt;li&gt;Fixed the agents dashboard retaining pasted images from abandoned reply drafts after their session was deleted&lt;/li&gt;
&lt;li&gt;Fixed killed background sessions leaving a permanent &lt;code&gt;git worktree lock&lt;/code&gt; behind; the periodic sweep now releases locks whose owning process is gone&lt;/li&gt;
&lt;li&gt;Fixed SDK MCP servers registered via an &lt;code&gt;initialize&lt;/code&gt; control request waiting until the next turn to start connecting&lt;/li&gt;
&lt;li&gt;Fixed returning to the agents view from a session leaving overlapping ghost frames with &lt;code&gt;CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed late-appearing &lt;code&gt;.claude/*&lt;/code&gt; symlinks not being reconciled into the sandbox deny-write list&lt;/li&gt;
&lt;li&gt;Hardened the Agent tool against indirect prompt injection via content a subagent read&lt;/li&gt;
&lt;li&gt;Improved the Bash/PowerShell tool message when a command hits its timeout and is auto-backgrounded, so the model can distinguish a hang from an explicit background request&lt;/li&gt;
&lt;li&gt;Improved auto mode: the permission classifier now defaults to Sonnet 5 for external sessions, validated on the session’s first request and pinned for the session&lt;/li&gt;
&lt;li&gt;Improved the bundled dataviz skill’s chart color validation with perceptual OKLab color difference and recalibrated color-blindness thresholds&lt;/li&gt;
&lt;li&gt;Memory writes that leave a MEMORY.md index over its read limit now produce an explicit error instead of silent truncation&lt;/li&gt;
&lt;li&gt;Screen reader mode now announces permission mode changes aloud when cycling modes with Shift+Tab&lt;/li&gt;
&lt;li&gt;The agents footer hint now shows how many background agents are waiting on your input, with a brief color emphasis when the count changes&lt;/li&gt;
&lt;li&gt;Agent view: the session you pressed ← from stays visibly marked even after mouse hover or arrow keys move the selection&lt;/li&gt;
&lt;li&gt;Fable temporarily shows as unavailable in the advisor picker while a server-side issue causing Fable advisor failures is fixed&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-210</link><guid isPermaLink="false">claude-code-2.1.210</guid><pubDate>Mon, 13 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.209</title><description>&lt;ul&gt;
&lt;li&gt;Fixed /model and other dialogs being blocked in &lt;code&gt;claude agents&lt;/code&gt; background sessions (reverts an overly broad guard)&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-209</link><guid isPermaLink="false">claude-code-2.1.209</guid><pubDate>Mon, 13 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.208</title><description>&lt;ul&gt;
&lt;li&gt;Added screen reader mode: opt-in plain-text rendering for screen reader users. Run &lt;code&gt;claude --ax-screen-reader&lt;/code&gt;, set CLAUDE_AX_SCREEN_READER=1, or add “axScreenReader”: true to settings.&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;vimInsertModeRemaps&lt;/code&gt; setting: map two-key insert-mode sequences like &lt;code&gt;jj&lt;/code&gt; to Escape in vim mode&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;CLAUDE_CODE_PROCESS_WRAPPER&lt;/code&gt;: agent view and the background service now honor a corporate launcher by running every Claude Code self-spawn through a required wrapper executable&lt;/li&gt;
&lt;li&gt;Added mouse-click support for multi-select menus and “Other” input rows in fullscreen mode&lt;/li&gt;
&lt;li&gt;Changed the Fable 5 usage-credits consent prompt to start with the decline option focused&lt;/li&gt;
&lt;li&gt;Fixed fast mode staying off after switching back to a model that supports it — it now restores automatically when enabled in settings&lt;/li&gt;
&lt;li&gt;Fixed replies typed to a background agent being lost when delivery fails — the text is now saved and delivered when the session restarts&lt;/li&gt;
&lt;li&gt;Fixed background-session attach failing permanently (“Couldn’t start the background daemon”) after an update replaced the binary a running &lt;code&gt;claude agents&lt;/code&gt; process was launched from&lt;/li&gt;
&lt;li&gt;Fixed the context window (and auto-compact indicator) briefly resetting to 200k after the CLI auto-updates, causing a false “100% context used” when resuming long-context sessions&lt;/li&gt;
&lt;li&gt;Fixed supervised and background sessions crashing when a server closed an HTTP/2 connection with a GOAWAY while requests were in flight&lt;/li&gt;
&lt;li&gt;Fixed truncated stream-json/JSON output and missing result message when piping large responses from &lt;code&gt;claude -p&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;CLAUDE_CODE_MAX_OUTPUT_TOKENS&lt;/code&gt; and similar env vars silently using the mantissa of scientific-notation values (&lt;code&gt;1e6&lt;/code&gt; became &lt;code&gt;1&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Fixed very large markdown tables stalling rendering or using excessive memory; tables over 200 rows show the first 200 with a ”… N more rows” notice&lt;/li&gt;
&lt;li&gt;Fixed the Edit tool failing on files modified after reading when the target text still matches uniquely&lt;/li&gt;
&lt;li&gt;Fixed Read reporting empty files as “shorter than offset”, Grep silently returning “No files found” for invalid regex patterns, Grep count mode under-reporting totals when paginated, and Glob crashing with an unclear error when the pattern, path, or working directory contained a null byte&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;apiKeyHelper&lt;/code&gt; script failures being hidden behind a generic 401 after ~10 silent retries; the script’s own error is now shown within 3 attempts&lt;/li&gt;
&lt;li&gt;Fixed Bedrock streaming requests failing with a misleading “Truncated event message received” when a gateway transforms the response — the error now names the content-type and points at the proxy&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/upgrade&lt;/code&gt; showing a login flow instead of the upgrade URL when the browser fails to open&lt;/li&gt;
&lt;li&gt;Fixed stream-json input killing the session on blank CRLF or whitespace-only lines from Windows-style SDK hosts&lt;/li&gt;
&lt;li&gt;Fixed headless stream-json sessions hanging permanently when a &lt;code&gt;control_request&lt;/code&gt; carried a non-string &lt;code&gt;set_model&lt;/code&gt; payload; the CLI now answers with an error response&lt;/li&gt;
&lt;li&gt;Fixed repeated “No completion record was found” notices on session resume — orphaned background tasks now collapse into a single summary&lt;/li&gt;
&lt;li&gt;Fixed Remote Control clients attaching to a terminal-hosted session not seeing background agents and workflow progress until a task started or stopped&lt;/li&gt;
&lt;li&gt;Fixed the Agent tool launching with no tools when a subagent’s &lt;code&gt;tools&lt;/code&gt; list resolves to nothing — it now returns a clear error naming the unrecognized entries&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/usage&lt;/code&gt; showing stale cached bars over fresher data, and &lt;code&gt;/mcp&lt;/code&gt; not reclassifying placeholder servers after config edits&lt;/li&gt;
&lt;li&gt;Fixed “Change directory” in SDK hosts (e.g. Claude Desktop) failing with “A turn is in progress” on idle sessions that have a running background task&lt;/li&gt;
&lt;li&gt;Fixed the workflow save dialog showing &lt;code&gt;~/.claude/workflows/&lt;/code&gt; instead of the &lt;code&gt;CLAUDE_CONFIG_DIR&lt;/code&gt; location for user-scope saves&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/release-notes&lt;/code&gt; adding the viewed notes to the model’s context — “Show all” previously injected the entire changelog into every subsequent request&lt;/li&gt;
&lt;li&gt;Fixed a memory leak in the agent view where pasted images were retained for the screen’s lifetime after sending peek replies&lt;/li&gt;
&lt;li&gt;Fixed SDK sessions losing agents defined via the initialize request when a plugin refresh ran before the client attached&lt;/li&gt;
&lt;li&gt;Fixed several memory leaks in long sessions: MCP stdio server stderr accumulating up to 64 MB per server, LSP documents staying open indefinitely (now LRU with 50-doc cap), async hook output retained after backgrounding, and unbounded growth in headless/SDK sessions from large tool-result payloads&lt;/li&gt;
&lt;li&gt;Fixed a memory blowup when reading files with extremely long single lines using offset/limit — the read now returns a clean error instead of loading the whole line&lt;/li&gt;
&lt;li&gt;Fixed multi-second per-turn slowdowns in sessions with many permission deny/ask rules — rule matchers are now compiled once and cached&lt;/li&gt;
&lt;li&gt;Improved input responsiveness while agent task lists update — task updates no longer re-render the entire UI&lt;/li&gt;
&lt;li&gt;Reduced per-tool-call CPU overhead in print/SDK sessions with many MCP tools by caching tool-pool assembly (up to 7x faster tool rounds at high tool counts)&lt;/li&gt;
&lt;li&gt;Reduced memory usage by bounding the file edit read cache to 16 MB instead of pinning up to 1,000 full files&lt;/li&gt;
&lt;li&gt;Reduced session transcript size (up to 79x in edit-heavy sessions) and bounded checkpoint disk usage by pruning superseded file-history backups&lt;/li&gt;
&lt;li&gt;Reduced memory usage when resuming sessions with background agents or forks spawned from large conversations&lt;/li&gt;
&lt;li&gt;Completed background agents now stay listed in &lt;code&gt;/tasks&lt;/code&gt; until cleanup instead of vanishing the moment they finish&lt;/li&gt;
&lt;li&gt;Attaching to a stopped background agent now shows its transcript immediately while the session warms up, instead of a blank “Session is starting” screen&lt;/li&gt;
&lt;li&gt;Background sessions: an older daemon no longer silently restarts workers spawned by a newer version onto the older binary&lt;/li&gt;
&lt;li&gt;Agent view: Ctrl+X now deletes renamed-branch worktrees, never destroys unpushed commits, keeps the session row when a worktree is kept, and reused worktree names reset to the current base&lt;/li&gt;
&lt;li&gt;Catastrophic removals (e.g. &lt;code&gt;rm -rf ~&lt;/code&gt;) in commands containing &lt;code&gt;$(…)&lt;/code&gt;/backticks/&lt;code&gt;&amp;lt;(…)&lt;/code&gt; now prompt in &lt;code&gt;--dangerously-skip-permissions&lt;/code&gt; and auto mode, matching the plain form&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/install-github-app&lt;/code&gt; and the &lt;code&gt;/mcp&lt;/code&gt; settings menu no longer open in background sessions&lt;/li&gt;
&lt;li&gt;MCP servers configured with an empty URL now show as “not configured” in &lt;code&gt;/mcp&lt;/code&gt; instead of a config error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/usage&lt;/code&gt; now shows your last-known usage bars with an “as of” note when the usage endpoint is rate-limited, instead of an error screen&lt;/li&gt;
&lt;li&gt;Fixed Bedrock auth failing with “Session token not found or invalid” for AWS SSO profiles whose sso_region differs from the Bedrock region (2.1.207 regression)&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-208</link><guid isPermaLink="false">claude-code-2.1.208</guid><pubDate>Mon, 13 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.207</title><description>&lt;ul&gt;
&lt;li&gt;Auto mode is now available without &lt;code&gt;CLAUDE_CODE_ENABLE_AUTO_MODE&lt;/code&gt; opt-in on Bedrock, Vertex AI, and Foundry; disable via &lt;code&gt;disableAutoMode&lt;/code&gt; in settings&lt;/li&gt;
&lt;li&gt;Fixed the terminal freezing and keystrokes lagging while streaming responses containing very long lists, tables, paragraphs, or code blocks&lt;/li&gt;
&lt;li&gt;Fixed remote managed settings from a non-interactive run (&lt;code&gt;claude -p&lt;/code&gt;, the SDK) being permanently recorded as consented without ever showing the security consent dialog&lt;/li&gt;
&lt;li&gt;Fixed spurious prompt-injection warnings triggered by benign system-generated conversation updates&lt;/li&gt;
&lt;li&gt;Fixed the auto-updater overwriting a custom launcher script or symlink at &lt;code&gt;~/.local/bin/claude&lt;/code&gt; on every release; &lt;code&gt;/doctor&lt;/code&gt; now reports an externally managed launcher&lt;/li&gt;
&lt;li&gt;Fixed compound commands with &lt;code&gt;cd&lt;/code&gt; prompting for permission when the only output redirect was to &lt;code&gt;/dev/null&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed the transcript jumping above the start of the answer when a response finishes streaming&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;extensions.worktreeConfig&lt;/code&gt; being left in the repo’s &lt;code&gt;.git/config&lt;/code&gt; (breaking go-git tools like &lt;code&gt;tea&lt;/code&gt;) after the last &lt;code&gt;worktree.sparsePaths&lt;/code&gt; worktree was removed&lt;/li&gt;
&lt;li&gt;Fixed malformed bracket patterns in rules globs, skill paths, &lt;code&gt;.ignore&lt;/code&gt;, and &lt;code&gt;.worktreeinclude&lt;/code&gt; breaking file reads, file suggestions, and worktree creation&lt;/li&gt;
&lt;li&gt;Fixed a crash loop in agent teams where a malformed teammate mailbox message caused repeated errors every second until the mailbox file was manually deleted&lt;/li&gt;
&lt;li&gt;Fixed background sessions auto-named by accepting a plan not showing that name on their agent-view row&lt;/li&gt;
&lt;li&gt;Fixed background sessions that entered a git worktree resuming blank after a cold reopen from the agent list&lt;/li&gt;
&lt;li&gt;Fixed Remote Control task status updates being lost when the connection recovered from a network interruption or credential refresh&lt;/li&gt;
&lt;li&gt;Fixed Remote Control sessions hosted by the desktop app not showing background agent and workflow progress on mobile and web&lt;/li&gt;
&lt;li&gt;Fixed Deep research runs labeling every Fetch-phase agent “unknown” — chips now show the source hostname&lt;/li&gt;
&lt;li&gt;Fixed Bedrock repeatedly requesting fresh AWS SSO credentials from IAM Identity Center on every API request&lt;/li&gt;
&lt;li&gt;Improved agent view: pasting the same text again now expands the collapsed &lt;code&gt;[Pasted text #N]&lt;/code&gt; placeholder instead of adding a second one&lt;/li&gt;
&lt;li&gt;Improved agent view: blocked session peeks now lead with the question and show a worded staleness clock (&lt;code&gt;waiting 3m&lt;/code&gt;) instead of the same timestamp twice&lt;/li&gt;
&lt;li&gt;Changed Bedrock, Vertex, and Claude Platform on AWS to default to Claude Opus 4.8&lt;/li&gt;
&lt;li&gt;Changed auto mode to no longer read &lt;code&gt;autoMode&lt;/code&gt; from &lt;code&gt;.claude/settings.local.json&lt;/code&gt; (repo-resident); use &lt;code&gt;~/.claude/settings.json&lt;/code&gt; instead&lt;/li&gt;
&lt;li&gt;Fixed an indefinite hang on Windows when AWS credential resolution stalls (e.g. a stuck &lt;code&gt;credential_process&lt;/code&gt;): the 60-second stall guard now fires instead of waiting forever.&lt;/li&gt;
&lt;li&gt;Plugin hooks/monitors/MCP headersHelper: &lt;code&gt;${user_config.*}&lt;/code&gt; in shell-form commands is now rejected (shell-injection fix). Hooks: use exec form (&lt;code&gt;args&lt;/code&gt; array) or &lt;code&gt;$CLAUDE_PLUGIN_OPTION_&amp;lt;KEY&amp;gt;&lt;/code&gt;; monitors and headersHelper: read the value inside the script (config file or the server’s &lt;code&gt;env&lt;/code&gt; block).&lt;/li&gt;
&lt;li&gt;Plugin option values (&lt;code&gt;pluginConfigs&lt;/code&gt;) are no longer read from project-level &lt;code&gt;.claude/settings.json&lt;/code&gt;; only user, &lt;code&gt;--settings&lt;/code&gt;, and managed settings are honored&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/usage-credits&lt;/code&gt; amount inputs silently stripping malformed values (e.g. a pasted timestamp) to digits; malformed amounts are now rejected with an error, and amounts over $1,000 require a typed confirmation&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-207</link><guid isPermaLink="false">claude-code-2.1.207</guid><pubDate>Fri, 10 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.206</title><description>&lt;ul&gt;
&lt;li&gt;Added directory path suggestions to &lt;code&gt;/cd&lt;/code&gt;, matching &lt;code&gt;/add-dir&lt;/code&gt; behavior&lt;/li&gt;
&lt;li&gt;Added a &lt;code&gt;/doctor&lt;/code&gt; check that proposes trimming checked-in &lt;code&gt;CLAUDE.md&lt;/code&gt; files by cutting content Claude could derive from the codebase&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/commit-push-pr&lt;/code&gt; now auto-allows &lt;code&gt;git push&lt;/code&gt; to the repo’s configured push remote (&lt;code&gt;remote.pushDefault&lt;/code&gt;, or the sole remote when only one is configured) in addition to &lt;code&gt;origin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Gateway: &lt;code&gt;/login&lt;/code&gt; now supports Anthropic-operated public gateway endpoints&lt;/li&gt;
&lt;li&gt;&lt;code&gt;EnterWorktree&lt;/code&gt; now asks for confirmation before entering a git worktree outside the project’s &lt;code&gt;.claude/worktrees/&lt;/code&gt; directory&lt;/li&gt;
&lt;li&gt;Background agents now upgrade to a new version in the background right after a Claude Code update, instead of paying a slow stale-session upgrade when you attach&lt;/li&gt;
&lt;li&gt;Fixed an expired login failing every model with a misleading “There’s an issue with the selected model” error instead of prompting to run &lt;code&gt;/login&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude --resume&lt;/code&gt; and &lt;code&gt;--continue&lt;/code&gt; not responding to keyboard input on startup&lt;/li&gt;
&lt;li&gt;Fixed MCP servers configured via &lt;code&gt;--mcp-config&lt;/code&gt; or &lt;code&gt;.mcp.json&lt;/code&gt; ignoring a per-server &lt;code&gt;request_timeout_ms&lt;/code&gt;, which caused long-running MCP tool calls to time out at the 60s default in fresh sessions&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;CLAUDE_CODE_EXTRA_BODY&lt;/code&gt; being silently ignored by &lt;code&gt;claude agents&lt;/code&gt; / &lt;code&gt;--bg&lt;/code&gt; background workers; the shell-exported override now follows the dispatching session&lt;/li&gt;
&lt;li&gt;Fixed OAuth MCP servers requiring manual re-authentication after a single failed token refresh&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;--permission-prompt-tool&lt;/code&gt; pointing at an MCP server crashing with “MCP tool not found” on cold start before the server finishes connecting&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/model&lt;/code&gt; picker rows printing a price for a different model than the row named, and stopped quoting first-party list prices on providers that don’t bill them&lt;/li&gt;
&lt;li&gt;Fixed server-provided model rows being misplaced in the &lt;code&gt;/model&lt;/code&gt; picker when an entitlement or allowlist restriction drops the row they were positioned against&lt;/li&gt;
&lt;li&gt;Fixed desktop sessions getting stuck showing “running” after a slash command was sent mid-turn&lt;/li&gt;
&lt;li&gt;Fixed keyboard input being ignored in the agents view when a setup prompt appeared before a bare &lt;code&gt;claude --resume&lt;/code&gt; on Windows&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude rm&lt;/code&gt; leaving the removed job in the daemon roster, causing the row to reappear in &lt;code&gt;claude agents&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/remote-control&lt;/code&gt; showing “Unknown command” when logged out — it now explains how to sign in&lt;/li&gt;
&lt;li&gt;Fixed left arrow not stepping back out of a phase or agent in the workflow detail view&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/status&lt;/code&gt; listing the same broken-install warning twice&lt;/li&gt;
&lt;li&gt;Fixed false “disused plugin” tips and skewed disuse telemetry for LSP plugins&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/doctor&lt;/code&gt;’s update check to compare Homebrew installs against their cask’s channel instead of the settings channel&lt;/li&gt;
&lt;li&gt;Fixed the fullscreen jump-to-bottom pill suggesting Ctrl+End on macOS, not showing rebound chords, and wrapping over the transcript&lt;/li&gt;
&lt;li&gt;Bedrock: fixed a multi-minute startup hang when using an &lt;code&gt;awsCredentialExport&lt;/code&gt; helper on networks with restricted egress&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;/code-review&lt;/code&gt; findings quality on claude-opus-4-8 across all effort levels&lt;/li&gt;
&lt;li&gt;Improved agents view: status column now uses full terminal width instead of truncating at 64 characters&lt;/li&gt;
&lt;li&gt;Changed agents view: Ctrl+X now permanently removes a completed session, and sessions no longer render twice; deleted background jobs stay deleted&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-206</link><guid isPermaLink="false">claude-code-2.1.206</guid><pubDate>Wed, 08 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.205</title><description>&lt;ul&gt;
&lt;li&gt;Added an auto mode rule that blocks tampering with session transcript files&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;--json-schema&lt;/code&gt; silently producing unstructured output when the schema was invalid, and schemas using the &lt;code&gt;format&lt;/code&gt; keyword being rejected&lt;/li&gt;
&lt;li&gt;Fixed a message sent while Claude was working being silently lost when the turn ended at the &lt;code&gt;--max-turns&lt;/code&gt; limit&lt;/li&gt;
&lt;li&gt;Fixed Windows worktree removal deleting files outside the worktree when an NTFS junction or directory symlink existed inside it&lt;/li&gt;
&lt;li&gt;Fixed background agents staying shown as “failed” or “completed” in the agent list after being resumed with &lt;code&gt;SendMessage&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed background jobs flipping from “needs input” back to “working” in the agent list when the agent’s turn contained no readable text&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude attach&lt;/code&gt; erroring when a background agent was mid-upgrade restart instead of waiting for it to come back&lt;/li&gt;
&lt;li&gt;Fixed session-to-PR linking missing a PR created in a Bash call whose output exceeded the 30K inline limit&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;claude mcp add-from-claude-desktop&lt;/code&gt; getting stuck when a server name contains unsupported characters; invalid names are now reported and remaining servers still import&lt;/li&gt;
&lt;li&gt;Fixed a plugin LSP server that fails to initialize preventing a valid LSP server from another plugin handling the same file extension&lt;/li&gt;
&lt;li&gt;Fixed a Windows crash when the directory Claude was launched from is deleted, locked, or unmounted while a command is running&lt;/li&gt;
&lt;li&gt;Fixed a crash when a file watcher was closed while a directory scan was still in flight&lt;/li&gt;
&lt;li&gt;Fixed project verify skills being rewritten on every session instead of only when a documented command changed&lt;/li&gt;
&lt;li&gt;Fixed the agent view rendering one line too high and clipping its header when the job list slightly overflowed the screen&lt;/li&gt;
&lt;li&gt;Fixed background tasks in the web and mobile Remote Control panels showing stale “Running” status by forwarding full task state on every membership change&lt;/li&gt;
&lt;li&gt;Improved auto mode to ask before running &lt;code&gt;rm -rf&lt;/code&gt; on a variable it can’t resolve from context&lt;/li&gt;
&lt;li&gt;Auto-update binary downloads now stream to disk instead of buffering in memory, cutting the updater’s peak memory usage by roughly 400 MB&lt;/li&gt;
&lt;li&gt;Background task notifications now explicitly state that no human input has occurred, preventing fabricated in-transcript approvals from being acted on&lt;/li&gt;
&lt;li&gt;Improved agent view: sessions that edit, merge, comment on, or push to an existing PR now link it in &lt;code&gt;claude agents&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Improved agent view: rows now show a colored state word and a classifier-written headline instead of raw tool call text, and the peek opens with full status including the exact ask for blocked sessions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/doctor&lt;/code&gt; is now a full setup checkup that can diagnose and fix issues; &lt;code&gt;/checkup&lt;/code&gt; is its alias&lt;/li&gt;
&lt;li&gt;Reserved the “Claude Browser” MCP server name (alongside “Claude Preview”) ahead of the Claude Desktop pane rename; user-configured MCP servers can no longer register under either name&lt;/li&gt;
&lt;li&gt;Fixed Cowork VM-mode local-agent sessions failing to start with “Not logged in · Please run /login” on CLI 2.1.203+&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-205</link><guid isPermaLink="false">claude-code-2.1.205</guid><pubDate>Tue, 07 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.204</title><description>&lt;ul&gt;
&lt;li&gt;Fixed hook events not streaming during SessionStart hooks in headless sessions, which could cause remote workers to be idle-reaped mid-hook&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-204</link><guid isPermaLink="false">claude-code-2.1.204</guid><pubDate>Tue, 07 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.203</title><description>&lt;ul&gt;
&lt;li&gt;Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted&lt;/li&gt;
&lt;li&gt;Added a grey ⏸ badge to the footer when in manual permission mode, making the active mode always visible&lt;/li&gt;
&lt;li&gt;Added the session’s additional working directories to MCP &lt;code&gt;roots/list&lt;/code&gt;, with &lt;code&gt;notifications/roots/list_changed&lt;/code&gt; sent when the set changes&lt;/li&gt;
&lt;li&gt;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)&lt;/li&gt;
&lt;li&gt;Fixed background sessions becoming permanently unresponsive to attach, replies, and stop when the daemon’s session token went stale — the session now recovers automatically&lt;/li&gt;
&lt;li&gt;Fixed returning to &lt;code&gt;claude agents&lt;/code&gt; silently stopping running subagents and re-running the prompt from scratch — their work now carries over&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed background agents inheriting a stale &lt;code&gt;PATH&lt;/code&gt; from the daemon instead of the dispatching shell, causing missing tools on Windows&lt;/li&gt;
&lt;li&gt;Fixed background and agent-view sessions dropping a shell-exported &lt;code&gt;ANTHROPIC_BASE_URL&lt;/code&gt;, which sent API keys to the default endpoint and failed with 401&lt;/li&gt;
&lt;li&gt;Fixed Bash failing with “argument list too long” in repos with many git worktrees&lt;/li&gt;
&lt;li&gt;Fixed worktree-isolated subagents sometimes running shell commands in the parent checkout instead of their own worktree&lt;/li&gt;
&lt;li&gt;Fixed worktree creation rejecting nested repositories in multi-repo workspaces, leaving background sessions unable to isolate and edit&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed a background daemon auto-upgrade failure silently killing all running background sessions&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;TaskStop&lt;/code&gt; and &lt;code&gt;TaskOutput&lt;/code&gt; failing to find background agents spawned by another agent — errors now list running agents by id and description&lt;/li&gt;
&lt;li&gt;Fixed the &lt;code&gt;claude agents&lt;/code&gt; composer discarding your typed message when a slash command isn’t available there&lt;/li&gt;
&lt;li&gt;Fixed the agent list crashing when opening a stopped session whose conversation was already open in another session&lt;/li&gt;
&lt;li&gt;Fixed background sessions showing “Needs input” in the agent list after the question was already answered&lt;/li&gt;
&lt;li&gt;Fixed background agent startup failures showing only “exit_with_message” instead of the actual error&lt;/li&gt;
&lt;li&gt;Fixed background sessions ignoring &lt;code&gt;effortLevel&lt;/code&gt; changes in settings.json when forked through the daemon&lt;/li&gt;
&lt;li&gt;Fixed attached background sessions ignoring &lt;code&gt;CLAUDE_CODE_DISABLE_MOUSE&lt;/code&gt; and &lt;code&gt;CLAUDE_CODE_DISABLE_MOUSE_CLICKS&lt;/code&gt; opt-outs&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/exit&lt;/code&gt; incorrectly warning about running background agents after all named agents had completed&lt;/li&gt;
&lt;li&gt;Fixed background sessions started from a non-git directory unable to edit files when a &lt;code&gt;WorktreeCreate&lt;/code&gt; hook was configured&lt;/li&gt;
&lt;li&gt;Fixed the &lt;code&gt;@&lt;/code&gt; directory picker in &lt;code&gt;claude agents&lt;/code&gt; not showing registered git worktrees&lt;/li&gt;
&lt;li&gt;Fixed background task output on Windows being permanently replaced by an empty file after &lt;code&gt;/clear&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Fixed content jumping when scrolling up through long transcript history&lt;/li&gt;
&lt;li&gt;Fixed the terminal flickering and jumping while typing in bash mode when a shell-history suggestion was shown&lt;/li&gt;
&lt;li&gt;Fixed literal &lt;code&gt;^[[I&lt;/code&gt; / &lt;code&gt;^[[O&lt;/code&gt; escape codes being printed when reattaching to a background session&lt;/li&gt;
&lt;li&gt;Fixed LSP-only plugins being incorrectly flagged for disuse when their language servers deliver diagnostics or answer navigation requests&lt;/li&gt;
&lt;li&gt;Improved responsiveness while long responses stream: live-preview updates no longer re-render the whole screen&lt;/li&gt;
&lt;li&gt;Improved subagent behavior: agents are now less likely to re-delegate their entire task to another subagent&lt;/li&gt;
&lt;li&gt;Reduced binary size by ~7 MB and startup memory by ~7 MB by loading a large bundled dependency lazily instead of inlining it&lt;/li&gt;
&lt;li&gt;Changed left arrow to no longer close the background tasks, diff, and workflow detail views — press Esc instead&lt;/li&gt;
&lt;li&gt;Changed the empty &lt;code&gt;claude agents&lt;/code&gt; view to always show the organized sections (Needs input / Working / Completed) with descriptions&lt;/li&gt;
&lt;li&gt;Removed the startup “claude command missing or broken” warnings — they now appear in &lt;code&gt;/doctor&lt;/code&gt; and &lt;code&gt;/status&lt;/code&gt; instead&lt;/li&gt;
&lt;li&gt;Removed a redundant navigation hint from the &lt;code&gt;claude agents&lt;/code&gt; footer&lt;/li&gt;
&lt;li&gt;[VSCode] Added a Settings toggle for “Enable Remote Control for all sessions”&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-203</link><guid isPermaLink="false">claude-code-2.1.203</guid><pubDate>Mon, 06 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.202</title><description>&lt;ul&gt;
&lt;li&gt;Added a “Dynamic workflow size” setting in &lt;code&gt;/config&lt;/code&gt; for controlling how large Claude generally makes dynamic workflows (small/medium/large agent counts) — an advisory guideline, not an enforced cap&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;workflow.run_id&lt;/code&gt; and &lt;code&gt;workflow.name&lt;/code&gt; OpenTelemetry attributes to telemetry emitted by workflow-spawned agents, so a workflow run’s activity can be reconstructed from OTel data&lt;/li&gt;
&lt;li&gt;Fixed a crash in the inline Ctrl+R history search when accepting or cancelling while the search was still scanning the history file&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/rename&lt;/code&gt; on background sessions being reverted when the job restarts, which broke addressing the session by its new name&lt;/li&gt;
&lt;li&gt;Fixed transient mTLS handshake failures when settings were re-applied during an in-place client certificate rotation&lt;/li&gt;
&lt;li&gt;Fixed commands sent from Remote Control (mobile/web) into an interactive session failing with “Unknown command”&lt;/li&gt;
&lt;li&gt;Fixed images and files sent from the Remote Control mobile or web app without a caption being silently dropped&lt;/li&gt;
&lt;li&gt;Fixed the sign-in URL printed by &lt;code&gt;claude auth login&lt;/code&gt; and &lt;code&gt;claude mcp login --no-browser&lt;/code&gt; not being reliably clickable when it wraps over SSH — it is now emitted as a single hyperlink&lt;/li&gt;
&lt;li&gt;Fixed opening a chat from &lt;code&gt;claude agents&lt;/code&gt; sometimes failing with “currently running as a background agent” followed by a worker crash/respawn loop&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed voice dictation retrying in an unbounded loop when the microphone or audio recorder fails — repeated capture failures now pause voice input&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;/remote-control&lt;/code&gt; sessions showing the wrong permission mode in the mobile and web apps&lt;/li&gt;
&lt;li&gt;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&lt;/li&gt;
&lt;li&gt;Fixed installer and updater downloads failing immediately with “aborted” when a proxy or network drops the connection mid-download — transient connection drops now retry&lt;/li&gt;
&lt;li&gt;Fixed re-invoking an already-loaded skill appending a duplicate copy of its instructions to context&lt;/li&gt;
&lt;li&gt;Improved &lt;code&gt;/workflows&lt;/code&gt; agent list layout: wider titles, a dedicated time column, shorter model names, and no per-row tool-call counts&lt;/li&gt;
&lt;li&gt;Improved MCP error messages: clearer error when a server config has &lt;code&gt;url&lt;/code&gt; but no &lt;code&gt;type&lt;/code&gt;, suggesting &lt;code&gt;&quot;type&quot;: &quot;http&quot;&lt;/code&gt; instead of the misleading “command: expected string”&lt;/li&gt;
&lt;li&gt;Changed &lt;code&gt;/review &amp;lt;pr&amp;gt;&lt;/code&gt; back to a fast single-pass review; use &lt;code&gt;/code-review &amp;lt;level&amp;gt; &amp;lt;pr#&amp;gt;&lt;/code&gt; for the multi-agent review at a chosen effort level&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-202</link><guid isPermaLink="false">claude-code-2.1.202</guid><pubDate>Sun, 05 Jul 2026 16:00:00 GMT</pubDate></item><item><title>2.1.201</title><description>&lt;ul&gt;
&lt;li&gt;Claude Sonnet 5 sessions no longer use the mid-conversation system role for harness reminders&lt;/li&gt;
&lt;/ul&gt;</description><link>https://code.claude.com/docs/en/changelog#2-1-201</link><guid isPermaLink="false">claude-code-2.1.201</guid><pubDate>Thu, 02 Jul 2026 16:00:00 GMT</pubDate></item></channel></rss>