Claude Code v2.1.312 发布
v2.1.312
Claude Code v2.1.312 发布,新增 oidc.user_id_claim 配置,可按 id_token 中除 sub 之外的声明(如 Microsoft Entra ID 的 oid)识别用户,并支持全屏下点击排队消息的提示直接发送。该版本还修复了从 VS Code 扩展登录后会话内不再拉取托管设置与组织策略、Claude 仅看到超大 CLAUDE.md 开头便覆盖原文件等问题,并将 5 小时窗口的用量提示改称“5-hour limit”。
正文 · AI 翻译
## 变更内容
- 在 Claude 应用网关中新增 `oidc.user_id_claim`,用于通过 `sub` 之外的 id_token 声明(例如 Microsoft Entra ID 的 `oid`)识别用户 - 新增点击发送功能:在全屏模式下,点击排队消息下方的“立即发送”提示即可立即发送该消息,效果与其快捷键相同 - 修复了从 VS Code 扩展登录后,会话剩余时间内不再获取托管设置和组织策略的问题 - 修复了 Claude 在仅看到超大 CLAUDE.md、规则文件或子目录中通过 @ 引入的文件开头后便覆盖原文件的问题; 现在 Write 会要求 Claude 读取全部内容或就地编辑 - 修复了在 git 仓库中通过 Bash `cd` 进入更深目录后,无法找到按目录配置的 skills 和 `paths:` skills 的问题 - 修复了在终端中恢复会话后,首次回复在下次恢复该会话时可能丢失的罕见情况 - 修复了名称无效的命令导致所有命令无法加载,进而可能使 `claude -p` 没有任何输出的问题 - 修复了在旧会话文件清理同时运行时,Read 工具有时在 PDF 页面上失败并报“pdftoppm failed: Could not write image”的问题 - 修复了在任务期间新选择的 effort 级别尚未被模型应用前,加载指示器、OpenTelemetry `effort` 值和转录记录就显示该级别的问题;现在它们会显示当前生效的级别 - 修复了 `/model` 和 `/effort` 缓存警告称重新读取会等待你的下一条消息的问题; 在 Claude 工作期间所做的更改可能会让它更早触发 - 修复了某些会话在最后一条消息只是在句子中间提到有待你处理的事项时却显示为等待你处理的问题 - 修复了在退出前刚用 Ctrl+C 清除输入文本后,agent 视图在下次启动时恢复该输入文本的问题 - 修复了从空的 `!` 输入用 Ctrl+D 退出后,agent 视图重新以 shell 模式打开的问题 - 修复了 vim 模式下 `d`、`c` 和 `y` 搭配大于剩余行数的 `gj` 或 `gk` 计数时会删除或复制文本的问题;与 Vim 一样,它们现在只移动光标 - 修复了 `/verify` 在 `/help` 和 `/` 命令菜单中显示本应给 Claude 看的长描述而非短描述的问题 - 改进了提示词中的 effort 指示器:任务中途所做的更改现在会说明它可能会等待你的下一条消息,并且当该说明不再适用时会被清除 - 改进了云会话中的 WebFetch 错误:无法解析的主机现在会被解释为可能不在允许的网络域内,因此 Claude 会指出需要允许的主机名 - 将 Bedrock、Vertex、Foundry 和 Mantle 改为对 Claude Code 无法识别的模型名称(例如自定义部署名称和推理配置文件 ARN)使用较短的系统提示词,即使它们对应的是 Sonnet 或 Haiku; 设置 `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0` 可保留完整提示词 - 更改了在消息被标记后自动切换模型的逻辑,使其也覆盖 Claude Code 无法识别的模型名称,例如自定义部署名称;设置 `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1` 可关闭这些切换 - 更改了用量限制消息,将 5 小时窗口称为“5-hour limit”而非“session limit” - 更改了从 CLI 启动的云会话,使其名称和分支名称从服务器获取 - 更改了提示词和 agent 钩子,使其每个会话最多同时运行 24 个(包括子 agent),另外最多可有 12 个已等待超过其事件超时时间的钩子;小于 1 秒的 `timeout` 现在按 1 秒计算 - 更改了子 agent 的 `autoCompactWindow`,使其降低由 `CLAUDE_CODE_AUTO_COMPACT_WINDOW` 设置的窗口,而此前该设置没有效果; 它仍然绝不会提高该窗口 - 更改了 OpenTelemetry 的 `mcp_server.name`,使其报告由官方 Anthropic 市场中的插件声明的固定 URL 远程 MCP 服务器的真实名称,而非 `custom` - 更改了 Claude Code,使其停止发送 `claude_code.safety_event` OpenTelemetry 事件 - [VSCode] 修复了当组织的设置无法加载或在启动时被拒绝时,会话以裸退出码结束的问题;标签页现在会说明原因,并提供“重试”或“重新登录” - [VSCode] 更改了用量限制重置的显示方式,改为显示时钟时间(“Resets at 3:10 PM”)并显示“5-hour limit” - [云会话] 在创建或编辑云端运行的例程时,为模型选择器添加了 effort 级别 - [云会话] 添加了带颜色的 Bash 编辑器, 为云环境设置中的安装脚本框添加了行号和复制按钮 - [云会话] 改进了 Claude 将仓库添加到云会话时显示的步骤:现在打开它会显示一个简短的事件表格,而不是原始 JSON - [云会话] 修复了在云会话中发送失败后重新发送未更改的消息时有时会执行两次的问题 - [云会话] 修复了云环境创建失败时其错误仅以 toast 形式显示在打开的对话框之外的问题;现在错误会显示在对话框内 - [云会话] 修复了在 Routines 页面的例程菜单中点击“编辑”会跳转到例程页面而不打开其编辑对话框的问题 - [远程控制] 修复了未归档的远程控制会话在计算机重新连接之前一直显示为工作中状态的问题;现在会显示为空闲状态 - [Claude Tag] 改进了 Claude Tag 在 Slack 中的重试通知,现在会指明正在使用的模型,或说明已触发速率限制, 而不是显示通用的 API 错误 - [Claude Tag] 修复了当较旧的私有 Slack 频道变为公开并获得新 ID 时,Claude Tag 频道的开关和 agent 设置回退到工作区默认值的问题 - [Claude Tag] 修复了 Slack 中的 Claude 在其环境网络访问设置为 None 的频道中不回复的问题 - [Claude Tag] 修复了 Slack 中的 Claude 在同一频道的另一个线程中回复时有时会将文件发布到错误线程的问题 - [代码审查] 修复了当 GitHub 延迟送达推送事件时,代码审查会审查过时的提交或完全不审查的问题;现在会审查拉取请求的当前提交