Open Browser
让 AI 代理自主浏览网页,用自然语言描述任务,自动执行点击、输入、导航和数据提取。
- Star 数
- ★ 9.6k
- 最近更新
- 6 个月前
- License
- MIT
- 主语言
- TypeScript
- FA 评分
- 47/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台ChatGPT · Claude.ai · OpenAI API · Claude API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 开发者想自动化重复的网页操作,如数据提取、表单填写。
- 不适合
- 不愿使用 OpenAI、Anthropic 或 Google 云端 API 的用户
- 不熟悉 Bun 运行时的开发者
这个 Agent 能做什么,适合哪些场景?
Open Browser 是一个基于 TypeScript 的自主网页浏览框架,利用 Playwright 控制浏览器,并集成 OpenAI、Anthropic 和 Google 的模型。它提供核心库、命令行工具和沙箱执行环境。用户可以用自然语言描述任务,代理会自动执行操作。支持交互式 REPL、资源限制、成本追踪和故障检测。MIT 许可,可完全扩展。
Open Browser 提供一个 Agent 类,接收自然语言任务,将页面状态和任务发送给 LLM,由 LLM 决定执行命令(如 click、type、navigate、extract)。通过 CLI 命令如 open-browser run 启动任务,或通过 open-browser interactive 进入交互式 REPL。它还提供 @open-browser/sandbox 包用于沙箱执行,支持资源限制和监控。
- 开发者想自动化重复的网页操作,如数据提取、表单填写。
- QA 工程师要测试多步骤网页流程,并验证页面行为。
- 研究人员需要从多个网站收集信息并汇总。
- 产品经理快速原型验证网页功能,无需写代码。
如何安装或部署这个 Agent?
安装依赖:bun install。复制环境变量示例:cp .env.example .env,并编辑 .env 填入你的 API 密钥(OPENAI_API_KEY、ANTHROPIC_API_KEY 或 GOOGLE_GENERATIVE_AI_API_KEY 至少一个)。
如何使用这个 Agent?
运行一个代理任务:bun run open-browser run "Find the price of the MacBook Pro on apple.com"。或进入交互模式:bun run open-browser interactive。CLI 常用选项:--model、--provider、--headless、--max-steps。
这个 Agent 有哪些优点和局限?
- 支持多种 LLM 提供商(OpenAI、Anthropic、Google),可灵活切换。
- 内置沙箱执行,支持资源限制、超时和域名限制,适合安全运行。
- 丰富的 CLI 和交互式 REPL,便于调试和快速原型。
- 生产级特性:故障检测、成本追踪、会话管理、录制回放。
- 依赖 Bun 运行时,可能对不熟悉 Bun 的开发者有学习成本。
- 需要配置至少一个 LLM API 密钥,每个任务可能产生 API 费用。
- 网络访问是必需,不能用于离线环境。
这个 Agent 与同类方案有什么区别?
与 Playwright 等传统浏览器自动化框架相比,Open Browser 将 LLM 决策集成到流程中,使得任务描述更自然,无需编写选择器脚本。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Open Browser 当前 | 47 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 9.6k | 6 个月前 | TypeScript | ChatGPT · Claude.ai · OpenAI API · Claude API |
| OpenCLI 浏览器自动化命令行 | 49 · 缺口较多 | 命令行工具免费 | ★ 30k | 1 天前 | JavaScript | Claude Code |
| Opensteer | 49 · 缺口较多 | 命令行工具免费 | ★ 203 | 2 个月前 | Python | — |
| h5i —— 面向 AI Agent 的安全优先无头浏览器 | 84 · 表现良好 | 命令行工具免费 | ★ 788 | 今天 | Rust | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:README 提到沙箱执行、资源限制、域名限制、超时等,表明有最小权限意识;但未提供用户确认机制(如危险操作需确认),也未明确数据流透明性(如哪些数据发送给 LLM)。敏感数据处理(如 API 密钥)仅通过环境变量管理,未说明加密或保护措施。依赖安全:使用 bun install,但未提供锁文件或依赖审计证据。外部影响:代理可执行点击、输入、导航等操作,可能产生外部副作用,但未提供撤销或回滚机制。来源归属:MIT 许可证和贡献者信息存在,但发布者未验证。因此,多数标准得分较低。
证据显示:README 和代码结构一致,包名和命令命名稳定,表明自洽性较好。依赖可用性:使用 Playwright 和 Vercel AI SDK 等常见依赖,但未提供版本锁定或镜像信息。失败消息:README 提到错误处理和 stall detection,但未提供具体失败消息示例。因此,自洽性和依赖可用性得分中等,失败消息得分较低。
证据显示:README 描述了多种使用场景(CLI、库、沙箱),受众明确(开发者)。能力边界:提供了 allowedUrls、blockedUrls、stepLimit 等配置,表明有边界控制。触发精度:自然语言任务描述,但未提供精确的触发条件或验证机制。环境适配:支持多种模型和浏览器配置,但未提供详细的系统要求。因此,多数标准得分中等。
证据显示:README 结构清晰,包含快速开始、架构、CLI 命令、配置等,信息架构良好。安装说明:提供了 bun install 和 .env 配置步骤。命名稳定性:包名和命令命名一致。示例和 FAQ:提供了多个示例,但无 FAQ。已知限制:未明确列出。许可证:MIT 许可证存在。版本和变更日志:未提供 CHANGELOG。维护责任:贡献指南存在,但未明确维护者。因此,多数标准得分中等,已知限制和版本变更日志得分较低。
证据显示:输出可用性:代理返回结果,CLI 提供截图、提取等功能,输出格式明确。边际价值:提供自主浏览能力,相比手动脚本有优势。成本效益:提供成本跟踪,但未提供性能基准或成本对比。因此,得分中等。
证据显示:README 中的声明(如生产就绪)未提供测试覆盖率或基准数据支持。跨来源验证:仅依赖 README,无独立验证。事实与推断分离:README 中区分了功能描述和架构图,但未明确区分事实和推断。因此,得分较低。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 未提供用户确认机制,代理可能执行不可逆操作(如提交表单、删除数据)。
- 未明确数据流透明性,用户无法知道哪些页面数据被发送给 LLM。
- 依赖安全未提供锁文件或审计证据,存在供应链风险。
- 未提供回滚或撤销机制,外部副作用无法恢复。
- 发布者未验证,来源归属不明确。
常见问题
支持哪些 LLM 提供商?
-p 参数指定。如何控制成本?
--max-steps 限制步骤数,并启用 --no-cost 隐藏成本追踪,但具体费用取决于模型和任务复杂度。