agent-browser:面向 AI Agent 的浏览器自动化 CLI
agent-browser 是 Vercel Labs 推出的开源浏览器自动化工具,基于 Rust 和 Chrome DevTools Protocol(CDP)操控真实浏览器。它通过紧凑的无障碍树 Snapshot 和 Ref 引用帮助 AI Agent 高效理解网页,并支持网页交互、多会话、截图、网络调试和云浏览器接入。
主要功能
- Snapshot 无障碍树:以紧凑文本结构输出网页元素,并生成
@e1等Ref引用。 - 网页交互:支持导航、点击、填写表单、滚动、键盘操作、文件上传和截图。
- 语义定位:可通过ARIA角色、文本、标签、占位符和alt文本定位元素。
- 多会话隔离:为不同任务分配独立Cookie、存储、认证和浏览历史。
- 网络拦截与调试:支持请求拦截、Mock、HAR录制和按条件过滤。
- 视觉对比:支持全页截图、标注截图、像素Diff和Snapshot文本Diff。
- 性能内省:可查看React组件树、Fiber记录和LCP、CLS、TTFB等Web Vitals。
- 实时Dashboard:通过WebSocket查看浏览器画面、控制台输出和AI交互过程。
- 云浏览器接入:可连接Browserless、Browserbase、Kernel和AWS AgentCore等服务。
如何使用agent-browser
全局安装CLI:
npm install -g agent-browser
agent-browser install
打开网页并获取Snapshot:
agent-browser open example.com
agent-browser snapshot -i
根据返回的Ref执行操作,例如agent-browser click @e2或agent-browser fill @e3 "[email protected]"。完成后可使用agent-browser screenshot page.png导出截图,并通过agent-browser close关闭会话。
项目地址:官网 · GitHub仓库
核心优势
- 上下文开销较低:按需返回网页结构和交互元素,适合LLM调用。
- 真实浏览器控制:基于CDP连接Chrome,能够处理动态网页和登录态场景。
- 原生跨平台:提供macOS、Linux和Windows版本,且不依赖Node运行时执行核心二进制。
- 操作能力完整:覆盖网页自动化、测试、截图、网络和性能分析。
- 多会话可并行:适合Agent分治任务和自动化测试流水线。
应用场景
- 网页任务自动化:执行搜索、数据采集、表单填写和资料整理。
- 端到端测试:验证网页流程、交互行为和不同登录状态。
- UI回归测试:结合截图和Snapshot Diff检查页面变化。
- 云端数据采集:在CI/CD或Serverless环境中运行浏览器任务。
- 前端性能监控:采集Web Vitals和React渲染数据。
- 多平台网页研究:并行访问多个网站,汇总结构化研究结果。
agent-browser可能访问浏览器Cookie、登录态和本地文件。使用前请限制会话权限,避免在包含敏感账号的浏览器环境中执行不可信任务,并遵守目标网站的自动化规则。