问题复现
在使用Claude Code进行编码或者学习的时候,Web Fetch是一个经常被使用的内置工具。然而,在不稳定的网络环境下、且使用第三方API接入Claude Code时,该工具经常发生类似如下内容的失败。
Fetch(https://huggingface.co/microsoft/VibeVoice-Realtime-0.5B)⎿ Error: Unable to verify if domain huggingface.co is safe to fetch. This may be due to network restrictions or enterprise security policies blocking claude.ai.
解决方法
该问题可能由两个原因导致:
Claude Code在访问网址之前出于安全起见会先去 Anthropic 查询该网站是否安全(“安全检测”),但众所周知,不稳定的网络环境+第三方API,几乎不可能正常连接。因此可能在这一关被拦住。- 此外,
Claude Code倘若顺利拿到了网页内容,就会使用另外一个并非默认的、较小的模型来处理网页内容。如果是官方OAuth登陆的CLI,就会使用haiku模型;中转就不一定能访问到这个haiku模型,因此也有可能在此处被拦住。
解决的办法是更新配置文件~/.claude/settings.json:
{"env": {"ANTHROPIC_AUTH_TOKEN": "your-token","ANTHROPIC_BASE_URL": "your-base-url","ANTHROPIC_MODEL": "gpt-5.4",// 此处可以更改为你的第三方API提供的小模型//或者干脆和默认模型保持一致即可"ANTHROPIC_SMALL_FAST_MODEL": "gpt-5.4"},// 跳过网址安全验证"skipWebFetchPreflight": true
}
当然,使用之后注意风险。跳过了网页的安全检测意味着agent可能自主访问到恶意链接,为系统安全引入隐患,需要使用者自行斟酌并引入更多其他的安全措施来保证开发机安全。
参考文献
- 知乎 - vito wang: claude code第三方API使用WebFetch的问题
