# Claude Code v2.1.129 版本更新

- 来源：Claude Code：GitHub Releases（RSS）
- 作者：ashwin-ant
- 发布时间：2026-05-06 09:40
- AIHOT 分数：58
- AIHOT 标记：精选
- AIHOT 链接：https://aihot.virxact.com/items/cmotftjxd04wdslv7zwym23oh
- 原文链接：https://github.com/anthropics/claude-code/releases/tag/v2.1.129

## 精选理由

Claude Code 用户最烦的 session 消失、token 浪费和缓存降级问题这次都修了，还支持从 URL 加载插件，日常体验会顺滑不少。

## AI 摘要

Claude Code 发布 v2.1.129 版本，带来多项功能新增与问题修复。新增功能包括支持通过 `--plugin-url` 从 URL 获取插件压缩包、新增 `CLAUDE_CODE_FORCE_SYNC_OUTPUT` 环境变量以强制启用终端同步输出，以及为 Homebrew 或 WinGet 安装提供后台自动更新提示。功能调整方面，插件清单中的 `themes` 和 `monitors` 现在建议在 `"experimental"` 下声明；网关模型发现功能改为通过环境变量手动启用；Ctrl+R 历史记录选择器恢复为默认搜索所有项目的提示。此外，修复了约 20 项问题，涉及 `/clear` 命令、会话标题显示、外部编辑器切换、令牌浪费、OAuth 凭证刷新、缓存警告等多个方面。

## 正文

What's changed

Added --plugin-url <url> flag to fetch a plugin .zip archive from a URL for the current session

Added CLAUDE_CODE_FORCE_SYNC_OUTPUT=1 env var to force-enable synchronized output on terminals that auto-detection misses (e.g. Emacs eat)

Added CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE: when set on Homebrew or WinGet installations, Claude Code runs the upgrade command in the background and prompts to restart

Plugin manifests: themes and monitors should now be declared under "experimental": { ... }. Top-level declarations still work but claude plugin validate will warn

Gateway /v1/models discovery for the /model picker is now opt-in via CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 (was automatic in 2.1.126–2.1.128)

Ctrl+R history picker now defaults to searching all prompts across all projects, matching pre-2.1.124 behavior. Press Ctrl+S to narrow to the current project or session

Third-party deployments (Bedrock, Vertex, Foundry, or ANTHROPIC_BASE_URL gateway) no longer see spinner tips pointing at first-party Anthropic surfaces

skillOverrides setting now works: off hides from model and /, user-invocable-only hides from model only, name-only collapses description

The claude_code.pull_request.count OTel metric now counts PRs/MRs created via MCP tools, not just shell commands

Policy refusal error messages now include the API Request ID for easier support debugging

Fixed API errors with unrecognized 400 status codes showing raw JSON instead of the underlying error message

Fixed /clear not resetting the terminal tab title after a conversation

Fixed session title chip from /rename disappearing while a permission or other dialog is active

Fixed agent panel below the prompt being hidden when subagents are running (regression in 2.1.122)

Fixed external-editor handoff (Ctrl+G) blanking the conversation history above the prompt

Fixed /context dumping its rendered ASCII visualization grid into the conversation, wasting ~1.6k tokens per call

Fixed /agents Library list arrow-key navigation: the highlighted agent now stays visible when the list exceeds the viewport

Fixed /branch success message not including the new branch's session id for /resume

Fixed bold headers with keycap/ZWJ/skin-tone emoji losing trailing characters in fullscreen mode

Fixed server-managed settings policy not applying for enterprise/team users whose stored OAuth credentials lacked the user:inference scope

Fixed OAuth refresh race after wake-from-sleep that could log out all running sessions

Fixed 1-hour prompt cache TTL being silently downgraded to 5 minutes

Fixed cache-miss warning appearing spuriously after /clear or compaction when changing /effort or /model

Fixed Bash(mkdir *), Bash(touch *) and similar allow rules not being honored for in-project paths

Fixed deniedMcpServers patterns with a *:// scheme wildcard not matching mixed-case hostnames

Fixed harmless WebSocket warning being logged as an error in --debug during voice mode

[VSCode] Fixed /clear not clearing the conversation context and displayed transcript
