SuperAPI AI 工具集

camofox-browser

通用与其它

查看项目

更新于 10-16 03:41

技能介绍

用途:camofox-browser 是一个 Node.js/Express 服务器,将 Camoufox 浏览器引擎封装为 HTTP 接口,供 AI 智能体做网页自动化。智能体可创建标签页,获取精简的可访问性快照(含稳定元素引用 e1、e2…),并按引用而非 CSS 选择器或坐标进行交互。

主要能力:标签页与会话生命周期管理(按 userId 隔离 Cookie/存储,按 sessionKey 分组标签页);页面交互(快照、点击、输入、按键、滚动、导航、等待、链接/图片/下载/截图、前进后退刷新);YouTube 字幕提取(yt-dlp 优先,浏览器回退);搜索宏(如 @google_search、@youtube_search、@reddit_search,Reddit 宏直接返回 JSON);Cookie 导入(Netscape 格式,单请求最多 500 条、单文件 5MB);会话持久化;代理模式(简单或 backconnect 轮换,Camoufox GeoIP 自动设置语言/时区/地理位置);VNC 交互式登录;插件系统(新路由、生命周期钩子、Prometheus 指标)。

使用方式:可独立运行:git clone https://github.com/jo-inc/camofox-browser,然后 npm install、npm start(首次运行下载约 300MB 的 Camoufox),访问 http://localhost:9377。也可作为 OpenClaw 插件安装:openclaw plugins install @askjo/camofox-browser。Docker 请使用 make up / make down / make reset 等命令,勿直接 docker build。核心流程:POST /tabs 创建标签页,GET /tabs/:tabId/snapshot 取快照,再用 POST /tabs/:tabId/click 或 /type 传入 ref 交互。

限制:元素引用仅在当前快照内稳定,导航后即失效,需重新获取快照。浏览器惰性启动,空闲后按 BROWSER_IDLE_TIMEOUT_MS(默认 5 分钟)关闭,会话按 SESSION_TIMEOUT_MS(默认 30 分钟)过期。API 密钥通过环境变量 CAMOFOX_API_KEY、CAMOFOX_ADMIN_KEY 设置,回环地址请求可跳过校验;未设置时 Cookie 导入等路由返回 403。OpenClaw 技能扫描器对单文件同时含 process.env 与网络请求、或含 child_process 与 exec/spawn 等组合会报错,需按项目规定拆分代码。测试可用 npm test、npm run test:e2e、npm run test:live。更多端点细节见项目 references 目录。