Follow Discord
Sweep 22 Sep 2026 · 17:19Z Build v2.1.280 501 read Stable v2.1.267 Latest v2.1.280 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
One change · claude-code

Claude Code changelog changed

changelog

Nearest release: v2.1.265, published 2 hours before 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+53added
Lines−0removed
From line 6 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits40to 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.265" description="September 8, 2026">
10 * Added `user.email` and `user.groups` to the telemetry Claude Desktop and Cowork send through a Claude apps gateway, matching terminal sessions
11 * Added support for pointing `--plugin-dir` at a folder of plugins: each child folder with a manifest loads, and children added or removed while running are picked up
12 * Added a 1 GB cap on tool results saved to disk; the in-conversation preview says when a saved file was truncated
13 * Fixed resuming a foreground-spawned subagent changing its tool list and system prompt prefix, which broke prompt-cache reuse for that agent
14 * Fixed agent teammates and resumed subagents moving SubagentStart hook context and preloaded skills out of the prompt prefix on later turns, which broke prompt-cache reuse
15 * Fixed resume after the previous process died while a tool was running: the last prompt is no longer rewritten, and the interrupted tool call is kept and marked interrupted
16 * Fixed `/model opusplan[1m]` being rejected with "Model not found"
17 * Fixed syntax-highlighted code in permission prompts and messages sometimes omitting a character after a Ruby `?`, Erlang `$`, or Perl `$` sigil
18 * Fixed the fullscreen transcript jumping by one row whenever the slash-command or @-file suggestion list opened or closed
19 * Fixed a plugin path containing a backslash bypassing the symlink containment check on macOS and Linux
20 * Fixed plugin directories whose names begin with two dots being wrongly refused as outside the plugin root
21 * Fixed VS Code and SDK sessions occasionally requiring re-login when a session was closed while refreshing its token
22 * Fixed Remote Control sessions sending the end-of-turn signal before the reply's last message, which could show a reply as finished in the Claude app before its last part arrived
23 * Fixed background (`--bg`) sessions occasionally being retired mid-turn when a message arrived just before the idle timeout
24 * Fixed Claude Code's own git status and diff probes running clean filters configured by a nested repository inside the working tree
25 * Fixed the advisor tool and its instructions being re-decided per request from the request's model; the decision is now made once and announced in the conversation when it changes
26 * Fixed artifact publish accepting connector tool names the connector doesn't expose; the publish is now refused when none of the declared tools exist, and warned when only some don't
27 * Fixed `/add-dir <subdirectory>` refusing to load a subdirectory's agents when managed settings lock only skills to plugins, and promising agents when only agents are locked
28 * Fixed two-key keyboard shortcuts cancelling silently when the second key arrived more than a second later, as happens inside tmux; they now wait 3 seconds and show a notice when they time out
29 * Fixed forked skills (`context: fork`) not streaming their kickoff prompt and, with `--forward-subagent-text`, their text turns as progress events in stream-json
30 * Fixed a plugin's default component folder that the OS cannot check, such as a symlink loop, being silently skipped; it is now reported in `/plugin` with the error code
31 * Fixed the Claude apps gateway's OTLP telemetry relay pausing all forwarding to a collector for 30 seconds after it rejected a few payloads as malformed or too large
32 * Fixed `/plugin` Discover/Browse and `claude plugin list --json --available` showing no description or display name for marketplace plugins whose metadata lives only in their `plugin.json`
33 * Fixed `/login` showing "no gateway URL is configured" when re-run in a session that signed in to a Claude apps gateway set by managed settings
34 * Fixed `/model` claiming a model was "saved as your default" when the settings file couldn't be written; it now says the save failed and why
35 * Fixed `/clear` from Remote Control waiting on SessionStart hooks and on open terminal dialogs before completing
36 * Fixed the `/config` dialog changing height when switching between its tabs
37 * Fixed resuming a workflow run after its container restarted; a resume whose run journal is missing now fails with a clear error instead of rerunning every agent
38 * Fixed the `claude-api` skill's error-code reference: model access failures return 404 and unavailable beta headers return 400, not 403
39 * Fixed non-interactive sessions (`-p` with stream-json input, Agent SDK, cloud sessions) resetting the shell working directory at each new user message; a `cd` now persists across turns
40 * Fixed MCP servers configured as `http` that only speak the legacy HTTP+SSE transport never connecting; Claude Code now falls back to SSE as the MCP spec describes
41 * Fixed some claude.ai connectors in cloud sessions showing as needing authentication even though they are connected in claude.ai (servers that answer an unsupported request with HTTP 401)
42 * Fixed remote sessions keeping their sandbox container alive while a connector approval or sign-in link waits for you
43 * Fixed resumed sessions showing long model-facing recovery instructions in "background task didn't finish" notices instead of a short status line
44 * Windows: Fixed Read, Write and Edit refusing every file ("symlink resolution changed after permission was checked") when running inside an AppContainer or restricted-token sandbox
45 * Improved `--worktree` startup on large repositories: the new worktree is now checked out in parallel (git 2.32+)
46 * Improved `/workflows` agent detail: tool calls are marked running, failed or done, the subagent's task list is shown when it has one, and Enter unfolds the listed calls with their inputs and results
47 * Improved slash commands typed mid-prompt: matches now show in a list (Tab opens it outside fullscreen) instead of a single suggestion, and a plugin skill is now found by its bare name
48 * Improved remote MCP servers that need sign-in: Claude Code no longer registers an OAuth client with them until you actually authenticate
49 * Improved the time to resume long sessions that read many files
50 * Improved the error shown when an image over the size limits cannot be decoded: it now names the cause and how to fix it instead of only citing the limit
51 * Improved the Artifact tool's read of an artifact someone else wrote: the summary now treats the page as untrusted content and flags embedded instructions rather than relaying them
52 * Updated the `.claude` folder permission option to say what it actually allows: editing files in the project's `.claude` folder (or `~/.claude`) for the session
53 * Changed machines with `forceLoginGatewayUrl` in managed settings to be Claude apps gateway sessions from startup, like `forceLoginMethod: "gateway"`; a leftover claude.ai login or API key is not used
54 * Changed image processing to use the runtime's built-in image support; the CLI no longer extracts a native image module to the temp directory
55 * Changed plugin display metadata to prefer the marketplace entry over `plugin.json` on the Installed tab and `claude plugin details`, filling gaps from `plugin.json`
56 * Changed Claude apps gateway sessions to export OpenTelemetry directly to a collector the gateway's managed settings name in `OTEL_EXPORTER_OTLP_ENDPOINT`, instead of through the gateway's relay; sessions without a named collector still use the relay
57 * \[VSCode] Added automatic archiving of sessions inactive for a set period (new "Archive inactive sessions" setting, default 14 days)
58 * \[VSCode] Fixed the sidebar chat coming back blank after Reload Window or a restart when the conversation had been open for more than 10 minutes
59 * \[VSCode] Fixed the timeline dot sitting below the text on the "Remote Control is active" message
60</Update>
61 
962<Update label="2.1.263" description="September 6, 2026">
1063 * Bug fixes and reliability improvements
1164</Update>
from line 1972
19191972 * Fixed `open`, `osascript`, and browser-based auth flows failing with error -600 on macOS by adding the Apple Events entitlement
19201973 * Fixed a startup regression (\~120ms per launch in fresh environments, introduced in 2.1.169): the first prompt no longer waits for the managed-settings fetch when no MCP servers are configured
19211974 * Fixed startup blocking with a blank terminal for up to 15 seconds when the account settings fetch is slow on a degraded network
1922 * Fixed startup crash (`TypeError: Cannot read properties of null`) when `.claude.json` contains corrupted null project entries
1923 * Fixed macOS TUI freezing at session start (Ctrl+C unresponsive) when Spotlight is busy reindexing
1924 * Fixed long-running idle sessions losing their history when another Claude Code process ran the 30-day transcript cleanup
1925 * Fixed foreground subagents spawning unbounded nested chains; they now respect the same 5-level depth limit as background subagents
1926 * Fixed `/recap` and conversation forks using the previous model immediately after a model switch
1927 * Fixed subagent "Thinking" duration showing the parent agent's elapsed time instead of the subagent's own
1928 * Fixed subagents blocked on a nested agent showing a ticking elapsed time instead of "waiting" in the agent panel
1929 * Fixed the API retry indicator ("Retrying in 0s · attempt N/10") staying on screen after the retry succeeded
1930 * Fixed AWS `awsCredentialExport` credentials with a short remaining lifetime causing credential refreshes every minute, and now accepts the JSON shape from `aws configure export-credentials`
1931 * Fixed `claude mcp get`/`list` showing `✓ Connected` when tools/list fails; they now show `! Connected · tools fetch failed` with the error detail
1932 * Fixed `/remote-control` leaving a stale "connecting…" line; it now confirms in the transcript once connected
1933 * Fixed ExitWorktree refusing to remove a clean worktree with "Could not verify worktree state" when bare `git` cannot be resolved on Windows
1934 * Fixed settings changes (such as `/effort` or `/model`) failing with ENOENT when `~/.claude/settings.json` is a relative symlink under a symlinked `~/.claude`
1935 * Fixed IDE selection line numbers in context reminders being off by one (IntelliJ and VS Code)
1936 * Fixed Ctrl+C in fullscreen after a native terminal selection (modifier+drag) overwriting the clipboard with the app's prior selection
1937 * Fixed Ctrl+V showing "No image found in clipboard" instead of pasting when the clipboard contains text
1938 * Fixed agent creation failing with "EEXIST: file already exists" when the agents directory already exists (Windows/OneDrive)
1939 * Fixed AskUserQuestion preview content being cut off at the dialog edge instead of word-wrapping
1940 * Fixed AskUserQuestion multi-select questions silently dropping a typed "Other" free-text answer when submitting
1941 * Fixed `/stats` "Most active day" and daily token chart dates showing one day early in UTC-negative timezones
1942 * Fixed `/copy` and copy-on-select on Linux not detecting a clipboard utility installed after Claude Code started
1943 * Fixed tab-indented code rendering with incorrect indentation in the Write (create-file) preview
1944 * Fixed user prompts queued mid-turn not showing a full-width background highlight in the transcript
1945 * Fixed the activity spinner's pulse dwelling on the wrong glyph size in Ghostty
1946</Update>
1947 
1948<Update label="2.1.179" description="June 16, 2026">
1949 * Fixed mid-stream connection drops: partial responses are now preserved instead of showing a raw error, and the spinner no longer gets stuck at "running tool"
1950 * Fixed mouse-wheel scrolling in WSL2 under Windows Terminal and VS Code (regression in 2.1.172)
1951 * Fixed a sandbox `denyRead`/`allowRead` glob over a large directory tree making the Bash tool description enormous and the session unusable on Linux
1952 * Fixed the feedback survey capturing a single-digit reply as a session rating immediately after a turn completes
1953 * Fixed the welcome screen stacking multiple promotional banners — at most one promo now shows per session
1954 * Fixed Ctrl+O not showing the subagent's transcript when viewing a subagent
1955 * Fixed clicking the prompt input not returning focus from the subagent/footer panel
1956 * Fixed remote session background tasks appearing stuck as "still running" between turns
1957 * Improved plugin loading performance in remote sessions
1958</Update>
1959 
1960<Update label="2.1.178" description="June 15, 2026">
1961 * Agent teams: removed the `TeamCreate` and `TeamDelete` tools. With `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` set, every session now has one implicit team — spawn teammates directly with the Agent tool's `name` parameter, no setup step needed. The `team_name` parameter on the Agent tool is still accepted but ignored.
1962 * Added `Tool(param:value)` syntax for permission rules to match a tool's input parameters (with `*` wildcard), e.g. `Agent(model:opus)` to block Opus subagents
1963 * Skills in nested `.claude/skills` directories now load when working on files there; on a name clash, the nested skill appears as `<dir>:<name>` so both stay available
1964 * Nested `.claude/` directories: the agent, workflow, and output-style closest to the working directory now wins when names collide; project-scope workflow saves now target the closest existing `.claude/workflows/`
1965 * Improved auto mode: subagent spawns are now evaluated by the classifier before launch, closing a gap where a subagent could request a blocked action without review
1966 * Improved `/doctor` with consistent flat tree layout across all sections, clearer section status icons, and highlighted command names
1967 * Improved the skill listing truncation warning to show how many skill descriptions are affected
1968 * Changed the workflow prompt keyword to use a purple shimmer highlight and trigger only on explicit phrases like "run a workflow" or "workflow:", not on any mention of the word
1969 * Improved Remote Control error messages: connection failures now show a persistent red "/rc failed" indicator in the footer, and the "not yet enabled" error now explains whether it's a gate, a check failure, stale entitlement, or org policy
1970 * `/bug` now requires a description before submitting, and no longer uses model-refusal text as the GitHub issue title
1971 * Fixed a crash (out-of-memory) when the CLI inherits a stale websocket/OAuth file-descriptor environment variable from a parent process
1972 * Fixed Claude in Chrome silently failing to connect when the OAuth token belongs to a different account than the Claude Code login
1973 * Fixed nested `.claude/skills` skills with directory-qualified names being blocked by permission prompts in non-interactive runs
1974 * Fixed several subagent issues: viewing a subagent's transcript now shows tool results and live progress, messages sent while it finishes its turn are no longer dropped, and backgrounding a running subagent (ctrl+b) no longer restarts it from scratch
1975 * Fixed `claude agents` workers failing with `401 Invalid bearer token` when the daemon was started from a shell with a custom API gateway via `ANTHROPIC_BASE_URL` and `ANTHROPIC_AUTH_TOKEN`
1976 * Fixed compaction not honoring `--fallback-model`: compaction now falls back to the configured fallback model chain on overload or model-availability errors
1977 * Fixed model requests continuing to fail with auth errors after credentials were refreshed outside the session, due to a stale cached request configuration
1978 * Fixed background sessions created with `/bg` or `←←` after a turn finished showing "Working" forever in the agents list
1979 * Fixed Linux sandbox failing to start when `.claude/skills` or `.claude/hooks` is a symlink
1980 * Fixed `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1` preventing fresh marketplace installs from cloning
1981 * Fixed MCP server-level specs (`mcp__server`, `mcp__server__*`, `mcp__*`) in subagent `disallowedTools` being silently ignored
1982 * Fixed vim mode undo: `u` now steps through NORMAL/VISUAL-mode commands one at a time instead of merging commands in quick succession into a single undo step
1983 * Fixed statusline links with custom URI schemes (e.g. `vscode://`) not opening when clicked in `claude agents`
1984 * \[VSCode] Fixed pressing Esc to dismiss a CJK IME candidate window canceling the running Claude task
1985</Update>
1986 
1987<Update label
1975 * Fixed startup crash (`TypeError: Cannot read properties of null`) when `.claude.json` contains corrupted null pro
Feedback