用途:agent-browser 是面向 AI 智能体的无头浏览器自动化命令行工具,用 Rust 实现并带 Node.js 回退,通过结构化命令让智能体操作网页。
主要能力:支持导航(open/back/forward/reload/close)、页面快照(snapshot,可仅取交互元素、限制深度、按 CSS 选择器限定范围)、交互(click、dblclick、fill、type、press、hover、check、select、scroll、drag、upload 等)、信息获取(text/html/value/attr/title/url/count/box)、状态检查、截图与 PDF、视频录制、等待、鼠标控制、语义定位(find role/text/label)、浏览器设置(viewport、device、geo、offline、headers、credentials、media)、Cookie 与 localStorage、网络拦截与请求查看、标签页与窗口、iframe、对话框、JavaScript 执行、会话状态保存与加载、并行会话、JSON 输出及调试(console、errors、highlight、trace、CDP)。
使用方式:推荐 npm 安装:npm install -g agent-browser,然后 agent-browser install(或 agent-browser install --with-deps)。也可从源码构建:git clone https://github.com/vercel-labs/agent-browser,cd agent-browser,pnpm install,pnpm build,agent-browser install。核心工作流为 open 导航、snapshot -i 获取带 ref 的交互元素、用 @e1 等 ref 交互,导航或 DOM 变化后重新快照。
适用场景:表单提交、带保存状态的认证、并行浏览器会话、页面分析与自动化测试等。
限制:ref 在每次页面加载内稳定但导航后会变化,导航后必须重新快照;输入框建议用 fill 而非 type 以清空已有文本;Linux ARM64 若命令未找到需使用 bin 目录完整路径;元素未找到时用 snapshot 查找正确 ref;页面未加载时在导航后加 wait。技能问题与 CLI 问题分别提交至对应 GitHub 仓库。