browser-automation · git:20260914.480426e · 2026-09-14 · sha256 cca27a048e800e23
browser-automation git:20260914.480426eA
Immutable. This exact content never changes and is served at /api/v1/blob/cca27a048e800e23.
--- name: browser-automation description: | 统一自动化入口。覆盖浏览器自动化(Playwright)和 Windows 桌面应用自动化(OpenReverse)。 浏览器场景:打开网页、点击、填表、爬取、截图、自动化登录、渗透页面交互。 桌面场景:操作 IDA/x64dbg 等 GUI 工具、Windows UI Automation、视觉驱动交互、桌面应用网络抓包。 触发关键词:浏览器自动化、桌面自动化、打开网页、填表、爬取、截图、自动化登录、Playwright、agent-browser、headless、OpenReverse、UIA、CUA、桌面操作、Windows 自动化。 user-invocable: true --- # 自动化操作 (Desktop & Browser Automation) ## 适用范围 当任务属于以下场景时使用本 skill: ### 浏览器场景(Playwright / agent-browser) - 打开网页并操作页面元素(点击、填表、提交) - 爬取页面内容或截图 - 自动化登录流程 - 渗透测试中与 Web 页面交互(提交 payload、触发 XSS) - 验证码页面的自动化处理 - 批量表单提交 ### 桌面应用场景(OpenReverse) - 操作 Windows 桌面应用(IDA Pro、x64dbg、Wireshark 等) - 需要视觉驱动交互(CUA 模式) - 需要结构化 UI 操作(UIA 模式) - 桌面应用的网络流量观察(内置 mitmproxy) - 自动化逆向工具的 GUI 操作 - 黑盒测试桌面软件 ### 与其他工具的分工 | 场景 | 用什么 | |------|--------| | 操作网页(浏览器内) | **Playwright / agent-browser** | | 操作桌面应用(Windows GUI) | **OpenReverse** | | 抓包分析、HTTP 请求捕获 | anything-analyzer 或 OpenReverse network lane | | JS 断点、Hook、CDP 调试 | jshookmcp | | 定位签名算法、补环境复现 | js-reverse | 简单判断: - 目标是网页 → Playwright - 目标是 Windows 桌面应用 → OpenReverse - 两者都需要 → 组合使用 --- ## Part 1: 浏览器自动化(Playwright / agent-browser) ### 核心工作流 ```bash # 1. 打开页面 agent-browser open <url> # 2. 获取可交互元素(返回 @e1, @e2... 引用) agent-browser snapshot -i # 3. 用引用操作元素 agent-browser click @e1 agent-browser fill @e2 "text" # 4. 完成后关闭 agent-browser close ``` ### 命令参考 ```bash # 导航 agent-browser open <url> agent-browser close # 页面快照 agent-browser snapshot # 完整无障碍树 agent-browser snapshot -i # 仅可交互元素(推荐) # 交互操作 agent-browser click @e1 agent-browser fill @e2 "text" agent-browser type @e2 "text" agent-browser press Enter agent-browser scroll down 500 # 获取信息 agent-browser get text @e1 agent-browser get title agent-browser get url # 等待 agent-browser wait @e1 agent-browser wait 2000 agent-browser wait --load networkidle ``` ### 注意事项 - 必须执行 `agent-browser close`,否则进程泄漏 - 操作前先 snapshot,不要猜元素引用 - 提交表单后用 `wait --load networkidle` 等页面稳定 --- ## Part 2: 桌面应用自动化(OpenReverse) ### 概述 [OpenReverse](https://github.com/zhexulong/openreverse) 是面向 AI Agent 的桌面交互与证据采集框架,支持: - **UIA 模式**:Windows UI Automation,结构化桌面控件操作 - **CUA 模式**:视觉驱动交互(Computer Use Agent),适合复杂 GUI - **网络观察**:内置 mitmproxy 代理 + 本地抓取 ### 交互模式选择 | 模式 | 适合场景 | 底层 | |------|---------|------| | UIA | 目标应用有标准 Windows 控件(按钮、文本框、列表) | Windows UI Automation API | | CUA | 目标应用 UI 复杂或非标准控件(IDA 的反汇编视图、自定义渲染界面) | 视觉识别 + 鼠标键盘 | ### 网络观察模式 | 模式 | 适合场景 | |------|---------| | Proxy Lane | 目标应用可以配置代理(推荐) | | Local Lane | 目标应用无法走代理,需要本地抓取 | ### 安装与配置 ```bash # 1. Clone 项目 git clone https://github.com/zhexulong/openreverse.git cd openreverse # 2. 安装依赖 npm install # 3. 接入 Agent 宿主(Claude Code / Codex / Zed) npm run init:agents -- --target=all /path/to/project # 4. 安装 CUA runtime(如果需要视觉驱动模式) npm run install:cua-runtime npm run doctor:cua-runtime # 5. 安装网络观察依赖(如果需要抓包) npm run install:mitmproxy npm run doctor:network ``` ### 常见组合 | 需求 | 配置 | |------|------| | 只操作桌面应用 | UIA 或 CUA,不接网络 lane | | 操作桌面应用 + 抓包 | UIA/CUA + proxy lane | | 操作桌面应用 + 本地抓取 | UIA/CUA + local lane | ### 逆向场景示例 ```text 场景:自动化操作 IDA Pro 进行批量分析 1. 用 OpenReverse CUA 模式打开 IDA Pro 2. 自动加载目标二进制 3. 等待分析完成 4. 通过 UI 操作导出函数列表 5. 同时用 network lane 观察 IDA 的网络行为(如 Lumina 请求) ``` ```text 场景:自动化操作 x64dbg 调试 1. 用 OpenReverse UIA 模式启动 x64dbg 2. 加载目标程序 3. 设置断点 4. 运行并观察寄存器/内存变化 5. 截图保存证据 ``` ---