用途
agent-browser 是一个专注于无头浏览器自动化的 CLI 工具,专为 AI 智能体的工作流设计。它采用可访问性树快照配合 ref(引用标识)的方式,实现确定性的元素选择,适合需要稳定、可预测元素定位的自动化任务。
根据资料,在以下情况建议使用本工具:自动化多步工作流、需要确定性元素选择、对性能有要求、处理复杂单页应用(SPA)、需要会话隔离。而需要截图/PDF 用于分析、需要视觉检查、需要浏览器扩展集成时,建议使用内置浏览器工具。
主要能力
- 导航:open、back、forward、reload、close
- 快照:snapshot,建议始终使用
-i --json;支持-c(紧凑)、-d(深度限制)、-s(范围限定到选择器) - 交互(基于 ref):click、fill、type、hover、check / uncheck、select、press、scroll、drag
- 信息获取:get text / html / value / attr / title / url / count
- 状态检查:is visible / enabled / checked
- 等待:等待元素、等待毫秒、等待文本、等待 URL、等待网络(networkidle)、等待自定义函数
- 会话:通过
--session或环境变量AGENT_BROWSER_SESSION实现隔离浏览器;session list 查看列表 - 状态持久化:state save / load,可保存/加载 cookie 与 storage 以跳过登录
- 截图与 PDF:screenshot、screenshot --full、pdf
- 网络控制:network route 拦截、终止或模拟响应;network requests 查看请求
- Cookie 与存储:cookies 获取/设置,storage local 获取/设置
- 标签页与框架:tab new、tab 切换、frame 切换、frame main 返回主框架
使用方式
核心工作流为:先导航并生成快照,从 JSON 中解析 refs,然后执行交互,页面变化后重新生成快照。
# 1. Navigate and snapshot
agent-browser open https://example.com
agent-browser snapshot -i --json
# 2. Parse refs from JSON, then interact
agent-browser click @e2
agent-browser fill @e3 "text"
# 3. Re-snapshot after page changes
agent-browser snapshot -i --json
快照输出格式为 JSON,其中 refs 映射 e1、e2、e3 等标识到元素的 role 与 name。
最佳实践:始终使用 -i 聚焦交互元素;始终使用 --json 便于解析;通过 agent-browser wait --load networkidle 等待稳定性;用 state save/load 跳过登录;用会话隔离不同浏览器上下文;用 --headed 进行调试。
示例(搜索并提取):
agent-browser open https://www.google.com
agent-browser snapshot -i --json
# AI identifies search box @e1
agent-browser fill @e1 "AI agents"
agent-browser press Enter
agent-browser wait --load networkidle
agent-browser snapshot -i --json
# AI identifies result refs
agent-browser get text @e3 --json
agent-browser get attr @e4 "href" --json
示例(多会话测试):
# Admin session
agent-browser --session admin open app.com
agent-browser --session admin state load admin-auth.json
agent-browser --session admin snapshot -i --json
# User session (simultaneous)
agent-browser --session user open app.com
agent-browser --session user state load user-auth.json
agent-browser --session user snapshot -i --json
安装
npm install -g agent-browser
agent-browser install # Download Chromium
agent-browser install --with-deps # Linux: + system deps
适用场景与限制
适用于 AI 智能体驱动的多步网页自动化、确定性元素选择、复杂 SPA 操作、会话隔离测试(如多用户同时测试)以及通过状态保存跳过登录的重复任务。
限制方面:资料明确建议在需要截图/PDF 分析、视觉检查或浏览器扩展集成时使用内置浏览器工具而非本工具。截图与 PDF 命令虽存在,但上述建议表明其并非视觉分析的首选。工具的具体收费、价格等信息暂未提供。
来源说明
该 Skill 由 Yossi Elkrief(@MaTriXy)创建,agent-browser CLI 由 Vercel Labs 提供。