{"skill":{"slug":"browser-harness","displayName":"Browser Harness","summary":"浏览器自动化控制。通过 CDP 连接用户本机 Edge/Chrome，实现网页截图、内容提取、自动化操作。当用户需要：打开网页并截图、提取网页动态内容、看 JS 渲染的页面、自动化操作浏览器时触发。","description":"---\nname: browser-harness\ndescription: 浏览器自动化控制。通过 CDP 连接用户本机 Edge/Chrome，实现网页截图、内容提取、自动化操作。当用户需要：打开网页并截图、提取网页动态内容、看 JS 渲染的页面、自动化操作浏览器时触发。\n---\n\n# Browser Harness 技能\n\n通过 `browser-harness` CLI 控制用户本机浏览器（Edge 或 Chrome）。\n\n## 前置条件\n\n1. **本机已安装 browser-harness**：\n   ```bash\n   git clone https://github.com/browser-use/browser-harness\n   cd browser-harness\n   uv tool install -e .\n   ```\n\n2. **浏览器调试模式启动**：\n   ```bash\n   # Edge（推荐）：\n   \"C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe\" --remote-debugging-port=9222\n   \n   # 或 Chrome：\n   \"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe\" --remote-debugging-port=9222\n   ```\n\n3. **设置环境变量**（每次使用前）：\n   ```bash\n   $env:BU_CDP_URL=\"http://127.0.0.1:9222\"\n   ```\n\n## 常用命令\n\n### 截图\n```bash\nbrowser-harness -c \"new_tab('https://example.com'); wait_for_load(); capture_screenshot()\"\n```\n截图保存到 `C:\\Users\\he\\AppData\\Local\\Temp\\shot.png`，用完后复制到工作目录分析。\n\n### 打开网页\n```bash\nbrowser-harness -c \"new_tab('https://example.com')\"           # 新标签页打开\nbrowser-harness -c \"goto_url('https://example.com')\"        # 在当前标签页打开\n```\n\n### 等待页面加载\n```bash\nbrowser-harness -c \"new_tab('https://example.com'); wait_for_load()\"\n```\n\n### 获取页面信息\n```bash\nbrowser-harness -c \"print(page_info())\"  # URL、标题、尺寸\nbrowser-harness -c \"js('document.body.innerText')\"  # 页面文字内容\n```\n\n### 提取页面内容\n```bash\nbrowser-harness -c \"js('document.title')\"  # 标题\nbrowser-harness -c \"js('document.querySelectorAll(\\\"a\\\").length')\"  # 链接数量\n```\n\n### 关闭标签页\n```bash\nbrowser-harness -c \"close_tab()\"\n```\n\n## 注意事项\n\n- **新标签用 `new_tab()`**，不要用 `goto_url()`（会覆盖用户当前页面）\n- **截图后** 从 `C:\\Users\\he\\AppData\\Local\\Temp\\shot.png` 复制出来分析\n- **等待加载**：`wait_for_load()` 在导航后必须调用\n- **JS 渲染页面**：`web_fetch` 抓不到的页面可以用这个\n- **视频内容**：只能看到封面和文字，看不到实际视频内容\n- **云端浏览器**：设置 `BROWSER_USE_API_KEY` 和 `start_remote_daemon()` 可用远程浏览器\n\n## 故障排除\n\n### 连接失败\n```bash\n# 检查调试端口是否开启\nInvoke-RestMethod \"http://localhost:9222/json/version\"\n# 有返回说明端口正常\n```\n\n### 重启浏览器调试\n```bash\nStop-Process -Name msedge -Force\nStart-Process \"C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe\" --remote-debugging-port=9222\n```\n","tags":{"latest":"1.0.0"},"stats":{"comments":0,"downloads":692,"installsAllTime":4,"installsCurrent":4,"stars":0,"versions":1},"createdAt":1777554962248,"updatedAt":1779076166049},"latestVersion":{"version":"1.0.0","createdAt":1777554962248,"changelog":"Initial release","license":"MIT-0"},"metadata":null,"owner":{"handle":"19770117","userId":"s177nfat4zg5apf2zq1xz5161583ga2h","displayName":"19770117","image":"https://avatars.githubusercontent.com/u/168053038?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1780090591720}}