changelogs.info
OpenClaw Claude Code Codex Gemini Kilo Code Hermes Models Dispatches
Claude Code Changelog Guide
Tracking 3 latest entries

Claude
Code

An agentic coding tool from Anthropic that lives in your terminal, understands your codebase, and helps you code faster through natural language commands.

claude --status
$ claude --version
Version: v2.1.272
Releases: 30 tracked
Breaking: 4
Updated: 14h ago
$ _
Releases 30
Breaking 4
Stable 30
Latest v2.1.272

TL;DR

Latest Release
v2.1.272 Sep 15, 2026

This release of claude-code 2.1.251 introduces significant enhancements to model interaction, cost transparency, and background session management. Developers can now leverage `PreModelSwitch` and `PostModelSwitch` hooks to control model changes, offering more granular control over AI behavior. Remote Control clients gain live streaming of foreground subagent tool calls, providing real-time visibility into active subagent operations, while background subagents continue to show status only. Cost tracking is improved with a new spend limit bar in `/usage` and a `rate_limits.spend_limit` status line field for gateway users, alongside detailed per-session prompt cache metrics in `/cost` and a `prompt_cache` object for status line scripts. The CLI has been expanded with `claude attach`, `logs`, `stop`, `respawn`, and `rm` commands for better background session management, and the `--resume` message now explicitly suggests `claude attach <id>`. Critical security fixes address symlink vulnerabilities in file tools, path traversal in plugin commands, and sandbox escapes related to project settings and the Workflow tool. Performance is boosted with reduced UI re-renders and a smaller binary size. A breaking change restricts setting `CLAUDE_CONFIG_DIR`, `CLAUDE_CODE_TMPDIR`, `TMPDIR`, `TMP`, or `TEMP` from project-level `.claude/settings.json`, requiring these to be configured in the shell or user/managed settings. It is recommended to upgrade to this version to benefit from the security fixes, improved control, and enhanced visibility into session costs and subagent activity.

Recent Changelog
2.1.273
Sep 15, 2026
Notable changes
  • Added x-claude-code-request-class, x-claude-code-agent-type, x-claude-code-prev-tool-durations, x-claude-code-compaction and x-claude-code-context-compacted request headers for LLM gateways; opt in with CLAUDE_CODE_GATEWAY_HINT_HEADERS=1
  • Added a notification when an MCP server disconnects mid-session and automatic reconnection gives up, pointing at /mcp
  • Added forking a session started with claude --remote-control or /remote-control from the Claude app; the fork runs as a background session on your computer
  • Fixed Bash commands the permission checker cannot fully analyze skipping the prompt under permissions.blockReadsOutsideWorkingDirectories, and a subshell hiding a dangerous rm in bypass mode
  • Fixed skills synced from claude.ai staying available after your organization turns Skills off; they now move to the recoverable trash
  • Fixed allowManagedMcpServersOnly, deniedMcpServers and disableClaudeAiConnectors set via MDM or managed-settings.json being ignored when server-managed settings are also present
