mirror of
https://github.com/anthropics/claude-code.git
synced 2026-07-26 14:13:29 +00:00
616 lines
80 KiB
XML
616 lines
80 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<feed xmlns="http://www.w3.org/2005/Atom">
|
||
<id>https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md</id>
|
||
<title>Claude Code Changelog</title>
|
||
<subtitle>Release notes for Claude Code</subtitle>
|
||
<author><name>Anthropic</name></author>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md"/>
|
||
<link rel="self" type="application/atom+xml" href="https://raw.githubusercontent.com/anthropics/claude-code/main/feed.xml"/>
|
||
<updated>2026-07-20T22:13:53Z</updated>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.216</id>
|
||
<title>Claude Code v2.1.216</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.216"/>
|
||
<updated>2026-07-20T22:13:53Z</updated>
|
||
<content type="html"><p>• Added sandbox.filesystem.disabled setting to skip filesystem isolation while keeping network egress control</p>
|
||
<p>• Fixed a slowdown in long sessions where message normalization cost grew quadratically with the number of turns, causing multi-second stalls and slow resumes</p>
|
||
<p>• Fixed auto mode denying commands with "HTTP 401" classifier errors after the OAuth token expired or rotated mid-session</p>
|
||
<p>• Fixed AskUserQuestion telling Claude to continue even when your answer asked it to wait or explain first — free-text answers now get neutral wording</p>
|
||
<p>• Fixed Claude Code on the web re-asking the same question and dropping your answer after the session sat idle for a few minutes</p>
|
||
<p>• Fixed @-mentions silently attaching nothing after file-modifying hooks, vim dot-repeat of c-operators and paste, statusline running twice on resume, and resume-picker hangs on failure</p>
|
||
<p>• Fixed resumed background agent sessions reverting to the default agent: the agent's prompt and tool restrictions are now restored</p>
|
||
<p>• Fixed worktree-isolated subagents redirecting git into the shared checkout via git -C, --git-dir, or GIT_DIR/GIT_WORK_TREE</p>
|
||
<p>• Fixed worktree sessions landing in another project's leftover worktree when the working directory did not match the selected project</p>
|
||
<p>• Fixed background sessions whose worktree has no git repository being undeletable</p>
|
||
<p>• Fixed claude daemon stop --any potentially terminating an unrelated process via a stale legacy daemon lockfile</p>
|
||
<p>• Fixed Esc-Esc at an idle prompt not opening the rewind picker in long-running sessions with background tasks</p>
|
||
<p>• Fixed Bash command permission checking for compound statements with redirects inside &amp;&amp; lists or negations</p>
|
||
<p>• Fixed pressing Ctrl+X twice in the agent list failing to delete a session, and deleted sessions reappearing when their background worker had died</p>
|
||
<p>• Fixed background subagents getting cancelled when a high-priority message arrives during their startup window</p>
|
||
<p>• Fixed mouse and focus garbage in the terminal while a GUI editor from /memory, /plan, /keybindings, or Ctrl+G is open; /memory no longer waits for the editor to close</p>
|
||
<p>• Fixed Claude-in-Chrome 403-looping on reconnect when the session's OAuth token lacks a required scope</p>
|
||
<p>• Fixed workflow saves and scheduled-task writes following a symlink at .claude, which could redirect writes outside the project</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed read-only commands on Windows accessing network paths without a permission prompt</p>
|
||
<p>• Fixed Bash command parsing of non-ASCII characters to match real shell word boundaries</p>
|
||
<p>• Fixed PowerShell tool permission validation of commands containing invisible Unicode characters</p>
|
||
<p>• Fixed dialogs in fullscreen mode stretching past the right-hand edge of their panel</p>
|
||
<p>• Fixed the /config settings list in fullscreen mode clipping its keyboard-hint footer</p>
|
||
<p>• Fixed the transcript-mode (Ctrl+O) footer hint wrapping on terminals narrower than 104 columns</p>
|
||
<p>• Fixed the Prometheus metrics endpoint (OTEL_METRICS_EXPORTER=prometheus) emitting invalid # UNIT lines</p>
|
||
<p>• Fixed skills and commands changed during a session not appearing in the slash menu until restart</p>
|
||
<p>• Fixed plugin skills with a name frontmatter field losing their plugin prefix in slash-command autocomplete</p>
|
||
<p>• 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</p>
|
||
<p>• Improved the /fork confirmation to one line with the new session's name, claude attach id, and a note when the copy shares your checkout</p>
|
||
<p>• Improved validation of git and gh command arguments in the PowerShell tool</p>
|
||
<p>• Improved the /ultrareview diff-too-large error to show configured limits, measured diff size, and largest contributing files</p>
|
||
<p>• Improved /code-review ultra empty-diff message to name the exact base ref and suggest passing an explicit base</p>
|
||
<p>• Improved the spend limit adjustment prompt to show the server's reason when a spend limit change is rejected</p>
|
||
<p>• /context now shows an explicit warning when the conversation exceeds the context window, and a failed /compact displays as an error</p>
|
||
<p>• /rewind no longer restores or deletes files through symlinks or hard links at tracked paths and reports how many paths it skipped</p>
|
||
<p>• Background sessions: /mcp and /install-github-app now park a "needs input" request in the agent view when no client is attached</p>
|
||
<p>• Updated the bundled dataviz skill: reordered the default chart palette and fixed guidance that suggested direct labels for four-series charts</p>
|
||
<p>• [VSCode] Fixed right-to-left text (Arabic, Hebrew, Persian) rendering in the wrong order when mixed with English or code</p>
|
||
<p>• 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</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.215</id>
|
||
<title>Claude Code v2.1.215</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.215"/>
|
||
<updated>2026-07-19T02:55:54Z</updated>
|
||
<content type="html"><p>• Claude no longer runs the /verify and /code-review skills on its own; invoke them with /verify or /code-review when you want them</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.214</id>
|
||
<title>Claude Code v2.1.214</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.214"/>
|
||
<updated>2026-07-18T01:20:23Z</updated>
|
||
<content type="html"><p>• Fixed single-segment dir/ allow rules like Edit(src/) auto-approving writes to nested dir/ directories anywhere in the tree instead of only &lt;cwd&gt;/dir</p>
|
||
<p>• Fixed a permission-check bypass affecting commands run in Windows PowerShell 5.1 sessions</p>
|
||
<p>• Fixed Bash permission checks to fail closed on file-descriptor redirect forms that bash parses differently than the permission analyzer</p>
|
||
<p>• Fixed Bash permission checks misjudging very long commands — commands over 10,000 characters now always prompt instead of running automatically</p>
|
||
<p>• Fixed Bash permission checks treating zsh variable subscripts and modifiers in [[ ]] comparisons as inert text — these commands now prompt for approval</p>
|
||
<p>• Fixed Bash permission checks to no longer auto-approve certain help and man commands that could run unsafe options, command substitutions, or backslash paths</p>
|
||
<p>• Fixed permission prompts on remote sessions that could proceed before the local confirmation dialog</p>
|
||
<p>• Added the EndConversation tool: Claude can end sessions with highly abusive users or jailbreak attempts, as on claude.ai since 2025 — see https://www.anthropic.com/research/end-subset-conversations</p>
|
||
<p>• Added a periodic progress heartbeat for long-running tool calls that previously went silent</p>
|
||
<p>• Added an ISO modified timestamp to memory file frontmatter</p>
|
||
<p>• Added message.uuid, client_request_id, and tool_source attributes to OpenTelemetry log events for message-level correlation and tool provenance</p>
|
||
<p>• Added CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH to configure the 60 KB truncation limit on OpenTelemetry content attributes</p>
|
||
<p>• Added reasoning effort to the subagentStatusLine payload, so custom agent rows can render model and effort</p>
|
||
<p>• Added permission prompts for docker commands (including the Podman docker shim) carrying daemon-redirect flags (--url, --connection, --identity, and Podman's remote mode) that previously ran without one</p>
|
||
<p>• Fixed a crash when a GrowthBook feature evaluates to null, and a bug where a malformed flag payload could wipe the cached feature flags</p>
|
||
<p>• Fixed Bash tool killing the Claude session when a pkill -f pattern accidentally matched the CLI's own process (Linux)</p>
|
||
<p>• Fixed unbounded memory growth when --settings points at a device file or multi-GB file; oversized (&gt;2 MiB) settings files now fail at startup with a clear error</p>
|
||
<p>• Fixed streaming turns failing with "Socket is closed" behind corporate proxies on Windows</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed scheduled tasks refusing their own configured prompt as untrusted input — the fired prompt is now delivered as the session's assigned task</p>
|
||
<p>• Fixed PowerShell tool commands hanging until timeout when a child process waited on standard input (Windows)</p>
|
||
<p>• Fixed Python scripts under the PowerShell tool crashing with UnicodeDecodeError when reading non-UTF-8 data from standard input (Windows)</p>
|
||
<p>• 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)</p>
|
||
<p>• Fixed the PowerShell tool reporting where.exe, fc.exe, and diff.exe as errors when they return a valid negative answer (Windows)</p>
|
||
<p>• Fixed &gt; and &gt;&gt; under the PowerShell tool on Windows PowerShell 5.1 writing UTF-16LE files that other tools couldn't read as UTF-8</p>
|
||
<p>• Fixed a displaced background daemon deleting its successor's control socket on shutdown, which made the next client kill the healthy replacement daemon</p>
|
||
<p>• Fixed background sessions parked with ← or /background and left idle keeping the background daemon and a worker process alive indefinitely</p>
|
||
<p>• Fixed completed background sessions being impossible to remove via claude rm or the agent view once the background service had gone idle</p>
|
||
<p>• Fixed background sessions dispatched from a non-git folder being impossible to delete from the agents view</p>
|
||
<p>• Fixed reopening a stopped background session failing to restore its saved conversation when an unreadable folder exists in the session store</p>
|
||
<p>• Fixed the Remote Control "session ready" push notification firing for sessions where Remote Control was not explicitly enabled</p>
|
||
<p>• Fixed /install-github-app and the /mcp settings menu being blocked in agent-view sessions — they're now refused only in background sessions with no terminal attached</p>
|
||
<p>• Fixed plugins enabled via the --settings CLI flag not loading (regression since v2.1.181)</p>
|
||
<p>• Fixed feature flags going stale in long-running sessions after the OAuth token rotates</p>
|
||
<p>• Fixed /ultrareview refusing to run in repos with no merge base — it now offers to review all tracked files</p>
|
||
<p>• Fixed claude update and claude doctor hanging silently, and the /status System diagnostics section going blank, when a shell-config path is a directory</p>
|
||
<p>• Fixed memory frontmatter values being silently truncated at an inline # when memory files are saved</p>
|
||
<p>• Fixed session cost and token telemetry double-counting on streams that emit multiple cumulative message_delta frames</p>
|
||
<p>• Fixed a spurious "check your network" warning that appeared while the advisor was thinking</p>
|
||
<p>• Fixed hooks with exit code 2 not blocking as documented when the hook's stdout JSON fails schema validation</p>
|
||
<p>• Fixed OTel log events emitted outside the turn's async context missing the interaction span's trace context</p>
|
||
<p>• Fixed MCP transient errors during prompts/resources refresh clearing the server's slash commands and resources</p>
|
||
<p>• Improved the claude rc workspace-trust error in the home directory to say trust there is never saved and to suggest running from a project directory</p>
|
||
<p>• Changed single-segment dir/ hook if: conditions to match only &lt;cwd&gt;/dir; write /dir/** for any-depth matching. deny/ask permission rules keep their any-depth match.</p>
|
||
<p>• Changed file commands using -m/--magic-file or -f/--files-from to require permission instead of being auto-allowed as read-only</p>
|
||
<p>• Changed keep-alive connection pooling to disable after a stale-connection error, so retries open a fresh socket</p>
|
||
<p>• Changed SessionStart hooks to report source "fork" when a session begins as a fork instead of "resume"</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.212</id>
|
||
<title>Claude Code v2.1.212</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.212"/>
|
||
<updated>2026-07-17T00:26:21Z</updated>
|
||
<content type="html"><p>• /fork now copies your conversation into a new background session (its own row in claude agents) while you keep working; the in-session subagent it used to launch is now /subtask</p>
|
||
<p>• Added claude auto-mode reset to restore the default auto-mode configuration, with a confirmation prompt (pass --yes to skip)</p>
|
||
<p>• Added a session-wide limit on WebSearch tool calls (default 200, tunable via CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION) to stop runaway search loops</p>
|
||
<p>• Added a per-session cap on subagent spawns (default 200, override with CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION) to stop runaway delegation loops; /clear resets the budget</p>
|
||
<p>• MCP tool calls running longer than 2 minutes now move to the background automatically so the session stays usable; configure the threshold or disable with CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS</p>
|
||
<p>• Typing /resume in the agent view now opens a picker of past sessions — including sessions deleted from the list — and resumes your pick as a background session</p>
|
||
<p>• Fixed plan mode auto-running file-modifying Bash commands (e.g. touch, rm) without a permission prompt or SDK canUseTool callback</p>
|
||
<p>• Fixed worktree creation following a repository-committed symlink at .claude/worktrees, which could create files outside the repository</p>
|
||
<p>• Fixed a continue:false hook's halt being dropped when the tool fails or completes mid-stream, and hook infrastructure errors being misreported as user rejections</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed /background and claude --bg failing with "EUNKNOWN: unknown error, uv_spawn" on Windows when Group Policy blocks PowerShell 5.1; the daemon now prefers PowerShell 7</p>
|
||
<p>• Fixed shell mode (!) not executing commands containing file paths while the path autocomplete popup was open</p>
|
||
<p>• Fixed auto-mode denial notifications rendering broken characters when a long denial reason was truncated mid-emoji</p>
|
||
<p>• Fixed Ctrl+J not inserting a newline in the agent view dispatch input on terminals with extended key reporting, and surfaced the newline shortcut in the ? help overlay</p>
|
||
<p>• Fixed /ultrareview rejecting PR references like #123, PR 123, and pasted PR URLs; error hints now name the command you actually typed</p>
|
||
<p>• Fixed /ultrareview &lt;branch&gt; not fetching the branch from origin when it exists remotely; it now suggests the closest branch name on typos</p>
|
||
<p>• Fixed /ultrareview skipping the billing confirmation in a new conversation after /clear</p>
|
||
<p>• Fixed /ultrareview's "not a git repository" error on Claude Desktop now suggesting the project's repository folder instead of terminal commands</p>
|
||
<p>• 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</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed ExitWorktree failing with "no active EnterWorktree session" after resuming a session with --continue/--resume in print/SDK mode</p>
|
||
<p>• Fixed the workflow agent grid staying empty for Remote Control clients that join a session mid-run</p>
|
||
<p>• Fixed streaming-mode control requests being marked complete before their handler finished, which could lose the request on session restart</p>
|
||
<p>• Fixed background sessions created with /fork losing their live-parent protection after a state write failure</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed agent teams: a stopping teammate could send the leader duplicate idle notifications when team initialization re-ran within a session</p>
|
||
<p>• Fixed the plan-approval dialog footer splitting "ctrl+g to edit in &lt;editor&gt;" apart when the file path is long</p>
|
||
<p>• Fixed the welcome banner keeping its old panel widths after a combined width+height terminal resize in fullscreen mode</p>
|
||
<p>• Fixed diff previews losing their line numbers and +/- markers in narrow layouts</p>
|
||
<p>• Fixed @-mentions attaching nothing after a partial file read, plugin uninstall targeting the wrong marketplace, and false "Command timed out" on exit code 143</p>
|
||
<p>• Fixed OpenTelemetry HTTP exports being rejected with 411/400 by Azure Monitor and other endpoints that don't accept chunked transfer encoding</p>
|
||
<p>• Fixed OTLP event log records missing trace_id/span_id when TRACEPARENT is set in SDK/headless mode</p>
|
||
<p>• Fixed conversations with many images incorrectly failing with "Request too large" errors, and improved the error message to explain the actual cause</p>
|
||
<p>• Fixed web search and web fetch returning "API Error" text as search results or page content when the API was overloaded</p>
|
||
<p>• Improved web search and web fetch reliability by retrying 529 errors and rate-limited requests with bounded backoff</p>
|
||
<p>• Improved prompt caching: the mid-conversation system block now works behind LLM gateways and custom base URLs (Bedrock, Vertex, 1P)</p>
|
||
<p>• Improved background agent attach: cold-attaching now instantly shows the formatted transcript while the session boots, instead of a blank wait</p>
|
||
<p>• Reduced token usage in inter-agent messaging: SendMessage bodies are no longer duplicated into replayed history and tool results</p>
|
||
<p>• Changed /fork to name the copy after your prompt when the session has no title, so the row is recognizable in the agent view</p>
|
||
<p>• Changed bare /btw to reopen the side-question panel on your most recent exchange so you can browse earlier answers</p>
|
||
<p>• Changed the ← footer hint to pulse N done for a moment when a background agent finishes while nothing needs your input</p>
|
||
<p>• Deprecated the Task tool's mode parameter (now ignored); subagents inherit the parent session's permission mode by default</p>
|
||
<p>• Changed Enterprise forceLoginMethod to be enforced for VS Code extension, SDK, setup-token, and install-github-app logins, not just the terminal</p>
|
||
<p>• Changed session transcripts to record the reasoning effort level on each assistant message</p>
|
||
<p>• Changed headless/SDK sessions to apply a set_model control request mid-turn; the next model round-trip uses the new model instead of waiting for the next turn</p>
|
||
<p>• Changed agent view / claude agents --json: sessions waiting on a sandbox, MCP-input, or managed-settings prompt now show as "Needs input" instead of "Working"</p>
|
||
<p>• Updated the auth status panel title from "Cloud authentication" to "Authentication"</p>
|
||
<p>• Corrected an earlier release note (2.1.200): tmux through the 3.6 series lacks synchronized output; newer tmux with support is detected automatically</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.211</id>
|
||
<title>Claude Code v2.1.211</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.211"/>
|
||
<updated>2026-07-15T23:02:29Z</updated>
|
||
<content type="html"><p>• Added --forward-subagent-text flag and CLAUDE_CODE_FORWARD_SUBAGENT_TEXT environment variable to include subagent text and thinking in stream-json output</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed auto mode overriding a PreToolUse hook's ask decision for unsandboxed Bash — a hook ask now floors the decision at a prompt</p>
|
||
<p>• Fixed parallel Claude Code sessions all logging out simultaneously after wake-from-sleep when many sessions share one credential store</p>
|
||
<p>• Fixed plugin MCP servers not reconnecting after an idle web session woke, leaving MCP calls failing until the next message</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed subagents spawned with an explicit model override reverting to the parent's model when resumed or sent a follow-up message</p>
|
||
<p>• Fixed nested .claude/rules/*.md files loading even when setting sources exclude project settings</p>
|
||
<p>• Fixed file upload validation: filenames ending in a DOS device suffix (.prn) or trailing dot are now accepted, and files with multiple hard links are refused</p>
|
||
<p>• Fixed file uploads to Claude in Chrome from remote and CLI sessions</p>
|
||
<p>• Fixed edits that leave the input as "?" being silently swallowed and toggling the shortcuts panel</p>
|
||
<p>• Fixed a startup hang when the Claude in Chrome extension is enabled but Chrome is not running</p>
|
||
<p>• Fixed a 300ms delay revealing async content (Settings tabs, Stats, diff views, and other loading states)</p>
|
||
<p>• Fixed reopening a just-stopped background session from the agents view starting a blank conversation under the same session id</p>
|
||
<p>• Fixed /loop hiding the session from /resume after a single use</p>
|
||
<p>• Fixed screen reader users losing the audible terminal bell after /terminal-setup or onboarding terminal setup</p>
|
||
<p>• Fixed background jobs on LLM gateway auth (ANTHROPIC_AUTH_TOKEN + ANTHROPIC_BASE_URL) coming back "Not logged in" after the daemon respawns them</p>
|
||
<p>• Fixed claude agents jobs becoming permanently undeletable when git no longer recognizes their worktree — the row now shows why the delete was refused instead of silently reappearing</p>
|
||
<p>• Fixed /clear not resetting the session cost counter — the statusline's cost now starts at $0 after /clear</p>
|
||
<p>• Fixed Claude in Chrome setup pages failing to open in the browser on Windows</p>
|
||
<p>• Fixed headless print-mode sessions on Windows crashing or silently exiting when stdin is unreadable</p>
|
||
<p>• Fixed background session titles in the agents view showing the naming model's refusal text when the prompt contains a link</p>
|
||
<p>• Fixed background agents killed by the user auto-respawning, and revived agents re-running stale prompts from old sessions</p>
|
||
<p>• Fixed routines with no schedule reporting a next run time in the year 1</p>
|
||
<p>• Hardened synced skill/plugin directory naming on Windows and kept CCR web fetch/search proxies working after /clear</p>
|
||
<p>• Improved terminal layout and rendering performance</p>
|
||
<p>• Improved background agent result reporting — Claude now reports the status of still-running agents and waits for the real completion instead of fabricating results</p>
|
||
<p>• Improved the memory index over-limit warning to measure only loaded content, excluding frontmatter and HTML comments</p>
|
||
<p>• Updated integer environment variables (timeouts, token budgets, retry counts) to accept scientific notation and digit-separator spellings like 1e6 and 64_000</p>
|
||
<p>• Updated documentation links to the current docs sites</p>
|
||
<p>• Changed "always allow" permission rules to save at the repository root, so approvals granted in a git worktree persist across sessions and worktrees</p>
|
||
<p>• Changed /usage-credits to ask for confirmation before sending a request to organization admins</p>
|
||
<p>• Changed Vim mode s and S (substitute char/line) to work in NORMAL mode, matching vim behavior</p>
|
||
<p>• [VSCode] Updated the Remote Control banner to describe what it does</p>
|
||
<p>• Claude in Chrome: hardened file-upload path validation</p>
|
||
<p>• Claude in Chrome: save_to_disk on screenshot actions now writes the image to disk and returns the path; previously it did nothing</p>
|
||
<p>• 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.</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.210</id>
|
||
<title>Claude Code v2.1.210</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.210"/>
|
||
<updated>2026-07-14T23:45:19Z</updated>
|
||
<content type="html"><p>• Added a live elapsed-time counter to the collapsed tool summary line so long-running tool calls visibly tick instead of looking stuck</p>
|
||
<p>• Added a startup warning for Write(path), NotebookEdit(path), and Glob(path) permission rules — use Edit(path) or Read(path) instead</p>
|
||
<p>• Fixed isolation: 'worktree' subagents being able to run git-mutating commands against the main repo checkout instead of their own isolated worktree</p>
|
||
<p>• Fixed the ultracode keyword opt-in firing on non-human-originated input such as webhook payloads and relayed PR comments</p>
|
||
<p>• Fixed a rendered text fragment leaking into crash telemetry when a UI component returned content outside a styled text element</p>
|
||
<p>• Fixed paste markers leaking into external editors opened from Claude Code, which could appear as stray È/É characters around pasted text</p>
|
||
<p>• Fixed claude attach 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</p>
|
||
<p>• Fixed a session crash when a tool's result renderer returned a numeric bigint value or plain text instead of a UI element</p>
|
||
<p>• Fixed a hook callback timeout being misreported to the model as a user rejection, which made unattended sessions stop and wait</p>
|
||
<p>• Fixed Claude assuming a cd took effect after its command was moved to the background; the tool result now states the working directory is unchanged</p>
|
||
<p>• Fixed plugin-provided MCP servers being torn down when MCP servers are re-synced mid-session</p>
|
||
<p>• Fixed plan approvals without edits being labeled "(edited by user)" and overwriting the plan file with a stale snapshot</p>
|
||
<p>• Fixed /doctor skipping its auto-mode-default proposal on Bedrock, Vertex, and Foundry, where auto mode no longer needs an opt-in</p>
|
||
<p>• Fixed Grep content mode claiming "No matches found" when paginating past the end of results</p>
|
||
<p>• Fixed unmatched $1/$2 positional placeholders in skills and commands being silently stripped; they are now preserved verbatim</p>
|
||
<p>• Fixed plugin cache writes leaving temp files behind on failure and failing on locked-file renames on Windows and network filesystems</p>
|
||
<p>• Fixed background workers crash-looping when a client resets its connection to the background service</p>
|
||
<p>• Fixed claude agents --effort ultracode not reaching dispatched sessions; the value was silently dropped</p>
|
||
<p>• Fixed pressing ← to open the agents view dropping the task tracker when returning to the session</p>
|
||
<p>• Fixed the agents dashboard retaining pasted images from abandoned reply drafts after their session was deleted</p>
|
||
<p>• Fixed killed background sessions leaving a permanent git worktree lock behind; the periodic sweep now releases locks whose owning process is gone</p>
|
||
<p>• Fixed SDK MCP servers registered via an initialize control request waiting until the next turn to start connecting</p>
|
||
<p>• Fixed returning to the agents view from a session leaving overlapping ghost frames with CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1</p>
|
||
<p>• Fixed late-appearing .claude/* symlinks not being reconciled into the sandbox deny-write list</p>
|
||
<p>• Hardened the Agent tool against indirect prompt injection via content a subagent read</p>
|
||
<p>• 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</p>
|
||
<p>• 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</p>
|
||
<p>• Improved the bundled dataviz skill's chart color validation with perceptual OKLab color difference and recalibrated color-blindness thresholds</p>
|
||
<p>• Memory writes that leave a MEMORY.md index over its read limit now produce an explicit error instead of silent truncation</p>
|
||
<p>• Screen reader mode now announces permission mode changes aloud when cycling modes with Shift+Tab</p>
|
||
<p>• The agents footer hint now shows how many background agents are waiting on your input, with a brief color emphasis when the count changes</p>
|
||
<p>• Agent view: the session you pressed ← from stays visibly marked even after mouse hover or arrow keys move the selection</p>
|
||
<p>• Fable temporarily shows as unavailable in the advisor picker while a server-side issue causing Fable advisor failures is fixed</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.209</id>
|
||
<title>Claude Code v2.1.209</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.209"/>
|
||
<updated>2026-07-14T06:36:21Z</updated>
|
||
<content type="html"><p>• Fixed /model and other dialogs being blocked in claude agents background sessions (reverts an overly broad guard)</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.208</id>
|
||
<title>Claude Code v2.1.208</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.208"/>
|
||
<updated>2026-07-14T01:10:34Z</updated>
|
||
<content type="html"><p>• Added screen reader mode: opt-in plain-text rendering for screen reader users. Run claude --ax-screen-reader, set CLAUDE_AX_SCREEN_READER=1, or add "axScreenReader": true to settings.</p>
|
||
<p>• Added vimInsertModeRemaps setting: map two-key insert-mode sequences like jj to Escape in vim mode</p>
|
||
<p>• Added CLAUDE_CODE_PROCESS_WRAPPER: agent view and the background service now honor a corporate launcher by running every Claude Code self-spawn through a required wrapper executable</p>
|
||
<p>• Added mouse-click support for multi-select menus and "Other" input rows in fullscreen mode</p>
|
||
<p>• Fixed fast mode staying off after switching back to a model that supports it — it now restores automatically when enabled in settings</p>
|
||
<p>• Fixed replies typed to a background agent being lost when delivery fails — the text is now saved and delivered when the session restarts</p>
|
||
<p>• Fixed background-session attach failing permanently ("Couldn't start the background daemon") after an update replaced the binary a running claude agents process was launched from</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed supervised and background sessions crashing when a server closed an HTTP/2 connection with a GOAWAY while requests were in flight</p>
|
||
<p>• Fixed truncated stream-json/JSON output and missing result message when piping large responses from claude -p</p>
|
||
<p>• Fixed CLAUDE_CODE_MAX_OUTPUT_TOKENS and similar env vars silently using the mantissa of scientific-notation values (1e6 became 1)</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed the Edit tool failing on files modified after reading when the target text still matches uniquely</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed apiKeyHelper script failures being hidden behind a generic 401 after ~10 silent retries; the script's own error is now shown within 3 attempts</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed /upgrade showing a login flow instead of the upgrade URL when the browser fails to open</p>
|
||
<p>• Fixed stream-json input killing the session on blank CRLF or whitespace-only lines from Windows-style SDK hosts</p>
|
||
<p>• Fixed headless stream-json sessions hanging permanently when a control_request carried a non-string set_model payload; the CLI now answers with an error response</p>
|
||
<p>• Fixed repeated "No completion record was found" notices on session resume — orphaned background tasks now collapse into a single summary</p>
|
||
<p>• Fixed Remote Control clients attaching to a terminal-hosted session not seeing background agents and workflow progress until a task started or stopped</p>
|
||
<p>• Fixed the Agent tool launching with no tools when a subagent's tools list resolves to nothing — it now returns a clear error naming the unrecognized entries</p>
|
||
<p>• Fixed /usage showing stale cached bars over fresher data, and /mcp not reclassifying placeholder servers after config edits</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed the workflow save dialog showing ~/.claude/workflows/ instead of the CLAUDE_CONFIG_DIR location for user-scope saves</p>
|
||
<p>• Fixed /release-notes adding the viewed notes to the model's context — "Show all" previously injected the entire changelog into every subsequent request</p>
|
||
<p>• Fixed a memory leak in the agent view where pasted images were retained for the screen's lifetime after sending peek replies</p>
|
||
<p>• Fixed SDK sessions losing agents defined via the initialize request when a plugin refresh ran before the client attached</p>
|
||
<p>• 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</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed multi-second per-turn slowdowns in sessions with many permission deny/ask rules — rule matchers are now compiled once and cached</p>
|
||
<p>• Improved input responsiveness while agent task lists update — task updates no longer re-render the entire UI</p>
|
||
<p>• 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)</p>
|
||
<p>• Reduced memory usage by bounding the file edit read cache to 16 MB instead of pinning up to 1,000 full files</p>
|
||
<p>• Reduced session transcript size (up to 79x in edit-heavy sessions) and bounded checkpoint disk usage by pruning superseded file-history backups</p>
|
||
<p>• Reduced memory usage when resuming sessions with background agents or forks spawned from large conversations</p>
|
||
<p>• Completed background agents now stay listed in /tasks until cleanup instead of vanishing the moment they finish</p>
|
||
<p>• Attaching to a stopped background agent now shows its transcript immediately while the session warms up, instead of a blank "Session is starting" screen</p>
|
||
<p>• Background sessions: an older daemon no longer silently restarts workers spawned by a newer version onto the older binary</p>
|
||
<p>• 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</p>
|
||
<p>• Catastrophic removals (e.g. rm -rf ~) in commands containing $(…)/backticks/&lt;(…) now prompt in --dangerously-skip-permissions and auto mode, matching the plain form</p>
|
||
<p>• /install-github-app and the /mcp settings menu no longer open in background sessions</p>
|
||
<p>• MCP servers configured with an empty URL now show as "not configured" in /mcp instead of a config error</p>
|
||
<p>• /usage now shows your last-known usage bars with an "as of" note when the usage endpoint is rate-limited, instead of an error screen</p>
|
||
<p>• 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)</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.207</id>
|
||
<title>Claude Code v2.1.207</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.207"/>
|
||
<updated>2026-07-11T00:52:04Z</updated>
|
||
<content type="html"><p>• Auto mode is now available without CLAUDE_CODE_ENABLE_AUTO_MODE opt-in on Bedrock, Vertex AI, and Foundry; disable via disableAutoMode in settings</p>
|
||
<p>• Fixed the terminal freezing and keystrokes lagging while streaming responses containing very long lists, tables, paragraphs, or code blocks</p>
|
||
<p>• Fixed remote managed settings from a non-interactive run (claude -p, the SDK) being permanently recorded as consented without ever showing the security consent dialog</p>
|
||
<p>• Fixed spurious prompt-injection warnings triggered by benign system-generated conversation updates</p>
|
||
<p>• Fixed the auto-updater overwriting a custom launcher script or symlink at ~/.local/bin/claude on every release; /doctor now reports an externally managed launcher</p>
|
||
<p>• Fixed compound commands with cd prompting for permission when the only output redirect was to /dev/null</p>
|
||
<p>• Fixed the transcript jumping above the start of the answer when a response finishes streaming</p>
|
||
<p>• Fixed extensions.worktreeConfig being left in the repo's .git/config (breaking go-git tools like tea) after the last worktree.sparsePaths worktree was removed</p>
|
||
<p>• Fixed malformed bracket patterns in rules globs, skill paths, .ignore, and .worktreeinclude breaking file reads, file suggestions, and worktree creation</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed background sessions auto-named by accepting a plan not showing that name on their agent-view row</p>
|
||
<p>• Fixed background sessions that entered a git worktree resuming blank after a cold reopen from the agent list</p>
|
||
<p>• Fixed Remote Control task status updates being lost when the connection recovered from a network interruption or credential refresh</p>
|
||
<p>• Fixed Remote Control sessions hosted by the desktop app not showing background agent and workflow progress on mobile and web</p>
|
||
<p>• Fixed Deep research runs labeling every Fetch-phase agent "unknown" — chips now show the source hostname</p>
|
||
<p>• Fixed Bedrock repeatedly requesting fresh AWS SSO credentials from IAM Identity Center on every API request</p>
|
||
<p>• Improved agent view: pasting the same text again now expands the collapsed [Pasted text #N] placeholder instead of adding a second one</p>
|
||
<p>• Improved agent view: blocked session peeks now lead with the question and show a worded staleness clock (waiting 3m) instead of the same timestamp twice</p>
|
||
<p>• Changed Bedrock, Vertex, and Claude Platform on AWS to default to Claude Opus 4.8</p>
|
||
<p>• Changed auto mode to no longer read autoMode from .claude/settings.local.json (repo-resident); use ~/.claude/settings.json instead</p>
|
||
<p>• Fixed an indefinite hang on Windows when AWS credential resolution stalls (e.g. a stuck credential_process): the 60-second stall guard now fires instead of waiting forever.</p>
|
||
<p>• Plugin hooks/monitors/MCP headersHelper: ${user_config.*} in shell-form commands is now rejected (shell-injection fix). Hooks: use exec form (args array) or $CLAUDE_PLUGIN_OPTION_&lt;KEY&gt;; monitors and headersHelper: read the value inside the script (config file or the server's env block).</p>
|
||
<p>• Plugin option values (pluginConfigs) are no longer read from project-level .claude/settings.json; only user, --settings, and managed settings are honored</p>
|
||
<p>• Fixed /usage-credits 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</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.206</id>
|
||
<title>Claude Code v2.1.206</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.206"/>
|
||
<updated>2026-07-09T23:34:23Z</updated>
|
||
<content type="html"><p>• Added directory path suggestions to /cd, matching /add-dir behavior</p>
|
||
<p>• Added a /doctor check that proposes trimming checked-in CLAUDE.md files by cutting content Claude could derive from the codebase</p>
|
||
<p>• /commit-push-pr now auto-allows git push to the repo's configured push remote (remote.pushDefault, or the sole remote when only one is configured) in addition to origin</p>
|
||
<p>• Gateway: /login now supports Anthropic-operated public gateway endpoints</p>
|
||
<p>• EnterWorktree now asks for confirmation before entering a git worktree outside the project's .claude/worktrees/ directory</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed an expired login failing every model with a misleading "There's an issue with the selected model" error instead of prompting to run /login</p>
|
||
<p>• Fixed claude --resume and --continue not responding to keyboard input on startup</p>
|
||
<p>• Fixed MCP servers configured via --mcp-config or .mcp.json ignoring a per-server request_timeout_ms, which caused long-running MCP tool calls to time out at the 60s default in fresh sessions</p>
|
||
<p>• Fixed CLAUDE_CODE_EXTRA_BODY being silently ignored by claude agents / --bg background workers; the shell-exported override now follows the dispatching session</p>
|
||
<p>• Fixed OAuth MCP servers requiring manual re-authentication after a single failed token refresh</p>
|
||
<p>• Fixed --permission-prompt-tool pointing at an MCP server crashing with "MCP tool not found" on cold start before the server finishes connecting</p>
|
||
<p>• Fixed /model 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</p>
|
||
<p>• Fixed server-provided model rows being misplaced in the /model picker when an entitlement or allowlist restriction drops the row they were positioned against</p>
|
||
<p>• Fixed desktop sessions getting stuck showing "running" after a slash command was sent mid-turn</p>
|
||
<p>• Fixed keyboard input being ignored in the agents view when a setup prompt appeared before a bare claude --resume on Windows</p>
|
||
<p>• Fixed claude rm leaving the removed job in the daemon roster, causing the row to reappear in claude agents</p>
|
||
<p>• Fixed /remote-control showing "Unknown command" when logged out — it now explains how to sign in</p>
|
||
<p>• Fixed left arrow not stepping back out of a phase or agent in the workflow detail view</p>
|
||
<p>• Fixed /status listing the same broken-install warning twice</p>
|
||
<p>• Fixed false "disused plugin" tips and skewed disuse telemetry for LSP plugins</p>
|
||
<p>• Fixed /doctor's update check to compare Homebrew installs against their cask's channel instead of the settings channel</p>
|
||
<p>• Fixed the fullscreen jump-to-bottom pill suggesting Ctrl+End on macOS, not showing rebound chords, and wrapping over the transcript</p>
|
||
<p>• Bedrock: fixed a multi-minute startup hang when using an awsCredentialExport helper on networks with restricted egress</p>
|
||
<p>• Improved /code-review findings quality on claude-opus-4-8 across all effort levels</p>
|
||
<p>• Improved agents view: status column now uses full terminal width instead of truncating at 64 characters</p>
|
||
<p>• Changed agents view: Ctrl+X now permanently removes a completed session, and sessions no longer render twice; deleted background jobs stay deleted</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.205</id>
|
||
<title>Claude Code v2.1.205</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.205"/>
|
||
<updated>2026-07-08T21:21:58Z</updated>
|
||
<content type="html"><p>• Added an auto mode rule that blocks tampering with session transcript files</p>
|
||
<p>• Fixed --json-schema silently producing unstructured output when the schema was invalid, and schemas using the format keyword being rejected</p>
|
||
<p>• Fixed a message sent while Claude was working being silently lost when the turn ended at the --max-turns limit</p>
|
||
<p>• Fixed Windows worktree removal deleting files outside the worktree when an NTFS junction or directory symlink existed inside it</p>
|
||
<p>• Fixed background agents staying shown as "failed" or "completed" in the agent list after being resumed with SendMessage</p>
|
||
<p>• Fixed background jobs flipping from "needs input" back to "working" in the agent list when the agent's turn contained no readable text</p>
|
||
<p>• Fixed claude attach erroring when a background agent was mid-upgrade restart instead of waiting for it to come back</p>
|
||
<p>• Fixed session-to-PR linking missing a PR created in a Bash call whose output exceeded the 30K inline limit</p>
|
||
<p>• Fixed claude mcp add-from-claude-desktop getting stuck when a server name contains unsupported characters; invalid names are now reported and remaining servers still import</p>
|
||
<p>• Fixed a plugin LSP server that fails to initialize preventing a valid LSP server from another plugin handling the same file extension</p>
|
||
<p>• Fixed a Windows crash when the directory Claude was launched from is deleted, locked, or unmounted while a command is running</p>
|
||
<p>• Fixed a crash when a file watcher was closed while a directory scan was still in flight</p>
|
||
<p>• Fixed project verify skills being rewritten on every session instead of only when a documented command changed</p>
|
||
<p>• Fixed the agent view rendering one line too high and clipping its header when the job list slightly overflowed the screen</p>
|
||
<p>• Fixed background tasks in the web and mobile Remote Control panels showing stale "Running" status by forwarding full task state on every membership change</p>
|
||
<p>• Improved auto mode to ask before running rm -rf on a variable it can't resolve from context</p>
|
||
<p>• Auto-update binary downloads now stream to disk instead of buffering in memory, cutting the updater's peak memory usage by roughly 400 MB</p>
|
||
<p>• Background task notifications now explicitly state that no human input has occurred, preventing fabricated in-transcript approvals from being acted on</p>
|
||
<p>• Improved agent view: sessions that edit, merge, comment on, or push to an existing PR now link it in claude agents</p>
|
||
<p>• 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</p>
|
||
<p>• /doctor is now a full setup checkup that can diagnose and fix issues; /checkup is its alias</p>
|
||
<p>• 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</p>
|
||
<p>• Fixed Cowork VM-mode local-agent sessions failing to start with "Not logged in · Please run /login" on CLI 2.1.203+</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.204</id>
|
||
<title>Claude Code v2.1.204</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.204"/>
|
||
<updated>2026-07-08T00:27:43Z</updated>
|
||
<content type="html"><p>• Fixed hook events not streaming during SessionStart hooks in headless sessions, which could cause remote workers to be idle-reaped mid-hook</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.203</id>
|
||
<title>Claude Code v2.1.203</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.203"/>
|
||
<updated>2026-07-07T21:06:03Z</updated>
|
||
<content type="html"><p>• Added a warning when your login is about to expire, so you can re-authenticate before background sessions are interrupted</p>
|
||
<p>• Added a grey ⏸ badge to the footer when in manual permission mode, making the active mode always visible</p>
|
||
<p>• Added the session's additional working directories to MCP roots/list, with notifications/roots/list_changed sent when the set changes</p>
|
||
<p>• Fixed opening or switching background agent sessions on macOS stalling for 15–20 seconds due to a false low-memory detection (regression in 2.1.196)</p>
|
||
<p>• Fixed background sessions becoming permanently unresponsive to attach, replies, and stop when the daemon's session token went stale — the session now recovers automatically</p>
|
||
<p>• Fixed returning to claude agents silently stopping running subagents and re-running the prompt from scratch — their work now carries over</p>
|
||
<p>• Fixed a memory and per-turn CPU regression in interactive sessions: the context-usage indicator no longer re-analyzes the entire transcript after every turn</p>
|
||
<p>• Fixed background agents inheriting a stale PATH from the daemon instead of the dispatching shell, causing missing tools on Windows</p>
|
||
<p>• Fixed background and agent-view sessions dropping a shell-exported ANTHROPIC_BASE_URL, which sent API keys to the default endpoint and failed with 401</p>
|
||
<p>• Fixed Bash failing with "argument list too long" in repos with many git worktrees</p>
|
||
<p>• Fixed worktree-isolated subagents sometimes running shell commands in the parent checkout instead of their own worktree</p>
|
||
<p>• Fixed worktree creation rejecting nested repositories in multi-repo workspaces, leaving background sessions unable to isolate and edit</p>
|
||
<p>• Fixed background agents crash-looping when their working directory was deleted, replaced by a file, or became an invalid path — they now fail once with a clear error</p>
|
||
<p>• Fixed a background daemon auto-upgrade failure silently killing all running background sessions</p>
|
||
<p>• Fixed TaskStop and TaskOutput failing to find background agents spawned by another agent — errors now list running agents by id and description</p>
|
||
<p>• Fixed the claude agents composer discarding your typed message when a slash command isn't available there</p>
|
||
<p>• Fixed the agent list crashing when opening a stopped session whose conversation was already open in another session</p>
|
||
<p>• Fixed background sessions showing "Needs input" in the agent list after the question was already answered</p>
|
||
<p>• Fixed background agent startup failures showing only "exit_with_message" instead of the actual error</p>
|
||
<p>• Fixed background sessions ignoring effortLevel changes in settings.json when forked through the daemon</p>
|
||
<p>• Fixed attached background sessions ignoring CLAUDE_CODE_DISABLE_MOUSE and CLAUDE_CODE_DISABLE_MOUSE_CLICKS opt-outs</p>
|
||
<p>• Fixed /exit incorrectly warning about running background agents after all named agents had completed</p>
|
||
<p>• Fixed background sessions started from a non-git directory unable to edit files when a WorktreeCreate hook was configured</p>
|
||
<p>• Fixed the @ directory picker in claude agents not showing registered git worktrees</p>
|
||
<p>• Fixed background task output on Windows being permanently replaced by an empty file after /clear</p>
|
||
<p>• Fixed content jumping when scrolling up through long transcript history</p>
|
||
<p>• Fixed the terminal flickering and jumping while typing in bash mode when a shell-history suggestion was shown</p>
|
||
<p>• Fixed literal ^[[I / ^[[O escape codes being printed when reattaching to a background session</p>
|
||
<p>• Fixed LSP-only plugins being incorrectly flagged for disuse when their language servers deliver diagnostics or answer navigation requests</p>
|
||
<p>• Improved responsiveness while long responses stream: live-preview updates no longer re-render the whole screen</p>
|
||
<p>• Improved subagent behavior: agents are now less likely to re-delegate their entire task to another subagent</p>
|
||
<p>• Reduced binary size by ~7 MB and startup memory by ~7 MB by loading a large bundled dependency lazily instead of inlining it</p>
|
||
<p>• Changed left arrow to no longer close the background tasks, diff, and workflow detail views — press Esc instead</p>
|
||
<p>• Changed the empty claude agents view to always show the organized sections (Needs input / Working / Completed) with descriptions</p>
|
||
<p>• Removed the startup "claude command missing or broken" warnings — they now appear in /doctor and /status instead</p>
|
||
<p>• Removed a redundant navigation hint from the claude agents footer</p>
|
||
<p>• [VSCode] Added a Settings toggle for "Enable Remote Control for all sessions"</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.202</id>
|
||
<title>Claude Code v2.1.202</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.202"/>
|
||
<updated>2026-07-06T22:51:10Z</updated>
|
||
<content type="html"><p>• Added a "Dynamic workflow size" setting in /config for controlling how large Claude generally makes dynamic workflows (small/medium/large agent counts) — an advisory guideline, not an enforced cap</p>
|
||
<p>• Added workflow.run_id and workflow.name OpenTelemetry attributes to telemetry emitted by workflow-spawned agents, so a workflow run's activity can be reconstructed from OTel data</p>
|
||
<p>• Fixed a crash in the inline Ctrl+R history search when accepting or cancelling while the search was still scanning the history file</p>
|
||
<p>• Fixed /rename on background sessions being reverted when the job restarts, which broke addressing the session by its new name</p>
|
||
<p>• Fixed transient mTLS handshake failures when settings were re-applied during an in-place client certificate rotation</p>
|
||
<p>• Fixed commands sent from Remote Control (mobile/web) into an interactive session failing with "Unknown command"</p>
|
||
<p>• Fixed images and files sent from the Remote Control mobile or web app without a caption being silently dropped</p>
|
||
<p>• Fixed the sign-in URL printed by claude auth login and claude mcp login --no-browser not being reliably clickable when it wraps over SSH — it is now emitted as a single hyperlink</p>
|
||
<p>• Fixed opening a chat from claude agents sometimes failing with "currently running as a background agent" followed by a worker crash/respawn loop</p>
|
||
<p>• Fixed workflow scripts with unicode quote escapes in strings being corrupted before parsing; workflow parse errors now show the offending line instead of always blaming TypeScript</p>
|
||
<p>• Fixed voice dictation retrying in an unbounded loop when the microphone or audio recorder fails — repeated capture failures now pause voice input</p>
|
||
<p>• Fixed /remote-control sessions showing the wrong permission mode in the mobile and web apps</p>
|
||
<p>• Fixed resuming a session by name, or opening the resume picker, taking minutes and using a large amount of memory in repositories with many git worktrees</p>
|
||
<p>• Fixed installer and updater downloads failing immediately with "aborted" when a proxy or network drops the connection mid-download — transient connection drops now retry</p>
|
||
<p>• Fixed re-invoking an already-loaded skill appending a duplicate copy of its instructions to context</p>
|
||
<p>• Improved /workflows agent list layout: wider titles, a dedicated time column, shorter model names, and no per-row tool-call counts</p>
|
||
<p>• Improved MCP error messages: clearer error when a server config has url but no type, suggesting "type": "http" instead of the misleading "command: expected string"</p>
|
||
<p>• Changed /review &lt;pr&gt; back to a fast single-pass review; use /code-review &lt;level&gt; &lt;pr#&gt; for the multi-agent review at a chosen effort level</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.201</id>
|
||
<title>Claude Code v2.1.201</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.201"/>
|
||
<updated>2026-07-03T23:50:29Z</updated>
|
||
<content type="html"><p>• Claude Sonnet 5 sessions no longer use the mid-conversation system role for harness reminders</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.200</id>
|
||
<title>Claude Code v2.1.200</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.200"/>
|
||
<updated>2026-07-03T16:52:26Z</updated>
|
||
<content type="html"><p>• Changed AskUserQuestion dialogs to no longer auto-continue by default; opt into an idle timeout via /config</p>
|
||
<p>• Changed the "default" permission mode to "Manual" across the CLI, --help, VS Code, and JetBrains; --permission-mode manual and "defaultMode": "manual" are accepted alongside default</p>
|
||
<p>• Fixed a crash at startup when disabledMcpServers or enabledMcpServers in .claude.json is set to a non-array value</p>
|
||
<p>• Fixed background sessions silently stopping mid-turn after sleep/wake or when reopening a stalled session</p>
|
||
<p>• Fixed background sessions re-running a turn cancelled with Esc after a stall respawn</p>
|
||
<p>• Fixed background agents never starting again after a crash left a stale daemon.lock whose PID the OS reused</p>
|
||
<p>• Fixed background-agent daemon handover so a reinstalled older build can no longer take over the daemon; build recency is now judged by the version's embedded build timestamp</p>
|
||
<p>• Fixed background-agent roster issues: transient corruption permanently disabling orphan cleanup, older binaries not preserving fields written by newer versions, and socket auth tokens being stripped during daemon restarts</p>
|
||
<p>• Fixed subagents cut off by a rate limit before producing any text output returning an empty result instead of failing cleanly</p>
|
||
<p>• Fixed control bytes from background-agent output reaching the terminal in the agent view</p>
|
||
<p>• Fixed claude agents --plugin-dir &lt;dir&gt; not showing the plugin's agents and skills in the agent view when the flag is placed after agents</p>
|
||
<p>• Fixed project-scoped plugins not loading correctly from git worktrees of the same repository</p>
|
||
<p>• Fixed /mcp server list not tracking focus for screen readers and magnifiers</p>
|
||
<p>• Fixed voice dictation showing a misleading "Voice connection failed" message when a recording captures no audio</p>
|
||
<p>• Fixed rendering flicker under tmux 3.4+ by enabling synchronized terminal output</p>
|
||
<p>• Improved screen-reader output: decorative glyphs are now hidden, transcript symbols read as short labels, and nested tables read as Header: value. lines</p>
|
||
<p>• Improved the install script to explain when installation is killed by the system running out of memory</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.199</id>
|
||
<title>Claude Code v2.1.199</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.199"/>
|
||
<updated>2026-07-02T23:35:12Z</updated>
|
||
<content type="html"><p>• Stacked slash-skill invocations like /skill-a /skill-b do XYZ now load all leading skills (up to 5), not just the first</p>
|
||
<p>• Fixed SSL certificate errors (TLS-inspecting proxies, missing NODE_EXTRA_CA_CERTS, expired certs) burning retries before showing actionable guidance — they now fail immediately with the fix hint</p>
|
||
<p>• Fixed streaming responses being discarded when the API emits a mid-stream overloaded/server error after partial output — the partial is now kept with an incomplete-response notice</p>
|
||
<p>• Fixed subagents cut off by a rate limit or server error silently failing instead of returning their partial work to the parent</p>
|
||
<p>• Fixed subagents reporting API errors (e.g. usage limit reached) as successful results — the error is now reported to the parent agent</p>
|
||
<p>• Fixed the background-agent daemon on Linux killing itself and every running agent every ~50 seconds after an unclean shutdown left a corrupted worker record</p>
|
||
<p>• Fixed background agents failing to cold-start over SSH on macOS with "Could not switch to audit session" (regression in 2.1.196)</p>
|
||
<p>• Fixed claude stop being silently undone when it raced a background-agent respawn — the respawn now honors the stop</p>
|
||
<p>• Fixed background job progress indicators stalling for minutes while the job ran long commands</p>
|
||
<p>• Fixed background sessions on memory-starved machines showing a generic error — they now indicate low memory and suggest freeing resources</p>
|
||
<p>• Fixed remote sessions briefly flapping between Working and Idle in the agent view when a background agent completes</p>
|
||
<p>• Fixed idle subagents vanishing from the agent panel while other subagents were still working; surplus idle agents now collapse into an expandable summary row</p>
|
||
<p>• Fixed typing /model or /fast while viewing a subagent silently opening the lead's model picker — a notice now explains the command applies to the lead</p>
|
||
<p>• Fixed SessionStart, Setup, and SubagentStart hooks silently hiding stderr when exiting with code 2 — the error is now shown in the transcript</p>
|
||
<p>• Fixed claude --dangerously-skip-permissions daemon &lt;subcommand&gt; being treated as a chat prompt instead of running the subcommand</p>
|
||
<p>• Fixed SendMessage silently misrouting when a re-spawned agent reuses a previous agent's name — the tool now detects the mismatch and asks the caller to retarget</p>
|
||
<p>• Fixed opening or resuming a session with no new messages needlessly growing the transcript file</p>
|
||
<p>• Fixed backgrounding a session with ← or /background dropping its /color from the agent view row</p>
|
||
<p>• Fixed resetting a corrupted config file from the startup recovery dialog destroying it unrecoverably — it now backs up the file first</p>
|
||
<p>• Fixed Claude in Chrome repeatedly opening the reconnect page when sessions run from different builds or config directories</p>
|
||
<p>• Fixed plan mode not prompting for state-changing browser tool calls; read-only browser_batch calls are now correctly auto-allowed</p>
|
||
<p>• Transient server rate-limit errors (429s unrelated to your usage limit) are now retried automatically with backoff for subscribers instead of failing the turn</p>
|
||
<p>• CLAUDE_CODE_RETRY_WATCHDOG now raises the default retry count for non-capacity transient errors to 300 and lifts the cap of 15 on CLAUDE_CODE_MAX_RETRIES</p>
|
||
<p>• claude agents session rows now show pull-request links as bare #N without the redundant "PR" label</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.198</id>
|
||
<title>Claude Code v2.1.198</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.198"/>
|
||
<updated>2026-07-01T20:45:29Z</updated>
|
||
<content type="html"><p>• Subagents now run in the background by default, so Claude keeps working while they run and is notified when they finish (previously a gradual rollout)</p>
|
||
<p>• Claude in Chrome is now generally available</p>
|
||
<p>• Added background agent notifications in claude agents — sessions that need input or finish now fire the Notification hook (agent_needs_input / agent_completed)</p>
|
||
<p>• Added /dataviz skill for chart and dashboard design guidance with a runnable color-palette validator</p>
|
||
<p>• Gateway: added Claude Platform on AWS (anthropicAws) as an upstream provider; model-not-found responses now advance the failover chain</p>
|
||
<p>• Background agents launched from claude agents now commit, push, and open a draft PR when they finish code work in a worktree, instead of stopping to ask</p>
|
||
<p>• The built-in Explore agent now inherits the main session's model (capped at opus) instead of running on haiku</p>
|
||
<p>• Subagents and context compaction now inherit the session's extended thinking configuration, improving output quality on delegated tasks</p>
|
||
<p>• Fixed brief network drops mid-response aborting the turn — transient errors like ECONNRESET now retry with backoff instead of failing</p>
|
||
<p>• Fixed excessive background classifier requests when sandboxed processes repeatedly accessed the same network host</p>
|
||
<p>• Fixed background tasks in web, desktop, and VS Code task panels getting stuck on "Running" after they finish or after resuming a session</p>
|
||
<p>• Fixed agent teams: a teammate that dies on an API error now reports "failed" to the lead, and messaging a stuck teammate wakes it to retry immediately</p>
|
||
<p>• Fixed the /diff panel not refreshing when you switch branches or commit outside the session</p>
|
||
<p>• Fixed markdown tables overflowing and wrapping their right border when rendered in fullscreen mode</p>
|
||
<p>• Fixed Claude Platform on AWS and Mantle sessions dead-ending with "Please run /login" when the STS token expires — awsAuthRefresh now runs automatically</p>
|
||
<p>• Fixed "no route to host" for local-network hosts in macOS background agent sessions by declaring Local Network entitlements</p>
|
||
<p>• Fixed /desktop failing with "Cannot determine working directory" after entering and exiting a worktree</p>
|
||
<p>• Fixed background agents repeatedly showing "Reconnecting…" every ~52 seconds on macOS while the agents view was open</p>
|
||
<p>• Fixed pressing ← inside claude attach &lt;id&gt; exiting to the shell instead of opening the agent view</p>
|
||
<p>• Fixed claude --bg silently creating an unattachable session when combined with --print/-p; the conflicting flags are now rejected up front</p>
|
||
<p>• Fixed the workflow progress view dropping the earliest agents from the list while the phase counter stayed correct in SDK and desktop-app sessions</p>
|
||
<p>• Fixed .claude/rules/ conditional rules not loading when the target file is reached via a symlinked path</p>
|
||
<p>• Fixed Cmd+click not opening URLs in fullscreen mode in Warp on macOS</p>
|
||
<p>• Fixed double-click word selection in fullscreen mode to select the entire URL including the scheme</p>
|
||
<p>• Fixed plan mode not auto-allowing read-only tool calls when a session starts in plan mode</p>
|
||
<p>• Fixed /branch deriving its default fork name from the compaction summary instead of the first real prompt</p>
|
||
<p>• Improved focus mode: subagents launched in a turn now appear in its activity summary, and completed background notifications fold into a single count</p>
|
||
<p>• Improved syntax highlighting accuracy in code blocks, diffs, and file previews by upgrading to highlight.js 11</p>
|
||
<p>• Keyboard shortcut hints now show opt/cmd instead of alt/super when connected from a Mac over SSH</p>
|
||
<p>• Improved API retry UX: the error reason is now shown after the second attempt, and a status page link replaces the spinner tip when the API is overloaded</p>
|
||
<p>• /login now opens the sign-in dialog from the claude agents view instead of saying it isn't available</p>
|
||
<p>• Subagents now treat messages from the agent that launched them as normal task direction; an agent's message is still never treated as the user's approval</p>
|
||
<p>• Removed the /agents wizard; ask Claude to create or manage subagents, or edit .claude/agents/ directly</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.197</id>
|
||
<title>Claude Code v2.1.197</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.197"/>
|
||
<updated>2026-06-30T17:56:29Z</updated>
|
||
<content type="html"><p>• Introducing Claude Sonnet 5: now the default model in Claude Code, with a native 1M-token context window and promotional pricing of $2/$10 per Mtok through August 31. Update to version 2.1.197 for access. https://www.anthropic.com/news/claude-sonnet-5</p></content>
|
||
</entry>
|
||
<entry>
|
||
<id>https://github.com/anthropics/claude-code/releases/tag/v2.1.196</id>
|
||
<title>Claude Code v2.1.196</title>
|
||
<link rel="alternate" type="text/html" href="https://github.com/anthropics/claude-code/releases/tag/v2.1.196"/>
|
||
<updated>2026-06-29T23:27:24Z</updated>
|
||
<content type="html"><p>• Added support for organization default models — admins set it in the org console; it shows as "Org default" (or "Role default") in /model when you haven't picked one yourself</p>
|
||
<p>• Added readable default names for sessions at start, making them easier to identify and message</p>
|
||
<p>• Added clickable file attachments in chat — Cmd/Ctrl-click reveals the file in Finder/Explorer</p>
|
||
<p>• Security: claude mcp list/get no longer spawn .mcp.json servers that a repo self-approved via a committed .claude/settings.json; untrusted workspaces show ⏸ Pending approval</p>
|
||
<p>• Fixed waking a background job permanently deleting its conversation and re-running the original prompt when the transcript probe misread a real transcript; the file is now set aside, never deleted</p>
|
||
<p>• Fixed the rate-limit warning flickering off and rate-limit telemetry being over-counted when multiple parallel requests were in flight at the moment a usage limit was hit</p>
|
||
<p>• Fixed duplicate recap lines after a background session's turn: a schema-rejected StructuredOutput attempt no longer renders alongside its retry</p>
|
||
<p>• Fixed PowerShell git diff/git grep, egrep/fgrep, and quoted search patterns containing | being reported as failures when they exit 1, matching Bash behavior</p>
|
||
<p>• Fixed multiple claude agents side panel issues: keyboard focus getting stuck when opening an agent, background jobs losing their subagent types on every open, and sessions showing incorrect status while actively running</p>
|
||
<p>• Fixed claude agents --dangerously-skip-permissions silently falling back to auto mode instead of showing the bypass disclaimer and applying bypass mode to spawned agents</p>
|
||
<p>• Fixed mid-turn crash recovery for Remote sessions — sessions interrupted by a server restart now auto-resume on the next worker</p>
|
||
<p>• Fixed sessions moved with /cd reappearing in the old directory's resume list after a non-graceful exit when the old path contained special characters</p>
|
||
<p>• Fixed claude plugin validate skipping local plugins whose source is "." and stopping after the first error class</p>
|
||
<p>• Fixed Esc Esc at an idle prompt not opening the rewind menu (regression); use Ctrl+C or Ctrl+X Ctrl+K to stop background agents</p>
|
||
<p>• Fixed MCP OAuth requesting the authorization server's full scopes_supported catalog when no scope is specified, causing invalid_scope failures on GitLab self-hosted and other enterprise IdPs</p>
|
||
<p>• Fixed /context showing 0 tokens for all tool groups on Bedrock</p>
|
||
<p>• Fixed /deep-research misreporting verifier failures as "all claims refuted" instead of unverified</p>
|
||
<p>• Fixed plugin dependency version pins not being honored when the marketplace was added as a local folder path backed by a git repo</p>
|
||
<p>• Fixed claude agents session status: completed rows no longer flip between "Done" and "Needs your input", stalled agents are now labeled "Needs attention", and results that mention a PR show a clickable link</p>
|
||
<p>• Fixed voice dictation swallowing spaces and spuriously starting a recording during very fast typing when voice mode is enabled</p>
|
||
<p>• Improved background session reliability: long-running commands and workflows now survive the session's process being stopped, restarted, or updated — including on Windows, where background shells are handed off instead of being killed</p>
|
||
<p>• Improved background agents: workers killed by a daemon restart are now automatically resumed from where they left off the next time the agents view opens</p>
|
||
<p>• Improved /code-review workflow: merged five cleanup finders into one, cutting token usage by roughly 25%</p>
|
||
<p>• Reduced per-frame rendering work in the terminal UI by skipping no-op subtree walks during streaming</p>
|
||
<p>• The streaming idle watchdog is now on by default for all providers — it aborts and retries when a response stream produces no events for 5 minutes. Set CLAUDE_ENABLE_STREAM_WATCHDOG=0 to disable.</p>
|
||
<p>• Remote Control is now disabled when ANTHROPIC_BASE_URL points at a non-Anthropic host, matching the existing behavior under CLAUDE_CODE_USE_BEDROCK/_VERTEX/_FOUNDRY</p>
|
||
<p>• Changed opening the agents view from a foreground session to require a single ← press instead of two, matching the behavior in background sessions</p></content>
|
||
</entry>
|
||
</feed>
|