Claude Code changelog & version tracker
Continuously monitored from upstream releases, docs and issues. Routine releases publish automatically and the current version below is limited to a small allowlist of fields; everything else is reviewed by a human before it appears here.
Change timeline
- release
npm dist-tag jumps from the record's stale 2.1.246 to 2.1.319
The published record's latest_version (2.1.246, verified 2026-08-26) is confirmed stale: npm's latest tag is now 2.1.319. Between the two, at least 20 numbered releases shipped over a 28-day window (v2.1.296 on Oct 9 through v2.1.319 on Nov 6), indicating a cadence closer to near-daily than the record's 'weekly' estimate.
Source ↗ - releasenotice
v2.1.318: self-hosted runner/remote-control session-start failures fixed, sudo-owned process no longer wrongly reaped
v2.1.318 fixes a spawn ENOENT failure that prevented claude remote-control hosts, the background daemon, and self-hosted runners from starting new sessions after an update or version cleanup removed the binary of a still-running process. It also fixes version cleanup wrongly treating a Claude Code process owned by another user (e.g. one left by sudo claude) as dead, which could delete its binary — relevant to shared, multi-user VPS deployments.
Source ↗ - release
npm dist-tag advances to 2.1.317
The npm latest dist-tag for @anthropic-ai/claude-code moved to 2.1.317, one release ahead of the 2.1.316 confirmed last cycle. The matching GitHub release lists dozens of fixes and additions across Agent SDK hooks, Claude apps gateway cost reporting, and self-hosted runner behavior.
Source ↗ - releasenotice
v2.1.316 fixes orphaned shell processes left running after Claude Code exits
v2.1.316 fixes a bug on macOS and Linux where shell commands were left running after Claude Code exits on its own, such as when credentials are refused or a cloud session is archived. Relevant to headless/VPS operators who rely on clean process teardown between automated runs.
Source ↗ - releasenotice
v2.1.312 fixes an invalid-command bug that could leave `claude -p` with no output
Claude Code 2.1.312 (2026-10-27) fixes a bug where a single command with an invalid name prevented all commands from loading, which could result in a headless `claude -p` invocation producing no output at all. This is directly relevant to unattended/VPS usage, where a silent empty result from `-p` is hard to distinguish from a successful no-op run.
Source ↗ - release
v2.1.309 released; npm dist-tag advances to 2.1.309
npm latest moved to 2.1.309. The GitHub release for v2.1.309 ships a large batch of fixes and behavior changes, covered in separate events below.
Source ↗ - release
v2.1.306 fixes cloud-session claude -p false 'Not logged in' and an MCP-heavy session compaction bug
v2.1.306 fixed claude -p reporting 'Not logged in' inside cloud sessions started without the session's environment variables, and fixed an API error being masked as 'prompt is too long' (with an unneeded compaction) in sessions with many MCP tools.
Source ↗ - release
Claude Code 2.1.304 published on npm
npm dist-tag advanced from 2.1.303 to 2.1.304.
Source ↗ - release
npm dist-tag advances to v2.1.302
The @anthropic-ai/claude-code npm package moved to 2.1.302, one patch past v2.1.301 from the prior cycle, continuing the near-daily release cadence (20 releases between v2.1.281 on 2026-09-23 and v2.1.302 on 2026-10-16).
Source ↗ - release
npm dist-tag advances to 2.1.301
Anthropic published v2.1.301 one day after v2.1.300, continuing the near-daily release cadence (roughly 21 releases between v2.1.280 on 2026-09-22 and v2.1.301 on 2026-10-15).
Source ↗ - release
v2.1.300 released
Claude Code v2.1.300 shipped on 2026-10-14, the second release that day following v2.1.299. The release adds mod/plugin-layer APIs (virtualText prompt decorations, $.ui.view for agent transcripts, prompt.change hook), OpenTelemetry GenAI semantic-convention attributes, an /advisor command on Claude Platform on AWS, and 59 bug fixes spanning hooks, subagents, cloud sessions and reftable git repos.
Source ↗ - release
2.1.296 fixes headless MCP server restart and self-hosted-runner race condition
2.1.296 fixes headless sessions silently restarting a folder's .mcp.json or plugin MCP server that had been switched off for that folder, after a cd or plugin reload. It also fixes misleading self-hosted-runner registration error messages and a git fetch/pull/push failure when two sessions of the same repository run on a runner configured with --capacity above 1 — both relevant to VPS/CI automation setups.
Source ↗ - releasenotice
2.1.295 adds blocking hook failures, Program Status Protocol, and headless MCP reconnect backoff
2.1.295 (Oct 8) makes command/HTTP hooks fail closed instead of open, adds terminal status-protocol support, and fixes two headless/VPS-relevant reliability bugs: remote MCP servers in headless/SDK sessions no longer stay disconnected after outages or reconnect-loop, and claude -p text output no longer drops earlier turn responses during background work.
Source ↗ - release
2.1.292 fixes /loop silently stopping after a background session's process restarts
2.1.292 fixes a background session's /loop silently stopping when the session's process restarted (for example after a crash), because its pending wakeup was lost. The same release also makes one-shot claude -p and Agent SDK runs wait for a trailing background command and a pending scheduled wakeup instead of dropping them.
Source ↗ - releasenotice
2.1.291 fixes two recent regressions (dropped permission answers, lost final messages)
2.1.291 fixed a regression introduced in 2.1.290 where cloud sessions could drop answers to permission prompts, and a separate regression introduced in 2.1.288 where the last messages of a session could be lost when quitting.
Source ↗ - releasenotice
WebFetch no longer silently truncates pages past 100,000 characters
2.1.290 fixed WebFetch silently dropping page text beyond 100,000 characters; it now reports how much text was unread and accepts an offset to continue reading.
Source ↗ - release
v2.1.289 ships widespread plugin/Mods stability fixes, including mods not loading after upgrade
v2.1.289 (2026-10-03) fixes a cluster of plugin and Mods rendering/crash bugs introduced with Mods in 2.1.287-2.1.288: mods not loading on first session after upgrade, freezes/forced quits from malformed plugin UI elements, session-ending crashes from async plugin handlers, and several Bash deny-rule gaps around environment-variable prefixes and sandbox auto-allow.
Source ↗ - release
Claude Code 2.1.288 published
npm dist-tag for @anthropic-ai/claude-code advanced to 2.1.288, one patch above the previously known 2.1.287.
Source ↗ - release
v2.1.287 adds Claude Mods, a built-in 'You should know' side agent, and MCP URL-prompt support
Claude Code v2.1.287 shipped a new plugin extension point (Claude Mods) and a built-in mod that runs a side agent to flag things a user or Claude might miss, plus MCP URL-based elicitation for sign-in flows on the newer protocol.
Source ↗ - releasenotice
v2.1.286 fixes Claude apps gateway spend-meter mispricing of prompt-cache writes
The Claude apps gateway's spend meter had been pricing 1-hour prompt cache writes at the cheaper 5-minute rate and counting only the first model call's input tokens on streamed turns that run a server-side tool such as web search. Both billing-display inaccuracies are fixed in v2.1.286.
Source ↗ - release
Claude Code 2.1.284 published
npm dist-tag and the docs changelog agree that the latest published version is 2.1.284, resolving the version-tracking gap noted in prior cycles.
Source ↗ - release
v2.1.283 adds model-allowlist admin controls (availableModelsMatch, deniedModels)
New managed settings let administrators pin availableModels to exact versions and explicitly deny specific models even if allowed elsewhere, tightening model-governance controls for managed deployments.
Source ↗ - release
v2.1.282 released — extended-thinking loss fixes, redacted_thinking retry, plugin-uninstall data-loss fixes
v2.1.282 shipped one day after v2.1.281, continuing the near-daily cadence. Notable fixes: extended thinking no longer dropped when /model, /rename, /artifacts or another slash command is used mid-turn; sessions that failed every turn with an 'Invalid data in redacted_thinking block' error now auto-drop thinking blocks and retry once; compaction that fails because the summarization request is refused now retries on a fallback model; plugin uninstall no longer silently deletes a plugin's saved options/secrets when its settings file couldn't be read or still enabled it.
Source ↗ - release
v2.1.281 adds MCP config validation to claude plugin validate and an auto-mode savings estimate to /insights
v2.1.281 extends plugin validation to catch broken or insecure MCP server entries before they load, and adds an /insights estimate of how many permission prompts auto mode could have handled.
Source ↗ - release
npm dist-tag advances to 2.1.281
The npm latest dist-tag for @anthropic-ai/claude-code moved to 2.1.281, one day after 2.1.280, continuing the near-daily release cadence observed through September.
Source ↗ - releasenotice
Claude Opus 5.5 becomes the default Opus model
v2.1.280 adds Claude Opus 5.5 with 1M context and updated per-Mtok pricing, and makes it the default Opus model.
Source ↗ - releasenotice
2.1.278: auto mode billing shifts to a server-side classifier by default
For Claude API and Enterprise users, and on Bedrock, Vertex, Foundry and gateways, auto mode now defaults to a server-side classifier that does not charge for classifier overhead. Bedrock/Vertex/Foundry/gateway users can opt out with CLAUDE_CODE_AUTO_MODE_SERVER=0. A new /status row shows whether the session's classifier runs server-side.
Source ↗ - release
v2.1.275 released; resolves several resume/crash bugs
Claude Code 2.1.275 shipped 2026-09-17, fixing multiple crash and resume failures caused by malformed transcript data, among other changes.
Source ↗ - releasenotice
Streamable HTTP MCP tool-call timeout bug fixed (was ignoring configured overrides)
The previously reported ~5-minute Streamable HTTP MCP tool-call timeout, which occurred even when a longer per-server timeout was configured, is fixed in 2.1.274.
Source ↗ - release
2.1.273 ships LLM-gateway hint headers, reverts a 2.1.268 permission-check change, and fixes an auto-compact context-meter bug
v2.1.273 adds opt-in x-claude-code-* request headers for LLM gateways, adds MCP-disconnect notifications, and forking of Remote Control sessions. It fixes the context meter/auto-compact double-counting advisor-tool turns (firing compaction at roughly half the real context window), fixes Bash permission-checker bypasses on subshells hiding a dangerous rm and on lines the checker can't fully analyze, and reverts a 2.1.268 change that had made Read/Edit deny rules apply to eval/env -C lines. It also changes auto mode on Bedrock, Vertex and Foundry to use a local classifier by default instead of the platform's server-side classifier.
Source ↗ - release
Claude Code 2.1.271 released
New minor release adds fast mode to Remote sessions (cloud and self-hosted runners), per-command allowed_domains sandboxing for Bash/PowerShell/Monitor in auto mode, and mouse support in the /config panel. Fixes include cached org policy being reused after switching accounts/orgs/API keys, org policy again working through ANTHROPIC_UNIX_SOCKET proxies, and cloud sessions no longer rejecting subagent tool calls after a worker restart.
Source ↗ - releasenotice
2.1.270 fixes a same-day regression: read-only git commands started asking for permission
Version 2.1.270, released one day after 2.1.269, fixed a regression introduced in 2.1.269 where read-only git commands in Bash began unexpectedly asking for permission after a session had been running for a while. This is a quick fix-forward for a usability regression, not a new feature release.
Source ↗ - release
2.1.267 adds maxEffortLevel cap and further prompt-cache stability fixes
2.1.267 adds a maxEffortLevel setting (global or per-model) that caps effort across all providers including Bedrock/Vertex/Foundry, adds --system-prompt-snapshot off for prompt-iteration workflows, and ships a long list of prompt-cache-reuse fixes (model switching, MCP tool list churn, resumed sessions with reconnecting connectors) plus a fix for a marketplace path-traversal containment bypass on macOS/Linux.
Source ↗ - releasenotice
Fable 5.1 prompt-caching gap fixed
Fixed a caching bug that re-sent context attached after tool results as uncached input on every tool-call turn on Fable 5.1. This may bear on earlier reports of Fable 5.1 exhausting usage limits abnormally fast.
Source ↗ - release
Claude Code 2.1.259 released, npm and GitHub aligned
Version 2.1.259 shipped Sep 2, 2026, one day after 2.1.258's macOS-12 launch fix. It adds managedMcpServers for org-wide HTTP/SSE MCP provisioning, GitLab MR recognition in the tool summary, and --json output for claude plugin validate, alongside a large set of fixes.
Source ↗ - release
npm confirms 2.1.257 as latest; version jumped from 2.1.246 across ~11 releases in 6 days
npm dist-tag and the GitHub releases page both confirm 2.1.257 as current, published 2026-09-01, resolving prior-cycle uncertainty about a version beyond the published record's 2.1.246.
Source ↗ - release
Claude Code 2.1.251 released (2026-08-28)
Adds PreModelSwitch/PostModelSwitch hooks, live streaming of foreground subagent tool calls to Remote Control, spend-limit bar in /usage, per-session prompt-cache line in /cost, and new `claude attach/logs/stop/respawn/rm` subcommands. Fixes a symlink-swap path-traversal in file tools, plugin marketplace path-traversal rejection, sandbox read-deny bypass via symlinked search paths, prompt-cache miss after OAuth token refresh, TUI lag from accumulating per-second subagent progress ticks, /mcp reconnect on Remote Control showing wrong error, and stream-json client tool-call merging on resume.
Source ↗ - release
Claude Code 2.1.247 adds /claude-api cost-optimize and feedback drafting
Adds SendFeedback tool for /feedback draft reports, spinnerTipsOverride extensions, a one-keystroke 'Yes, and switch to auto mode' option on Bash prompts, and /claude-api cost-optimize to profile spend and walk through caching/token hygiene/batch/effort/model levers. Fixes sub-agent 404s, hook/background overflow wedge on 'Prompt is too long', Bash sandbox deleting dotfile-managed ~/.claude/settings.json symlinks (nix/home-manager/stow), and unbounded memory growth from unwritable hook output files.
Source ↗ - release
Claude Code 2.1.245 fixes startup crash on glibc 2.44 distributions (Arch, CachyOS, Fedora Rawhide)
Sole entry for the patch release. Startup crash on glibc 2.44 (Arch Linux, CachyOS, Fedora Rawhide) is fixed.
Source ↗ - release
Claude Code 2.1.237 fixes prompt caching behind LLM gateways/custom base URLs, adds Concise output style
Prompt caching now works for sessions using an LLM gateway or custom base URL. Adds a built-in 'Concise' output style that leads with results and skips preamble/narration while doing the work just as thoroughly. Available under Output style in /config.
Source ↗ - release
Claude Code 2.1.236 adds ANTHROPIC_DEFAULT_MODEL, cross-session notify_when_idle, sandbox precedence fix
ANTHROPIC_DEFAULT_MODEL env var sets the model new sessions start on, while a /model pick still overrides and persists. Adds notify_when_idle to SendMessage (one-shot, no polling) on macOS and Linux. macOS sandbox wildcard read-deny rules now take precedence inside allowed read regions and can't be bypassed by renaming. Fixes clipboard/housekeeping breaking after a session switched into a deleted directory (since 2.1.229) and fullscreen renderer failing permanently after a single failed start.
Source ↗ - release
v2.1.229
## What's changed - Documented `claude remote-control --continue` for resuming the most recent Remote Control session - Added server-supplied Claude Code hook support for self-hosted runner sessions, matching managed-environment behavior - Added SSE keepalive pings to gateway streaming responses during long thinking pauses, preventing idle-timeout disconnects on Vertex and Bedrock upstreams - Added plugin marketplace `command` sources: a local command (e.g. an IDE) prints the plugin directory, which is re-resolved each session and applied without a restart; `mode: "link"` uses it in place - `ListAgents` now marks disconnected Remote Control sessions as `offline` and labels your cloud sessions as `cloud` - Fixed long responses partly disappearing while streaming and being printed twice in the terminal - Fixed a crash to the error screen (including on `--resume` of the affected session) when a tool call had a non-string `glob`, `file_path`, or `command` value - Fixed a RangeError crash when a progress bar or markdown table rendered in a very narrow terminal window (could also crash `claude --continue`/`--resume` at startup) - Fixed a crash on Windows when a tool call or message referenced a file by an extended-length (`\\?\`) or UNC path - Fixed auto mode failing on every tool call for users who disable the attribution header via `CLAUDE_CODE_ATTRIBUTION_HEADER` (direct Anthropic API connections) - Fixed `/model` rejecting Sonnet/Opus 1M for claude.ai subscribers using a custom `ANTHROPIC_BASE_URL` gateway - Fixed MCP OAuth with strict authorization servers by using `127.0.0.1` instead of `localhost` in the redirect URI - Fixed Remote Control clients showing a stuck working spinner after a slash command typed in the laptop terminal - Fixed the Claude Code Review workflow generated by `/install-github-app` completing without posting its review on the pull request - Fixed multi-second UI stalls after editing a file with thousands of IDE diagnostics while the IDE extens
Source ↗ - release
v2.1.228
## What's changed - Fixed interactive sessions that could stop redrawing entirely, while the process kept running, after a rare internal layout error - Fixed `git` / Git Bash not being found on Windows when Claude Code is launched from a parent folder of the git installation - Fixed `/tui` reverting the session to an earlier model when `/model` had been changed since the last response - Fixed cross-session messaging sometimes starting without an inbox in the first session after install or upgrade - Fixed Remote Control `/resume` while connected leaking the resumed conversation's title or history into the connected session - Fixed `claude self-hosted-runner` sessions failing on every fresh runner when the `checkout` hook fails for a repository the session doesn't push to; that repository is now skipped with a warning - Fixed self-hosted runners ending sessions in the gap between a background task finishing and the follow-up turn starting - Fixed session cleanup deleting contents inside a project's memory folder - Fixed background plugin-cache cleanup deleting a plugin's cache when its only version is a symlinked development checkout - Fixed a settings-merge issue where a marketplace entry redefined in a higher-precedence settings tier could inherit another tier's custom headers; marketplace entries now merge as whole entries - Fixed the deferred-tools reminder occasionally being sent to the model twice after a skill invocation - Hardened skills synced from claude.ai: they no longer shadow local commands or MCP prompts, their descriptions are sanitized and labeled, and on your machine their bodies don't run `!` commands or expand `@` files - Improved cross-session messages: the sender and body now display inline instead of a collapsed line, and messages to Remote Control sessions on other machines show your Remote Control session name as the sender - Improved Vertex AI credential handling: expired or missing Google Cloud credentials now fail within seconds instead of
Source ↗ - release
v2.1.227
## What's changed - Fixed feature flags being evaluated without the user's subscription tier when a session started with an expired login token, which could wrongly prompt Max plan users to enable usage credits for Fable - Fixed every Bash command failing under `claude-code-action` with `allowed_non_write_users` on GitHub-hosted runners - Fixed `/tui` bringing back a conversation that had been rewound to before its first message - Improved slash-command menu: blue now marks only the selected row, matched characters are bolded instead of recolored, and emoji or accented names keep their glyphs - Improved performance: fewer event-loop stalls on file-not-found suggestions and at-mention size checks
Source ↗ - release
v2.1.226
## What's changed - Bug fixes and reliability improvements
Source ↗ - release
v2.1.225
## What's changed - 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) - Added a workspace trust prompt to `claude agents` for untrusted directories, matching the behavior of `claude` - Fixed a transient 401 replacing a long-lived `CLAUDE_CODE_OAUTH_TOKEN` with a stored login's short-lived token, breaking headless sessions until restart - Fixed MCP OAuth servers on macOS intermittently failing with a burst of 401 errors, as if never authenticated, after a keychain read timed out - 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 - Fixed cross-session messages staying parked without a notice or expiry in headless sessions and during startup - Fixed conversation history breaking on Remote Control session resume after very large conversations were compacted - Fixed hovering over a session in another project in the agents list changing the directory the next agent starts in - Fixed `claude self-hosted-runner` registering and then failing every session when `--base-dir` cannot be created or written; it now exits at startup with a clear error - Fixed Claude Code on the web sessions being misreported as stuck, re-sending a growing event backlog on every reconnect - 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 - [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 - SendMessage can now start a conversation with your Remote Control sessions on other machines by name (`ListAgents` shows them as `name [ref]`), instead of only replying after they messa
Source ↗ - release
v2.1.224
## What's changed - Added self-hosted environments: `claude self-hosted-runner` turns your own machines or containers into a place Claude Code web, mobile, and desktop sessions can run, on Team and Enterprise plans - Added `archive` plugin source: install plugins from a zip over HTTPS without git or npm, with optional SHA-256 pinning - Added a cancel-and-confirm step when removing an unavailable paste changes a command's text - Added `ANTHROPIC_BEDROCK_REGION_PREFIX` env var for Bedrock to prefer a specific cross-region inference profile over the `AWS_REGION`-derived one - Added `crossSessionInbound` and `dialogExpiry` settings: cross-session messages sent to a session running with bypassed permissions are held for your approval, and messages to other sessions auto-deliver - Added sandbox credential-masking options: `extract` and `onExtractNoMatch` for structured env values, `decode: "jwt"` with `maskClaims` for JWT-aware masking, and `awsPairs`/`sigv4` for AWS SigV4 re-signing; these need `network.tlsTerminate` and are honored only from user, managed, or `--settings` settings - Added cross-session `SendMessage`: Claude Code sessions can now message each other, on any of your machines, with `ListAgents` to discover them (macOS and Linux) - Fixed long (>200 char) project paths resolving to another project's session directory under a shared sanitized prefix; session list, rename, fork, delete and `/resume` no longer cross projects - Fixed `SendMessage` reporting "Message sent" when the write to a teammate's inbox had actually failed; failed deliveries are now reported as errors - Fixed sandbox filesystem deny entries written with a trailing slash (e.g. `denyRead: "~/.aws/"`) being silently bypassable on Linux and macOS - Fixed sandbox violation details never appearing in Bash tool results; Claude now sees which file or network access was denied and why - Fixed MCP tools that connect mid-turn being deferred for tool search without their names announced to the model -
Source ↗ - release
v2.1.223
## What's changed - Added owner wildcard entries (`"owner/*"`) to the `strictKnownMarketplaces` and `blockedMarketplaces` managed settings for allowing or blocking all marketplace repos under a GitHub org - 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 - Added a `/teleport` hint in cloud sessions showing how to continue locally with `claude --teleport <session id>` - Fixed a Bash permission bypass where a crafted command could hide parts of itself from permission checks - Fixed permission prompts so commands padded with tabs or invisible Unicode can no longer hide part of the command from the approval dialog - Fixed workflow scripts being able to use dynamic `import()` to run code outside the workflow sandbox - Fixed a permission gap where an agent definition's `bypassPermissions` mode ignored the org bypass-permissions disable policy - Fixed resuming a session after a mid-session `/cd` coming back empty - Fixed gateway model discovery hiding Claude models registered under provider-prefixed IDs such as `vertex_ai/claude-*` or `bedrock/anthropic.claude-*` - Fixed `modelOverrides` keys that aren't Anthropic model IDs being treated as the session's canonical model ID; unknown keys are now ignored as documented - Fixed managed settings: server-delivered settings no longer disable the env block of a machine-local `managed-settings.json` or MDM profile; admin env now merges per key - Fixed sandboxed commands failing to start on Linux when `sandbox.filesystem.denyWrite` covers the working directory - Fixed forked background agents getting stuck "already resuming" for the rest of the session when rebuilding the fork's parent prompt failed during resume - 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 - Fixed a rare hang when parsing
Source ↗ - release
v2.1.222
## What's changed - 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 - Fixed PreToolUse auto-allow hooks bypassing tool restrictions in background agent tasks (summaries, compaction, renames) - Fixed `/usage-credits` 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 - 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 - Fixed "Connection closed mid-response" errors being reported on responses that had actually completed - Fixed `/usage` 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 - Fixed sessions not linking to pull requests created after the branch was pushed, including through the GitHub REST API - Fixed org-restricted `model: opus`-style subagent and teammate family aliases dropping to the parent model instead of stepping down to the newest org-allowed model in the family - Fixed stream idle timeout firing on custom `ANTHROPIC_BASE_URL` gateways despite server keep-alive pings arriving on the wire - Fixed claude.ai connectors being falsely marked as needing authorization when the session token is invalid — they now show a `/login` hint instead - Fixed tool errors not being displayed for tools no longer available locally, for example after an MCP server is removed - Fixed `SendMessage` rejecting a long summary — it now truncates instead, so sends no longer fail on a character limit - Fixed the spinner's effort label in a subagent's transcript view showing the session's effort level instead of the subagent's own `effort:` setting - Fixed rare crashes when a file watc
Source ↗ - release
v2.1.221
## What's changed - [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 `Ctrl+Alt+F` or the "Claude Code: Toggle Focus view" command - Added `mode: "mask"` for sandbox credential files on Linux and WSL — sandboxed commands read a sentinel copy (the whole file, or just the spans captured by an `extract` regex) while the sandbox proxy substitutes the real value on egress; on macOS file masking falls back to `deny` - Added warnings to `claude plugin validate` when a marketplace or plugin name would be rejected by Claude Desktop's managed marketplace sync - Added a `prompt-audit` subcommand to the `claude-api` skill for auditing prompts and tool descriptions for patterns written for older models - Fixed a Bash tool permission-check bypass where zsh could execute hidden commands in `[[ ]]` regex conditionals; affected commands now prompt for permission - Fixed PowerShell permission checks mishandling paths containing quote characters on Windows; such paths now prompt for approval - 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 - Fixed MCP servers from `--mcp-config` not being connected before the first turn in print mode (`-p`), which made the model emit tool calls as literal text - Fixed @-mentioned files being silently dropped when pressing Esc to retract a prompt and resubmitting it - Fixed a crash when preparing API requests for SDK MCP tools named after built-in object properties such as `constructor` - Fixed WebSearch failing with a 400 error at effort `xhigh`/`max` when thinking is disabled - Fixed sandboxed large uploads failing with TLS errors through the sandbox proxy - Fixed Team and Enterprise spend-limit message incorrectly blaming the org's monthly limit instead of your individual spend limit - Fixed Bedrock authentication with AWS SSO
Source ↗
Running Claude Code yourself
Compare it against the alternatives, or deploy it on a managed VPS in one click.