browser-search:AI Agent 网络搜索与浏览技能

一个让 AI Agent 自建搜索与浏览能力的开源技能:SearXNG 搜索、Camofox 浏览、CloakBrowser 突破反爬,全程自托管、免费、无限制。

Star 数
★ 538
最近更新
1 天前
License
MIT
主语言
JavaScript

30 秒速览

运行形态
Agent 插件 / 技能命令行工具自托管服务
可在哪里用
通用 · 跨平台Claude Code · OpenAI API
费用
免费,无需付费服务
上手难度
高 · 需要较重的基础设施
开始前需要
Node.js >=20Dockernpmcloakbrowserplaywright-coreShell / 命令行网络访问本地文件系统
典型场景
需要在多个搜索引擎交叉验证事实、要求'先搜索后回答'的研究型 Agent 使用者,可借助其 Deep Research 模式减少编造答案。
不适合
  • 需要抓取 Instagram、TikTok、LinkedIn 等需登录社交媒体的团队
  • 希望一条命令完成安装、不想自行部署 Docker 与 npm 的用户
  • 需要下载文件或绕过付费墙的场景

这个 Agent 能做什么,适合哪些场景?

browser-search 是一个面向 AI Agent 的技能包(skill),由 Johell1NS 以 MIT 协议发布。它整合三个自托管组件:SearXNG(Docker 元搜索引擎,端口 8080)负责搜索,Camofox(Docker 容器,端口 9377,基于 REST API 的浏览器)负责常规网页浏览,CloakBrowser(npm 包,基于 Playwright 的隐身 Chromium)负责绕过 Cloudflare、Akamai、DataDome 等反爬保护。工作流为三级自动升级:先用 SearXNG 搜索拿到 URL,再用 Camofox 浏览,被拦截时自动切换到 CloakBrowser。技能通过 SKILL.md 约定命令与升级规则,并强制使用确定性脚本执行,以减少模型幻觉。兼容 OpenCode、Claude Code、Cursor 等 70+ AI Agent,需 Node.js 20+、Docker 和 npm,可在 Raspberry Pi 等低功耗硬件上运行。

安装后,Agent 按三阶段执行网络任务。第一阶段用 SearXNG 搜索:运行 node scripts/searxng/searxng.mjs search "查询词",从 Google、Bing、DuckDuckGo 等多来源获取 JSON 结果(标题、摘要、URL)。第二阶段用 Camofox 浏览常规站点:node scripts/camofox/camofox.mjs readability "URL" 提取干净正文(内置 Readability.js,可节省约 70% token),或用 evaluate 执行 JavaScript、snapshot 获取无障碍快照。第三阶段当站点被 Cloudflare/Akamai 等拦截时,运行 node scripts/cloak/cloak-fetch.mjs "URL",CloakBrowser 自动检测挑战、等待解除并提取内容,支持 --proxy、--geoip 和 --format markdown 输出。整个流程由 SKILL.md 定义的确定性脚本驱动,Agent 只需选择调用哪个工具。

  1. 需要在多个搜索引擎交叉验证事实、要求'先搜索后回答'的研究型 Agent 使用者,可借助其 Deep Research 模式减少编造答案。
  2. 使用 OpenCode 或 Claude Code 的开发者,想让 Agent 在无 API key、无订阅的前提下自主完成网页搜索与内容抓取。
  3. 需要抓取受 Cloudflare 或 DataDome 保护的站点内容的团队,可用 CloakBrowser 的 58 项 C++ 源码级补丁和 reCAPTCHA v3 0.9 分的隐身能力。
  4. 在 Raspberry Pi 等低功耗设备上运行 Agent 的个人用户,项目声称已在此类硬件上构建测试,可 24/7 低成本运行。
  5. 希望定制 Agent 浏览规则的团队,可直接编辑纯文本的 SKILL.md,增删规则以适配自己的工作流。

如何安装或部署这个 Agent?

1) 安装技能定义:npx skills add Johell1NS/browser-search(适用于 OpenCode、Claude Code、Cursor 等 70+ Agent)。2) 安装器不会自动执行 npm install,需手动进入技能目录(如 ~/.config/opencode/skills/browser-search 或项目内 .agents/skills/browser-search)执行:npm install;node -e "import('cloakbrowser').then(c => c.ensureBinary())";bash scripts/check.sh 验证。3) 用 Docker 启动 SearXNG(映射 127.0.0.1:8080)和 Camofox(127.0.0.1:9377)。也可改为 git clone https://github.com/Johell1NS/browser-search 后在仓库根目录执行相同的 npm install 与 ensureBinary 命令。可选环境变量:CAMOFOX_API_KEY、CAMOFOX_ADMIN_KEY。

如何使用这个 Agent?

