资讯动态

WorkBuddy2API-Hub 本地网络工具教程:为 Codex 实现本地 web_search 与 web_fetch

发布时间:2026/10/16 1:30:52 来源:尧图企业网站定制
【免费下载链接】workbuddy2api-hubWorkBuddy 国际国内多账号反代网关支持 Codex / Claude Code / DSH与标准 OpenAI 客户端。项目地址https://gitcode.com/gh_mirrors/wo/workbuddy2api-hub点击查看免费下载WorkBuddy2API-Hub是一个 WorkBuddy 国际/国内多账号反代网关支持 Codex、Claude Code 与标准 OpenAI 客户端。它的「本地网络工具」功能可以让网关代跑 Codex 声明的web_search/web_fetch在本地执行真实搜索与网页抓取再把结果喂回模型让 Codex 在 WorkBuddy 网关上真正拥有联网能力。本教程带你 3 分钟开启并理解它的工作原理与注意事项。一、为什么需要本地网络工具Codex App 这类客户端在发起 Responses 请求时会声明web_search/web_fetch这两个服务端工具意思是请你服务端帮模型搜网页。但 WorkBuddy 上游并没有对应的执行器——声明原样送上去模型看到工具却没人执行客户端最终只能收到一句unsupported call等于白声明。WorkBuddy2API-Hub 的解法是网关自己当执行器。开启后网关会把客户端的工具声明替换成自己的同名 function拦下模型发起的调用在本地真实执行搜索 / 抓取再把结果作为工具响应喂回模型整个过程对模型透明。相关实现见 wb_webtools.py请求侧的拦截与回放逻辑在 wb_proxy.py 中。 该功能默认关闭关闭时声明原样透传不会吞掉客户端自己的搜索工具——升级或不开启均无任何影响。二、快速开启设置页一键切换开启步骤只有三步打开看板http://127.0.0.1:8788/进入「设置」页下滑到「本地网络工具」区块看板代码见 dashboard.html 中的setLocalWebTools区块勾选「由网关代跑」→ 点「保存」。设置项会写入accounts/settings.json的local_web_tools字段重启不丢失随时取消勾选即可恢复默认直通行为。三、开启后发生了什么工作原理拆解 一次带联网需求的对话大致经历下面 5 步步骤动作说明1声明替换网关检测到客户端声明了web_search/web_fetch用 wb_webtools.py 的install_tool_defs()移除所有同名项只装入网关自己的唯一一份定义避免上游看到两个同名工具2本地执行模型发起调用后网关在 wb_webtools.py 的execute()里执行搜索打搜索引擎抓取打模型给出的 URL3结果喂回搜索结果 / 页面文字作为工具响应送回模型据此继续推理4卡片回放搜索过程会以web_search_call卡片事件和url_citation引用回到 Codex 客户端你能看到模型搜了什么、引了哪些网页5多轮代跑模型想继续搜/抓取就再来一轮最多代跑3 轮WB_MAX_WEB_ROUNDS可调上限 8最后一轮网关会收回工具声明让模型自己用文字收尾而不是把失败伪装成正常结束多引擎搜索自动轮换搜索后端全部免 API Key引擎链默认按DuckDuckGo → Bing → Wikipedia → Stack Overflow → Google News顺序自动轮换只用国际来源常规引擎DuckDuckGo / Bing接手时对模型完全无感结果格式与平常一致换成 Wikipedia / Stack Overflow / Google News 这类非常规来源时结果里会带上Source: ...标明出处并提示模型告知用户某家引擎被限流HTTP 202 / 403 / 429 或反爬页时进入冷却默认 600 秒不会重复挨打全部引擎都不可用才返回web search is temporarily unavailable并附各家原因要求模型不要重试同一句、直接告知用户——绝不把失败伪装成查无结果。web_fetch同样做了硬化只收文本型内容PDF 等二进制直接回可读错误、支持 gzip、单页读取上限 4 MB、自动推断字符集、结果进缓存默认 TTL 600 秒。四、安全与额度开启前必须知道的两件事安全边界URL 守卫先做字面检查再解析 DNS 核对每个地址都是公网防 DNS rebinding 把抓取指进内网字面私网地址与解析进内网的域名都会被挡重定向指向内网时同样拦截抓取失败永远返回一句可读的错误给模型不伪造结果。额度消耗开启后每轮代跑都会多跑一次上游请求多消耗该账号的额度——重度联网对话会明显多花 token网关会主动出网抓取模型给出的 URL如果你的出口受限可以用环境变量WB_WEB_TOOLS_PROXY给这组工具单独指定出口代理不影响账号主链路。五、进阶调参环境变量一览全部参数通过环境变量覆盖默认值已经比较保守一般无需改动环境变量默认作用WB_MAX_WEB_ROUNDS3单次请求最多代跑几轮上限 8WB_WEB_ENGINES全链自定义引擎链与顺序逗号分隔如duckduckgo,bingWB_WEB_COOLDOWN600 秒被限流引擎的冷却秒数0 不冷却WB_WEB_CACHE_TTL600 秒搜索/抓取缓存秒数0 关闭WB_WEB_MIN_INTERVAL0.5 秒对外请求最小间隔防止一轮打穿所有引擎WB_WEB_BUDGET25 秒单次搜索所有引擎的总预算WB_WEB_TOOLS_PROXY无仅这组工具专用的出口代理http(s)://[user:pass]host:port参数定义见 wb_webtools.py 的模块头注释。六、效果验证与排错开启后如何确认它在正常工作看板日志搜索/轮换/失败分类都会以tagwebtools写进运行日志页能看到哪台引擎接了手、哪台进冷却请求流水数据看板最近请求里可以看到对应的上游轮次增加客户端侧Codex 中会出现web_search_call搜索卡片与来源引用答案末尾的引用链接即来自本地搜索结果回归测试整条链路的契约测试在 tests/_test_local_web_tools.py改过本地实现后可以先跑它再重启网关。常见情况速查现象原因与处理搜索总说暂时不可用出口 IP 被引擎限流等冷却期或设置WB_WEB_ENGINES调整引擎顺序结果标了Source: Wikipedia之类常规引擎当时不可用、由备用引擎接手属正常轮换出处已如实标明答案没有引用链接模型本轮未实际调用工具或你关掉了开关关闭时透传上游不执行想立刻恢复原状设置页取消勾选「由网关代跑」并保存即可无需重启七、小结只需在「设置 → 本地网络工具」勾选「由网关代跑」Codex 在 WorkBuddy2API-Hub 上就拥有了真实的web_search/web_fetch能力网关用免 Key 的多引擎轮换搜索 带内网防护的网页抓取本地执行结果以卡片与引用形式回到客户端记住两点权衡每轮代跑多消耗一次上游额度、网关会主动出网——按需开启、配合WB_MAX_WEB_ROUNDS与WB_WEB_TOOLS_PROXY调好边界即可放心使用。更多背景可阅读 README.md 的「本地网络工具可选默认关闭」一节功能演进记录见 docs/CHANGELOG.md。赞分享【免费下载链接】workbuddy2api-hubWorkBuddy 国际国内多账号反代网关支持 Codex / Claude Code / DSH与标准 OpenAI 客户端。项目地址https://gitcode.com/gh_mirrors/wo/workbuddy2api-hub点击查看免费下载相关推荐OpenClaw Web 工具深度实战web_search 与 web_fetch 的配置、原理与安全边界OpenClaw Web 工具深度实战web_search 与 web_fetch 的配置、原理与安全边界 本篇围绕 OpenClaw 内置的两个轻量级 We人工智能大模型LLM 网关AI Agent即时通讯如何用 Ollama 的 web_search 与 web_fetch API 构建联网搜索 Agent如何用 Ollama 的 web_search 与 web_fetch API 构建联网搜索 Agent 想让本地模型回答“最新发生了什么”这类问题靠模型自身人工智能大模型模型推理服务本地部署Android Debug Database网络工具类NetworkUtils如何获取本地IP地址Android Debug Database网络工具类NetworkUtils如何获取本地IP地址 你是否曾在调试Android应用时为获取设备IP地址而频开发工具数据库客户端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