BM

briqt/my-agent-browser

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

21 stars 2 forks 质量 70 趋势 24

可靠的浏览器自动化技能,适用于AI代理——基于Chrome生命周期管理和工作流程指导,基于chrome-devtools-mcp。

概览

Chrome-DevTools-MCP 的生产准备封装器。Chrome-DevTools-MCP 提供浏览器 MCP 工具,但 Chrome 进程管理、多会话共享和故障恢复完全由你负责。该项目增加了运营层,使 AI 代理能够可靠地使用浏览器。 - 自动在你的系统中寻找 Chrome(macOS/Linux/Windows,搜索包括 Edge/Brave/Arc/Chromium 在内的 10+ 条路径)- 懒惰启动 — Chrome 仅在第一个工具/调用时启动,不在代理启动时启动 - 多个代理会话通过浏览器共享一个 Chrome 实例。

概述(AI 翻译)

Chrome-DevTools-MCP 的生产准备封装器。Chrome-DevTools-MCP 提供浏览器 MCP 工具,但 Chrome 进程管理、多会话共享和故障恢复完全由你负责。该项目增加了运营层,使 AI 代理能够可靠地使用浏览器。

中文文档

这在裸 chrome-devtools-mcp 上增加了什么

Chrome 生命周期管理

  • 自动在你的系统上寻找Chrome(macOS/Linux/Windows,搜索10+路径,包括Edge/Brave/Arc/Chromium)
  • 懒启动 — Chrome 只在第一个 tools/call 启动,不在代理启动时启动
  • 多个代理会话通过browser.lock引用计数共享一个Chrome实例
  • 最后一次退出会话会自动关闭 Chrome
  • 代理崩溃后无孤儿:父心跳检测 + 启动孤儿进程清理
  • WSL / 无头Linux:自动检测和配置显示(WSLg,Wayland,X11)

故障恢复

  • 通过CDP端口探针进行Chrome崩溃检测——绝不仅信任错误文本
  • 确认崩溃→自动重启Chrome,重写MCP响应以告知代理重新导航
  • MCP 过时状态(引用关闭标签页)→仅重启 MCP 子进程,Chrome 保持不变

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

my-agent-browser

Production-ready wrapper around chrome-devtools-mcp. chrome-devtools-mcp provides the browser MCP tools, but leaves Chrome process management, multi-session sharing, and fault recovery entirely to you. This project adds the operational layer so AI agents can use the browser reliably.

中文文档

What this adds over bare chrome-devtools-mcp

Chrome Lifecycle Management

  • Auto-find Chrome on your system (macOS/Linux/Windows, searches 10+ paths including Edge/Brave/Arc/Chromium)
  • Lazy start — Chrome only launches on first tools/call, not at agent startup
  • Multiple agent sessions share one Chrome instance via browser.lock reference counting
  • Last session to exit automatically closes Chrome
  • No orphans after agent crash: parent heartbeat detection + startup orphan process cleanup
  • WSL / headless Linux: auto-detect and configure DISPLAY (WSLg, Wayland, X11)

Fault Recovery

  • Chrome crash detection via CDP port probe — never trusts error text alone
  • Confirmed crash → auto-relaunch Chrome, rewrite MCP response to tell agent to re-navigate
  • MCP stale state (referencing closed tab) → restart only the MCP child process, Chrome stays
  • Profile lock leftover (SingletonLock after hard kill) → auto-clean before launch

Config-driven + Anti-detection

  • Headless mode, proxy, viewport size, custom launch args — all Chrome startup flags configurable
  • evaluate_script stack traces are stripped of the pptr: marker and the MCP install path (which normally leaks your OS username) — measured against a site-origin trap, see anti-detection.md
  • Flag recommendations backed by one-flag-at-a-time measurements rather than folklore
  • Direct connection to existing Chrome (browserUrl mode, for pre-authenticated long-lived sessions)
  • Opt-in background tabs via mcp.backgroundNewPages (default false), preserving explicit per-call choices

Agent Workflow Guidance (SKILL.md)

  • Heavy pages: file-based snapshots to prevent DOM overflow crashes
  • Error recovery: stale UIDs, timeouts, Chrome restart — correct response for each
  • Multi-tab: open/extract/close pattern, UID isolation between tabs
  • Scraping: URL-based pagination, lazy-load triggering, JS extraction
  • Login flows: persistent profile, automated credentials, connect to existing session

Install

npx skills add briqt/my-agent-browser -g -y
npm install -g [email protected]
mkdir -p ~/.config/agent-skills/my-agent-browser
cp ~/.agents/skills/my-agent-browser/config.example.json ~/.config/agent-skills/my-agent-browser/config.json

Then register the MCP server in your agent:

Claude Code

claude mcp add browser -s user -- node ~/.agents/skills/my-agent-browser/scripts/start-mcp.js
在 GitHub 查看完整 README

安装

npx skills add briqt/my-agent-browser -g -y
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "browser": { "command": "node", "args": ["~/.agents/skills/my-agent-browser/scripts/start-mcp.js"] } } }