Show all changes (58 more)
Changes
  • Fixed 401/403 errors on Bedrock, Vertex and Foundry, and Claude apps gateway 403s, telling you to run /login; the message now names the credential to refresh or points to your gateway administrator
  • Fixed /login, /upgrade, and /extra-usage discarding earlier thinking from the conversation, which forced a full prompt-cache rewrite on the next request
  • Fixed auto mode stopping for approval when the Artifact tool uploads a file you attached to the chat in a cloud or Remote Control session
  • Fixed a long-running session recreating a stub .git/info/exclude after the repository's .git directory was removed or moved away
  • Fixed the main prompt dropping a ! typed at the start while already in shell mode, so negated commands like ! grep … can be typed
  • Fixed Read on macOS refusing a dragged-in screenshot, or any file the system reports under a second path, with "symlink resolution changed after permission was checked"
  • Fixed permissions.blockReadsOutsideWorkingDirectories: a memory directory chosen by a repository's settings is no longer loaded into the prompt, recalled, indexed, or used by memory extraction
  • Fixed sub-agents and background agents being reported as failed, with their result never delivered, when the final streamed reply omitted token usage or carried no model id
  • Fixed the context meter and auto-compact counting advisor-tool turns at roughly twice their real context size, which made auto-compact fire at about half the real window
  • Fixed /tui refusing to restart because of an agent-team teammate that had already finished its work and was no longer shown in the agents panel
  • Fixed saved scheduled tasks running in the wrong session after .claude/scheduled_tasks.json was copied into another folder, such as a new worktree
  • Fixed SDK and --output-format stream-json output dropping a subagent's remaining messages and final report after it is moved to the background mid-run (e.g. by CLAUDE_AUTO_BACKGROUND_TASKS)
  • Fixed /install-github-app reporting a SAML single sign-on block as "admin permissions required"
  • Fixed Remote Control clients attached to a Claude Desktop, VS Code or JetBrains session being refused when they ask for the session's context window usage
  • Fixed the spinner showing a doubled ellipsis ("……") on compaction status lines such as "Running PreCompact hooks…"
  • Fixed a false-positive spinner tip suggesting the frontend-design plugin after reading or publishing Artifacts
  • Reverted a 2.1.268 change that checked Read and Edit deny rules on Bash lines the permission checker can't analyze (eval, env -C); commands like time -p make build prompt again instead of being denied
  • Improved responsiveness in long sessions: hook progress and sub-agent activity no longer re-process the whole conversation on every update
  • Improved the Artifact tool's error when a publish includes a file type artifacts don't serve: Claude is told which types are served and what to do instead, and the terminal shows one plain line
  • Improved the Artifact tool's page read to state the capabilities and database rules the artifact service holds for the page, for anyone who can publish to it
  • Improved artifact database writes: an update can now remove a single field instead of rewriting the whole document
  • Improved artifact publishing: a publish whose connection drops after reaching claude.ai is now re-sent safely instead of failing or creating a duplicate version
  • Improved the cloud-session GitHub error for an IP allow list, a suspended app installation or SAML single sign-on to show the cause instead of a generic install hint
  • Improved /autofix-pr: when gh pr view fails it now shows gh's own error (sign-in, SAML, rate limit) instead of a generic exit-code line
  • Improved /autofix-pr to say why GitHub webhook delivery couldn't be set up for the PR (for example, no linked GitHub account) instead of a generic warning
  • Improved /web-setup errors: a refused GitHub token now lists the likely reasons and the fix, and a connection failure names a configured proxy or TLS certificate problem
  • Improved the in-session SSL certificate and proxy connection errors to name the error code and what to fix, such as NODE_EXTRA_CA_CERTS for an untrusted corporate CA
  • Improved the error when a cloud session can't be created because your Claude login expired or was revoked: it now tells you to run /login
  • Improved the error shown when an MCP server's sign-in expires mid-session to say how to re-authenticate (/mcp)
  • Changed auto mode on Bedrock, Vertex and Foundry to use the local classifier by default for now; set CLAUDE_CODE_AUTO_MODE_SERVER=1 to use the platform's server-side classifier
  • Changed OTEL_LOG_TOOL_DETAILS=1 to also include real agent, skill, plugin and MCP server names on cost and token metrics
  • Changed sign-in with a Claude account to also request access to your claude.ai plugins
  • Changed /bug and /feedback reports to include only model-behavior params (model, system prompt, tools) from the last API request, omitting request metadata and CLAUDE_CODE_EXTRA_BODY fields
  • [VSCode] Fixed "Report a problem" still appearing, and /bug / /feedback opening a report form, for organizations that have product feedback disabled
  • [VSCode] Fixed a red "Claude Code process exited with code 4294967295" banner appearing after completed turns on Windows
  • Windows: Improved the network-path permission check for UNC paths when a mapped network drive was added with --add-dir
  • [Claude Code on the web] Fixed routines losing access to an organization connector, and still calling the old one, after an admin removed and re-added that connector
  • [Claude Code on the web] Fixed creating a self-hosted environment from organization settings occasionally failing with a server error and leaving a half-created environment behind
  • [Claude Code on the web] Changed the admin "Share cloud sessions" setting to live under Data and privacy instead of the Claude Code page, where Data and privacy admins can also manage it
  • [Claude Code on the web] Added a "Discard unsaved changes?" confirmation before the New routine page or the Edit routine dialog throws away a routine name, prompt or edit you typed
  • [Claude Code on the web] Removed the full-page desktop-app download screen that new users without a cloud environment saw on Mac and Windows; they now go straight to setup
  • [Claude Code on the web] Improved the routine detail page: menu and rename in the breadcrumb, the on/off switch and Run now at the top, and run history beside the routine's settings
  • [Claude Tag] Fixed Claude going silent minutes after reinstalling the app when an Enterprise Grid was disconnected but one of its workspaces stayed connected
  • [Claude Tag] Fixed scheduled tasks set up in an organization-shared private Slack channel silently never posting; they now keep running in the thread they were created in
  • [Claude Tag] Fixed replying in an older Slack thread while Claude is mid-task sometimes restarting it from scratch and losing work it had not pushed yet
  • [Claude Tag] Fixed Claude occasionally dropping a message with an incorrect "couldn't find a Claude Code environment" notice right after your account token refreshed
  • [Claude Tag] Fixed AWS connections refusing region-less endpoints such as Budgets, Savings Plans, WAF Classic and Import/Export; Global Accelerator requests now sign correctly
  • [Claude Tag] Improved AWS connection failures: when a request can't be signed, such as a hostname with no region, Claude is told why and how to fix it instead of a bare error
  • [Claude Tag] Fixed OAuth client-credentials and JWT-bearer connections failing with providers that return a lowercase token type; requests now send the standard Bearer scheme
  • [Claude Tag] Fixed adding a channel manager being refused on Enterprise Grid shared channels, on channels where Claude hasn't been used yet, and on legacy private channels
  • [Claude Tag] Changed Claude to start watching related public channels on its own, such as an incident channel a conversation depends on, instead of only when asked
  • [Claude Tag] Fixed the admin Memory page not listing Slack channels Claude set up on its own even when they had saved memory; admins can now open, edit and delete that memory
  • [Code Review] Fixed merging the base branch into a PR whose earlier review listed "Additional findings" triggering a full re-review; these pushes now get the lighter follow-up review
  • [Code Review] Fixed a whole REVIEW.md being ignored because of an @-mention, a code span wrapped across lines, or a backticked HTML tag; only lines linking to changed files are withheld
  • [Code Review] Improved suggested fixes to say what the fix must keep working when other code depends on the behavior being changed
  • [Code Review] Improved review comments that point to a second affected location to state that location's issue in a full sentence instead of a cut-off stub
  • [Code Review] Fixed /ultrareview --post so a retry after a GitHub error posts the findings comment exactly once instead of never or twice; the comment now names the reviewed commit
  • [Code Review] Fixed empty or content-identical pushes being re-reviewed on GitHub repositories whose owner or name contains a capital letter; these pushes are now skipped
