← 返回更新日志

Claude Code v2.1.295

2026-10-08 · GitHub 原文
## 更新内容 - 为命令和 HTTP 钩子新增了 `onFailure: "block"`:如果钩子无法启动、超时或以非预期代码退出,则阻止操作,而不是允许操作继续执行 - 新增了程序状态协议(OSC 7501)支持:实现该协议的终端可以显示 Claude Code 是正在工作、等待你的操作,还是已经完成 - 在 `/copy` 选择器中新增了引用文本,因此复制草拟消息时不会包含其 `>` 标记 - 当 `claude plugin install`、`enable`、`disable` 和 `marketplace add` 要写入的设置文件无法加载时,新增了警告 - 当 stderr 是终端时,如果一次 `claude -p` 运行在最后一轮结束后仍保持开启,现在会在 stderr 上显示一行内容,说明它正在等待什么 - 为 Claude 应用网关的 Bedrock、Vertex、Foundry 及其他云上游新增了 `timeouts.upstream_ttfb_ms` 支持:现在,你设置的值会限制流在这些上游开始响应所允许的最长时间,超过后将进行故障转移或返回 502 - 当你在 `←` 等待当前工具完成期间停止本轮时,新增了“Backgrounding cancelled”(已取消转入后台)消息 - 为每个 Claude 应用网关上游新增了可选的 `models` 列表:只有列出的模型会被发送到该上游,故障转移时也一样;条目中的一个 `*` 表示通配符 - 在没有托管设置的机器上,新增了在用户自有设置中使用 `forceLoginMethod: "gateway"` 和 `forceLoginGatewayUrl` 的支持,使 `/login` 可以在对应的 Claude 应用网关上打开 - 当插件的 README 中没有安装命令时,为 `claude plugin validate` 新增了提示:它会打印可粘贴的命令,并且绝不会改变退出代码,即使使用了 `--strict` - 为 Claude 应用网关的 `inference` 审计事件新增了 `upstream_request_id`:即来自 Amazon Bedrock、Anthropic API 或其他上游的请求 ID,可用于支持案例 - 为 mod 新增了 `$.ui.notify`:它会通过你自己的通知设置触发原生通知,并说明由哪个频道发送 - 为 mod 的 `Button` 新增了子元素支持:可以使用字符串和 `Text`,从而让列表中的一整行成为可按下元素,并在其中包含标签或弱化显示的详细信息 - 新增了 `CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS`,用于限制无人值守重试模式(`CLAUDE_CODE_RETRY_WATCHDOG`)等待 429 和 529 错误恢复的最长时间 - 为 Claude 应用网关成功的推理响应新增了 `request-id` 标头,使 Claude Code 遥测中的 `request_id` 与网关审计日志相匹配 - 修复了当网关、Bedrock、Vertex 或 Foundry 拒绝 context-1m beta 时,使用 `[1m]` 模型的所有请求都会失败的问题;Claude Code 现在会在不使用该 beta 的情况下重新发送请求 - 修复了 `claude -p` 的文本输出会在后台工作启动另一轮时丢弃之前响应的问题;现在,每轮响应都会在该轮结束时打印 - 修复了无头会话和 SDK 会话中的远程 MCP 服务器在中断超过 15 秒后一直保持断开,或在服务器每次连接后立即断开时陷入紧密重连循环的问题;现在,重复断开会逐步退避,最长 30 秒 - 修复了服务器错误回复中碰巧包含网络错误名称时,远程 MCP 连接会被断开的问题 - 修复了重复返回分页游标的 MCP 服务器在每次连接时会被重复请求同一页最多 20 次的问题 - 修复了 MCP 工具返回的 CSS、JavaScript 和 XML 文件被保存为 `.bin`,导致 Read 工具拒绝读取的问题;字体和图标文件现在也会获得各自的扩展名 - 修复了模型传递 `command_description` 而不是 `description` 时,Bash 工具调用失败的问题 - 修复了 Claude in Chrome 不会将带有 80 端口(`host:80`)的网站拒绝规则应用于该主机普通 `http://` 页面的问题 - 修复了在 `/plugin` 的 Errors 标签页中按 Enter 时,会在未先询问的情况下移除加载失败的市场并卸载其插件的问题 - 修复了 `claude plugin marketplace add` 会对名称无法用于安装任何插件的市场报告成功的问题;现在会拒绝添加此类市场 - 修复了 `CLAUDE_AUTO_BACKGROUND_TASKS` 会在某个编辑或 shell 命令排在子代理之后等待时,将该子代理移至后台,导致该调用在子代理完成前启动的问题 - 修复了在收到手机消息后立即运行的 `claude remote-control` 会话中、未使用 `/config` 开关时,或从 Claude Code 内部启动时,PushNotification 错误提示推送未发送的问题 - 修复了远程会话一次发送超过 256 个文件时,这些文件会因“could not be vouched for”(无法确认可信)而被拒绝的问题 - 修复了登录刷新后立即启动时,托管设置偶尔无法加载的问题 - 修复了 Claude Code 无法重新启动时,`/tui` 会无提示退出或显示原始系统错误的问题 - 修复了回复遗留的颜色或隐藏样式会使以文本显示的链接地址不可见的问题,包括地址在表格或问题预览中换行的情况 - 修复了对于已登录 Claude 应用网关的会话,`availableModels` 中列出的 Fable 模型不会出现在 `/model` 选择器中的问题;现在,此类模型会显示其内置行,取代为同一模型添加的 `modelPicker` 行 - 修复了开发者的会话不再携带群组信息后,Claude 应用网关的管理员支出视图仍显示其旧群组和群组上限的问题 - 修复了 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 会在 `/usage` 和状态行中隐藏 Claude 应用网关支出限额的问题。支出限额请求现在会发送到会话登录所用的网关 - 修复了位于自有链接工作树中的子代理会显示父会话的 Git 分支、状态和近期提交的问题 - 修复了在提示词中输入文本并用 `←` 取消转入后台时,Claude 会在当前工具结束后停止的问题;Claude 现在会继续在前台工作 - 修复了 `--tools` 和 `--restricted` 不会应用于启动后注册的内置工具,以及已弃用工具名称可以访问调用方工具集之外工具的问题 - 修复了 Claude 等待 MCP 服务器资源列表时,中断操作要到超时后才能结束当前轮次的问题 - 修复了 mod 钩子收到的深层嵌套工具输入会被截断且不报错,导致防护钩子可能放行其从未看到的内容的问题 - 修复了 Esc 无法停止已通过 `←` 移至后台的自主节奏 `/loop` 的问题;现在取消待执行的唤醒会显示通知 - 修复了后台会话中的命令和钩子会继承 `FORCE_COLOR=3`,导致 Claude 读取的输出中包含颜色转义码的问题 - 修复了在会话仍开启时同时停止 `claude agents` 及其后台服务(例如重启系统时),它会在退出过程中启动新的后台服务,从而可能延迟关机并重启已中断会话的问题 - 修复了名为 `worker` 的自定义代理在自动模式拒绝通知和任务详情视图的活动列表中显示为“Agent”的问题 - 修复了 Bash 对遍历 glob 模式的 for 循环进行权限检查的问题,提高了权限检查的准确性 - 修复了由 Workflow 子代理调用的分叉技能会将结果发送到主对话,而不是调用该技能的代理的问题 - 修复了进程内代理队友在通过工具搜索加载 SendMessage 工具之前,首次 SendMessage 调用会失败的问题 - 修复了恢复会话时,Claude 会被告知未完成的后台工作流可能已被 `TaskStop` 停止的问题,而这实际上不可能是原因 - 修复了从任务面板或已连接客户端停止长时间运行的 MCP 工具调用时,Claude 不会收到通知的问题 - 修复了后台会话的 `/loop` 在会话进程停止期间到达下一次唤醒时间时,会在没有通知的情况下停止的问题;现在会话会说明情况,Claude 也会收到通知 - 修复了回复或队友消息中的原始终端超链接字节会被绘制成隐藏地址的可点击链接的问题 - 修复了仓库包含大型 Git 子模块的插件市场无法添加或刷新的问题:现在只会获取存放插件文件的子模块 - 修复了 `/advisor` 对话框会在已保存但不再可用的顾问模型旁显示勾选标记的问题;现在会以“No advisor”(无顾问)选项打开 - 修复了转入后台的 MCP 工具调用通知会显示缩短版任务 ID 的问题 - 修复了 Vim 模式中的 `~` 会将光标移过行尾最后一个字符,导致之后按 `x` 不执行任何操作,以及 `3~` 会继续作用到下一行的问题 - 修复了将从 macOS 复制的带重音文本(例如文件名)粘贴到提示词中间后,光标会多前进一个字符的问题 - 修复了响应达到数万行时终端会冻结且忽略 Ctrl+C 的问题 - 修复了 mod 在插件钩子工作进程重启期间重新加载时发出的调用,会绕过另一个带有 `.catch` 的 mod 防护钩子的问题;现在会拒绝此类调用 - 修复了钩子模块包含数千层嵌套代码的插件无法加载或验证时,只显示原始堆栈溢出消息的问题 - 修复了 `claude plugin test` 会允许 `session.append` 钩子删除真实会话会保留的工具调用、工具结果或思考块的问题 - 修复了会话被终止并第二次恢复后,Claude 不会获知它可以使用 SendMessage 恢复后台子代理的问题 - 修复了 Bash 命令(例如 `cat`)运行但未打印文件内容后,该文件仍会被视为已读取的问题 - 修复了名为 `constructor` 或 `prototype` 的插件选项始终读取为默认值,并且编辑后永远不会重新加载插件的问题 - 修复了在 `/reload-plugins` 或会话启动过程正在读取 mod 文件时进行保存,mod 热重载会漏掉该次保存的问题 - 修复了 mod 热重载问题在获得批准但未选择答案后,会在整个会话的每一轮中重复询问的问题 - 修复了 `/model`、`/fast` 和 `/output-style` 会在不询问插件 `config.set` 钩子的情况下保存设置的问题 - 修复了管道输出中,粗体文本直接跟在弱化文本之后时也会显示为弱化样式的问题 - 修复了引用每隔几行就加深一层的回复会导致终端冻结数秒并占用数 GB 内存的问题 - 修复了在 mod 上次重载后的几毫秒内进行保存时,热重载会漏掉该次保存,导致 mod 一直停留在旧版本直至下次保存的问题 - 修复了 `claude mcp serve` 的后台 Bash 结果不显示输出文件名,且工具描述承诺会发送实际不会到达的通知的问题 - 修复了异步 SessionStart 钩子未发生变化的上下文会在每次恢复时再次添加到对话中的问题 - 修复了应用内执行 `/resume` 或 `/branch` 后,SessionStart 钩子写入 `CLAUDE_ENV_FILE` 的变量无法传递给 Bash 工具的问题 - 修复了 Skill 工具在响应流结束前完成时,技能的 `allowed-tools` 和 `effort` 会丢失,从而导致该技能的 Bash 命令在 `-p` 运行中被拒绝的问题 - 修复了被篡改的服务器托管设置缓存会在托管设置列出或启用插件的机器上,将用户自己的插件视为组织托管插件的问题 - 修复了在功能标志不可用时,Claude 3 Opus 和 Claude 3.x Sonnet 会话会获得这些模型无法接受的工具搜索功能的问题 - 修复了在 `-p` 和 SDK 会话中,生成的类型文件会写入通过 `--plugin-dir` 指定的插件文件夹的问题;现在仅在开发 mod 的位置写入这些文件 - 修复了包含制表符或双向文本控制字符的文本会在屏幕边缘丢失末尾内容,或覆盖附近行的问题 - 修复了 `/model` 声称 Max effort 选择已保存为新会话默认值的问题;Max 仅适用于当前会话 - 修复了异步钩子的 JSON 输出分多行打印时会被忽略的问题 - 修复了 Read 工具会拒绝 `pages` 参数为空的调用,而不是将其视为未提供的问题 - 修复了由于盘符大小写不同,项目范围插件无法在 Windows 版 VS Code 中加载的问题(anthropics/claude-code#74612) - 修复了在 Windows 上以项目或本地范围执行 `plugin install` 和 `uninstall` 时,如果只有盘符大小写不同,会遗漏安装记录或添加重复记录的问题 - 修复了在按 `←` 后立即通过 `↑` 或 Esc 将排队消息拉回提示词时,消息会丢失的问题;提示词历史现在会保留它 - 修复了 SDK 主机在无人回答前关闭 mod 热重载启用问题时,会导致整个会话关闭热重载的问题;现在最多会询问三次 - 修复了经 mod 的 `prompt.submit` 钩子重写或丢弃的提示词,仍会以原始输入内容保存到提示词历史和记录中的排队提示词记录里的问题 - 修复了非交互式会话会在请求未使用 MCP 服务器时,仍提示存在需要身份验证的 MCP 服务器的问题 - 修复了登录 Claude 应用网关时未发出 `claude_code.auth` OpenTelemetry 登录事件的问题。当机器已配置 OpenTelemetry,或会话已登录网关时,现在会导出该事件 - 修复了添加超大界面的插件会在插件钩子工作进程卡顿时导致另一个插件被卸载的问题 - 修复了文件内容发生变化但修改时间未更新时,Edit 会将该文件视为已完整读取的问题 - 修复了带有 Windows 行尾(CRLF)的短命令输出会被绘制在同一行的问题 - 修复了已停止的计划任务会在回退后的恢复过程中重新出现,以及在按 Esc 或压缩后执行回退再恢复时计划任务会丢失的问题 - 修复了对包含超长行、大段空行或未闭合字符串及 heredoc 的代码进行语法高亮时,终端会冻结数秒甚至数分钟的问题 - 修复了中断 `/ultrareview` 上传后遗留在 `~/.claude/seed-admin` 下的临时文件永远不会被保留期清理移除的问题 - 修复了从设置中移除 `disableAutoMode` 后,Desktop 和 SDK 会话在重启前仍拒绝切换回自动模式的问题 - 修复了在另一个会话同步插件更新后,claude.ai 同步的插件钩子会在长期运行的会话中因“Plugin directory does not exist”(插件目录不存在)而失败的问题 - 修复了执行 `/rewind` 后发送的提示词会丢失,以及会话移至后台或被终止后恢复时,被移除的轮次会重新出现的问题 - 修复了 mod 的 `session.receive` 钩子在传递消息前请求权限时,云会话会挂起的问题 - 修复了 macOS 后台会话在更新后一起重启时,有时会在稳定版应用封装之外运行,导致文件夹访问提示再次出现的问题 - 修复了无头和 SDK 会话中,较晚完成的 MCP 登录或重连会将通过 `setMcpServers()` 设置的服务器重新列为用户自有服务器的问题 - 修复了在 `/config` 中更改自动更新频道时,会在询问插件 `config.set` 钩子之前保存的问题 - macOS:修复了会话在主文件夹或其上级目录中启动时,启动阶段的文件计数可能触及其他应用的数据并触发“访问其他应用数据”提示的问题 - 改进了 Amazon Bedrock 上 Claude 应用网关背后的令牌计数,`/context` 和大型文件读取会使用该计数:网关现在通过 AWS CountTokens API 获取计数,而不是发起单令牌模型请求。请授予 `bedrock:CountTokens` 权限以使用此功能 - 改进了 Claude 应用网关,使其在 PostgreSQL 数据库处于只读状态期间每 30 秒记录一次警告,说明哪些功能会失败以及如何恢复 - 改进了 Remote Control、claude.ai 和桌面应用中,会话等待权限提示时显示的状态:现在会用服务器名称和易读名称标识 MCP 工具,而不是显示其 `mcp__server__tool` 标识符 - 改进了 Claude 应用网关背后的后台请求,使其使用 Haiku 4.5 而不是会话模型;如果网关不提供 Haiku 4.5,则回退到会话模型 - 改进了 Claude 应用网关对未列在 Amazon Bedrock 美国地理区域之外区域的 `models:` 下的模型的处理方式。AWS 始终会拒绝这些请求;现在网关会尝试在你自己的区域使用该模型,如果仍被拒绝,则会指出需要添加的模型 - 改进了无头模式下的 `rate_limit_event` 使用限额警告,使其说明账户是否已开启额外用量 - 改进了内置的 `plugin-authoring` 技能:它不再要求没有终端的会话运行终端命令,并且只在被询问时说明如何共享 mod - 改进了 Grep 输入处理:使用 grep 的 `-l`、`-c` 或 `-r` 标志发送的搜索现在会正常运行,而不是调用失败 - 改进了 `claude plugin validate` 和插件加载:当钩子模块因顶层 `var` 被重新绑定而被拒绝时,错误现在会指出重新绑定所在的行、原因和修复方法 - 改进了 Workflow 工具对 `scriptPath` 的拒绝消息:现在会提示通过 `script` 内联传递脚本,这种方式可用于没有 Read 工具的会话 - 改进了 Claude 在发送大型文件无故上传失败时收到的提示,使其报告失败,而不是缩小文件 - 将模型通过工具搜索加载的 MCP 工具描述截断上限从 2,048 个字符改为 16,384 个字符 - 将子代理改为最多预加载 `skills` 字段中的 32 个技能,且每个技能只加载一次;拥有 Skill 工具的子代理仍可调用其余技能 - 更改了附加到后台会话时,在空闲提示词处按 Ctrl+C 的行为:现在会保留待执行的 `/loop` 唤醒,因此按两次会断开连接,而循环会继续运行;按 Esc 可停止循环 - 更改了 `claude agents` 与其后台服务一起停止时的行为(macOS,或未安装该服务的 Linux):正在运行的会话现在会在大约一分钟内停止,除非再次运行该命令,同时会显示相应通知 - 更改了 claude.ai 连接器:在未获取到任何标志的安装中,默认协商 MCP 协议版本 2026-07-28;设置 `MCP_PROTOCOL_NEGOTIATION=legacy` 可退出此行为 - 更改了没有自有背景的 Artifact 页面,使其显示为白色而不是灰白色 - 更改了 mod 在工具运行后拒绝工具调用时 Claude 和用户看到的内容:现在会说明工具已经运行,但插件扣留了其结果 - 更改了制表位的计算方式,使其从文本起始位置开始计算,而不是从屏幕左边缘开始:缩进 2 个单元格的回答,其第一个制表位现在位于第 8 个单元格处,而之前是第 6 个 - 更改了禁用遥测时 Artifact 工具的权限提示,使其与其他安装一样使用五个问题,而不是每次读取他人的 Artifact 和每次编辑数据前都询问 - 更改了禁用遥测的安装中的计划任务和“Run now”例行任务运行方式,使其可以像其他安装一样,无需询问即可发布新的私有 Artifact 并更新用户自己的 Artifact - 更改了来自组织 mod 的 toast 通知,使其优先显示在其他 mod 的 toast 通知之前,而不是排在后面等待 - 更改了 Claude 应用网关:当其捆绑的 Claude Desktop schema 不识别 `desktop` 策略键时,现在会带警告启动并提供该键,因此新的 Desktop 设置不再需要升级网关 - 更改了 WebSocket(`ws`)MCP 服务器:超过 16 MiB 的消息不再被解析,并会关闭连接,与其他传输方式已有的限制保持一致 - [VSCode] 为 Claude 发送给你的文件新增了聊天行:点击文件名可在编辑器中打开;Claude 的说明显示在下方,并且该行在 Focus 视图中会保持可见 - [VSCode] 修复了在后台代理活动或面板自身状态行出现后,“Fork conversation from here”(从此处分叉对话)和 Rewind 的对话恢复会因“Message not found in session”(在会话中找不到消息)而失败的问题 - [VSCode] 修复了在聊天输入框中按 Ctrl+Shift+Tab、Cmd+Shift+Tab 和 Alt+Shift+Tab 还会切换权限模式,以及按 Ctrl+Tab 会接受建议提示词的问题 - [VSCode] 修复了两个 Claude 视图同时可见时,键盘焦点会在两者之间来回跳转,可能导致输入文本被发送到错误对话的问题 - 自托管运行器:更改了运行器,使其不再将 `CCR_AUTO_MODE_ALLOW`、`CCR_AUTO_MODE_ENVIRONMENT` 和 `CCR_AUTO_MODE_SOFT_DENY` 传入会话环境 - 自托管运行器:修复了从大型仓库获取内容时,即使 Git 服务器仍在报告进度,Git fetch 也会被中断的问题;可通过 `CLAUDE_RUNNER_FETCH_SERVER_PROGRESS_CAP_MS` 调整或关闭等待 - [云会话] 修复了云会话取消归档后立即发送的消息有时不会收到回复,因为无法为其启动容器的问题 - [云会话] 修复了部分旧例行任务在运行时从未向 Claude 提供其保存的提示词的问题;这些例行任务现在会再次运行其提示词 - [云会话] 改进了云会话在连接中断后的追赶速度:错过的活动现在会一次性显示,而不是逐行显示 - [云会话] 改进了云环境表单中的设置脚本框:初始高度更高,会随脚本内容增长,并可通过拖动调整大小 - [Claude Tag] 更改了 Claude 在 Slack 频道中发布的设置确认卡片,使其保持开放 30 分钟,而不是 10 分钟 - [Claude Tag] 更改了 Claude 关于 Enterprise Grid 工作区之间共享频道使用组织默认设置的通知:现在仅在有人提及 Claude 时发布,且每月最多一次 - [Claude Tag] 修复了分叉话题串的“Continued from”(续自)卡片中的频道链接和 @提及会显示为原始 Slack 代码的问题 - [Claude Tag] 修复了 `@Claude !restart` 已确认重启后,Slack 的 Working 状态仍会在话题串下持续旋转的问题 - [Claude Tag] 修复了在 Claude 已停止读取未标记消息的繁忙频道中,来自其他应用或机器人的 @Claude 无人响应的问题 - [Claude Tag] 在 Claude Tag 管理设置中新增了确认步骤:添加频道管理员会将该成员移至 Custom roles,这可能移除其其他访问权限 - [Code Review] 修复了 Code Review 重新审查时,在早期发现仍未解决的情况下声称未发现问题的问题;评论现在会说明仍有多少问题未解决 - [Code Review] 修复了拉取请求编辑大型 CLAUDE.md 文件时,Code Review 仍会跳过其中规则的问题 - 修复了在 `xhigh` 和 `max` effort 下,网页搜索和 `agent` 钩子评估耗时大幅增加的问题