Claude Code 专区效率辅助代码辅助技术文档Bug排查
Claude Code v2.1.314:新增工作目录外写入权限限制
原标题:v2.1.314
变更内容
- 新增
permissions.blockWritesOutsideWorkingDirectories:Write、Edit 和 NotebookEdit 在所有权限模式下都会拒绝工作目录之外的路径 - 为 Claude 应用网关上游新增了可选的
groups列表:仅列出的 IdP 组中的开发者会被发送到该上游,故障转移时也是如此 - 为 Claude 应用网关的 Bedrock 上游新增了
guardrail_trace,用于记录请求触发了哪个 Amazon Bedrock 护栏过滤器,但不记录匹配到的文本 - 为 VS Code 和 Claude Desktop 的 Code 标签页新增了空闲压缩:闲置的 200K+ token 对话会被摘要,如果提示缓存已过期,你的下一条消息将使用该摘要
- 修复了当组织管理员限制了模型的 effort 时,会话连续多轮因“Invalid effort level”而失败的问题:Claude Code 现在会降低 effort、重试,并说明它使用的是哪个级别
- 修复了启动失败时
claude -p以退出码 0 退出且无输出的问题;现在它会打印错误并以 1 退出 - 修复了包含大量图像的 Bedrock 会话每轮都失败、
/compact显示“400 Input is too long.”而未能移除较旧图像并进行压缩的问题 - 修复了当资源没有默认 Sonnet、Opus 或 Haiku 模型的部署时 Microsoft Foundry 会话失败的问题:Claude Code 现在会回退到该系列中较旧的模型
- 修复了在不接受工具搜索
tool_reference块的网关后面反复出现请求被拒的问题:请求会不带工具搜索重新发送一次,并且会话会记住这一点 - 修复了当系统证书存储持有一张与其前身交叉签名的新续期根证书时,TLS 连接因
UNABLE_TO_GET_ISSUER_CERT而失败的问题 - 修复了同时可在无需登录的情况下工作的 MCP 服务器在其存储的登录失效后显示“需要身份验证”的问题;现在它们会以未登录状态使用
- 修复了
claude mcp logout在未移除 MCP 登录时报告成功的问题,例如当 macOS 钥匙串通过 SSH 锁定时 - 修复了多个会话共享同一 Anthropic 配置文件登录且凭据锁繁忙时出现的额外登录续期问题
- 修复了
claude ultrareview和claude remote-control在带终端的 CI 作业中询问工作区信任问题的情况;在设置了CI时,它们现在会立即拒绝不受信任的文件夹 - 修复了管理员的 TLS 信任设置在托管设置中未在 Claude Desktop 会话中应用的问题
- 修复了在带有托管插件设置的机器上,当你的某个
--plugin-dir或--plugin-url插件清单损坏或下载失败时,模型切换被拒绝的问题 - 修复了当托管设置固定模型时,Bedrock 和 Vertex 模型升级提示在每次启动时反复出现的问题
- 修复了仅在远程托管设置中设置的
forceRemoteSettingsRefresh在存储副本过期后不再应用的问题,该问题导致在无法连接服务器时会话在没有策略的情况下启动 - 修复了当任务在两次等待之间自行重启(例如 /goal 检查、后台任务或计划任务)时,“在用量限制时自动继续”在未经你提示的情况下继续超过三次的问题
- 修复了在 Ultracode 关闭后,以 Ultracode 启动的后台和云会话在下次启动时又重新开启它的问题
- 修复了在 Claude 放弃一个无法解析的工具调用后,最后一条失败的回复及其重试提示仍留在对话中的问题
- 修复了输出非常大的 PreCompact 钩子导致压缩失败或重复的问题;现在每个钩子的输出会截断在 10,000 个字符
- 修复了后台差异刷新短暂占用仓库索引锁的问题,该问题可能导致同一时刻运行的 git 命令失败并显示“Unable to create '.git/index.lock': File exists”
- 修复了流式传输时 markdown 表格在半输入行上于网格布局和堆叠布局之间跳动,以及长表格回退为原始竖线的问题
- 修复了当会话只运行斜杠命令时,/resume 选择器将 CLAUDE.md 或 CLAUDE.local.md 的文本显示为会话标题的问题
- 修复了从子代理的打开记录中提问时
/btw从主对话作答的问题 - 修复了通过 SSH 向 Linux 机器粘贴图像时静默无反应的问题;提示现在会说明复制文件并粘贴其路径
- 修复了当会话服务短暂缓慢时
claude remote-control会话无法启动的问题:现在工作线程的注册会以逐渐增加的等待时间重试 - 修复了通过 Remote Control 进行的模型切换超过 8 seconds 时收到“仍在等待”错误而非最终结果的问题
- 修复了
sandbox.excludedCommands设置描述称所列命令总是在沙箱外运行的问题;现在它说明一次调用中的每个命令都必须匹配一个条目 - 修复了 shell 和 MCP 调用被自动模式、拒绝规则或 PreToolUse 钩子阻止,或以其他方式未运行,却在折叠的工具组中显示为似乎已运行的问题
- 修复了沙箱保护未应用于通过
claude -p --resume或--continue进入的工作树的问题 - 修复了匹配 Bash 的钩子未在 Monitor 工具启动的 shell 命令上运行的问题;此类钩子可以阻止或询问,但不能批准或改写这些命令
- 修复了通过
--setting-sources排除的设置文件仍提供某些设置的问题,例如自动模式规则和已保存的权限同意 - 修复了自动模式在其安全检查未给出结论时将调用报告为被阻止并在
/permissions中列出的问题 - 修复了当 Google token 端点接受连接却从不响应时,Claude 应用网关的 Vertex 上游挂起数分钟的问题
- 修复了 Claude 应用网关对已弃用的 Claude Desktop 密钥的启动警告——该密钥仍按原样提供服务——在密钥结束日期之后却称“不再被接受”的问题
- 修复了通过 App Store 或 Google Play 计费的套餐中
/upgrade打开浏览器并启动新登录的问题;现在它会说明在哪里更改套餐 - 修复了
--resume,以及在拒绝后回退越过切换到另一模型时,将使用 Claude Code 无法识别的模型名称的会话移动到其他模型的问题 - 修复了当网关或云提供商按名称拒绝 Claude Code 的某个 beta 标头时请求失败的问题:现在会不带该标头重新发送请求
- 修复了在 LLM 网关后面用点号拼写的模型 IDs(例如
claude-opus-4.8)被当作较旧模型、导致上下文窗口、输出限制、effort、思考模式和成本错误的问题 - 修复了 Remote Control 客户端在 /compact 后显示一条多余的“Compacted (按 ctrl+o 查看完整摘要)”行的问题
- 修复了当组织策略关闭这些功能时仍显示云会话提示和 Remote Control 空闲通知的问题
- 修复了当上一个工作线程在收到新对话的文件后立即停止时,恢复的 claude.ai 云会话发起无人请求的模型调用的问题
- 修复了 Cowork 云会话中的 WebFetch 静默丢弃 PDF 中超过 100,000 个字符的文本的问题;现在它会说明有多少未读以及从哪里继续阅读
- 修复了当你用 Esc 或 Stop 在云会话或 IDE 中停止命令后,Claude 只被告知命令被拒绝的问题;现在它还会得知该命令可能已运行
- 修复了当代码块开启引用时,代码块顶部的空行消失的问题
- 修复了在记录视图(按 Ctrl+O)中某些
⎿行上方出现空行的问题 - 修复了 vim 模式
dw、dW、yw和yW越过行尾继续移动的问题,并使w和W在空行处停止 - 修复了当另一个代理启动或完成时,代理面板中的 x 和 Enter 有时作用于错误代理的问题
- 修复了粘贴的文本和拖入的文件在 Claude 的问题对话框中丢失的问题,除非“其他”行获得焦点
- 修复了当提示页脚中的某一行被选中时粘贴的文本丢失的问题
- 修复了 vim 模式
p在字符选择上忽略被复制文本是否为整行的问题 - 修复了 vim 模式
aw和iw带走行尾换行符的问题 - 修复了 ↓ 选中被 ? 帮助菜单、命令列表或粘贴提示隐藏的页脚项的问题
- 修复了在命令面板(例如
/btw)上按 Esc 也会中断其记录已打开的子代理的问题 - 修复了在全屏模式下查看运行于不同模型的子代理或队友时,欢迎标题栏显示会话模型的问题
- 修复了在向上滚动时于回退菜单中选择“恢复对话”后,全屏记录停留在对话中间的问题
- 修复了已删除的会话可能在恢复列表中作为几乎为空的条目重新出现的罕见情况
- 修复了包含
<bash-stdout>或<local-command-stdout>等标签的提示未向本地 stream-json 宿主机确认的问题 - 修复了当第一条提示失败(例如因用量限制)且之后对话继续时会话一直无标题的问题
- 修复了技能文件监视器检查每个移除后仍保留在
~/.claude/skills/.trash中的技能的问题,这会增加文件系统负载并随每次移除而增长 - 修复了通过 /rename 设置的会话名称在 Claude 请求权限或计划决策时消失的问题,以便并排的会话保持可识别
- 修复了启动失败的后台会话在二进制文件仍在磁盘上时被报告为守护进程二进制文件已删除的问题
- 修复了当
/config中的推送设置被隐藏或你的组织已关闭 Remote Control 时,仍出现关于推送通知的提示和空闲提醒的问题 - 修复了
~/.claude/skills/.trash和~/.claude/plugins/.trash无限制增长的问题:现在无论cleanupPeriodDays如何设置,各自都约保留 1024 个条目 - 修复了当 git 换行符转换下的 CRLF 文件未更改重新保存或编辑了一行时,Bash 编辑差异将整个文件列为已更改的问题
- 自托管运行器:修复了当运行器请求暂停空闲会话在 Anthropic 应答前丢失连接时,该会话移动到另一运行器而非暂停的问题
- 改进了运行大量子代理的长时间无头及 SDK 轮次中的内存使用:父会话不再保留每个子代理的工具结果直到轮次结束
- 改进了提示历史:Ctrl+R 现在会匹配折叠的
[Pasted text]胶囊内的文本 - 改进了
/design-sync上传提示,显示将上传或删除的文件夹、项目及文件 - 改进了
/permissions审查标签页(现称为“最近被阻止”):页脚会说明 Esc 对已标记行的作用 - 改进了自动模式对被阻止调用的处理:消息会指明命令、说明 Claude 可能重试且自动模式会再次检查,并指向
/permissions以供审查 - 改进了权限提示:较长的原因占用更少行,因此在更少的终端上不会把正在批准的命令挤出屏幕
- 改进了当因你的 claude.ai 登录而被拒绝的请求仍在重试时显示的云会话错误:现在它还会建议
claude auth login - 改进了当 MDM 和远程设置在基础 URL 或
apiKeyHelper上不同时,已存储的 claude.ai、Team 和 Enterprise 登录的行为 - 改进了代理视图中的
/config,说明如何停止代理视图默认打开 - 改进了会话自动标题:以技能或基于提示的命令(例如
/security-review)开始的会话现在会由此获得标题,而不是一直无标题 - 改进了
--resume在损坏记录上的速度和内存使用 - 改进了在包含一万个或更多 MCP 工具的会话中
/context的速度 - 自托管运行器:改进了会话分支不在 git 远程上时显示的错误:现在它会涵盖从未推送的分支、说明每种情况的修复方法,且不再建议重试
- 更新了
/claude-api技能:其用于 API 追踪的 Datadog 设置现在会像 Console 一样发送dd-llmobs-enabled: true标头,其ant安装说明删除了过时的 macOSxattr步骤 - 更新了内置的 dataviz 技能,建议在 10,000 以下完整打印 y 轴刻度标签,并在百万以下空间允许时完整打印水平标签
- 更新了内置的 dataviz 技能,以用带排序的条形图或打印其数值的分段条形图来回应环形图和饼图请求
- 更改了 Claude 的文件工具,在编辑你组织的服务器托管设置的本地副本前会先询问,与对待你的设置文件的方式相同
- 更改了
/ultrareview,使其在运行 git 前检查工作区信任,如claude ultrareview所做的那样 - 更改了 Bash 工具的 shell,以清除任何继承的
which别名或函数,并停止将导出的which/unsetenv函数传递给命令,因此which是系统命令或 zsh 内建命令 - 更改了
/permissions的“最近被阻止”,拒绝批准你无法完整阅读的调用,包括终端太短而无法显示的调用 - 更改了 Cowork 云会话中的自动模式:钩子对 MCP 工具调用的允许现在被视为无答案,因此由分类器或权限提示来决定
- 更改了钩子
if条件(例如Monitor(tail *))以匹配 Monitor 工具的 shell 命令,如同Bash(tail *)匹配 Bash 的那样 - 更改了
claude-api技能,在更改代理以改进 Managed Agents 工作流运行时,会先请求阅读该运行的 workflow - 更改了被标记的请求在
ANTHROPIC_DEFAULT_OPUS_MODEL、availableModels或deniedModels仅留下较旧的 Opus 模型或没有模型时,改为在其他模型上重试,而不是以拒绝结束 - 更改了空闲压缩,使其也会为关闭遥测的订阅者运行,并在 Bedrock、Vertex、Foundry 和 LLM 网关上启用一小时提示缓存后运行
- 更改了
FORCE_HYPERLINK=false(以及no和off),改为关闭超链接而不是开启 - macOS:更改了 Claude 运行的大多数命令中的
git grep以使用 C locale,以避免 macOS 的正则库在非有效 UTF-8 文件上出现所报告的内存泄漏 - [VSCode] 修复了“清除身份验证”在无法移除已保存的登录时对 MCP 服务器报告成功的问题
- [VSCode] 修复了队列消息的钩子运行时缺少加载指示器和停止按钮的问题
- [VSCode] 修复了无法保存的会话分组更改(例如删除)静默失败的问题;现在会显示错误通知
- [VSCode] 修复了 Cmd+F / Ctrl+F 未在计划预览标签页中打开查找组件的问题
- [VSCode] 修复了语音听写快捷键 (Ctrl+D) 在 non-Latin 键盘布局(如俄语、希腊语或希伯来语)下无效的问题
- [VSCode] 修复了当扩展在没有聊天的情况下打开时,错过的单次已保存计划任务在未询问的情况下被删除的问题
- [VSCode] 更改了
CLAUDE_CODE_DISABLE_CFC_PROMPT,使其也停止在会话消息中添加 Claude 中的 Chrome 说明;浏览器工具仍保持可用 - [Cloud sessions] 在计划任务页面上新增了“包含已完成”按钮,当仅隐藏已完成的单次任务时,你可以无需打开排序菜单即可显示它们
- [Cloud sessions] 修复了最近使用的自托管环境从未出现在新会话卡片的最近环境中问题
- [Cloud sessions] 修复了在 Claude 将从另一工作树推送的分支移动到某个提交后,云会话每轮都报告未提交更改的问题
- [Cloud sessions] 修复了管理员设置中的自托管环境详情对话框在极短窗口或高缩放下内容被挤出视图的问题;该对话框现在可以滚动
- [Cloud sessions] 修复了在运行的云会话或 Remote Control 会话拒绝切换后,权限模式选择器仍停留在 Auto 的问题;现在它会显示正在使用的模式并告知你
- [Cloud sessions] 改进了计划任务:在 Anthropic 云中的运行现在会加载你 claude.ai 账户上启用的插件
- [Cloud sessions] 改进了管理员设置中 GitHub Enterprise 的“测试连接”,使其也会以云会话的方式连接,并在第二次测试失败时向你发出警告
- [Cloud sessions] 改进了云会话记录:重命名行现在会指出新标题,仓库和环境列表会以表格显示,而不是一行 JSON
- [Cloud sessions] 更改了来自 Web、桌面和移动应用的云会话,使其在设置脚本以错误退出时仍会启动,而不是启动失败
- [Remote Control] 修复了 Remote Control 会话中的权限模式按钮在你输入前显示错误模式的问题;当你的计算机在线时,现在它会在打开时显示真实模式
- [Claude Tag] 在管理员设置的 Bundles 和 Channels 标签页中新增了一条可关闭的链接,指向 Claude Tag API 文档,适用于已连接 Slack 的 Enterprise 组织
- [Claude Tag] 修复了
@Claude !restart在跨 Enterprise Grid 工作区共享的频道中一次工作区检查失败后就放弃的问题;现在它会重试,然后请你再次运行 - [Claude Tag] 修复了在同一链接上几分钟内两次从 Slack 连接你的 Claude 账户时出现第二次确认 DM 和频道备注的问题
- [Claude Tag] 修复了 Slack 中的后续消息在 Claude 的会话等待自托管运行器时没有任何进度迹象的问题;Claude 现在会在该线程中发布等待通知
- [Claude Tag] 修复了在双方组织都安装了 Claude 的 Slack Connect 频道中,Claude 有时不在其自己的线程中回复标签的问题
- [Claude Tag] 修复了 Claude Tag 管理员设置中插件和技能页面上的“重试”在加载失败后丢弃未保存的访问更改的问题;你的编辑现在会保留
- [Claude Tag] 修复了 Claude Tag 管理员设置中的仓库控件重复显示同一操作的问题;其菜单现在只列出按钮尚未执行的操作
这条更新,对你有用吗
分享你的判断
正在确认评价状态
评论
仅支持文字,审核通过后展示。0/4000 字符
正在读取评论…