用途
agent-browser 是一个面向 AI 智能体的浏览器自动化技能,通过 inference.sh 的 belt CLI 使用,底层基于 Playwright。它让智能体能够导航网页、与页面元素交互、截图和录制视频,适用于需要自动操作浏览器的任务。
主要能力
该技能提供以下函数:
- open:导航到 URL,并配置浏览器(视口、代理、视频录制)
- snapshot:在 DOM 变化后重新获取页面状态与 @e 引用
- interact:使用 @e 引用执行操作(点击、填写、拖拽、上传等)
- screenshot:截取页面截图(视口或整页)
- execute:在页面上运行 JavaScript 代码
- close:关闭会话,若启用了录制则返回视频
interact 支持的动作包括:click、dblclick、fill、type、press、select、hover、check、uncheck、drag、upload、scroll、back、wait、goto。
元素以 @e 引用形式返回,例如:
@e1 [a] "Home" href="/"
@e2 [input type="text"] placeholder="Search"
@e3 [button] "Submit"
使用方式
首先安装 belt CLI 技能:
npx skills add belt-sh/cli
然后登录:
belt login
核心工作流为:打开页面获取 @e 引用 → 使用引用交互 → 导航或变化后重新 snapshot → 关闭会话。
示例:
# 1. 启动会话
RESULT=$(belt app run agent-browser --function open --session new --input '{
"url": "https://example.com/login"
}')
SESSION_ID=$(echo $RESULT | jq -r '.session_id')
# 2. 填写并提交
belt app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "fill", "ref": "@e1", "text": "user@example.com"
}'
belt app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "click", "ref": "@e3"
}'
# 3. 导航后重新 snapshot
belt app run agent-browser --function snapshot --session $SESSION_ID --input '{}'
# 4. 完成后关闭
belt app run agent-browser --function close --session $SESSION_ID --input '{}'
重要:引用在导航后会失效。在点击会导航的链接/按钮、提交表单、动态内容加载后,务必重新 snapshot。
特性
- 视频录制:在 open 时设置 record_video 为 true,close 时返回视频文件。
- 光标指示:设置 show_cursor 为 true,在截图和视频中显示红色光标点,跟随鼠标移动并显示点击反馈。
- 代理支持:通过 proxy_url、proxy_username、proxy_password 配置代理。
- 文件上传:使用 upload 动作和 file_paths 字段。
- 拖拽:使用 drag 动作和 target_ref 字段。
- JavaScript 执行:使用 execute 函数运行自定义代码。
适用场景
- 表单自动填写与提交
- 搜索并提取内容
- 需要登录的会话复用
- 截图与视频录制用于调试或演示
- 通过代理进行地域测试
限制
- 需要 inference.sh CLI(belt)并登录后才能使用。
- 元素引用在导航后失效,必须重新 snapshot。
- 浏览器状态在会话内持久,首次调用需用 --session new,后续复用 session_id,完成后应关闭会话。
- 关于收费、价格、平台支持范围等具体信息,资料中暂未提供。