快讯版本更新

Claude Code 2.1.303 到 2.1.304 更新:走中转站时工具搜索默认打开,Python 版 SDK 的默认权限模式还没跟上

Claude Code 2.1.303 和 2.1.304 发布:设了自定义接口地址时 MCP 工具搜索改为默认打开,本站通过中转站补测能用;/auto-mode-setup 扩到第三方平台。补测还发现,Python 版 Agent SDK 最新版自带的仍是 2.1.301,不设权限模式还是从 auto 开始。

发布 · 约 8 分钟读完 · 经人工审核()· 本站的内容怎么来的

本页目录(5 节)
  1. 走中转站的人要知道的
  2. 原来的脚本可能要改:Agent SDK 的默认权限模式
  3. 新功能和改动(2.1.304)
  4. 其他值得知道的修复(2.1.304)
  5. 版本一览

2026 年 10 月 18 日和 19 日,Claude Code 先后发布了 2.1.303 和 2.1.304。2.1.303 只写了一句“修复问题、提升稳定性”;2.1.304 有 70 多条改动。和本站读者关系最大的是三点:

  • 走中转站时,MCP 的工具搜索改为默认打开(2.1.304)。 之前只要 ANTHROPIC_BASE_URL 指向的不是官方地址,工具搜索就默认关闭。本站通过中转站补测,能用。
  • /auto-mode-setup 在 Bedrock、Vertex、Foundry、Claude apps gateway 和关了遥测的会话里也能用了(2.1.304)。 它读你的项目和最近的会话,帮 auto 模式了解你的环境。
  • Python 版 Agent SDK 还没跟上 2.1.302 的默认权限模式(本站补测)。 官方文档 10 月 20 日改成“v2.1.302 起,不设权限模式就从 default 开始”,但 PyPI 上最新的 SDK 自带的还是 2.1.301,实测仍从 auto 开始。

这是 2.1.301 到 2.1.302 之后的两个版本。下面按“对你有什么影响”整理,不逐条翻译更新日志。

走中转站的人要知道的

工具搜索默认打开(2.1.304)

工具搜索的意思是:MCP 工具的定义不在会话开始时全部发给模型,模型要用时先搜一下,再把搜到的那几个补进来。工具多的时候省下不少上下文。《Claude Code 接 MCP 服务器实战》里实测过,一个只有 3 个工具的服务器就占了两千多 token。

更新日志的原话是:设了自定义 ANTHROPIC_BASE_URL 时,工具搜索改为默认打开;网关返回 400 或 422 时,去掉它再发一次。写这条快讯时,官方 MCP 文档和环境变量文档还是原来的说法:接口地址不是官方的时候默认关闭,代理能转发 tool_reference 块才建议设 ENABLE_TOOL_SEARCH=true。

本站 10 月 20 日在服务器上补测(通过酷站AI 中转站,claude -p,接一个只有一个工具的本地 MCP 服务器,让它查 Express 某个版本的更新记录):

版本和设置 工具列表里有没有 ToolSearch 实际调用 结果
2.1.304,默认 有 先 ToolSearch,再调 MCP 工具 答对了
2.1.304,ENABLE_TOOL_SEARCH=false 没有 直接调 MCP 工具 答对了
2.1.302,默认 没有 直接调 MCP 工具 答对了

2.1.304 那次的会话记录里,三次请求都带着工具搜索,MCP 工具一直是延迟加载的,中间没有出现“去掉工具搜索再发”的重试。也就是说,通过这家中转站,Claude Code 的工具搜索是真的在用,不是失败后退回去的。

如果你的中转站不支持,按更新日志,返回 400 或 422 时 Claude Code 会自己去掉它重发;碰到别的报错,设 ENABLE_TOOL_SEARCH=false 关掉。这个环境变量和别的常用变量见《Claude Code 速查》。

注意这和《Claude API 的服务器端工具》里测到的“带着历史继续时报 400”不是同一种用法:那篇用的是接口自带的搜索工具(tool_search_tool_regex),Claude Code 用的是自己的 ToolSearch 工具。

用 Agent SDK 的要看 SDK 自带的版本。本站同一天用 Python 版 SDK 0.2.168 补测:它自带的 2.1.301 走中转站时工具搜索仍然是关的,用 cli_path 接上 2.1.304 才默认打开。详见《工具太多时的工具搜索》。

另外三条(2.1.304)

  • 在 LLM 网关后面报 context_management: Extra inputs are not permitted 的,Claude Code 现在会去掉这个字段重发。之前碰到这个报错,要靠 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS 绕过去。
  • VS Code 扩展的聊天面板,在 Bedrock、Vertex、Foundry 上、在 LLM 网关后面或者关了遥测的会话里,也能画 mod 的界面了。之前这些会话拉取不了功能开关,面板里什么都不画。mod 是什么见《Claude Code Mods 是什么》。
  • /auto-mode-setup 扩到的范围里写的是 Bedrock、Vertex、Foundry、Claude apps gateway 和关了遥测的会话,没有提自定义 ANTHROPIC_BASE_URL。通过中转站能不能用,本站没有试。写这条快讯时,auto 模式的配置文档还写着它要能拉取功能开关,关了就用不了。

原来的脚本可能要改:Agent SDK 的默认权限模式

10 月 20 日,官方改了权限模式、Agent SDK 权限和 TypeScript 参考三页的写法:Claude Code v2.1.302 起,没设权限模式的 claude -p 和 Agent SDK 会话一律从 Manual 模式开始(配置值是 default),要批准的调用一律拒绝,除非有允许规则、hook、审批回调或 --permission-prompt-tool。原来按会话分情况的那张表,改成了一句历史说明:v2.1.302 以前,拿不到功能开关的会话(比如在第三方平台上、关了遥测)可能从 auto 开始。2.1.302 本身的改动见上一期。