2.1.272
Sep 15, 2026
Notable changes
  • Bug fixes and reliability improvements
2.1.271 BREAKING
Sep 15, 2026
Notable changes
  • Added fast mode in Claude Code Remote sessions (cloud and self-hosted runners): the host's fast-mode setting or /fast typed in the session applies where your organization allows it
  • Added mouse support to the /config panel in fullscreen mode: the wheel scrolls the settings list, a click on a setting's value changes it, and the row under the pointer is highlighted
  • Added claude self-hosted-runner --drain-marker-file <path>: when that file exists at a SIGTERM drain, the runner reports its exit to the server as a host drain (telemetry only)
  • Added per-command allowed_domains to Bash, PowerShell and Monitor in auto mode with sandboxing: the hosts a command needs are reviewed with it and opened for it alone; other hosts are refused
  • Added omitClaudeMd to agent frontmatter and --agents JSON, letting custom and plugin subagents run without user, project and local CLAUDE.md files; managed policy files still load
  • Added --accept-command <sha256> to claude plugin install and claude plugin update to accept exactly the command a previous --json run displayed, instead of -y
Show all changes (90 more)
Changes
  • Added support for a multiplier above 1, up to 10, in the modelPricing managed setting and the Claude apps gateway pricing block, for marked-up internal chargeback rates
  • Added a spinner tip pointing Bedrock, Vertex AI, Foundry and LLM gateway users to the Claude desktop app; the claude.ai desktop app tip now suggests /desktop, which offers to download the app
  • Fixed a cached organization policy being reused after switching accounts, organizations, or API keys, and the policy not refreshing until the hourly check when the credential changes mid-session
  • Fixed the tool and command lists not updating when the organization policy finishes loading after startup or changes mid-session
  • Fixed an enterprise managed-mcp.json that can't be read or parsed being ignored: it now keeps exclusive MCP control (user, project and plugin servers don't load) and warns at startup
  • Fixed org policy being fetched through, and rejected by, third-party local proxies set via ANTHROPIC_UNIX_SOCKET; they are again treated like other custom gateways, including for Remote Control
  • Fixed cloud sessions rejecting every subagent tool call ("updatedInput … failed schema validation") when a workflow or agent approval was applied after the session's worker restarted
  • Fixed /fast off answering "Fast mode unavailable" instead of turning fast mode off when the organization has fast mode disabled
  • Fixed sessions started with CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK re-sending fast requests every turn after the API rejected fast mode; the rejection now stands and its reason is shown
  • Fixed fast mode under CLAUDE_CODE_RETRY_WATCHDOG failing the turn on a usage-credits limit, or retrying an overload at fast speed, instead of falling back to standard speed
  • Fixed Bash permission checks missing the file that fmt, column and similar commands read when it follows an option the checker doesn't recognize
  • Fixed Bash permission checks skipping files a wildcard expands to when the wildcard sits in a command's pattern or option value (for example grep -v dir/* file)
  • Fixed Bash permission checks so that shell variable declaration flags cannot misrepresent the command being run
  • Fixed Bash commands with two directory changes, a subshell, or a cd+git chain skipping the prompt under permissions.blockReadsOutsideWorkingDirectories in bypass and auto mode
  • Fixed a stale .git/config.lock breaking git checkout -b, git push -u and git config for the rest of a session after a sandboxed command failed to start (Linux)
  • Fixed settings file changes made outside the session going unnoticed on macOS machines whose system file-event service is saturated; the watcher now falls back to polling
  • Fixed resumed claude -p sessions whose tools all come from MCP servers failing with "At least one tool must have defer_loading=false"
  • Fixed turns failing with "API returned an empty or malformed response" when an LLM gateway returns the non-streaming reply as text/plain
  • Fixed sustained high CPU usage and repeated tool-list requests when an MCP server sends list_changed notifications in a tight loop
  • Fixed MCP OAuth mishandling client registrations: denying consent forced a new one, one for another redirect URI was reused, and a concurrent write could delete a valid one or keep a mismatched one
  • Fixed tool search returning no match when Claude selects an MCP tool by its bare name instead of its full mcpservertool name
  • Fixed Ctrl+O cancelling pending MCP server reconnects, and /mcp sent from Remote Control failing while the transcript view is open
  • Fixed the Claude in Chrome prompt telling the model to load tools through ToolSearch when ToolSearch is unavailable
  • Fixed cross-session messages held by the receiving session's permission-mode policy leaving no trace: headless senders now get a delivery notice, and SendMessage results no longer imply it was read
  • Fixed Claude starting a second copy of a background command (such as a watch task or dev server) that was still running after the conversation was compacted
  • Fixed /model warning about losing the conversation cache when switching back to the model the conversation actually ran on
  • Fixed /reload-skills reporting a skill count that disagreed with the slash menu after /cd
  • Fixed /resume and /continue showing only 1-2 sessions in fullscreen mode on short terminals
  • Fixed /resume and /teleport keeping the previous conversation's file-read tracking, so Claude could edit files the resumed conversation had never read
  • Fixed --resume dropping the 1M context window ([1m]) when the resumed session's model family differs from the configured default model
  • Fixed artifacts attached with /artifacts disappearing from the session after --resume
  • Fixed background sessions (claude --bg, claude agents) not watching the artifacts they publish for republishes made elsewhere
  • Fixed custom agents, slash commands and output styles beyond the first not loading from a virtual drive that reports inode 0, such as an encrypted vault mounted as a Windows drive
  • Fixed self-hosted runner sessions silently losing all host config (settings, skills, plugins, MCP servers) when the host config directory exceeds 64 MiB; added --host-config-snapshot disk|memory
  • Fixed skills synced from claude.ai staying on disk indefinitely after signing out; copies not refreshed within cleanupPeriodDays now move to the recoverable trash at the next launch
  • Fixed spinner tips suggesting commands that aren't available for your account type or are disabled in your session
  • Fixed the /add-dir path input: the left and right arrow keys now move the cursor, and Enter adds only the typed path instead of also adding the highlighted completion
  • Fixed text fields outside the main prompt moving a leading ! to the end of what you typed (!foo came out as foo!)
  • Fixed the interactive /hooks menu crashing when a hook matcher is named after an inherited object property such as proto or constructor
  • Fixed a fullscreen rendering glitch where text kept a stale background color after the box around it lost its background
  • Fixed Delete in st and Alt+arrow keys in rxvt-unicode not working in attached background sessions
  • Fixed the terminal's replies to capability queries (^[[?1;2c) appearing at the shell prompt or in an editor when Claude Code exits, is suspended, or opens an editor right after starting
  • Improved terminal rendering performance: large diffs and long transcripts render faster, with fewer slow frames
  • Improved startup time slightly by skipping a redundant validation of built-in model data on every launch
  • Improved hook feedback: while a SessionStart, UserPromptSubmit, PreToolUse or SessionEnd hook runs, the spinner says so with elapsed time, and Esc cancels a prompt waiting on a SessionStart hook
  • Improved the spinner status during long thinking: it now reads "deep in thought" after 45s, and shows "picking the thought back up" while recovering from the output-token limit
  • Improved dynamic workflows to pause when you hit your usage limit and continue automatically when it resets, instead of dropping the affected agents
  • Improved Remote Control to leave fewer empty sessions on claude.ai when setup fails on a flaky network
  • Improved the Claude in Chrome message in cloud sessions when the browser can't be reached: it now says the computer may be asleep before it suggests an install
  • Improved claude mcp serve: a running tool call now sends a progress update every 30 seconds, so clients show it is still running and idle timeouts don't abort a long command that prints nothing
  • Improved Foundry and Claude Platform on AWS sessions: an alwaysLoad MCP server that finishes connecting mid-conversation is usable on the next turn without a tool-search round trip
  • Improved Markdown files published as artifacts: they now render as styled document pages (title header, document typography, syntax-highlighted code)
  • Improved Artifact tool publish errors: a publish with no file now says to write the page to a file first, and an unsupported file type is reported before a missing favicon
  • Improved the Artifact tool's error when a page declares a capability its contract version lacks: it now lists every supported capability and notes when a newer contract version has it
  • Improved artifact watching: a session can now watch up to 10 published artifacts at once for republishes made elsewhere, up from 5
  • Improved PDF @-mentions to say "page count unknown" instead of a page count guessed from the file size when pdfinfo cannot count the pages
  • Improved /mobile to show a single QR code for claude.ai/mobile, which opens the right app store for your phone
  • Changed auto mode so that a skill's or slash command's inline ! shell commands follow default-mode permission rules instead of the classifier; a command no rule decides runs as a reviewed tool call
  • Changed auto mode so a subagent reports back to its caller through a dedicated hand-back call that the safety classifier reviews, instead of its last message being reviewed after the fact
  • Changed Monitor watches to always have a deadline (at most 30 minutes; 10 in single-prompt -p runs) and notify Claude to re-arm, replacing the no-timeout persistent option
  • Changed the IDE selection indicator in the prompt to a [⧉ …] pill that wraps with the text instead of squeezing multi-line prompts; delete it with Backspace to leave the selection out
  • Changed the default dynamic workflow size to small on Pro plans and lowered the medium size guideline from 15 to 10 agents
  • Changed Claude apps gateway, Bedrock, Vertex AI, and Foundry sessions so that they no longer refresh a leftover claude.ai login that the session does not use
  • Updated the bundled claude-api skill to enable eager_input_streaming on streaming custom tools, and to start deliverable-shaped Managed Agents work with user.define_outcome
  • [VSCode] Added an Attach Open File setting that, when turned off, stops the open file from being added to messages; selected text is still attached
  • [VSCode] Fixed the Hooks and Permission rules dialogs reporting a save that landed as failed, and the Hooks dialog going blank under a plugin-only policy lock or showing color codes in save errors
  • [VSCode] Fixed Hooks dialog saves: no duplicate hook on replace, a header name retyped in other capitals keeps its secret, and settings.local.json is gitignored before the save returns
  • [VSCode] Fixed session history showing only the current session when the workspace is on a Windows mapped network drive or SUBST drive
  • [VSCode] Fixed the session list's Active filter hiding open idle sessions when Open is also checked in the filter menu
  • [VSCode] Fixed a new chat switching back to the previous chat when the session list refreshed
  • [VSCode] Fixed open tabs and the side bar keeping the old config folder until a window reload after CLAUDE_CONFIG_DIR changed in the environmentVariables setting
  • [VSCode] Fixed console windows flashing on Windows when the extension runs background commands such as git, ripgrep, and the sign-in status check
  • [VSCode] Fixed the prompt cache clock's hover text appearing only after a delay, and the auto-compact icon showing the browser's own tooltip beside its popup
  • [VSCode] Improved the Hooks dialog: a save refused because of the settings file itself now opens a popup with an "Open settings file" button and the reason behind "Copy error"
  • [VSCode] Changed the on state of toggle switches from Claude orange to the editor theme's button color
  • [Claude Code on the web] Fixed a cloud session sometimes taking about ten minutes to respond after its process exited while the session still looked live; sending a message now restarts it right away
  • [Claude Code on the web] Changed the Routines page on claude.ai/code to a new layout with Yours and Templates tabs and two-column routine cards that show run status, and removed its calendar view
  • [Claude Code on the web] Added a Custom network access option to the Cloud environments editor in admin settings, with the same allowed-domains list the environment dialog on claude.ai/code offers
  • [Claude Code on the web] Improved the Cloud environments admin page: it shows the default environment for Claude Tag and Claude Code, with a link to change it, and marks the recommended kind to create
  • [Claude Tag] Fixed Claude in a channel where it stays active losing its working context about once an hour when the conversation is mostly in threads; thread activity now keeps it from being reset
  • [Claude Tag] Fixed a thread that asked Claude to watch a pull request no longer hearing about CI failures, comments and reviews after Claude was restarted in that thread
  • [Claude Tag] Fixed deleting the first message of a thread Claude had already replied in not ending Claude's work there; it now stops, as it did when a message with no replies was deleted
  • [Claude Tag] Fixed Claude holding back a post because of an earlier instruction addressed to a different bot or assistant; only instructions addressed to Claude bind it, and it asks when unsure
  • [Claude Tag] Fixed the reply-mode card Claude posts on joining a busy channel saying it "sees a lot of automated posts" when the channel is only chatty or large; the card now names the real reason
  • [Claude Tag] Improved the Environment picker in Claude Tag admin settings: options are labeled Anthropic-hosted or self-hosted, with links to edit that environment or create one
  • [Code Review] Fixed a pull request in a repository reviewed once per PR sometimes getting no review when a commit arrived while its review was waiting to start; it now reviews the requested commit
  • [Code Review] Fixed Code Review occasionally posting the same findings two or three times when GitHub reported an error for a review it had in fact created
  • [Code Review] Fixed follow-up reviews re-posting a security finding a person had already resolved when a later push moved the lines it was anchored to
  • [Code Review] Fixed reopening a finished /ultrareview cloud session in the Claude app starting the whole review over again unprompted
  • Windows: Fixed PowerShell commands failing with "Exit code 1" and no output when the session's temp output path reaches 260 characters
View full changelog →
🚀
Quickstart Up & running in 10 min
💡
Tips & Tricks Quick wins & hidden features
📋
Full Changelog 30 releases
Cheatsheet Commands & tips
📦
All Releases Browse & filter
📡
RSS Feed Subscribe to updates

Stay in the Loop

Get notified when Claude Code ships new releases. No spam — just changelogs.