Follow Discord
Sweep 22 Oct 2026 · 21:04Z Build v2.1.309 528 read Stable v2.1.308 Latest v2.1.309 Next v2.1.309 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · claude-code

Claude Code changelog changedchangelog

Nearest release: v2.1.237, published under an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

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

The whole hunk

from line 6, old and new numbered
/
lines

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

from line 6
66 
77Run `claude --version` to check your installed version.
88 
9<Update label="2.1.236" description="August 19, 2026">
10 * Added `ANTHROPIC_DEFAULT_MODEL` environment variable: sets the model new sessions start on, while a `/model` pick still overrides it and persists across restarts (unlike `ANTHROPIC_MODEL`)
11 * Added `notify_when_idle` to cross-session `SendMessage`: ask another Claude Code session on this machine to send one notice when it next goes idle — opt-in, one-shot, no polling (macOS and Linux)
12 * Sandbox: on macOS, wildcard read-deny rules (e.g. `**/.env`) now take precedence inside allowed read regions, cover matched directories' contents, and can't be bypassed by renaming the denied file
13 * Fixed clipboard copy, background housekeeping, background sessions, and local MCP logs breaking after the directory a session had switched into was removed (since 2.1.229)
14 * Fixed the fullscreen renderer failing permanently after a single failed start: it now falls back to the classic renderer instead of exiting on every subsequent launch
15 * Fixed the `/model` picker rendering taller than the terminal: it now shows only as many models as fit the window, with the rest reachable by scrolling
16 * Fixed `SendMessage` calls being rejected when a malformed closing tag left the message text inside the summary field
17 * Fixed unhandled promise rejections when a subprocess fails to start, for example `powershell.exe` on WSL with Windows interop disabled (regression in 2.1.234)
18 * Fixed fullscreen mode sometimes not showing a newly sent message until the next update after the terminal was resized
19 * Fixed a blank band that could remain above the prompt after clearing a multi-line prompt, and panes not repainting after resizing the terminal away and back, in fullscreen mode
20 * Fixed the managed-settings approval prompt sometimes not appearing at startup while still capturing the first keypress as approval
21 * Fixed terminal tab titles jumping in tmux (iTerm tmux integration): the title is now written only when its text changes instead of animating every 960ms
22 * Fixed an unclear error when the cloud environments list came back empty or malformed
23 * Fixed the Fable 5 first-time usage-credits prompt auto-selecting the fallback model after 60 seconds with no answer when using Remote Control
24 * Fixed spinner tips never appearing, with a repeated background error, when the cached guest-pass reward in `~/.claude.json` was malformed
25 * Fixed skills hot-reload in SDK/VS Code sessions raising an error on every skills change after the session's working directory was deleted (2.1.229+)
26 * Fixed self-hosted runner sessions released on idle, retire, or startup timeout occasionally resuming on another runner before the post-session hook had finished
27 * Fixed the Clawd mascot's eyes and feet rendering unevenly in iTerm2 at some font sizes
28 * Fixed occasional runaway session recaps: recap text (automatic and `/recap`) is now capped at 400 characters, cut at a word boundary
29 * Improved startup performance: the session counter is now written in the background
30 * Improved auto mode: `Monitor` allow rules are now set aside while auto mode is active, so Monitor commands are reviewed the same way Bash commands are
31 * Improved auto mode on Bedrock, Vertex AI, and Foundry, and when telemetry is disabled: the classifier now uses the same defaults as on the Claude API, including severity-scored classification
32 * Improved auto mode: the git status check can no longer be fooled by a repo's `status.showUntrackedFiles=no` setting into reporting a clean tree
33 * Changed the `/model` picker to highlight only the newest model's name, so the highlight marks the new release rather than an arbitrary subset of the list
34 * `/goal`: an idle session whose goal is parked behind long-running background work now checks in automatically after 30 minutes (then 1h, 2h) instead of waiting for you to return
35 * `/usage` now shows the usage-credits spend row for Team and Enterprise members, and shows a capped row at 0% before anything is spent
36 * SIGTERM in print/SDK mode no longer records an interrupted turn or synthetic tool denials before exiting; running commands are still terminated and the process still exits with code 143
37 * Pressing Enter on a slash-command typo or a command unavailable in this session now reports it instead of running the closest fuzzy match; prefixes and aliases still run
38 * Remote Control now marks a session offline within seconds when the CLI exits or its terminal closes
39 * `SendMessage` now refuses further messages to a session up front once a rapid burst would exceed what that session's inbox accepts, instead of reporting them sent while they were dropped
40 * Aligned the session title chip on the prompt border with the footer's right edge
41 * Right-aligned footer items (goal indicator, session state, background agent status) and truncated notices now share a consistent right margin with the rest of the prompt area
42 * \[VSCode] Added screen reader support for the transcript: live announcements for replies, permission requests, errors, and status changes, plus per-turn heading navigation
43</Update>
44 
945<Update label="2.1.235" description="August 18, 2026">
1046 * Added an optional `spellcheck` setting that underlines misspelled words in the prompt input as you type, using your installed `aspell`, `hunspell`, or `ispell`
1147 * Fixed whole-prompt-cache invalidation when a language server disconnected or reconnected mid-session
from line 2170
21342170 * Fixed Mantle endpoint authentication failing with missing `x-api-key` header
21352171</Update>
21362172 
2137<Update label="2.1.129" description="May 6, 2026">
2138 * Added `--plugin-url <url>` flag to fetch a plugin `.zip` archive from a URL for the current session
2139 * Added `CLAUDE_CODE_FORCE_SYNC_OUTPUT=1` env var to force-enable synchronized output on terminals that auto-detection misses (e.g. Emacs `eat`)
2140 * Added `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE`: when set on Homebrew or WinGet installations, Claude Code runs the upgrade command in the background and prompts to restart
2141 * Plugin manifests: `themes` and `monitors` should now be declared under `"experimental": { ... }`. Top-level declarations still work but `claude plugin validate` will warn
2142 * Gateway `/v1/models` discovery for the `/model` picker is now opt-in via `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1` (was automatic in 2.1.126–2.1.128)
2143 * Ctrl+R history picker now defaults to searching all prompts across all projects, matching pre-2.1.124 behavior. Press Ctrl+S to narrow to the current project or session
2144 * Third-party deployments (Bedrock, Vertex, Foundry, or `ANTHROPIC_BASE_URL` gateway) no longer see spinner tips pointing at first-party Anthropic surfaces
2145 * `skillOverrides` setting now works: `off` hides from model and `/`, `user-invocable-only` hides from model only, `name-only` collapses description
2146 * The `claude_code.pull_request.count` OTel metric now counts PRs/MRs created via MCP tools, not just shell commands
2147 * Policy refusal error messages now include the API Request ID for easier support debugging
2148 * Fixed API errors with unrecognized 400 status codes showing raw JSON instead of the underlying error message
2149 * Fixed `/clear` not resetting the terminal tab title after a conversation
2150 * Fixed session title chip from `/rename` disappearing while a permission or other dialog is active
2151 * Fixed agent panel below the prompt being hidden when subagents are running (regression in 2.1.122)
2152 * Fixed external-editor handoff (Ctrl+G) blanking the conversation history above the prompt
2153 * Fixed `/context` dumping its rendered ASCII visualization grid into the conversation, wasting \~1.6k tokens per call
2154 * Fixed `/agents` Library list arrow-key navigation: the highlighted agent now stays visible when the list exceeds the viewport
2155 * Fixed `/branch` success message not including the new branch's session id for `/resume`
2156 * Fixed bold headers with keycap/ZWJ/skin-tone emoji losing trailing characters in fullscreen mode
2157 * Fixed server-managed settings policy not applying for enterprise/team users whose stored OAuth credentials lacked the `user:inference` scope
2158 * Fixed OAuth refresh race after wake-from-sleep that could log out all running sessions
2159 * Fixed 1-hour prompt cache TTL being silently downgraded to 5 minutes
2160 * Fixed cache-miss warning appearing spuriously after `/clear` or compaction when changing `/effort` or `/model`
2161 * Fixed `Bash(mkdir *)`, `Bash(touch *)` and similar allow rules not being honored for in-project paths
2162 * Fixed `deniedMcpServers` patterns with a `*://` scheme wildcard not matching mixed-case hostnames
2163 * Fixed harmless WebSocket warning being logged as an error in `--debug` during voice mode
2164 * \[VSCode] Fixed `/clear` not clearing the conversation context and displayed transcript
2165</Update>
2166 
2167<Update label="2.1.128" description="May 4, 2026">
2168 * Bare `/color` (no args) now picks a random session color
2169 * `/mcp` now shows the tool count for connected servers and flags servers that connected with 0 tools
2170 * `--plugin-dir` now accepts `.zip` plugin archives in addition to directories
2171 * `--channels` now works with console (API key) authentication — console orgs with managed settings must set `channelsEnabled: true` to enable
2172 * Updated `/model` picker: collapsed duplicate Opus 4.7 entries, and current Opus now shows as "Opus" instead of "Opus 4.7"
2173 * Subprocesses (Bash, hooks, MCP, LSP) no longer inherit `OTEL_*` environment variables, so OTEL-instrumented apps run via the Bash tool no longer pick up the CLI's own OTLP endpoint
2174 * MCP: `workspace` is now a reserved server name — existing servers with that name will be skipped with a warning
2175 * Reconnecting MCP servers no longer flood the conversation with full tool-name lists on every reconnect — re-announced tools are summarized by server prefix
2176 * SDK hosts now receive a persistent `localSettings` suggestion for Bash permission prompts, so "Always allow" writes to `.claude/settings.local.json`
2177 * `EnterWorktree` now creates the new branch from local HEAD as documented, instead of `origin/<default-branch>` — unpushed commits are no longer dropped
2178 * Auto mode: when the classifier can't evaluate an action, the error now includes a hint (retry, `/compact`, or run with `--debug`)
2179 * Fixed focus mode briefly dimming the previous response when submitting a new prompt
2180 * Fixed stray "4;0;" desktop notification on every `/exit` in Kitty and other terminals that interpret OSC 9 as a notification
2181 * Fixed Remote Control showing an empty "Opening your options…" message on rate limit instead of actionable upsell options
2182 * Fixed drag-and-drop image upl
Feedback