安装完成后向你的 Agent 展示 README 并让它阅读 SKILL.md、scripts/cloak/cloak-fetch.mjs、scripts/setup.sh 和 scripts/check.sh,Agent 会根据平台自动适配命令。典型调用:搜索用 node scripts/searxng/searxng.mjs search "查询";提取正文用 node scripts/camofox/camofox.mjs readability "URL";执行 JS 用 camofox.mjs evaluate;被拦截的站点用 node scripts/cloak/cloak-fetch.mjs "URL",可加 --proxy socks5://... --geoip 或 --format markdown(需 pip install markitdown)。注意 SKILL.md 使用 OpenCode 语法(exec、node scripts),其他 Agent 需先转换命令格式。

这个 Agent 有哪些优点和局限?

优点
  • 完全免费且自托管:无 API key、无订阅、无速率限制,SearXNG、Camofox、CloakBrowser 全部运行在本机。
  • 三级自动升级架构:SearXNG 毫秒级搜索、Camofox 处理约 90% 常规站点、CloakBrowser 应对反爬站点,Agent 自动选择工具,无需人工干预。
  • CloakBrowser 具备 58 项 C++ 源码级补丁、reCAPTCHA v3 得分 0.9(人类水平),能通过 Cloudflare、Turnstile、DataDome、Akamai、Imperva、PerimeterX、DDoS-Guard 检测。
  • 内置安全加固:SSRF 防护(拦截内网 IP 与 DNS rebinding)、脚本沙箱、路径穿越防护、默认 30 次/分钟限速,并提供 scripts/audit.sh 审计脚本。
  • 兼容 70+ Agent(OpenCode、Claude Code、Cursor、GitHub Copilot 等),SKILL.md 为纯文本可自由定制。
局限
  • 部署门槛较高:需自行用 Docker 启动 SearXNG 和 Camofox 两个容器,还需在技能目录手动 npm install 并下载 CloakBrowser 二进制,否则 smart-extract 升级会报 ERR_MODULE_NOT_FOUND。
  • 存在供应链风险:CloakBrowser 从 cloakbrowser.dev 下载专有 Chromium 二进制(仅 SHA-256 校验),非完全开源。
  • 已知限制明确:不支持需登录的社交媒体(Instagram、Facebook、TikTok、LinkedIn、Twitter/X),不下载文件、不绕过付费墙。
  • CloakBrowser 每次请求启动新 Chromium 实例(约 1-3 秒冷启动),性能弱于常驻的 Camofox;Windows Pro 授权下存在浏览器约 10 秒后退出的已知问题。
  • prompt 注入风险依然存在:工具链只能缓解损害,无法阻止被完全攻陷的 Agent;文档提示建议在隔离环境运行。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
browser-search:AI Agent 网络搜索与浏览技能 当前 55 · 缺口较多 Agent 插件 / 技能免费 ★ 538 1 天前 JavaScript Claude Code · OpenAI API
CamoFox Browser Server 72 · 存在缺口 自托管服务免费 ★ 427 1 个月前 JavaScript Claude Code
BrowserAct Skills:AI 代理的真实浏览器自动化 48 · 缺口较多 命令行工具免费版 + 付费版 ★ 6.2k 1 个月前 Python Codex · Claude Code
Firecrawl 网页研究 MCP 66 · 存在缺口 MCP 服务器免费版 + 付费版 ★ 7.7k 今天 JavaScript Claude.ai

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
55/ 100 五分制 2.8 / 5
本评测基于 2026年9月8日 的源码;此后该项目发布了 2 个正式版本,尚未复审。分数与结论只代表评测时的版本。 最近版本 ↓
信任安全 11/29
可靠稳定 6/14
适用触发 12/18
规范维护 13/18
有效结果 9/13
证据核验 4/8
查看各维度的扣分理由
信任安全11 / 29 · 1.9/5

证据显示README声称具备SSRF防护、脚本沙箱、路径校验和限流,但本次审查的源文件中未包含实际脚本代码,安全声明无法静态核实,仅得1分;用户确认机制基本缺失,README反而强调“零人工干预”,但工具标称只读,扣分点为无确认门槛;数据流(端口、架构图、环境变量)描述较清楚得2分;API键处理仅有最佳实践建议,无代码佐证得1分;依赖安全存在明显矛盾:README声称“精确版本、无^范围”,但package.实际使用^0.5.5、^3.0.3等插入符范围,且CloakBrowser从cloakbrowser.dev下载专有二进制,得1分;外部效应方面,该工具明确设计用于绕过Cloudflare/Akamai等反爬保护,存在法律与服务条款风险,文档虽坦诚但风险实质较高,得1分;无任何回滚机制描述得0分;第三方工具均有署名与链接得2分。

可靠稳定6 / 14 · 2.1/5

自相矛盾扣分:README宣称精确版本锁定与package.的^范围不符,“保证每次查询成功”属过度声明,得1分;依赖可用性方面,三个外部服务(SearXNG Docker、Camofox Docker、CloakBrowser npm)均有文档、check.sh验证脚本和安装说明,得2分;失败信息有stack trace抑制、--verbose和FAQ故障排查的描述,但无实际代码可见,得1分。

