Claude Code强制开启 Tool Search工具分享
- 内容介绍
- 文章标签
- 相关推荐
工具(提供 CLI 和 GUI 两个版本,用gui后缀那个就可以):
patch_修复wsl问题.zip (18.0 KB)(3月9日更新)
最新版 Claude Code 对 Tool Search 功能加了域名白名单限制,只有 ANTHROPIC_BASE_URL 为 api.anthropic.com 时才会启用。使用第三方中转地址的用户,该功能会被静默禁用——没有任何提示,也没有报错。
Tool Search 有什么用?
Tool Search 会把工具定义从上下文中移出,按需检索加载,而不是每次都把所有工具塞进 prompt。
直接影响:
- 大幅减少 token 占用 —— 尤其是 MCP 工具多的用户,tools 块动辄占据数万甚至数十万 tokens(MCP不是越多越好,用到啥开啥,不用尽量就给它关了)
- 模型表现更好 —— 上下文更干净,模型注意力不被大量工具定义稀释
- 对话轮次更多 —— 同样的上下文窗口可以增加数轮对话
补丁原理
Claude Code 内部有一个域名校验函数,决定是否启用 Tool Search:
// 原始逻辑(混淆后)
return["api.anthropic.com"].includes(A)}catch{return!1}
// ↑ 白名单只有官方域名 ↑ 异常时也返回 false
中转地址不在白名单 → 返回 false → Tool Search 被禁用。
补丁做的事很简单——等长 55 字节替换,把域名检查改为始终返回 true:
原始: return["api.anthropic.com"].includes(A)}catch{return!1}
替换: return!0/* */}catch{return!0}
return!0即return true,跳过域名检查- 中间用
/* ... */注释填充凑齐长度,catch分支同理 - 文件大小不变,不破坏二进制结构
为什么必须等长? bun 编译的二进制把 JS 源码原样嵌入可执行文件。长度变化会破坏内部偏移量映射,导致程序崩溃。
脚本流程
扫描安装 → 读取文件 → 匹配 55 字节特征串
├─ 匹配成功 → 备份原文件 → 替换 → 写回
├─ 已补丁 → 跳过
└─ 未匹配 → 版本不兼容,不操作
- 支持 Windows / macOS / Linux,支持 bun / npm / pnpm 三种安装方式
- 提供 CLI 和 GUI 两个版本,GUI 版双击即用
- 自动备份,可一键恢复
使用方式
- 退出所有 Claude Code 进程
- 运行补丁脚本(GUI 版双击运行,选中安装 → 点击「应用补丁」)
- 新开终端,输入「你可以使用 ToolSearch 工具吗?」,肯定回复即补丁成功
- 升级 Claude Code 后需重新执行
效果对比
补丁前:
9f8a5fb1eb8b237ba97c4c8abcf3ddab1840×1876 380 KB
补丁后:
038edf0d808790dcc735edb625b79c942234×1321 298 KB
MCP 工具越多,开启后 tokens 节省越明显。
网友解答:--【壹】--:
感谢佬!!
--【贰】--:
真是个A
--【叁】--:
image1431×127 70.4 KB
这是什么插件呀
--【肆】--:
此方又在干大事
--【伍】--:
感谢佬友分享
--【陆】--:
感谢佬
--【柒】--:
感谢大佬
--【捌】--:
2.1.71 显示不兼容
--【玖】--:
感谢无私分享
--【拾】--:
太强了,any 公告里那个只支持了 npm 版本的,佬这个直接全解决了…
--【拾壹】--: 此方:
tokens 节省
我说昨天为什么token在首次对话一开始只有几千,而不是默认加载2w多的预设提示词。但今天又变回来了。原来是a/偷摸又作妖了
--【拾贰】--:
厉害的朋友。
--【拾叁】--:
@Haleclipse 可否加入patch
--【拾肆】--:
感谢大佬
--【拾伍】--:
感谢佬
--【拾陆】--:
感谢大佬
--【拾柒】--:
感谢大佬~
--【拾捌】--:
感谢大佬
--【拾玖】--:
为何我的补丁状态 显示不兼容?
工具(提供 CLI 和 GUI 两个版本,用gui后缀那个就可以):
patch_修复wsl问题.zip (18.0 KB)(3月9日更新)
最新版 Claude Code 对 Tool Search 功能加了域名白名单限制,只有 ANTHROPIC_BASE_URL 为 api.anthropic.com 时才会启用。使用第三方中转地址的用户,该功能会被静默禁用——没有任何提示,也没有报错。
Tool Search 有什么用?
Tool Search 会把工具定义从上下文中移出,按需检索加载,而不是每次都把所有工具塞进 prompt。
直接影响:
- 大幅减少 token 占用 —— 尤其是 MCP 工具多的用户,tools 块动辄占据数万甚至数十万 tokens(MCP不是越多越好,用到啥开啥,不用尽量就给它关了)
- 模型表现更好 —— 上下文更干净,模型注意力不被大量工具定义稀释
- 对话轮次更多 —— 同样的上下文窗口可以增加数轮对话
补丁原理
Claude Code 内部有一个域名校验函数,决定是否启用 Tool Search:
// 原始逻辑(混淆后)
return["api.anthropic.com"].includes(A)}catch{return!1}
// ↑ 白名单只有官方域名 ↑ 异常时也返回 false
中转地址不在白名单 → 返回 false → Tool Search 被禁用。
补丁做的事很简单——等长 55 字节替换,把域名检查改为始终返回 true:
原始: return["api.anthropic.com"].includes(A)}catch{return!1}
替换: return!0/* */}catch{return!0}
return!0即return true,跳过域名检查- 中间用
/* ... */注释填充凑齐长度,catch分支同理 - 文件大小不变,不破坏二进制结构
为什么必须等长? bun 编译的二进制把 JS 源码原样嵌入可执行文件。长度变化会破坏内部偏移量映射,导致程序崩溃。
脚本流程
扫描安装 → 读取文件 → 匹配 55 字节特征串
├─ 匹配成功 → 备份原文件 → 替换 → 写回
├─ 已补丁 → 跳过
└─ 未匹配 → 版本不兼容,不操作
- 支持 Windows / macOS / Linux,支持 bun / npm / pnpm 三种安装方式
- 提供 CLI 和 GUI 两个版本,GUI 版双击即用
- 自动备份,可一键恢复
使用方式
- 退出所有 Claude Code 进程
- 运行补丁脚本(GUI 版双击运行,选中安装 → 点击「应用补丁」)
- 新开终端,输入「你可以使用 ToolSearch 工具吗?」,肯定回复即补丁成功
- 升级 Claude Code 后需重新执行
效果对比
补丁前:
9f8a5fb1eb8b237ba97c4c8abcf3ddab1840×1876 380 KB
补丁后:
038edf0d808790dcc735edb625b79c942234×1321 298 KB
MCP 工具越多,开启后 tokens 节省越明显。
网友解答:--【壹】--:
感谢佬!!
--【贰】--:
真是个A
--【叁】--:
image1431×127 70.4 KB
这是什么插件呀
--【肆】--:
此方又在干大事
--【伍】--:
感谢佬友分享
--【陆】--:
感谢佬
--【柒】--:
感谢大佬
--【捌】--:
2.1.71 显示不兼容
--【玖】--:
感谢无私分享
--【拾】--:
太强了,any 公告里那个只支持了 npm 版本的,佬这个直接全解决了…
--【拾壹】--: 此方:
tokens 节省
我说昨天为什么token在首次对话一开始只有几千,而不是默认加载2w多的预设提示词。但今天又变回来了。原来是a/偷摸又作妖了
--【拾贰】--:
厉害的朋友。
--【拾叁】--:
@Haleclipse 可否加入patch
--【拾肆】--:
感谢大佬
--【拾伍】--:
感谢佬
--【拾陆】--:
感谢大佬
--【拾柒】--:
感谢大佬~
--【拾捌】--:
感谢大佬
--【拾玖】--:
为何我的补丁状态 显示不兼容?

