Follow Discord
Sweep 03 Nov 2026 · 22:27Z Build v2.1.318 536 read Stable v2.1.311 Latest v2.1.318 Next v2.1.318 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · claude-code

Claude Code changelog changedchangelog

Nearest release: v2.1.317, published an hour before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Upstream edited this page at 3 Nov 2026 01:30 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 3 Nov 2026 01:37 UTC.

Upstream edited
Recorded here
Lines+103added
Lines−0removed
From line 6 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits79to 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**2.1.317**
10 
11November 3, 2026
12 
13**Added**
14 
15* Added a warning to `/schedule` when a new cloud scheduled task gets connectors you did not ask for, with how to remove them
16* Added a check that asks before a web or shell tool call sends your account email address to the network
17* Added `onFailure: "block"` for Agent SDK hook callbacks, so a callback that fails blocks the action instead of letting it run
18* Added a notice in Claude Desktop's Code tab when your organization's remote managed settings haven't loaded for the session, and another once they do
19* Added a notice when auto mode's check has no answer for a subagent's tool call, which used to leave nothing in the main view
20* Added `anthropic.plan`, `anthropic.seat_type`, `anthropic.provider` and `anthropic.custom_base_url` to OTel metrics, events and spans
21* Added a cost report to the Claude apps gateway admin API, `GET /v1/organizations/analytics/cost`, for reading past spend over a date range in total, per developer, per day or per IdP group
22* Added a daily record of each developer's IdP groups on Claude apps gateways with `admin:` set, kept for `admin.identity_retention_days`, which the cost report groups by
23* Added `CLAUDE_CODE_DISABLE_NESTED_SESSION_ID`: set it to `1` on a self-hosted runner to have `claude -p` run inside a session use that session's ID and transcript, as in earlier versions
24* \[Cloud sessions] Added a link card to cloud sessions, so you can open or decline a link an MCP server asks you to visit instead of the request going unseen
25 
26**Changed**
27 
28* Changed SendMessage so a message to a running background agent arrives earlier: its running command moves to the background, without being stopped
29* Changed subagents and teammates on a different model from the main conversation to use that model's saved effort level or its default, instead of the session's effort level
30* Changed exit to skip the "Background work is running" prompt for plugin monitors
31* Changed the built-in `plugin-authoring` skill to offer once, after a mod you built works, to help share the mod
32* Removed the Read tool's "file unchanged since your last Read" stub: reading an unchanged file again returns its content
33* \[Cloud sessions] Changed the organization environment dialog in admin settings to the personal dialogs' short layout: each section opens from a row, and unsaved input asks before closing
34* \[Claude Tag] Changed newly pasted artifact links in Slack to show a simpler card with an Open button that opens the artifact in Claude, instead of Slack's side panel
35 
36**8 improvements**
37 
38* Improved the error shown on Microsoft Foundry when Azure credentials can't be loaded: it now says to check or refresh them, and reports as `cloud_credential_error`
39* Improved `/design-sync` to say up front when your design system has moved to Claude, and stop before building instead of failing at upload
40* Improved the startup error when a required Claude apps gateway can't be reached: it points to the network instead of a sign-in, and says when the gateway's TLS certificate can't be verified
41* Improved the "Resume this session with" hint shown at exit to repeat the flags you launched with (for example `--chrome --debug`) ahead of `--resume`
42* Improved how self-hosted runners recover from server errors: after a 5xx other than 501 or 529, a runner's next poll now opens a new connection instead of reusing the one that failed
43* Improved how self-hosted runner sessions recover from server errors: after a 5xx other than 501 or 529, a session now opens new connections instead of reusing the one that failed
44* Improved how self-hosted runner sessions recover when connections stop answering: after a heartbeat gets no answer, a session now opens new connections instead of trying each idle one in turn
45* Remote Control: Improved fork names when the app doesn't set one: a long name keeps its "(fork)" ending, and in sessions started with `claude remote-control` a fork of "Name (fork)" is "Name (fork 2)"
46 
47**62 bug fixes**
48 
49* Fixed project and local MCP servers disconnecting after the first turn in some Claude desktop sessions
50* Fixed auto mode failing every turn when an LLM gateway set as the base URL answers 403 or 422 to its server-side safety check (a 403 with an apiKeyHelper is unchanged)
51* Fixed `claude auth status` exiting before a slow token refresh was saved, which could sign you out on the next run
52* Fixed a project's `effortLevel` setting being ignored by sessions that an app starts ahead of time and then opens in the project, such as new sessions in the desktop app's Code tab
53* Fixed `claude --from-pr` reporting "No conversations found" in projects with many sessions when the linked session was older than the first page
54* Fixed the second of two simultaneous permission prompts showing no file path or command on claude.ai and the mobile apps
55* Fixed Remote Control and SDK hosts offering "don't ask again" on a mod's tool calls
56* Fixed session titles being lost in cloud and SDK sessions when a new message or Stop arrived while the title was generating
57* Fixed self-paced `/loop` wakeups sometimes not being scheduled when Claude left a field out of its request
58* Fixed auto mode in cloud sessions stopping for approval when the Artifact tool uploaded, wrote to a database or saved a file through the outputs folder
59* Fixed skills synced from claude.ai being lost or downloaded again every ten minutes when they can't be written to disk
60* Fixed `/schedule` leaving a cloud scheduled task's next run time and link out of its results after creating or updating it
61* Fixed screen readers speaking a running subagent's elapsed time and token count on every change in screen reader mode
62* Fixed a region or network block (HTTP 403) being shown as a sign-in failure; the error now explains the block
63* Fixed Claude saying a working claude.ai connector needed authorization or had failed in cloud sessions when a synced plugin included the same server
64* Fixed `claude -p` exiting 0 when a full disk or quota lost its transcript or \~/.claude.json writes; it now prints an error and, in text and json output, exits 1. Full NFS exports may be missed
65* Fixed edits to settings files made in the first second or so after launch not taking effect until a settings file changed again
66* Fixed old transcripts not being cleaned up on machines where some runs skip cleanup, such as runs using `--setting-sources`
67* Fixed deleted agent team inboxes being re-created by a teammate's late message
68* Fixed a re-created agent teammate being removed from its team by an earlier shutdown approval
69* Fixed stored scheduled tasks being impossible to list or delete after scheduled tasks were turned off
70* Fixed Claude deleting your most recently updated `/team-onboarding` guide when asked to delete one without naming which
71* Fixed Claude saying a `/team-onboarding` guide was deleted when the server refused the delete
72* Fixed the Claude apps gateway hiding Amazon Bedrock's "Input is too long." error, which left sessions failing every turn with "upstream rejected the request" instead of compacting
73* Fixed self-hosted runner sessions losing recent turns or the whole conversation when restarted while a plan waited for approval
74* Fixed "Prompt is too long" after automatic compaction in sessions whose very large CLAUDE.md changed since it was last sent
75* Fixed high memory use and slow startup in headless sessions with many plugins that register commands
76* Fixed stdio MCP servers receiving an empty `AWS_BEARER_TOKEN_BEDROCK` when their env config sets it to empty; the variable is now unset, so the server can use the machine's own AWS credentials
77* Fixed API requests failing with "unable to get local issuer certificate" behind some TLS-inspecting proxies after a root certificate renewal
78* Fixed very long conversations losing their earlier summary when compaction had to shorten its own request
79* Fixed a PDF's own metadata being able to make Read and @-mentions under-count its pages
80* Fixed `DISABLE_PROMPT_CACHING_OPUS` and `DISABLE_PROMPT_CACHING_SONNET` having no effect on `[1m]`, other-region and undated spellings of the default model
81* Fixed `/artifacts` and the Artifact tool's shared list showing no shared artifacts when you have 200 or more of your own
82* Fixed Claude treating partial Grep and Glob results as complete when a search hit its time limit
83* Fixed OpenTelemetry exports to an `https://` endpoint through a proxy never being sent when they started while another export was still in progress
84* Fixed a flood of connection attempts to a proxy that blocks (HTTP 403) OpenTelemetry exports to an `http://` endpoint
85* Fixed OpenTelemetry exports hanging indefinitely behind a proxy that never answers; they now time out after 10 seconds, or `OTEL_EXPORTER_OTLP_TIMEOUT` up to 30 seconds
86* Fixed resumed sessions telling Claude again about a file change it already knew about
87* Fixed Claude sometimes not using a built-in tool in a resumed session after an earlier call failed because the tool was switched off
88* Fixed `/remote-control` answering "Unknown command" instead of saying that Remote Control is turned off by the `disableRemoteControl` setting
89* Fixed agent team teammates in tmux or iTerm2 panes starting in auto mode when the lead session was in manual mode
90* Fixed a background session sometimes losing a just-made change of permission mode when it was upgraded or retired
91* Fixed Ctrl+C stopping all running background agents when pressed to clear typed text at the prompt
92* Fixed /feedback showing "Enter to confirm" while a report is being sent
93* Fixed child processes of a stopped shell command sometimes being sent SIGTERM twice, which could make some programs skip their cleanup
94* Fixed `claude -p` run inside a cloud or self-hosted runner session sharing that session's ID: it wrote into the session's transcript, and a restart could resume the wrong conversation
95* Fixed `claude -p` run inside a cloud or self-hosted runner session generating a title of its own and sending it to that session
96* Windows: Fixed every tool call being refused on some volumes where the native path lookup fails; the working-directory check now compares the folder's identity instead
97* Windows: Fixed the session scratchpad and other temporary paths growing with your project's path length in sessions not started by Claude Desktop, which made repositories cloned into them hit the 260-character path limit
98* Gateway: Fixed the status line and `/usage` showing a developer's own spend limit as 100% used after their group's pooled budget ran out
99* Self-hosted runner: Fixed Claude not seeing the interrupted tool call when a session moves to a new runner and the turn is older than `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS`
100* Self-hosted runner: Fixed an MCP server that was switched off coming back on after the session moved to a new machine, when the session service had refused to save the switch
101* \[VSCode] Fixed forked conversations dropping messages: only one of the tool calls Claude ran in parallel was kept, and the last messages a compaction kept were lost, which could leave Claude's answer without the question it answered
102* \[VSCode] Fixed a message being lost when Claude did not finish starting in time: the extension now starts Claude once more before showing the error
103* \[VSCode] Fixed the sign-in screen opening when a request is blocked for its region or network
104* \[VSCode] Fixed the Account panel showing the plan name with a lower-cased second word
105* \[VSCode] Fixed file links in a Claude tab opening on top of the chat instead of in another editor group
106* \[VSCode] Fixed attachment chips, menus, banners and dialogs in the Claude panel staying small when `chat.fontSize` is raised
107* \[VSCode] Fixed `ultrathink` not raising effort for its turn or showing its rainbow when telemetry is off
108* \[Cloud sessions] Fixed adding a network secret for a host that already has one silently replacing it; the Add secret form now refuses and points you to the existing secret
109* \[Cloud sessions] Fixed new scheduled tasks ignoring your organization's default environment: the form now starts on the one an admin chose instead of the Anthropic-hosted default
110* \[Remote Control] Fixed the next message to an idle session going unanswered after you restart `claude remote-control`, when you sent it within a minute of your previous message
111 
9112**2.1.316**
10113 
11114October 31, 2026
from line 2137
20342137* Improved `/skill` names typed mid-message: Claude is now told they are skills, including `disable-model-invocation` ones
20352138* Improved the contrast of the prompt input border in light themes and of the ❯ before your earlier messages
20362139* Improved delivery of files Claude sends from cloud sessions and Remote Control: an upload that fails on a timeout, a network error or a 502, 503 or 504 is now retried once
2037* Improved what Claude says when a file cannot be sent for a reason that may be temporary: it now mentions that you can ask for the file again in a few minutes
2038* Improved the prompt for a held message from another session to show the message between dashed lines, matching other permission prompts
2039* Improved MCP and other tool permission prompts to show the tool call between dashed lines, matching file edit prompts
2040* Improved MCP startup in headless mode: a remote server whose first connect fails transiently is now retried without waiting for the slowest server to finish connecting
2041* Improved files Claude sends from a remote session: large files now stream from disk instead of being read into memory, and a file over the size limit is refused with the server's limit named
2042* Improved the explanation Claude gives when the server refuses a file it sends from a Remote Control or cloud session, such as an oversized image
2043* Improved handling of large MCP tool results: less memory, smaller session files, and no extra upload to count tokens for results far over the limit
2044* Windows: Improved Bash tool speed by removing a subshell that ran before every command
2045* \[VSCode] Improved the Manage plugins dialog: a failed marketplace add, remove or refresh now says what went wrong
2046* \[Claude Tag] Improved Claude's task list in long Slack threads: background work no longer reposts it as a new message on its own, so people following the thread aren't notified
2047* \[Code Review] Improved the failed-review card on a pull request whose conversation is locked: it now says the lock blocked the review and that nothing was posted or charged
2048 
2049**67 bug fixes**
2050 
2051* Fixed fast mode staying off in remote sessions owned by an agent with no user account, even when the organization allows it
2052* Fixed Remote Control not receiving messages for minutes at a time when a reconnect request got no response; it now gives up after 30 seconds and retries
2053* Fixed hooks configured with `asyncRewake` waking Claude over and over with "found issues" notifications when the hook's script file is missing; the broken hook is now reported once
2054* Fixed tool heartbeats not reaching SDK hosts while the model's response stream was stalled with no data arriving
2055* Fixed Bedrock and Vertex startup model checks ignoring an enforced `availableModels` list, which could collapse `/model` to one Opus row
2056* Fixed the Claude in Chrome browser picker showing a JSON parse error when Chrome could not be reached
2057* Fixed picking Fable in `/model` on a claude.ai login saving the current version's id, so your saved default now follows the newest Fable like Opus and Sonnet do
2058* Fixed switching between Opus 5.5 and Sonnet 5.5 (`/model`, `opusplan`) rewriting earlier MCP tool announcements, which could drop earlier extended thinking
2059* Fixed Amazon Bedrock Guardrails blocks that arrive mid-response ending the turn with an API error instead of the guardrail's message when the reply began with thinking
2060* Fixed a dangerous `rm` (such as one on `/` or the home directory) losing its always-ask safeguard when the same command also redirected output to a `~` or wildcard path
2061* Fixed `claude -p` and SDK sessions repeating a model fallback on every later message after the model was switched while a reply was running
2062* Fixed a folder's CLAUDE.md being attached a second time after resuming a session or after a compaction
2063* Fixed background sessions that could not be reopened from `claude agents` after the agent exited and removed the worktree the session was started in
2064* Fixed `/advisor` pairing checks: Sonnet 5.5 can now advise Opus 4.7 and 4.8, and advisors the API would refuse are flagged up front instead of being silently dropped
2065* Fixed Bash permission prompts showing internal parser names such as "Contains simple\_expansion" instead of a plain explanation
2066* Fixed a cause of fullscreen sessions on slow or busy machines exiting with "Claude Code exited after an unrecoverable interface error" while a scroll key was held in a long conversation
2067* Fixed organization per-tool permission ceilings being silently dropped for an MCP tool named `__proto__`
2068* Fixed Claude being told to page large MCP results saved as JSON with Read's offset and limit, which cannot split one long line
2069* Fixed the commit attribution reminder being delivered inside a tool result after a compaction
2070* Fixed screen reader mode leaving the cursor away from the typed text in search boxes (such as /resume and /permissions) and sign-in code fields
2071* Fixed screen reader mode refusing Enter with nothing typed on /rewind's summarize options, whose added context is optional
2072* Fixed screen reader mode showing a "Tab to amend" hint on approval prompts, where Tab does nothing
2073* Fixed screen reader mode listing arrow keys that do nothing in /permissions and /mcp, and saying "Select with numbers" in empty menus or while a search box has the keys
2074* Fixed screen reader mode leaving out the changed lines in file edit approval prompts and other diffs
2075* Fixed screen reader mode sending the `claude --teleport` progress screen, and an MCP form field while it is being checked, to the screen reader again on every spinner frame
2076* Fixed `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` not removing the structured-output format from session-title and prompt-hook requests, which Bedrock-backed gateways reject
2077* Fixed screen reader mode leaving out the top lines of a second approval prompt, a changed /config row or the rejected-plan line when the previous screen was taller than the terminal window
2078* Fixed `--include-partial-messages` sending a cut-short reply's `message_stop` late or never, so apps could show the reply as still in progress
2079* Fixed `claude agents` sometimes not showing the permission prompt a background session is waiting on
2080* Fixed `/ultrareview` giving advice about `.git/info/attributes` when the upload stops on a committed `.gitattributes` it cannot read, such as one saved as UTF-16
2081* Fixed `claude remote-control` failing to register behind an HTTP proxy with a misleading "Check your organization permissions" error (anthropics/claude-code#97352)
2082* Fixed sandboxed Bash commands on Linux inheriting an open handle on the Claude Code executable
2083* Fixed the running-tool dot and three spinners still moving with the "Reduce motion" setting on, and /rewind's confirm screen updating its "ago" time while you type a note
2084* Fixed times in `claude agents` changing every second in screen reader mode; they now change at most every 10 seconds
2085* Fixed a revoked claude.ai login showing a generic `API Error: 401` instead of "OAuth token revoked"; in `-p` mode the error now starts with "Failed to authenticate"
2086* Fixed `/ultrareview` upload refusals advising you to copy a variable named by a repository's settings file into your own user settings
2087* Fixed `--output-format stream-json` and the SDK not streaming the turns of a `context: fork` skill run by typing `/<skill>` as the prompt, as they do for the Skill tool's fork
2088* Fixed /feedback and /bug: the pre-filled GitHub issue no longer includes your recent error messages, and the confirmation screen now lists them as part of the report
2089* Fixed `claude plugin marketplace add --sparse` and `git-subdir` plugin installs failing with "transport 'http' not allowed" when the repository is served over plain http
2090* Fixed cloud sessions sometimes losing the earlier conversation when the session restarted while it was being compacted
2091* Fixed a plugin reload that overlapped the startup `--plugin-url` download corrupting the session's cached copy of the plugin archive
2092* Fixed `/desktop` quoting partial output when opening Claude Desktop timed out or printed too much output; the error now names the cause
2093* Fixed an MCP connector tool call occasionally running twice, or the connector's calls failing until restart, when its server changed which MCP protocol version it supports
2094* Fixed SessionStart hooks from synced plugins not running in new cloud sessions
2095* Fixed the transcript's "N hooks ran" summary and the verbose debug log's matched-hooks count including Claude Code's internal callbacks, so one configured hook no longer shows as two
2096* Fixed files Claude sends from cloud and Remote Control sessions failing when the upload finished just after the 30-second timeout; it now waits 35 seconds
2097* Fixed repositories added mid-session in cloud and SDK sessions not loading their skills and plugins, and loading CLAUDE.md late, after Claude changed directory
2098* Fixed PNG, JPEG and WebP images over 8,000 pixels on a side failing to send from a remote session; Claude now sends a scaled-down copy
2099* Fixed messages sent from the Claude apps with 17 to 20 attached files delivering only the first 16
2100* Fixed headless sessions reporting an MCP server as needing authentication after one refused call, even though later calls succeed
2101* macOS: Fixed Remote Control sessions started with `claude remote-control` stopping mid-turn when the Mac went to idle sleep
2102* Windows: Fixed interactive `claude` hanging or crashing with "Raw mode is not supported" when its input is piped or redirected; it now says why and exits (use `-p` for piped input)
2103* Bedrock, Vertex, Mantle: Fixed model availability checks under `CLAUDE_CODE_SKIP_*_AUTH` sending a different `Authorization` header than real requests when `ANTHROPIC_CUSTOM_HEADERS` repeats it
2104* \[VSCode] Fixed settings dialogs blaming a timeout when Claude Code's reply was too large to confirm a save
2105* \[VSCode] Fixed reopening a cloud session that the side bar already brought to this machine opening it again in a new tab; the side bar is shown instead
2106* \[VSCode] Fixed the side bar's Web tab not listing cloud sessions started after the window loaded; a failed load now says "Remote server is not connected" instead of "No web sessions yet"
2107* \[VSCode] Fixed a tab restored after a reload starting a second Claude process on a conversation the side bar already has open; it now shows the "still open somewhere else" notice
2108* \[VSCode] Fixed tool-row file links, session-list links and two hints showing in plain text
2109* \[VSCode] Fixed a background agent's still-running command showing as failed once the main turn ended
2110* \[VSCode] Fixed a user's own `/usage` or `/context` command opening the extension's dialog instead of running when picked from the command menu
2111* \[VSCode] Fixed file links in the plan preview tab doing nothing when clicked; they now open the file like links in chat replies
2112* \[VSCode] Fixed opening a tool's input or output in an editor tab failing with "Timeout waiting after 1000ms" on remote hosts such as WSL when the tab is slow to appear
2113* \[Cloud sessions] Fixed occasional failures to fetch from or push to GitHub when GitHub briefly refused a newly issued access token
2114* \[Claude Tag] Fixed Claude posting a failure warning, such as a spend limit notice, in a Slack thread when a background event like GitHub activity woke it and nobody was waiting on a reply
2115* \[Claude Tag] Fixed Claude Tag's spend limits page in admin settings leaving out recently created and private channels in organizations with many channels
2116* \[Code Review] Fixed finding comments and their "Why this was flagged" text stopping mid-sentence; they now end on a complete sentence
2117* \[Code Review] Fixed Code Review skipping a pull request after a new push when its review had failed twice on the previous commit; it now reviews the latest commit
2118 
2119**2.1.286**
2120 
2121September 30, 2026
2122 
2123**Added**
2124 
2125* Added a count such as "2 of 5" to the permission prompt when several permission requests stack up
2126* Added mouse support for the "N more" rows of lists in fullscreen mode: click one to jump to that end of the list, with hover and pressed states
2127* \[VSCode] Added bookmarks: save Claude's responses and keep them in view in a Bookmarks side panel
2128* \[VSCode] Added the questions Claude asks and your answers to the conversation: after you answer a question card, a Questions row shows each question with your picks
2129* \[VSCode] Added option previews to question cards in the chat panel: the highlighted choice's mockup or snippet shows beside or under the options
2130* \[VSCode] Added rows under a message that open to the terminal output, browser tab, browser instructions and selected code sent with it
2131* \[Claude Tag] Added an Add channel button to Claude Tag's spend limits page in admin settings, so a limit can be set on any channel, including a private one, from its channel ID or Slack link
2132 
2133**Changed**
2134 
2135* Changed prompt
2140* Improved what Claude says when a file cannot be sent for a reason that may be temporary: it now mentions that you can ask for t
Feedback