适用触发12 / 18 · 3.3/5

面向多类AI agent(OpenCode、Claude Code、Cursor等)并有多语言README,得2分;能力边界描述出色,“What this skill does NOT do”明确排除社交媒体、下载、付费墙,得3分;触发精度方面SKILL.md本身未在审查文件中提供,技能触发规则无法核实,得1分;环境适配涵盖树莓派、ARM64、Windows已知问题与check.sh,得2分。

规范维护13 / 18 · 3.6/5

信息架构清晰(架构图、服务表、文件索引)得2分;安装说明极为详尽,包括npx skills add后的手动npm install步骤和常见ERR_MODULE_NOT_FOUND问题,得3分;命名一致得2分;FAQ与命令示例存在但FAQ.md内容未提供,得2分;已知局限记录充分(Windows Pro问题#479、残余风险、不适用场景),得3分;MIT许可证文件完整且与README一致,得3分;仅有package.版本3.1.1和release徽章,无CHANGELOG,得1分;维护责任仅见issue/PR邀请,无维护者承诺或更新路径说明,得1分。

有效结果9 / 13 · 3.5/5

输出可用性方面提供Readability正文提取、快照、markdown格式和JSON搜索结果,得2分;边际价值在于将搜索、浏览、反爬绕过整合为带自动升级的单一技能,但各组件均可独立获得,得2分;成本收益:免费自托管声明与Docker/npm组合一致,但安装与维护开销不小,得2分。

证据核验4 / 8 · 2.5/5

关键性能声明(58个C++补丁、0.9 reCAPTCHA评分、约92%通过率)带有脚注来源,得2分;但来源主要是厂商README和第三方博客,无独立验证,“保证成功”未经证实,得1分;事实与推断未分离——营销性比喻和绝对化声明与事实性说明混排,得1分。

风险与缓解建议
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 该工具核心卖点之一是绕过Cloudflare、Akamai、DataDome等反爬保护,使用时可能违反目标网站服务条款甚至相关法律,企业环境应先做法务评估。
  • README声称依赖使用精确版本,但package.实际使用^插入符范围,存在供应链漂移风险;部署前应自行锁定版本并审计lock文件。
  • CloakBrowser从cloakbrowser.dev下载专有Chromium二进制(非开源供应链),仅声称SHA-256校验,建议在隔离环境中运行。
  • 本次审查未包含SKILL.md和脚本源码,所有安全声明(SSRF防护、沙箱、限流)均未经代码核实,属低置信度结论。
  • 自定义脚本沙箱作者自认不完整(Node.js API仍可用),--unsafe会同时关闭SSRF防护,切勿对不可信输入使用。
证据充分度:低 评估于 2026年9月8日 审查版本 398768aea124 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v3.2.1 v3.2.1 — Camofox stuck recovery, partial results in smart-extract
    发布说明摘录
    Highlights Camofox stuck recovery - When Camofox gets stuck after a session destroy (every POST /tabs fails with a masked 500 while /health still reports the browser as running), camofox.mjs now probes the browser with a short-timeout tab. If the probe fails, the browser is stopped and restarted, and the tab creation is retried once. If the probe works, the problem is the URL (dead domain, slow site) and nothing is restarted. - smart-extract skips Camofox for the remaining URLs when the restart fails (the existing escalation to CloakBrowser applies). smart-extract …
    在 GitHub 查看 ↗
  2. v3.2.0 v3.2.0 — Camofox 1.18.1, SearXNG 2026.10, CloakBrowser 0.6.3
    发布说明摘录
    Highlights Camofox 1.18.1 - HTTP status and warning in results, PDF download, select / press / --submit for forms (#28) - Recommended container flags: core dumps, log rotation, profile volume, telemetry (#27) - Unbounded storage state is reset periodically; tabs are closed when a step times out (#30) smart-extract - --expr returns a real error instead of {"ok":true} when the expression evaluates to undefined (#26) - No page reload for snapshot/text fallbacks; Readability failures on Trusted Types CSP are handled (#29) SearXNG 2026.10 …
    在 GitHub 查看 ↗
  3. v3.1.1 v3.1.1 — Fix CloakBrowser setup after npx skills add
    发布说明摘录
    v3.1.1 — Fix CloakBrowser setup after npx skills add How to update an existing installation npx skills update refreshes the skill files only (SKILL.md, scripts). The npm dependencies are updated separately with npm install, from the directory where the skill (or repo) is installed. Common cases: - Installed via npx skills add — update skill files, then deps + binary: ```bash npx skills update cd ~/.config/opencode/skills/browser-search # your skill dir (.agents/skills/browser-search if project-local) npm install …
    在 GitHub 查看 ↗
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents