Capture
One read of Claude Code CLI
1 pages moved out of 191 read.
changelog Changed · +67 / -0 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
Run `claude --version` to check your installed version. +<Update label="2.1.245" description="August 25, 2026"> + * Fixed a crash on startup on Linux distributions that ship glibc 2.44 (for example Arch Linux, CachyOS and Fedora Rawhide) +</Update> + +<Update label="2.1.243" description="August 25, 2026"> + * Added a Loops breakdown to `/usage`: per-loop run count, total tokens, tokens per run, and last run, so runaway or chatty `/loop` tasks are easy to spot + * Added `modelPicker` setting: curate the `/model` picker with an ordered, labeled list of models (any id spelling, including Vertex/Bedrock ids), appended to or replacing the built-in lineup + * Added `promptCacheTtl` and `subagentPromptCacheTtl` settings so API-key and cloud-provider users can keep a 1-hour prompt cache on the main conversation while subagents stay at 5 minutes + * Added `modelPricing` managed setting so an organization's contracted per-model rates and discount multiplier are used for `/cost`, the status line, and telemetry cost figures instead of list price + * Added a keyless sign-in under `/login` → Anthropic Console: "Sign in with your Console account" (recommended) alongside creating an API key, so organizations that don't allow API keys can sign in + * Added a `Skipped sources` line to `/status` that lists managed settings sources (for example `managed-settings.json`) present but not applied because a higher-precedence managed source is active + * Added a `managed` marker in `/mcp` and `/plugins` on claude.ai connectors whose authentication is managed by your organization + * Added a tip pointing claude.ai users who haven't connected GitHub for Claude Code on the web to `/web-setup` + * Added a `/status` line showing whether GitHub is connected for Claude Code on the web (Pro/Max), pointing to `/web-setup` when it isn't + * Added the model (and effort level) each subagent ran on to `/tasks` and the agent detail dialogs + * Fixed remote MCP servers in non-interactive (`-p`) and SDK sessions never recovering after a dropped connection; they now reconnect automatically or report as failed + * Fixed MCP server sign-in started from the desktop app failing with "Invalid redirect URI" on servers that support client ID metadata documents (for example Linear) + * Fixed auto mode staying unavailable at startup when a temporary server-side disable was cached and later flag fetches failed + * Fixed auto mode tool calls being denied as "temporarily unavailable" after about a minute of waiting when the API was briefly overloaded and asked the client to retry + * Fixed the `/model` picker silently ignoring an Ultracode selection; picking Ultracode now applies it to the current session + * Fixed `/resume` only listing the 50 most recent sessions; the picker now loads more as you scroll + * Fixed cloud sessions resuming after a mid-turn restart with a pending hook or background-task notification re-sent as the prompt instead of the normal continuation message + * Fixed cross-session messaging silently turning off inside user namespaces and rootless containers after the 2.1.232 socket-directory hardening + * Fixed text that hangs outside its container (for example the sign-in URL in `/login`) losing its leading columns when another part of the screen repaints + * Fixed `spellcheck` not underlining a misspelled word typed directly after an emoji + * Fixed background subagents not waking when their last background Bash task completes + * Fixed sessions going silent for 10+ minutes when the Anthropic API never starts a response: the request now times out after \~3 minutes, retries once, then shows `API Error: No response from API` + * Fixed auth, model-availability, and other client-generated error messages rendering like model output instead of as error lines + * Fixed workload identity federation in CI: processes in one job share the exchanged token instead of re-exchanging the single-use token; a rejected exchange fails fast with the server's message + * Fixed server-managed `companyAnnouncements` not showing at startup in a session that began with signing in (for example the first launch after `/logout`) + * Fixed hook `if` conditions like `Bash(cat *)` firing on unrelated Bash commands when the command contained `$()` or backtick command substitution followed by more arguments + * Fixed plugin dependencies declared with a `marketplace` field never resolving when both plugins are loaded together via `--plugin-dir` + * Fixed `/reload-plugins` keeping the LSP tool after the last LSP plugin is disabled; it now also warns before an LSP plugin change that would re-read the conversation + * Fixed `--agents` silently ignoring invalid JSON or invalid agent definitions; it now exits with a clear error, like `--mcp-config` + * Fixed `/status` showing "Found invalid entries in: ." with no filename when `~/.claude.json` has an invalid MCP server entry + * Fixed `/clear` removing the `/rename` session name from the prompt bar even though the name was kept for the new session + * Fixed Ctrl+R history search and up-arrow history breaking when `~/.claude/history.jsonl` contains a malformed entry + * Fixed Ctrl+\[ not leaving vim INSERT mode in terminals that encode modified keys (modifyOtherKeys / kitty protocol) + * Fixed the local IDE connection being routed through `HTTPS_PROXY` (and sometimes failing) when `localhost` was listed in `NO_PROXY` but not lowercase `no_proxy`; both casings are now honored + * Fixed sandbox network-violation details being dropped from the Bash tool result when the blocked command still exited 0 (for example `curl` printing the proxy's 403 page) + * Fixed the status line `rate_limits` fields and `/usage` still showing a rate-limit window's pre-reset usage percentage after the window reset while the session was idle + * Fixed `claude --teleport <session>` exiting on uncommitted changes instead of offering to stash them and continue, as the session picker already does + * Fixed `/web-setup` repeatedly asking you to log in when an older GitHub CLI (without `gh auth token`) was already authenticated + * Fixed Claude in Chrome losing its connection to Claude Code after an auto-update cleaned up the version it was set up with; the native host now launches via the stable `claude` launcher + * \[VSCode] Fixed sessions started before feature flags were first fetched (for example right after install) opening in the default permission mode instead of auto mode or your configured default mode + * \[VSCode] Fixed Focus view sections you expanded collapsing on their own during subagent tool activity + * Improved startup time: sandbox and MCP bring-up no longer block the first frame, bare launches skip subcommand registration, and workflow discovery, settings, and trust-store work is cheaper + * Improved native install and auto-update download size: the binary is now zstd-compressed (about 75 MB instead of 340 MB on Linux x64) + * Improved attribution of usage telemetry to your organization for sessions that authenticate with `ANTHROPIC_AUTH_TOKEN` directly against the Anthropic API, so its data-handling settings apply + * Improved native binary size: about 2 MB smaller by storing the bundled skill and prompt text more compactly + * Improved memory usage of native builds: code is now loaded on demand instead of keeping the whole bundle resident (roughly 40–70 MB less memory per session) + * Improved peak memory usage in long-running sessions (the runtime now garbage-collects sooner as the heap grows) + * Improved `/login` over SSH: the sign-in URL appears immediately, pressing `c` reports how the URL was copied instead of always claiming success, and a hint explains how to select text in fullscreen + * Improved the error when effort `xhigh`/`max` is used with thinking turned off: it now names the level, the setting that disabled thinking, and `/effort high` as the fix + * Improved `/loop`: consecutive wake-ups where Claude has nothing to do now fold into a single line in the terminal instead of printing each one + * Changed the sandboxed Bash tool prompt to no longer list allowed network hosts, so Claude attempts requests (and you can approve new hosts) instead of assuming unlisted hosts are blocked + * Updated the `/model` picker and the bundled `claude-api` skill to show Sonnet 5's $2/$10 per Mtok pricing as its standard list price rather than a limited-time promo + * Changed computer use on macOS so clicking the desktop, Dock, or a Finder window requires granting Finder via the access dialog, like any other app + * Changed `/model`, `/fast`, and `/effort` to also run immediately instead of queueing until the turn ends on Bedrock, Vertex, and Foundry and when telemetry is disabled + * Fixed `claude remote-control` exiting and stranding attached Remote Control sessions when the server drops its environment mid-session; it now recovers + * Fixed Remote Control sessions served by `claude remote-control` sometimes getting stuck after it was stopped and restarted, for Team and Enterprise members without an admin or owner role + * Changed the cross-session messaging inbox socket to close connections that send no complete line within 30 seconds; scripts posting to it should connect once their data is ready + * Improved the notice when resuming a conversation whose Remote Control is held by another terminal: it now says sessions on other machines can't be seen from, or reach, this one + * \[VSCode] Improved history trimming in long sessions: older tool-activity rows are dropped first so your messages and Claude's replies stay visible + * \[VSCode] Improved attribution of the extension's own usage telemetry to your organization when you are signed in with a Claude account, so its data-handling settings apply +</Update> + <Update label="2.1.241" description="August 23, 2026"> * Bug fixes and reliability improvements </Update>
from line 2124
* Fixed switching permission mode while a tool-permission prompt is open not auto-dismissing the prompt when the new setting permits the tool * Fixed pressing Enter while a permission/dialog prompt is open also submitting text in the input box * Fixed hooks receiving a non-existent `transcript_path` after `EnterWorktree` switches the working directory - * Fixed markdown tables with cell wrapping falling back to the vertical key-value layout instead of rendering as a bordered grid (regression in 2.1.136) - * Fixed cancelled prompts being removed from Up-arrow history when auto-restored into the input box, avoiding duplicate entries - * Fixed prompts cancelled with Ctrl+C/Esc before any response being dropped from Up-arrow history - * Fixed Ctrl+C not interrupting a running turn while in vim INSERT/VISUAL mode - * Fixed alternative `chat:submit` keybindings (e.g. `meta+enter`, `ctrl+enter`) not working when `enter` is rebound to `chat:newline` - * Fixed prompt suggestions being silently disabled when an output style was configured - * Fixed `spinnerVerbs` setting not being honored in turn-completion messages - * Fixed AskUserQuestion popup hiding the last line of preceding chat content - * Fixed Web Search status showing "Did 0 searches" when searches returned errors - * Fixed multi-line statusline output dropping or corrupting rows when any line exceeds terminal width - * Fixed light-ansi theme using invisible white for diff context lines on light backgrounds — now uses black - * Fixed error overlay dumping minified bundle source that hid the original error message - * Fixed pressing Enter after typing a feedback survey rating digit submitting it as a chat message instead of the rating - * Fixed pressing `x` on a selected subagent in the agent panel typing into the prompt instead of stopping the agent - * Fixed session title being derived from plugin monitor notifications before the user's first prompt - * Fixed "Allowed by PermissionRequest hook" repeating once per tool call under a collapsed read/search group - * Fixed `/tui` silently dropping running background shells and subagents — now refuses and asks to wait for them to finish - * Fixed welcome banner showing "API Usage Billing" on Bedrock, Vertex, Foundry, and other third-party providers — now shows the provider name - * Fixed `/mcp` server list not keeping the focused server visible in short terminals in fullscreen mode - * Fixed redaction in `/feedback` bundles producing invalid JSON for quoted values like session IDs - * Fixed desktop and third-party provider sessions incorrectly inheriting `apiKeyHelper`/`ANTHROPIC_AUTH_TOKEN` from host managed-settings - * Fixed early analytics events being silently dropped when fired before logger initialization - * Fixed `claude plugin install` failing for plugins whose marketplace `ref` no longer exists upstream when a `sha` is also pinned - * Fixed plugin details pane showing 0 MCP servers for plugins that declare them via `.mcp.json` - * Fixed plugin MCP servers with unset config variables showing a generic connection failure instead of a "config issue" message with a fix-it hint; malformed `.mcp.json` entries no longer drop other MCP servers - * Fixed MCP server configs using POSIX shell parameter expansions (e.g. `${var%pattern}`) being incorrectly flagged as missing environment variables - * Fixed MCP HTTP/SSE servers returning 403 on connect showing as "failed" instead of "needs auth" - * Fixed remote MCP servers disconnecting unnecessarily when the optional server-events stream failed to reconnect — tool calls continue over POST - * Fixed Remote Control MCP connectors all failing with 401 when the worker session token rotated mid-session - * Fixed Remote Control automatically re-enrolling a trusted device when the server rejects a stale token, instead of looping through `/login` - * Fixed a race where early OTel spans could be silently dropped in SDK/headless mode with beta tracing enabled - * Fixed custom `voice:pushToTalk` keybindings and `"space": null` unbinds being silently ignored - * Fixed Windows Alt+V image paste reporting "no image found" when the clipboard contains a screenshot - * Fixed SDK "Claude Code native binary not found" on Linux when both glibc and musl platform packages are installed - * Bedrock: `awsCredentialExport` now always runs when configured instead of being skipped when ambient AWS credentials resolve, fixing auth for cross-account access - * \[VSCode] Fixed in-chat mic showing no feedback when the microphone produced only silence — now shows "No audio detected" - * \[VSCode] Voice mode: the WSL error now suggests installing `sox libsox-fmt-pulse` for WSLg users - * `claude agents`: launching a session no longer fails when the pre-warmed background worker is unhealthy — now falls back to a fresh launch - * `claude agents` no longer shows empty placeholder sessions left over from backgrounding a fresh REPL, and shows onboarding text when entered via ← with no other agents - * Empty idle background sessions left over from `←` are now automatically retired by the daemon after 5 minutes -</Update> - -<Update label="2.1.140" description="May 12, 2026"> - * Improved Agent tool `subagent_type` matching to accept case- and separator-insensitive values (e.g. `"Code Reviewer"` resolves to `code-reviewer`) - * Updated agent color palette - * Fixed `/goal` silently hanging when `disableAllHooks` or `allowManagedHooksOnly` is set — now shows a clear message instead of an indicator that never resolves - * Fixed a regression in settings hot-reload where symlinked settings files caused misattributed change events and spurious `ConfigChange` hooks - * Fixed `claude --bg` failing with "connection dropped mid-request" when the background service was about to idle-exit - * Fixed background service startup failing on machines with enterprise endpoint security by allowing more time - * Fixed remote managed settings not retrying on 401 — now retries once with a force-refreshed token - * Fixed managed `extraKnownMarketplaces` auto-update policy not being persisted to `known_marketplaces.json` - * Fixed `/loop` scheduling redundant wakeups to poll for background tasks that already notify on completion - * Fixed a recurring event-loop stall on Windows when a missing executable (e.g. `gh`) triggered synchronous `where.exe` re-spawns on every check - * Fixed `Read` tool calls failing validation when `offset` is passed as a whitespace-padded or `+`-prefixed string - * Fixed native terminal cursor not staying at the input caret when the terminal loses focus - * Plugins now warn when a default component folder (e.g. `commands/`) is silently ignored because `plugin.json` sets the matching key. Shown in `/doctor`, `claude plugin list`, and `/plugin`. -</Update> - -<Update label="2.1.139" description="May 11, 2026"> - * Added agent view (Research Preview): a single list of every Claude Code session — running, blocked on you, or done. Run `claude agents` to get started. See [https://code.claude.com/docs/en/agent-view](https://code.claude.com/docs/en/agent-view) - * Added `/goal` command: set a completion condition and Claude keeps working across turns until it's met. Works in interactive, `-p`, and Remote Control. Shows live elapsed/turns/tokens as an overlay panel - * Added `/scroll-speed` command to tune mouse wheel scroll speed with a live preview - * Added `claude plugin details <name>` to show a plugin's component inventory and projected per-session token cost - * Added transcript view navigation: `?` for keyboard shortcuts, `{`/`}` to jump between user prompts, `v` to toggle shortcut panel - * Added hook `args: string[]` field (exec form) that spawns the command directly without a shell, so path placeholders never need quoting - * Added hook `continueOnBlock` config option for `PostToolUse` — set to `true` to feed the hook's rejection reason back to Claude and continue the turn - * MCP stdio servers now receive `CLAUDE_PROJECT_DIR` in their environment, matching hooks. Plugin configs can reference `${CLAUDE_PROJECT_DIR}` in commands - * Compaction prompt now asks the model to preserve sensitive user instructions - * `/mcp` Reconnect now picks up `.mcp.json` edits without a restart, and shows the HTTP status and URL when reconnecting fails - * `/context all` per-skill token estimates now account for the model's tokenizer and show rounded values - * `claude plugin install <name>@<marketplace>` now auto-refreshes the marketplace and retries before reporting a plugin as not found - * `/plugin` installed-plugin details now show hook event names and MCP server names cleanly - * `/context` now shows the providing plugin's name for plugin-sourced skills - * Remote MCP server reconnect retry on transient failures is now enabled for all users - * API requests from subagents now carry `x-claude-code-agent-id` / `x-claude-code-parent-agent-id` headers, and `claude_code.llm_request` OTEL spans include `agent_id` / `parent_agent_id` attributes - * Remote Control, `/schedule`, claude.ai MCP connectors, and notification preferences are now disabled when `ANTHROPIC_API_KEY` / `apiKeyHelper` / `ANTHROPIC_AUTH_TOKEN` is set, even if a Claude.ai login also exists. Unset the API key to use these features - * Fixed a deadlock where expired credentials and the `forceRemoteSettingsRefresh` policy setting blocked `claude auth login`/`logout`/`status` with no way to recover - * Fixed `autoAllowBashIfSandboxed` not auto-approving commands with shell expansions like `$VAR` and `$(cmd)` - * Fixed a bug where a hook writing to the terminal could corrupt an on-screen interactive prompt; hooks now run without terminal access - * Fixed unbounded memory growth when an HTTP/SSE MCP server streams non-protocol data — response bodies now capped at 16 MB per SSE frame - * Fixed `Skill(name *)` permission rules — the wildcard form now works as a prefix match, matching `Bash(ls *)` behavior - * Fixed settings hot-reload not detecting edits to symlinked `~/.claude/settings.json` - * Fixed pl + * Fixed