项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-12 · 当前星标 ★ 45484
使用教程
环境要求
- Node.js 环境(使用 npm 安装,源码构建需 Node.js 24+)
- Rust 工具链(选择 Cargo 安装或从源码构建时需要,见 https://rustup.rs)
- 从源码构建还需要 pnpm 11+
- Linux 需安装系统浏览器依赖库(可用 --with-deps 自动安装)
- macOS 可用 Homebrew 安装
安装与启动步骤
-
1全局安装 CLI
推荐用 npm 全局安装,会装原生 Rust 二进制;也可改用 brew install agent-browser 或 cargo install agent-browser。
npm install -g agent-browser -
2下载 Chrome
首次使用必须执行一次,从 Chrome for Testing 下载浏览器;Linux 上可加 --with-deps 一并安装系统依赖。
agent-browser install -
3诊断安装状态
检查环境、Chrome 安装、daemon 状态、配置文件与网络,并做一次无头浏览器启动测试。
agent-browser doctor -
4打开页面并抓快照
打开目标网址,再获取带 ref 的无障碍树快照,后续操作都用快照里的 @eN 引用定位元素。
agent-browser open example.com agent-browser snapshot -
5操作页面元素
用快照中的 ref 点击、填写表单、读取文本;若目标被弹窗等元素遮挡会提前失败,需先处理遮挡元素并重新抓快照。
agent-browser click @e2 agent-browser fill @e3 "test@example.com" agent-browser get text @e1 -
6截图并关闭浏览器
截图保存为本地文件,任务结束后关闭会话释放浏览器进程。
agent-browser screenshot page.png agent-browser close
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
headed | 否 | 是否使用有头模式(显示浏览器窗口),默认无头 | true |
proxy | 否 | 为浏览器设置代理地址 | http://localhost:8080 |
profile | 否 | 指定浏览器用户数据目录,用于保持登录态 | ./browser-data |
userAgent | 否 | 自定义请求的 User-Agent 字符串 | my-agent/1.0 |
hideScrollbars | 否 | 无头截图时是否隐藏原生滚动条,默认隐藏 | false |
caCert | 否 | 代理场景下指定 CA 证书路径 | /etc/ssl/certs/proxy-ca.crt |
如何确认成功
执行 agent-browser doctor 无报错;再运行 agent-browser open example.com 能正常打开页面并 snapshot 出元素。
常见问题
Q:点击一直失败,提示元素被遮挡怎么办?
A:说明有同意横幅或弹窗覆盖了目标点击点。先关闭或操作被报告出来的遮挡元素,再重新执行 snapshot 获取新的 ref 后重试。
Q:无头截图里看不到滚动条?
A:这是默认行为,无头 Chromium 截图会隐藏原生滚动条以保证图像一致。启动时传 --hide-scrollbars false 可保留滚动条。
Q:Linux 上提示缺少浏览器依赖库怎么办?
A:运行 agent-browser install --with-deps 安装系统依赖;若包管理器无法装齐全部依赖,该命令会以非零状态退出。代理场景还需 certutil,可装 libnss3-tools(Debian/Ubuntu)或 nss-tools(RPM 系)。
Q:如何升级到最新版本?
A:运行 agent-browser upgrade,它会自动识别 npm、Homebrew 还是 Cargo 安装方式,并执行对应的升级命令。
Q:配置项写在哪里?优先级如何?
A:用户级 ~/.agent-browser/config.json 优先级最低,项目级 ./agent-browser.json 覆盖它,AGENT_BROWSER_* 环境变量再覆盖,CLI 参数优先级最高。
注意事项
- 项目配置文件名为 agent-browser.json,键名使用 camelCase(如 --executable-path 对应 executablePath)。
- 若项目级 agent-browser.json 含路径、代理等环境相关值,建议加入 .gitignore。
- agent-browser doctor --fix 会执行破坏性修复(重装 Chrome、清理旧状态),谨慎使用。
- 可用 --config <path> 或 AGENT_BROWSER_CONFIG 指定自定义配置文件,指向缺失或非法文件会直接报错退出。
核心亮点
- Rust 实现,启动快、资源占用低,适合高频调用
- CLI 接口对 AI Agent 友好,易于集成到子进程或工具链
- 功能覆盖导航、点击、输入、截图、JS 执行等常见自动化操作
不足之处
- 文档和示例相对有限,新用户上手需要摸索
- 生态和插件体系尚在早期,复杂场景需自行扩展
适用场景
- AI 代理自动填写网页表单并提交
- 自动化抓取动态渲染页面内容供 LLM 分析
- RPA 流程中模拟用户点击、滚动和截图
替代项目
Playwright、Puppeteer
下一篇:x-cmd
同类项目推荐
awesome-claude-plugins
开源
自动追踪 Claude Code 插件热度,帮你挑出真正好用的插件
Automated index of Claude Code plugins and adoption metrics across GitHub repositori···
hacker-podcast
开源
每天自动把 Hacker News 热闻变成中文播客,通勤路上听科技圈大事。
一个基于 AI 的 Hacker News 中文播客项目,每天自动抓取 Hacker News 热门文章,通过 AI ···
jev-browser
开源
让 AI 选控件,Playwright 执行,浏览器自动化更稳
Jev Browser — indexed browser automation. Jev chooses the control, Playwright acts.···
social-bot
开源
让 Claude 替你刷 Reddit 和 X,自动回复引流获客
Reddit & X auto-reply bot — browser-based, Claude AI generated replies for Solvea/V···
socialclaw
开源
让 AI 代理一键发布内容到所有主流社交平台
Social media scheduling CLI and OpenClaw skill for AI agents posting to X, LinkedIn,···
robin-ai-reviewer
开源
在 GitHub 上给每个 PR 配个 AI 审查员,秒级反馈代码问题
Robin is your AI pull request reviewer in the form of a super fast lightweight githu···
pywechat
开源
用 Python 操控 PC 微信,4.0 也能自动发消息
仍然可用的微信RPA!支持4.0系列微信pywechat是一个基于pywinauto实现的windows桌面微信自···
YouTube-Shorts-Generator
开源
一键把Reddit热帖变成带配音配图的短视频
Generate YouTube Shorts using Reddit posts scraped with PRAW, title and captions gen···
openops
开源
拖拽搭建云成本自动化流程,AI 帮你省钱省心。
The batteries-included, No-Code FinOps automation platform, with the AI you trust.
