← 返回更新日志

Claude Code v2.1.311

2026-10-26 · GitHub 原文
## 更新内容 - 为 `self-hosted-runner` 添加了 `--hold-idle-file` 和 `--max-hold-min`,以便在主机报告其遗留的运行中进程时保持空闲会话 - 为“解释型”输出风格添加了一条提示,当你要求 Claude 进行解释时显示 - 修复了当 CLAUDE.md 文件中包含非常长的列表项时,启动期间以及读取或编辑文件后长时间卡死的问题 - 修复了当 MCP 服务器尚未响应资源读取请求或技能仍在下载时,中断 Claude 要等到超时后才会生效的问题 - 修复了标准上下文会话在请求超过 200K 个 token 时因“使用 1M 上下文需要用量额度”而停止的问题;Claude Code 现在会压缩对话并继续运行 - 修复了 Write 和 Edit 在完成操作后可能卡住长达 5 秒,并且在修改文件中的数千行内容时报告更改了 0 行的问题 - 修复了子代理无法使用那些在子代理启动后才完成连接的服务器所提供的 MCP 工具的问题 - 修复了在会话早些时候编辑过 MEMORY.md 和 CLAUDE.md 文件的情况下,Claude 在自动压缩后立即看到这些文件旧内容的问题 - 修复了 `claude -p` 和 SDK 会话按错误顺序保存转录消息,或保留已撤回消息的问题 - 修复了 `SubagentStop` 钩子针对每个运行中的子代理大约每分钟执行两次,而不是仅在其完成时执行一次的问题 - 修复了 @ 文件选择器忽略 `.ignore`/`.rgignore` 中用于重新包含被 Git 忽略文件的否定规则的问题 - 修复了子代理启动的后台子代理仍在隔离工作树中工作时,该工作树却被移除的问题 - 修复了自动模式下等待自身 shell 的后台代理每次唤醒都会开启一个新的主对话轮次的问题 - 修复了 Bash 工具描述错误声称工作目录在各次调用之间始终保持不变的问题 - 修复了环境信息块显示 shell 命令实际上并未使用的 shell 名称的问题,例如 Bash 工具使用 zsh 时却显示 fish - 修复了在仓库根目录下的子目录中运行 `claude mcp add`、`claude mcp remove` 和 `/mcp` 时,它们使用当前文件夹名称,而不是 `~/.claude.json` 中保存本地作用域服务器的项目条目名称的问题 - 修复了 `claude mcp list` 和 `claude mcp get` 在连接失败行中重复显示错误代码的问题(例如 `ENOENT: ENOENT: …`) - 修复了网络代理阻止启动请求时,Remote Control 会话会在“正在连接”状态停留约两分钟的问题 - 修复了 Claude 发送到云会话或 Remote Control 会话的消息在 Claude 移动应用中显示为由你发送的问题 - 修复了当通过 Remote Control 或发送到云会话的消息所附文件因磁盘已满而无法保存时,Claude 未被告知原因的问题;同时也修复了 Claude 未被告知消息中超过前 20 个的附件已被省略的问题 - 修复了 WebFetch 和 WebSearch 在 Cowork 云会话中因响应停滞而一直挂起的问题;未完成的请求现在会在 300 秒后失败 - 修复了后台会话在轮次之间崩溃后,如果该会话已附加、已固定,或设置了计划任务或唤醒,就不会重新启动的问题 - 修复了“后台服务未响应”错误建议使用已禁用的 `claude daemon restart` 的问题;现在会建议使用 `claude daemon stop --any`,并说明这会结束后台会话 - 修复了 `claude respawn <id>` 在报告没有与该 ID 匹配的后台会话之前就启动后台服务的问题 - 修复了在计划模式下,当计划模型与会话模型不同时,`/effort` 不会针对提示缓存未命中发出警告的问题 - 修复了 `/ide` 在安装完成前或安装失败时声称 VS Code 扩展已安装的问题 - 修复了当某一行比终端宽时,Write 工具的文件预览会跳过行并错误计算隐藏行数的问题 - 修复了在代理的聊天标签页中按 ↑ 会调出仍在等待发送的消息,导致重新发送时发送第二份副本的问题 - 修复了当插件或你的设置中指定了 `agent` 时,Cowork 云会话在重启后丢失连接器及大多数工具的问题;Cowork 云会话现在会忽略该设置 - 修复了代理团队会话通过 `--resume`、`--continue`、`/resume` 或 `--session-id` 返回时显示空任务列表的问题,包括在 `/clear` 或崩溃之后;同时修复了 `/branch` 将内容写入原始会话任务列表的问题 - 修复了粘贴提及图像文件的文本(例如 `! open /tmp/shot.png` 或 `/review look at /tmp/shot.png`)时,会附加该图像并从提示中删除其路径的问题 - 修复了当提示中已有文本时,反馈草稿卡片仍显示其 1/2/0 和 Esc 快捷键的问题;此时这些按键实际上会作用于提示,而不是卡片 - 修复了引号或括号内的单个反斜杠(例如 `"\"` 或 `(\)`)从 Claude 的回复中消失的问题 - 修复了设置 `DISABLE_COMPACT` 后,代理队友仍会压缩其历史记录的问题 - 修复了设置 `DISABLE_COMPACT` 后,回退菜单仍提供“从此处开始总结”和“总结到此处”选项的问题 - 修复了已完成的 `/code-review` 或其他在子代理中运行的技能,在云会话或后台会话重启后再次运行的问题 - 修复了在 Google Vertex AI、Microsoft Foundry 和 AWS 上的 Claude Platform 中,较长的隐藏思考过程会被误判为空闲并被截断的问题;这些端点会发送思考进度更新 - 修复了 `/ide` 在实际未安装任何内容时声称已安装 JetBrains 插件的问题 - 修复了 Claude Pro 和 Max 订阅者在订阅无法使用时被告知联系管理员的问题;该消息现在会引导用户前往账单设置 - 修复了在宽屏全屏终端中进行编辑后,差异窗格在没有任何内容可显示时自行打开的问题 - 修复了对无需登录即可工作的远程服务器执行“清除身份验证”后,`/mcp` 将其显示为失败的问题 - 修复了 `/mcp` 将 Claude Code 未向其发送任何凭据的远程服务器显示为“已通过身份验证”的问题 - 修复了当 `--plugin-dir` 插件文件夹顶层存在空的 `.mcp.json` 时,整个文件夹中的插件被作为单个插件加载的问题 - 修复了 `/usage` 从不在“哪些内容消耗了你的限额?”下显示较大的提示缓存未命中情况的问题 - 修复了从支持链接的终端打开后台会话后,状态行中的链接仍显示为纯文本的问题 - 修复了 `/rewind` 确认信息在后续消息会从对话中移除时,却声称对话“将被分叉”的问题 - 修复了 `/rewind` 警告错误声称代码恢复绝不会影响手动编辑和 Bash 编辑的问题 - 修复了在屏幕阅读器模式下批准计划时,会发送此前已使用 Escape 取消的反馈的问题 - 修复了 Claude Code 会重试被 API 标记为不可重试的请求的问题;这可能会让一个轮次持续数分钟,或在无人值守重试模式(`CLAUDE_CODE_RETRY_WATCHDOG`)下无限持续 - Linux:修复了当某个 `--plugin-dir` 文件夹同时也是已添加目录,并且启用了 `permissions.blockReadsOutsideWorkingDirectories` 时,沙盒化 Bash 命令因 `bwrap: Can't create file` 而失败的问题 - 自托管运行器:修复了当速率限制(HTTP 429,或以状态码 75 退出的 Git 包装器)阻止添加只读仓库时,会话无法启动的问题;现在会在不包含该仓库的情况下启动 - 改进了 Pro 和 Max 账户的启动时间:如果距离上次检查不到一小时,启动时会跳过两个网络请求 - 改进了 `/teleport` 和 `claude --teleport`:当已压缩的云会话从其上次压缩点加载时会发出警告,因为已被总结的消息不会出现在本地副本中 - 改进了后台会话进程退出时显示的消息:不再承诺不会发生的重启,并会说明如何恢复会话 - 改进了包含多个视图的 Artifact:Claude 现在会根据链接中的 `#name` 路由各个视图,并且不再声称切换视图时地址栏会保持不变 - 改进了达到超时时间的 shell 命令:结果现在会显示截至当前的输出,并说明该命令仍在后台运行 - 改进了压缩机制:当模型的回复中不包含摘要时,Claude Code 现在通常会在替换对话之前再次请求摘要 - 改进了 Artifact 工具对页面和文档的选择:说明性、可视化或交互式内容会生成为 Artifact 页面;文档则用于需要持续编辑或传阅的文字内容 - 改进了仅包含选项及其值的启动命令的启动时间,例如 `claude --model opus` - 改进了“连接中断”API 错误:现在会说明首先应检查的位置(优先检查正在使用的代理或网关,否则检查 VPN 或防火墙;仅适用于 Anthropic API,Bedrock、Vertex 和 Foundry 保持不变) - 改进了屏幕阅读器模式:在 `/permissions` 中删除规则后,会立即朗读“已删除允许规则……” - 改进了粘贴的登录代码被拒绝时显示的消息:现在会说明该代码可能已过期或已被使用,并提示重新登录 - 改进了 Slack 连接器的消息发送:Claude 现在会在向你未明确指定的频道发送消息前,检查该频道的主题中是否包含发帖规则 - 改进了屏幕阅读器模式:Claude 的问题现在会显示为“问题:颜色(已回答)、页面”,不再包含箭头或符号 - 更改了交互式终端中的 `ultrathink`:通过 Anthropic API 使用 Opus 5.5、Sonnet 5.5、Haiku 5.5 和 Fable 5.1 时,会以 xhigh 努力度运行当前轮次;如果在 Claude 工作期间输入,则会提高该轮次剩余部分的努力度 - 更改了 `ultrathink` 的彩虹效果:仅在该关键词能够提高努力度时显示;如果该词被引用或属于文件路径的一部分,则不会显示 - 更改了代理视图中的 Ctrl+D 行为,使其与提示一致:输入为空时,按两次即可退出 - 更改了 `--output-format json` 和 `stream-json` 的输出:字符串中的 DEL、C1 控制字符和 Unicode 格式字符现在会写成 `\uXXXX` 转义序列;解析后的值保持不变 - 更改了模型名称和 ID:对于该后缀不起作用的模型,移除 `[1m]` 后缀及其标签;仍然接受该后缀 - 更改了设置文件中有关权限规则的启动警告:每位用户只会看到一次,直到规则发生变化 - 更改了 `/code-review`:要求 Claude 优先注明努力度,并且仅在明确要求时使用最高努力度 - 更改了设置文件及模组的 `$.env.set` 中的 `DISABLE_COMPACT`:它们现在只能关闭压缩,不能重新开启压缩 - 更改了 Bedrock、Mantle、Vertex 和 Foundry 上的 Claude Code:现在会从 downloads.claude.ai 上的签名文件加载模型设置;可设置 `CLAUDE_CODE_MODEL_CATALOG=off` 将其关闭 - 更改了在关闭功能标志获取的情况下设置 `CLAUDE_CODE_SYNC_SKILLS` 的会话:现在可以复用本机其他会话获取的、最长 10 分钟前的 claude.ai 技能列表 - 更改了全屏列表中滚动条箭头和滚动条区域的点击行为:现在会在释放鼠标按键时生效,因此在释放前将鼠标移出滚动条可取消点击 - 更改了 `claude purge` 的说明:明确表示它只删除此计算机上的数据,不会删除 Anthropic 存储的任何内容 - [VSCode] 为 Claude 回复中的代码块添加了语法着色,支持浅色、深色和高对比度深色主题 - [VSCode] 为耗时较长的 UserPromptSubmit 钩子添加了“正在运行 UserPromptSubmit 钩子”的旋转状态指示器和屏幕阅读器播报 - [VSCode] 修复了从 VS Code 或 JetBrains 面板发送自定义技能和自定义斜杠命令时,未包含普通消息会附带的已打开文件或选中行的问题(anthropics/claude-code#102799) - [VSCode] 修复了在 macOS 和 Linux 上,为读取 PATH 而运行登录 shell 的启动文件时,扩展宿主冻结的问题 - [VSCode] 修复了点击工具结果中的图像或关闭其预览时,还会在编辑器标签页中打开结果文本的问题 - [VSCode] 修复了使用“发送”按钮发送消息后语音听写仍继续录音的问题;现在发送前会先停止听写,与按 Enter 时的现有行为一致 - [VSCode] 更改了扩展行为:当 VS Code 的遥测设置关闭时,会使用已设置 `DISABLE_TELEMETRY` 的环境启动 Claude Code 会话,因此不会发送使用情况指标或错误报告,也不会获取功能标志 - [VSCode] 更改了会话列表侧边栏:Web 会话现在会在首次打开 Web 标签页时加载,而不是在启动时加载 - [云会话] 修复了 Anthropic 托管环境中的例程在其所有者离开组织后重新加入时仍保持锁定的问题;所有者现在可以重新启用这些例程 - [云会话] 修复了当编辑对话框已关闭时,例程 API token 删除或重新生成失败不会显示任何信息的问题;现在会显示错误通知 - [云会话] 修复了云环境对话框(包括管理员对话框)允许使用重复名称的问题;如果另一个已列出的环境已使用该名称,现在会拒绝该名称 - [Claude Tag] 在 Claude Tag 分析中添加了“技能”视图,用于显示 Claude 在 Slack 频道中运行各个已附加技能的频率,以及哪些技能从未使用;管理员设置中还添加了“使用情况”链接 - [Claude Tag] 改进了在新会话中运行的 Claude Tag 例程:当某次运行没有任何内容可报告时,现在可以直接结束,无需向频道发送无意义的占位消息 - [Claude Tag] 更改了 Claude Tag 管理员设置:对于你自己的 Slack 账户可见的私有 Slack 频道,现在会显示锁形图标,而不是 # - [代码审查] 改进了代码审查的检查运行:当自动重试后模型仍无法分析更改时,会明确说明不会再启动进一步的自动审查 - [代码审查] 改进了代码审查的可靠性:如果审查会话因临时服务器故障而无法启动,现在会自动重试一次,并在检查运行中说明这一情况