本站同一天在服务器上补测(通过酷站AI 中转站,都没有设权限模式):

  • claude -p,2.1.304:流式输出第一个事件里的 permissionMode 是 default;让它新建文件,它说要授权,没有建。加上 --permission-mode auto 再跑,建了。和 10 月 17 日用 2.1.302 测的一样。
  • Python 版 Agent SDK 0.2.168(PyPI 上的最新版,10 月 15 日发布):第一个事件里的 claude_code_version 是 2.1.301,permissionMode 是 auto。退款工具不在允许清单里、也没有审批回调,它照样把退款办了。
  • 同一个 SDK,用 cli_path 指向服务器上装的 2.1.304:permissionMode 变成 default,退款被拒绝,报错是 Claude requested permissions to use mcp__shop__refund_order, but you haven't granted it yet.,订单没变。

Python 版 SDK 用的是它自己带的那份 Claude Code,版本跟着 SDK 走,不跟你机器上装的走。所以“v2.1.302 起从 default 开始”这句,对现在的 Python 版 SDK 还不成立。npm 上 TypeScript 版的最新版本是 0.3.304,包信息里写的自带版本是 2.1.304;TypeScript 版本站没有测。

最稳妥的做法和上一期一样:把权限模式写死。 Python 设 permission_mode,TypeScript 设 permissionMode,claude -p 加 --permission-mode。权限模式、规则和审批回调怎么配合,见《Agent SDK 的权限、审批和 hooks》。

新功能和改动(2.1.304)

  • /claude-api managed-agents-secure:对照 Anthropic 公开的安全指南,检查一个托管智能体的设置,只报告,不改任何东西。托管智能体见《托管智能体入门》。
  • 恢复很久没用的对话前先提醒(Pro 和 Max)。 恢复会占掉 5 小时用量里明显的一块时,会给你两个选择:照样恢复,或者开一个新对话,需要时让 Claude 去查之前那个。
  • 压缩之后重新把技能列表发给 Claude;/reload-skills 只发新增或改过的技能。同一来源(一个仓库、你自己的目录或一个插件)的技能,每个会话最多注册 1,024 个 hook、16,384 个匹配字符。
  • CLAUDE_CODE_AUTO_COMPACT_WINDOW 认 k 和 M 了。 之前写 200k 会被悄悄当成 100K 的窗口;现在和 --autocompact 一样认后缀,数值超出范围或被忽略时会提示。
  • 写 mod 的人:tool.check 的回答可以写 decider: "person",只有权限对话框或宿主的回调能批准,没人可问时就按 mod 给的理由拒绝;tool.check 事件多了 e.isReadOnly;settings.read hook 能拿到每一层设置并改写合并后的结果,托管的 mod 可以把组织的设置定成上限。mod 的写法见《Claude Code mod 进阶》。
  • Code Review:更新日志列出了审查级别(Quick、Standard、Deep,默认 Standard,组织定一个、单个仓库可以另设),和“审查 GitHub 组织里所有仓库,包括以后新加的”的选项。这两项 10 月 15 日正式上线时的文档里就有,几档的区别见正式上线的快讯。
  • /fast 对话框的标题在 Opus 5.5 上去掉了“research preview”。
  • VS Code:后台子代理在 Agent 卡片下面只显示一行状态,不再把每一步都刷进对话,完整记录在 /tasks 里。

其他值得知道的修复(2.1.304)

  • claude --worktree 在 HEAD 处于分离状态或切到了别的分支时,退出时会不问一声就删掉工作树和分支,可能丢提交。工作树见《用 worktree 同时开两个 Claude Code 会话》。
  • 代理团队里,在主会话批准队友的关闭请求,之前会把整个 Claude Code 退出。
  • 插件派生子代理或重跑做完的子代理,会让 claude -p 越过 --max-turns、Stop 或输入结束之后还在跑。
  • 同一次工具调用上,Agent SDK 的回调 hook 超时,会把 PreToolUse hook 的拒绝理由换成超时报错。
  • 对挂载的磁盘或顶层目录(/Volumes、/media、WSL 的 /mnt/c)执行 rm -r 时,之前不会像 rm -rf /Applications 那样先确认。
  • Linux 上,沙箱的 sandbox.filesystem.denyRead 里写了不是字符类的方括号(比如 [user-id] 这样的路由目录)时,沙箱里的命令起不来。
  • 自己安排节奏的 /loop,排在 1 小时上限的那次唤醒,之前恰好在 1 小时的提示缓存过期之后触发,每次都要重新读整个对话。
  • claude --help 里 --tools、--resume、--debug、--json-schema 等几项的说明和实际行为对不上。

版本一览

版本 要点
2.1.303,10 月 18 日 只写了 Bug fixes and reliability improvements
2.1.304,10 月 19 日 走中转站时工具搜索默认打开、/auto-mode-setup 扩到第三方平台、/claude-api managed-agents-secure、恢复旧对话前的用量提醒、压缩后重发技能列表、mod 的 decider: "person"、Code Review 的审查级别

发布日期按 GitHub 上版本说明的时间(UTC)。2.1.304 里还有不少针对云端会话、Remote Control、桌面应用、Slack 里的 Claude 和 VS Code 扩展的修复,这里没有展开,完整的条目请看官方更新日志。

来源

通过 API 中转站使用这些模型?到 Veridrop 免费检测中转站给你的是不是它声称的模型,或者看看中转站排行榜前 100 名。

相关文章