<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ai-Skill on ZRONG&#39;s BLOG</title>
    <link>https://blog.zengrong.net/tag/ai-skill/</link>
    <description>Recent content in Ai-Skill on ZRONG&#39;s BLOG</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-CN</language>
    <lastBuildDate>Mon, 20 Apr 2026 18:06:08 +0800</lastBuildDate><atom:link href="https://blog.zengrong.net/tag/ai-skill/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>3个最好的浏览器自动化Skill，让AI全自动修复WEB前端BUG</title>
      <link>https://blog.zengrong.net/post/browser-automation-tools-for-ai-coding/</link>
      <pubDate>Mon, 20 Apr 2026 18:06:08 +0800</pubDate>
      <author>zrong(Jacky)</author>
      <guid>https://blog.zengrong.net/post/browser-automation-tools-for-ai-coding/</guid>
      <description>
        
          &lt;p&gt;经常有群友问我：Coding 过程中，怎么把测试和编码都自动化起来？&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-1.png&#34; alt=&#34;全面自动化开发&#34;&gt;&lt;/p&gt;
&lt;p&gt;看看你的 Coding 流程，是不是还在用下面这种方式和 AI 沟通：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Coding 之后，手动调试。&lt;/li&gt;
&lt;li&gt;把后端 &lt;code&gt;log&lt;/code&gt; 发给 Agent。&lt;/li&gt;
&lt;li&gt;在前端控制台里复制 &lt;code&gt;log&lt;/code&gt; 内容发给 Agent。&lt;/li&gt;
&lt;li&gt;Agent 调整完成后，再重复上面的 1 到 3 步。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这个流程其实挺低效。&lt;/p&gt;
&lt;p&gt;让 Agent 读取后端 &lt;code&gt;log&lt;/code&gt; 其实很方便。你只要在 &lt;code&gt;AGENTS.md&lt;/code&gt; 或 &lt;code&gt;CLAUDE.md&lt;/code&gt; 里把后端 &lt;code&gt;log&lt;/code&gt; 的获取方式写清楚，Agent 就会自己去拿。比如下面这样：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-2.png&#34; alt=&#34;告诉 Agent 获取后端 log 的方法&#34;&gt;&lt;/p&gt;
&lt;p&gt;当然，后台管理不是本文重点。本文着重讨论曾老师日常在 Web 前端开发里使用的浏览器自动化工具。有了这些工具，你就能把 Agent 真正接进完整的自动化 Coding 流程里。&lt;/p&gt;
&lt;p&gt;下面按我的使用频率，来介绍这 3 个主力工具，最后再补一个常备的 Playwright。&lt;/p&gt;
&lt;h2 id=&#34;agent-browser&#34;&gt;Agent Browser&lt;/h2&gt;
&lt;p&gt;这是曾老师用得最多的 skill。GitHub 上已经有 30k star，主要用 Rust 编写，项目地址：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/vercel-labs/agent-browser&#34;&gt;https://github.com/vercel-labs/agent-browser&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;建议安装到全局（macOS）：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;brew install agent-browser
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;agent-browser install  &lt;span class=&#34;c1&#34;&gt;# 下载 Chrome for Testing，只需要执行一次&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;将 Agent 使用的 skill 安装到全局：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;npx skills add vercel-labs/agent-browser@agent-browser -g
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Agent Browser 可以读取 DOM 和控制台信息，在开发过程中模拟开发者执行点击、拖动等操作。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-3.png&#34; alt=&#34;agent-browser-help&#34;&gt;&lt;/p&gt;
&lt;p&gt;有了上面的能力，Agent 基本就能代替你去做调试了。只要把通过条件设清楚，理论上它会一直干到功能完成。&lt;/p&gt;
&lt;p&gt;Agent Browser 相对于其它工具最大的优势，就是快。后面我讲其它工具时还会再提这点。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-4.png&#34; alt=&#34;Agent-Browser&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;chrome-devtools-mcp&#34;&gt;chrome-devtools-mcp&lt;/h2&gt;
&lt;p&gt;这是 Google 官方提供的 Chrome MCP 工具，主要用 TypeScript 编写，GitHub 上已经有 36.4k star，项目地址：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/ChromeDevTools/chrome-devtools-mcp&#34;&gt;https://github.com/ChromeDevTools/chrome-devtools-mcp&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-5.png&#34; alt=&#34;chrome-devtools-mcp&#34;&gt;&lt;/p&gt;
&lt;p&gt;由于这是 Google 官方提供的工具，理论上你可以用它来做任何事。&lt;/p&gt;
&lt;p&gt;但有一些限制让我很不爽：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;必须开一个临时的 &lt;code&gt;profile&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;如果退出了某个 Agent session，这个 session 里打开的 Chrome 进程也会被 kill。&lt;/li&gt;
&lt;li&gt;默认情况下，只有一个 session 能控制一个 Chrome 进程。&lt;/li&gt;
&lt;li&gt;默认情况下，无法连接已经存在的 Chrome 进程。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;例如，在 macOS 上，需要先创建一个新的 Chrome 实例，再连接到临时 &lt;code&gt;profile&lt;/code&gt;：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;/Applications/Google&lt;span class=&#34;se&#34;&gt;\ &lt;/span&gt;Chrome.app/Contents/MacOS/Google&lt;span class=&#34;se&#34;&gt;\ &lt;/span&gt;Chrome --remote-debugging-port&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;9222&lt;/span&gt; --user-data-dir&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/tmp/chrome-profile-stable
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;另一个让我挺不爽的问题是：&lt;strong&gt;速度太慢了。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-6.png&#34; alt=&#34;被 Chrome 打开的界面&#34;&gt;&lt;/p&gt;
&lt;p&gt;不知道是不是因为用了 MCP 协议。跟 Agent Browser 对比着用的时候，曾老师总觉得 &lt;code&gt;chrome-devtools-mcp&lt;/code&gt; 慢了半拍。当然，也可能只是因为 Claude Code 被限速了……&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-7.png&#34; alt=&#34;让 Codex 使用 chrome-devtools-mcp 打开页面&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;browser-use&#34;&gt;Browser Use&lt;/h2&gt;
&lt;p&gt;早期曾老师挺常用这个工具。它主要用 Python 编写，GitHub 上已经有 88.9k star，项目地址：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/browser-use/browser-use&#34;&gt;https://github.com/browser-use/browser-use&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;建议安装到全局环境中（&lt;code&gt;uv&lt;/code&gt; 是 Python 的现代包管理器）：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;uv tool add browser-use
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;browser-use install &lt;span class=&#34;c1&#34;&gt;# 安装 Chromium 浏览器（只需一次）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;安装 Agent 使用的 skill 到全局：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;npx skills add browser-use/browser-use@browser-use -g
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-8.png&#34; alt=&#34;Browser Use&#34;&gt;&lt;/p&gt;
&lt;p&gt;和 Agent Browser 类似，Browser Use 本身也是个独立的工具，可以在命令行中独立运行。&lt;/p&gt;
&lt;p&gt;你可以借助大模型的力量，让 Browser Use 帮你做各种事……当然，也可以在 Claude Code、Codex 等任意 Agent 里使用。&lt;/p&gt;
&lt;p&gt;在运行过程中，Browser Use 会贴心地把浏览器 DOM 里的内容标注清楚，方便你在和 Agent 对话时描述位置。（虽然曾老师觉得这件事没那么必要。）&lt;/p&gt;
&lt;p&gt;注意，在日常开发里，你其实不用提这么具体的要求。我这里写得细一点，只是为了行文方便。你只要给出一个需要验证的结果，大模型会自己去想该怎么点击。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-9.png&#34; alt=&#34;在 TUI 中控制浏览器&#34;&gt;&lt;/p&gt;
&lt;p&gt;当然，Browser Use 能做的远不止前端开发。你也可以用它来自动化日常工作，比如登录带验证码的网站、买机票之类的事情……&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.zengrong.net/uploads/2026/browser-automation-tools-for-ai-coding-10.png&#34; alt=&#34;展现 DOM&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;playwright&#34;&gt;Playwright&lt;/h2&gt;
&lt;p&gt;Playwright 是微软开源的一套 Web 自动化工具，做的事情和前面几个工具类似。GitHub 上已经有 86.9k star。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/microsoft/playwright&#34;&gt;https://github.com/microsoft/playwright&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;曾老师日常会用 Playwright 做完整的自动化测试。但只要涉及模拟操作网页，还是更常用上面那 3 个。严格说，Playwright 更像自动化测试基座，不完全算前面那类给 Agent 用的浏览器操作工具，所以我把它放在最后单独说。&lt;/p&gt;
&lt;h2 id=&#34;web-自动化小结&#34;&gt;Web 自动化小结&lt;/h2&gt;
&lt;p&gt;下面几张图是 Codex 帮曾老师画的。讲真，跟曾老师自己画的比，还是差那么一点点。算了，凑合用吧……&lt;/p&gt;
&lt;h3 id=&#34;使用场景&#34;&gt;使用场景&lt;/h3&gt;
&lt;figure&gt;
  &lt;div class=&#34;mermaid&#34;&gt;
  
