mirror of
https://github.com/anthropics/claude-code.git
synced 2026-05-03 11:52:45 +00:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a243cad119 | ||
|
|
e512ec9918 | ||
|
|
a609cfbee3 | ||
|
|
1586204194 | ||
|
|
c128568da0 | ||
|
|
7e936457e4 |
12
.github/workflows/claude-dedupe-issues.yml
vendored
12
.github/workflows/claude-dedupe-issues.yml
vendored
@@ -38,10 +38,11 @@ jobs:
|
||||
if: always()
|
||||
env:
|
||||
STATSIG_API_KEY: ${{ secrets.STATSIG_API_KEY }}
|
||||
ISSUE_NUMBER: ${{ github.event.issue.number || inputs.issue_number }}
|
||||
REPO: ${{ github.repository }}
|
||||
TRIGGERED_BY: ${{ github.event_name }}
|
||||
WORKFLOW_RUN_ID: ${{ github.run_id }}
|
||||
run: |
|
||||
ISSUE_NUMBER=${{ github.event.issue.number || inputs.issue_number }}
|
||||
REPO=${{ github.repository }}
|
||||
|
||||
if [ -z "$STATSIG_API_KEY" ]; then
|
||||
echo "STATSIG_API_KEY not found, skipping Statsig logging"
|
||||
exit 0
|
||||
@@ -51,7 +52,8 @@ jobs:
|
||||
EVENT_PAYLOAD=$(jq -n \
|
||||
--arg issue_number "$ISSUE_NUMBER" \
|
||||
--arg repo "$REPO" \
|
||||
--arg triggered_by "${{ github.event_name }}" \
|
||||
--arg triggered_by "$TRIGGERED_BY" \
|
||||
--arg workflow_run_id "$WORKFLOW_RUN_ID" \
|
||||
'{
|
||||
events: [{
|
||||
eventName: "github_duplicate_comment_added",
|
||||
@@ -60,7 +62,7 @@ jobs:
|
||||
repository: $repo,
|
||||
issue_number: ($issue_number | tonumber),
|
||||
triggered_by: $triggered_by,
|
||||
workflow_run_id: "${{ github.run_id }}"
|
||||
workflow_run_id: $workflow_run_id
|
||||
},
|
||||
time: (now | floor | tostring)
|
||||
}]
|
||||
|
||||
103
CHANGELOG.md
103
CHANGELOG.md
@@ -1,5 +1,108 @@
|
||||
# Changelog
|
||||
|
||||
## 2.1.126
|
||||
|
||||
- The `/model` picker now lists models from your gateway's `/v1/models` endpoint when `ANTHROPIC_BASE_URL` points at an Anthropic-compatible gateway
|
||||
- - Added `claude project purge [path]` to delete all Claude Code state for a project (transcripts, tasks, file history, config entry) — supports `--dry-run`, `-y/--yes`, `-i/--interactive`, and `--all`
|
||||
- `--dangerously-skip-permissions` now bypasses prompts for writes to `.claude/`, `.git/`, `.vscode/`, shell config files, and other previously-protected paths (catastrophic removal commands still prompt as a safety net)
|
||||
- `claude auth login` now accepts the OAuth code pasted into the terminal when the browser callback can't reach localhost (WSL2, SSH, containers)
|
||||
- `claude_code.skill_activated` OpenTelemetry event now fires for user-typed slash commands and carries a new `invocation_trigger` attribute (`"user-slash"`, `"claude-proactive"`, or `"nested-skill"`)
|
||||
- Auto mode: the spinner now turns red when a permission check stalls, instead of looking like the tool is running
|
||||
- Host-managed deployments (`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`) no longer auto-disable analytics on Bedrock/Vertex/Foundry
|
||||
- Windows: PowerShell 7 installed via the Microsoft Store, MSI without PATH, or `.NET global tool` is now detected
|
||||
- Windows: when the PowerShell tool is enabled, Claude now treats PowerShell as the primary shell instead of defaulting to Bash
|
||||
- Read tool: removed the per-file malware-assessment reminder that could cause spurious refusals and "this is not malware" commentary on legacy models
|
||||
- **Security:** Fixed `allowManagedDomainsOnly` / `allowManagedReadPathsOnly` being ignored when a higher-priority managed-settings source lacked a `sandbox` block
|
||||
- Fixed pasting an image larger than 2000px breaking the session — images are now downscaled on paste, and oversized images in history are automatically removed and the request retried
|
||||
- Fixed showing the login screen for "OAuth not allowed for organization" errors — now shows guidance to contact your admin
|
||||
- Fixed OAuth login failing with timeout on slow or proxied connections, in IPv6-only devcontainers, and when the browser callback can't reach localhost
|
||||
- Fixed a rare race where a concurrent credential write could clear a valid OAuth refresh token
|
||||
- Fixed API retry countdown sticking at "0s" instead of counting down between attempts
|
||||
- Fixed "Stream idle timeout" error after waking Mac from sleep mid-request
|
||||
- Fixed background and remote sessions falsely aborting with "Stream idle timeout" during long model thinking pauses
|
||||
- Fixed a hang where the assistant could finish thinking but show no output after a run of empty turns
|
||||
- Fixed overly fast trackpad scrolling in Cursor and VS Code 1.92–1.104 integrated terminals
|
||||
- Fixed claude.ai MCP connectors being suppressed by manual servers stuck in needs-auth state
|
||||
- Fixed Japanese/Korean/Chinese text rendering as garbled characters on Windows in no-flicker mode
|
||||
- Fixed `Ctrl+L` clearing the prompt input — it now only forces a screen redraw, matching readline behavior
|
||||
- Fixed deferred tools (WebSearch, WebFetch, etc.) not being available to skills with `context: fork` and other subagents on their first turn
|
||||
- Fixed plan-mode tools being unavailable in interactive sessions launched with `--channels`
|
||||
- Fixed blank remote-session transcript when certain messaging tools are unavailable
|
||||
- Fixed `/plugin` Uninstall reporting "Enabled" instead of "Uninstalled"
|
||||
- Bounded total size of file-modified reminders when a linter touches many files at once
|
||||
- Fixed `/remote-control` retries appearing stuck on "connecting…" — each retry now shows its result, and unenrolled trusted-device failures are caught up-front
|
||||
- Fixed Remote Control failure notification not showing the error reason for initial connection failures
|
||||
- Windows: clipboard writes no longer expose copied content in process command-line arguments visible to EDR/SIEM telemetry; also fixes >22KB selections not reaching the clipboard
|
||||
- PowerShell tool: bare `--` (e.g. `git diff -- file`) is no longer mis-flagged as the `--%` stop-parsing token
|
||||
- Fixed Agent SDK hang when the model emits a malformed tool name in a parallel tool call batch
|
||||
|
||||
## 2.1.123
|
||||
|
||||
- Fixed OAuth authentication failing with a 401 retry loop when `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` is set
|
||||
|
||||
## 2.1.122
|
||||
|
||||
- Added `ANTHROPIC_BEDROCK_SERVICE_TIER` environment variable to select a Bedrock service tier (`default`, `flex`, or `priority`), sent as the `X-Amzn-Bedrock-Service-Tier` header
|
||||
- Pasting a PR URL into the `/resume` search box now finds the session that created that PR (GitHub, GitHub Enterprise, GitLab, and Bitbucket)
|
||||
- `/mcp` now shows claude.ai connectors hidden by a manually-added server with the same URL, with a hint to remove the duplicate
|
||||
- Clarified the `/mcp` message shown when an MCP server is still unauthorized after the browser sign-in flow
|
||||
- OpenTelemetry: numeric attributes on `api_request`/`api_error` log events are now emitted as numbers, not strings
|
||||
- OpenTelemetry: added `claude_code.at_mention` log event for `@`-mention resolution
|
||||
- Fixed `/branch` producing forks that fail with "tool_use ids were found without tool_result blocks" when the source session contained entries from rewound timelines
|
||||
- Fixed `/model` not showing the Effort option for Bedrock application inference profile ARNs, and those ARNs not receiving `output_config.effort`
|
||||
- Fixed Vertex AI / Bedrock returning `invalid_request_error: output_config: Extra inputs are not permitted` on session-title generation and other structured-output queries
|
||||
- Fixed Vertex AI `count_tokens` endpoint returning 400 errors for users behind proxy gateways
|
||||
- Fixed `spinnerTipsOverride.excludeDefault` not suppressing the time-based spinner tips
|
||||
- Fixed ToolSearch missing MCP tools that connected after session start in nonblocking mode
|
||||
- Fixed `!exit` / `!quit` in bash mode terminating the CLI instead of running as a shell command
|
||||
- Fixed images sent to newer models being resized to 2576px per side instead of the correct 2000px maximum
|
||||
- Fixed remote control session idle status redrawing twice per second, which could flood `tmux -CC` control pipes and pause the terminal
|
||||
- Fixed assistant messages appearing blank in some sessions due to a stale view preference
|
||||
- Fixed a malformed hooks entry in `settings.json` no longer invalidating the entire file
|
||||
- Voice mode: keybindings bound to Caps Lock now show an error since terminals don't deliver Caps Lock as a key event
|
||||
|
||||
## 2.1.121
|
||||
|
||||
- Added `alwaysLoad` option to MCP server config — when `true`, all tools from that server skip tool-search deferral and are always available
|
||||
- Added `claude plugin prune` to remove orphaned auto-installed plugin dependencies; `plugin uninstall --prune` cascades
|
||||
- Added a type-to-filter search box to `/skills` so you can find a skill in long lists without scrolling
|
||||
- PostToolUse hooks can now replace tool output for all tools via `hookSpecificOutput.updatedToolOutput` (previously MCP-only)
|
||||
- Fullscreen mode: typing into the prompt no longer jumps scroll back to the bottom after you've scrolled up to read earlier output
|
||||
- Dialogs that overflow the terminal are now scrollable with arrow keys, PgUp/PgDn, home/end, and mouse wheel in both fullscreen and non-fullscreen modes
|
||||
- Clicking any line of a long URL that wraps across rows in fullscreen mode now opens the full URL
|
||||
- SDK and `claude -p`: `CLAUDE_CODE_FORK_SUBAGENT=1` now works in non-interactive sessions
|
||||
- `--dangerously-skip-permissions` no longer prompts for writes to `.claude/skills/`, `.claude/agents/`, and `.claude/commands/`
|
||||
- `/terminal-setup` now enables iTerm2's "Applications in terminal may access clipboard" setting so `/copy` works, including from tmux
|
||||
- MCP servers that hit a transient error during startup now auto-retry up to 3 times instead of staying disconnected
|
||||
- The terminal tab session title is now generated in your configured `language` setting
|
||||
- Claude.ai connectors with the same upstream URL are now deduplicated instead of appearing as duplicates
|
||||
- Vertex AI: support X.509 certificate-based Workload Identity Federation (mTLS ADC)
|
||||
- Faster startup after upgrading: removed the Recent Activity panel from the release-notes splash
|
||||
- LSP diagnostic summaries now expand on click/ctrl+o and show the expand hint
|
||||
- SDK: `mcp_authenticate` now supports `redirectUri` for custom scheme completion and claude.ai connectors
|
||||
- OpenTelemetry: added `stop_reason`, `gen_ai.response.finish_reasons`, and `user_system_prompt` (gated behind `OTEL_LOG_USER_PROMPTS`) to LLM request spans
|
||||
- [VSCode] Voice dictation now respects the `accessibility.voice.speechLanguage` setting when no Claude Code language is configured
|
||||
- [VSCode] `/context` now opens a native token usage dialog
|
||||
- Fixed unbounded memory growth (multi-GB RSS) when processing many images in a session
|
||||
- Fixed `/usage` leaking up to ~2GB of memory on machines with large transcript histories
|
||||
- Fixed memory leak when long-running tools fail to emit a clear progress event
|
||||
- Fixed Bash tool becoming permanently unusable when the directory Claude was started in is deleted or moved mid-session
|
||||
- Fixed `--resume` crashing on startup in external builds
|
||||
- Fixed `--resume` failing on large sessions when a transcript line was corrupted by an unclean shutdown — the corrupt line is now skipped
|
||||
- Fixed `thinking.type.enabled is not supported` error when using Bedrock application inference profile ARNs
|
||||
- Fixed Microsoft 365 MCP OAuth failing with duplicate or unsupported `prompt` parameter
|
||||
- Fixed scrollback duplication when pressing Ctrl+L or triggering a redraw in non-fullscreen mode on tmux, GNOME Terminal, Windows Terminal, and Konsole
|
||||
- Fixed claude.ai MCP connectors silently disappearing when the connector-list fetch hits a transient auth error at startup
|
||||
- Fixed "Always allow" rules for built-in tools in remote sessions not surviving worker restarts
|
||||
- Fixed `NO_PROXY` not being respected for all HTTP clients when set via `managed-settings.json` under the native build
|
||||
- Fixed managed settings approval prompt exiting the session even when accepted — now applies settings and continues
|
||||
- Fixed `/usage` returning "rate limited" after a stale OAuth token — now refreshes automatically
|
||||
- Fixed invalid legacy enum values in `settings.json` invalidating the entire settings file
|
||||
- Fixed `/usage` dialog content being clipped when no-flicker mode is off
|
||||
- Fixed `/focus` showing "Unknown command" when the fullscreen renderer is off — now explains how to enable it
|
||||
- Fixed embedded grep/find/rg shell wrappers failing when the running binary is deleted mid-session — now falls back to installed tools
|
||||
- Reduced peak file descriptor usage during `find` in the Bash tool on large directory trees
|
||||
|
||||
## 2.1.120
|
||||
|
||||
- Windows: Git for Windows (Git Bash) is no longer required — when absent, Claude Code uses PowerShell as the shell tool
|
||||
|
||||
Reference in New Issue
Block a user