mirror of
https://github.com/anthropics/claude-code.git
synced 2026-08-03 20:23:29 +00:00
Compare commits
3 Commits
v2.1.84
...
changelog-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
db16f798bd | ||
|
|
2923bc87d1 | ||
|
|
f75b6138ef |
66
CHANGELOG.md
66
CHANGELOG.md
@@ -1,9 +1,71 @@
|
||||
# Changelog
|
||||
|
||||
## 2.1.86
|
||||
|
||||
- Added `X-Claude-Code-Session-Id` header to API requests so proxies can aggregate requests by session without parsing the body
|
||||
- Added `.jj` and `.sl` to VCS directory exclusion lists so Grep and file autocomplete don't descend into Jujutsu or Sapling metadata
|
||||
- Fixed `--resume` failing with "tool_use ids were found without tool_result blocks" on sessions created before v2.1.85
|
||||
- Fixed Write/Edit/Read failing on files outside the project root (e.g., `~/.claude/CLAUDE.md`) when conditional skills or rules are configured
|
||||
- Fixed unnecessary config disk writes on every skill invocation that could cause performance issues and config corruption on Windows
|
||||
- Fixed potential out-of-memory crash when using `/feedback` on very long sessions with large transcript files
|
||||
- Fixed `--bare` mode dropping MCP tools in interactive sessions and silently discarding messages enqueued mid-turn
|
||||
- Fixed the `c` shortcut copying only ~20 characters of the OAuth login URL instead of the full URL
|
||||
- Fixed masked input (e.g., OAuth code paste) leaking the start of the token when wrapping across multiple lines on narrow terminals
|
||||
- Fixed official marketplace plugin scripts failing with "Permission denied" on macOS/Linux since v2.1.83
|
||||
- Fixed statusline showing another session's model when running multiple Claude Code instances and using `/model` in one of them
|
||||
- Fixed scroll not following new messages after wheel scroll or click-to-select at the bottom of a long conversation
|
||||
- Fixed `/plugin` uninstall dialog: pressing `n` now correctly uninstalls the plugin while preserving its data directory
|
||||
- Fixed a regression where pressing Enter after clicking could leave the transcript blank until the response arrived
|
||||
- Fixed `ultrathink` hint lingering after deleting the keyword
|
||||
- Fixed memory growth in long sessions from markdown/highlight render caches retaining full content strings
|
||||
- Reduced startup event-loop stalls when many claude.ai MCP connectors are configured (macOS keychain cache extended from 5s to 30s)
|
||||
- Reduced token overhead when mentioning files with `@` — raw string content no longer JSON-escaped
|
||||
- Improved prompt cache hit rate for Bedrock, Vertex, and Foundry users by removing dynamic content from tool descriptions
|
||||
- Memory filenames in the "Saved N memories" notice now highlight on hover and open on click
|
||||
- Skill descriptions in the `/skills` listing are now capped at 250 characters, and the overall listing budget reduced from 2% to 1% of the context window (fallback 16,000 → 8,000 characters). Set `SLASH_COMMAND_TOOL_CHAR_BUDGET` to override if you see excluded skills in `/context`
|
||||
- Changed `/skills` menu to sort alphabetically for easier scanning
|
||||
- Auto mode now shows "unavailable for your plan" when disabled by plan restrictions (was "temporarily unavailable")
|
||||
- [VSCode] Fixed extension incorrectly showing "Not responding" during long-running operations
|
||||
- [VSCode] Fixed extension defaulting Max plan users to Sonnet after the OAuth token refreshes (8 hours after login)
|
||||
- Read tool now uses compact line-number format and deduplicates unchanged re-reads, reducing token usage
|
||||
|
||||
## 2.1.85
|
||||
|
||||
- Added `CLAUDE_CODE_MCP_SERVER_NAME` and `CLAUDE_CODE_MCP_SERVER_URL` environment variables to MCP `headersHelper` scripts, allowing one helper to serve multiple servers
|
||||
- Added conditional `if` field for hooks using permission rule syntax (e.g., `Bash(git *)`) to filter when they run, reducing process spawning overhead
|
||||
- Added timestamp markers in transcripts when scheduled tasks (`/loop`, `CronCreate`) fire
|
||||
- Added trailing space after `[Image #N]` placeholder when pasting images
|
||||
- Deep link queries (`claude-cli://open?q=…`) now support up to 5,000 characters, with a "scroll to review" warning for long pre-filled prompts
|
||||
- MCP OAuth now follows RFC 9728 Protected Resource Metadata discovery to find the authorization server
|
||||
- Plugins blocked by organization policy (`managed-settings.json`) can no longer be installed or enabled, and are hidden from marketplace views
|
||||
- PreToolUse hooks can now satisfy `AskUserQuestion` by returning `updatedInput` alongside `permissionDecision: "allow"`, enabling headless integrations that collect answers via their own UI
|
||||
- `tool_parameters` in OpenTelemetry tool_result events are now gated behind `OTEL_LOG_TOOL_DETAILS=1`
|
||||
- Fixed `/compact` failing with "context exceeded" when the conversation has grown too large for the compact request itself to fit
|
||||
- Fixed `/plugin enable` and `/plugin disable` failing when a plugin's install location differs from where it's declared in settings
|
||||
- Fixed `--worktree` exiting with an error in non-git repositories before the `WorktreeCreate` hook could run
|
||||
- Fixed `deniedMcpServers` setting not blocking claude.ai MCP servers
|
||||
- Fixed `switch_display` in the computer-use tool returning "not available in this session" on multi-monitor setups
|
||||
- Fixed crash when `OTEL_LOGS_EXPORTER`, `OTEL_METRICS_EXPORTER`, or `OTEL_TRACES_EXPORTER` is set to `none`
|
||||
- Fixed diff syntax highlighting not working in non-native builds
|
||||
- Fixed MCP step-up authorization failing when a refresh token exists — servers requesting elevated scopes via `403 insufficient_scope` now correctly trigger the re-authorization flow
|
||||
- Fixed memory leak in remote sessions when a streaming response is interrupted
|
||||
- Fixed persistent ECONNRESET errors during edge connection churn by using a fresh TCP connection on retry
|
||||
- Fixed prompts getting stuck in the queue after running certain slash commands, with up-arrow unable to retrieve them
|
||||
- Fixed Python Agent SDK: `type:'sdk'` MCP servers passed via `--mcp-config` are no longer dropped during startup
|
||||
- Fixed raw key sequences appearing in the prompt when running over SSH or in the VS Code integrated terminal
|
||||
- Fixed Remote Control session status staying stuck on "Requires Action" after a permission is resolved
|
||||
- Fixed shift+enter and meta+enter being intercepted by typeahead suggestions instead of inserting newlines
|
||||
- Fixed stale content bleeding through when scrolling up during streaming
|
||||
- Fixed terminal left in enhanced keyboard mode after exit in Ghostty, Kitty, WezTerm, and other terminals supporting the Kitty keyboard protocol — Ctrl+C and Ctrl+D now work correctly after quitting
|
||||
- Improved @-mention file autocomplete performance on large repositories
|
||||
- Improved PowerShell dangerous command detection
|
||||
- Improved scroll performance with large transcripts by replacing WASM yoga-layout with a pure TypeScript implementation
|
||||
- Reduced UI stutter when compaction triggers on large sessions
|
||||
|
||||
## 2.1.84
|
||||
|
||||
- Added PowerShell tool for Windows as an opt-in preview. Learn more at https://code.claude.com/docs/en/tools-reference#powershell-tool
|
||||
- Added `ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTS` env vars to override effort/thinking capability detection for pinned default models for 3p (Bedrock, Vertex, Foundry), and `_MODEL_NAME`/`_DESCRIPTION` to customize the `/model` picker label
|
||||
- Added `ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL_SUPPORTED_CAPABILITIES` env vars to override effort/thinking capability detection for pinned default models for 3p (Bedrock, Vertex, Foundry), and `_MODEL_NAME`/`_DESCRIPTION` to customize the `/model` picker label
|
||||
- Added `CLAUDE_STREAM_IDLE_TIMEOUT_MS` env var to configure the streaming idle watchdog threshold (default 90s)
|
||||
- Added `TaskCreated` hook that fires when a task is created via `TaskCreate`
|
||||
- Added `WorktreeCreate` hook support for `type: "http"` — return the created worktree path via `hookSpecificOutput.worktreePath` in the response JSON
|
||||
@@ -21,7 +83,6 @@
|
||||
- Fixed up/down arrow keys being unresponsive when a footer item is focused
|
||||
- Fixed `Ctrl+U` (kill-to-line-start) being a no-op at line boundaries in multiline input, so repeated `Ctrl+U` now clears across lines
|
||||
- Fixed null-unbinding a default chord binding (e.g. `"ctrl+x ctrl+k": null`) still entering chord-wait mode instead of freeing the prefix key
|
||||
- Fixed mouse events inserting literal "mouse" text into transcript search input
|
||||
- Fixed workflow subagents failing with API 400 when the outer session uses `--json-schema` and the subagent also specifies a schema
|
||||
- Fixed missing background color behind certain emoji in user message bubbles on some terminals
|
||||
- Fixed the "allow Claude to edit its own settings for this session" permission option not sticking for users with `Edit(.claude)` allow rules
|
||||
@@ -50,7 +111,6 @@
|
||||
- Added `sandbox.failIfUnavailable` setting to exit with an error when sandbox is enabled but cannot start, instead of running unsandboxed
|
||||
- Added `disableDeepLinkRegistration` setting to prevent `claude-cli://` protocol handler registration
|
||||
- Added `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1` to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers)
|
||||
- Added transcript search — press `/` in transcript mode (`Ctrl+O`) to search, `n`/`N` to step through matches
|
||||
- Added `Ctrl+X Ctrl+E` as an alias for opening the external editor (readline-native binding; `Ctrl+G` still works)
|
||||
- Pasted images now insert an `[Image #N]` chip at the cursor so you can reference them positionally in your prompt
|
||||
- Agents can now declare `initialPrompt` in frontmatter to auto-submit a first turn
|
||||
|
||||
Reference in New Issue
Block a user