flowchart TD
    Start[&#34;我现在要做什么？&#34;]

    Debug[&#34;前端调试&lt;br/&gt;看 Console / Network / Performance&#34;]
    Test[&#34;写稳定测试 / CI / 跨浏览器自动化&#34;]
    FastOps[&#34;让 Agent 快速打开网页、点击、填表、截图&#34;]
    Platform[&#34;做更完整的 Browser Agent 平台能力&lt;br/&gt;Cloud / Profile / Remote Browser / Agent SDK&#34;]

    CDM[&#34;chrome-devtools-mcp&#34;]
    PW[&#34;Playwright&#34;]
    AB[&#34;agent-browser&#34;]
    BU[&#34;browser-use&#34;]

    Start --&gt; Debug
    Start --&gt; Test
    Start --&gt; FastOps
    Start --&gt; Platform

    Debug --&gt; CDM
    Test --&gt; PW
    FastOps --&gt; AB
    Platform --&gt; BU

    AB -. &#34;也能做部分调试，但不是强项&#34; .-&gt; Debug
    BU -. &#34;也能做网页操作，但更偏平台层&#34; .-&gt; FastOps
    PW -. &#34;也能直接脚本化调试页面&#34; .-&gt; Debug
    CDM -. &#34;可做基础自动化，但核心价值是调试观察&#34; .-&gt; FastOps

  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;h3 id=&#34;选型表格&#34;&gt;选型表格&lt;/h3&gt;
&lt;figure&gt;
  &lt;div class=&#34;mermaid&#34;&gt;
  
block-beta
  columns 5

  h0[&#34;能力&#34;] h1[&#34;Playwright&#34;] h2[&#34;chrome-devtools-mcp&#34;] h3[&#34;agent-browser&#34;] h4[&#34;browser-use&#34;]

  r1[&#34;调试 / 可观测性&#34;] r1a[&#34;中\n可脚本调试，但不是主场&#34;] r1b[&#34;强\nConsole / Network / Performance&#34;] r1c[&#34;中\n有 console/errors/snapshot&#34;] r1d[&#34;中\n可观察，但不如 DevTools 专精&#34;]
  r2[&#34;测试 / CI&#34;] r2a[&#34;强\n最成熟的测试框架&#34;] r2b[&#34;弱\n不是测试框架&#34;] r2c[&#34;弱\n偏操作型 CLI&#34;] r2d[&#34;中\n能自动化，但非传统测试主力&#34;]
  r3[&#34;跨浏览器&#34;] r3a[&#34;强\nChromium / Firefox / WebKit&#34;] r3b[&#34;弱\n主要面向 Chrome&#34;] r3c[&#34;弱\n主要走 Chrome/CDP&#34;] r3d[&#34;弱\n重点不在跨浏览器&#34;]
  r4[&#34;Agent 友好度&#34;] r4a[&#34;中\n可用但更偏工程脚本&#34;] r4b[&#34;中\n通过 MCP 接给 Agent&#34;] r4c[&#34;强\nsnapshot + @ref 很适合 Agent&#34;] r4d[&#34;强\nCLI / SDK / Agent workflow&#34;]
  r5[&#34;云 / 远程浏览器&#34;] r5a[&#34;中\n可 connect_over_cdp&#34;] r5b[&#34;弱\n核心不是浏览器基础设施&#34;] r5c[&#34;中\n支持 provider / CDP 连接&#34;] r5d[&#34;强\nCloud / Remote Browser 是强项&#34;]
  r6[&#34;登录态 / Profile 复用&#34;] r6a[&#34;中\n可保存 storage state&#34;] r6b[&#34;弱\n不以此为主&#34;] r6c[&#34;中\nprofile / session-name / auto-connect&#34;] r6d[&#34;强\nprofile / auth / sync 体系更完整&#34;]

  classDef header fill:#1f2937,stroke:#111827,color:#fff;
  classDef rowhead fill:#e5e7eb,stroke:#9ca3af,color:#111827;
  classDef strong fill:#dcfce7,stroke:#22c55e,color:#14532d;
  classDef medium fill:#fef3c7,stroke:#f59e0b,color:#92400e;
  classDef weak fill:#fee2e2,stroke:#ef4444,color:#991b1b;

  class h0,h1,h2,h3,h4 header
  class r1,r2,r3,r4,r5,r6 rowhead

  class r1b,r2a,r3a,r4c,r4d,r5d,r6d strong
  class r1a,r1c,r1d,r2d,r4a,r4b,r5a,r5c,r6a,r6c medium
  class r2b,r2c,r3b,r3c,r3d,r5b,r6b weak

  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;h3 id=&#34;关系&#34;&gt;关系&lt;/h3&gt;
&lt;figure&gt;
  &lt;div class=&#34;mermaid&#34;&gt;
  
graph TD
    CDP[&#34;CDP / Chrome DevTools Protocol&#34;]
    PW[&#34;Playwright&#34;]
    CDM[&#34;chrome-devtools-mcp&#34;]
    BU[&#34;browser-use&#34;]
    AB[&#34;agent-browser&#34;]
    Agent[&#34;AI Agent / Codex / Claude / Cursor&#34;]
    Chrome[&#34;Chrome / Chromium&#34;]
    Cloud[&#34;Cloud Browser / Remote Browser&#34;]

    CDP --&gt; Chrome
    PW --&gt; Chrome
    PW -. &#34;可通过 connect_over_cdp 接入&#34; .-&gt; CDP

    CDM --&gt; CDP
    CDM --&gt; Chrome
    CDM -. &#34;把 DevTools 能力暴露为 MCP tools&#34; .-&gt; Agent

    AB --&gt; CDP
    AB --&gt; Chrome
    AB -. &#34;CLI + snapshot/@eN refs&#34; .-&gt; Agent

    BU --&gt; CDP
    BU --&gt; Chrome
    BU --&gt; Cloud
    BU -. &#34;CLI / SDK / Agent Platform&#34; .-&gt; Agent
    PW -. &#34;可接入 browser-use 提供的云浏览器&#34; .-&gt; BU

    classDef proto fill:#f5f5f5,stroke:#666,color:#111;
    classDef tool fill:#e8f1ff,stroke:#4a78c2,color:#111;
    classDef platform fill:#eaf7ea,stroke:#4f8a4f,color:#111;
    class CDP proto;
    class PW,CDM,AB tool;
    class BU platform;

  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;h2 id=&#34;最重要的总结&#34;&gt;最重要的总结&lt;/h2&gt;
&lt;p&gt;什么？你说曾老师数学不行，介绍了四个工具？&lt;/p&gt;
&lt;p&gt;怎么，&lt;strong&gt;买三送一。&lt;/strong&gt; 你还不乐意了？&lt;/p&gt;

        
      </description>
    </item>
    
  </channel>
</rss>
