auto-browser

🌐 自然语言操控真实浏览器

通过Chrome DevTools Protocol操控真实浏览器,实现自然语言驱动的网页导航、交互、数据提取与截图,保留用户登录态完成复杂Web任务

收藏
4.5k
安装
1.1k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

auto-browser 是一个基于 Chrome Debug Protocol(CDP)的浏览器自动化技能,允许用户用自然语言指令操控真实 Chrome 实例完成复杂网页操作。

典型工作流:
1. 环境准备:自动检测或启动 Chrome Debug 模式(端口 9222)

2. 感知-行动-确认循环:每步操作前先 browser_snapshot 获取页面无障碍树(a11y tree),用元素 ref 定位目标,执行操作后截图验证

3. 多步任务拆解:复杂指令自动拆分为「导航→等待→交互→提取→截图」序列

支持操作矩阵:

  • 导航类:browser_navigate / browser_navigate_back / browser_tabs
  • 交互类:browser_click / browser_type / browser_fill_form / browser_select_option / browser_press_key / browser_drag / browser_hover
  • 等待类:browser_wait_for(时间/文本/元素)
  • 提取类:browser_evaluate 执行 JS 获取数据
  • 辅助类:browser_take_screenshot / browser_handle_dialog / browser_file_upload

显著优点

1. 真实浏览器环境:连接用户本地 Chrome,完全保留 Cookie、登录态、扩展插件,非沙盒模拟
2. 自然语言驱动:无需编写选择器或代码,「去 Amazon 搜机械键盘截图前三结果」即可执行

3. 鲁棒的定位策略:基于 Playwright 的无障碍树快照,比 CSS/XPath 更稳定应对动态页面

4. 完整交互能力:支持拖拽、文件上传、弹窗处理、多标签管理,覆盖 99% 手动操作场景

5. 可见即可说:用户可直接引用页面可见元素,Agent 自动解析意图匹配语义字段

潜在局限与风险

技术局限:

  • 依赖 Chrome Debug 端口,若端口被占用或防火墙阻断需手动排查
  • 部分 SPA(单页应用)的动态加载需多次 wait_for + snapshot 轮询
  • 验证码、人机检测(如 reCAPTCHA)无法自动绕过,需用户介入

安全风险(重点):

  • 敏感操作边界:密码填写需用户确认;「提交」「付款」「删除」等不可逆操作默认需二次授权(除非用户明确指令)
  • 数据隐私:操作过程中页面 Cookie、LocalStorage 对用户可见,但 Agent 理论上可读取所有已授权站点数据
  • JS 执行风险browser_evaluate 可执行任意页面上下文代码,恶意网页可能利用此接口进行 XSS 类攻击

运维成本:

  • 首次需配置 ~/.cursor/mcp.json 并 reload MCP
  • Chrome 崩溃或端口断开时需手动重启 debug 模式

适合人群

  • 运营/产品经理:快速抓取竞品数据、截图验证页面效果、自动化后台巡检
  • 开发者:调试流程自动化、快速复现用户反馈的页面问题
  • 测试工程师:构建可视化回归测试、多浏览器兼容性快速验证
  • 普通用户:帮长辈远程操作网页、批量处理表单填写

常规风险提示

| 风险类型 | 说明 |
|---------|------|
| 会话劫持 | Chrome Debug 端口无认证,本地 9222 端口暴露可能导致未授权控制 |
| 敏感信息泄露 | 截图可能包含个人隐私数据,提取的数据可能意外持久化到日志 |
| 误操作风险 | 自然语言理解的歧义可能导致点击错误按钮(如「删除」vs「删除确认」) |
| 网站封禁 | 高频自动化操作可能触发目标站点的反爬机制,导致账号/IP 受限 |

建议: 仅在可信本地环境使用,避免在公共网络暴露 9222 端口;敏感账号操作前确认 URL 正确性;定期清理 /tmp/chrome_debug_profile 临时数据。

auto-browser 内容

手动下载zip · 4.4 kB
skill-card.mdtext/markdown
请选择文件