<!-- title: 谁替你开浏览器：三条路线横评 -->

# 谁替你开浏览器：三条路线横评

## 概述：同一台机器，装着四种“手”

让 Claude 摸得到网页，是 Skills 生态里最拥挤的赛道之一。本期第 7 轮做同赛道对比：不从榜单出发，而是直接以本机装机为样本——同一台机器上恰好同时装着这条赛道的全部三种架构外加一件空壳。三件正主用 Skill 工具直读 SKILL.md 全文逐行拆：**agent-browser**（自带 CLI 的速查表派）、**playwright**（借官方 CLI 的规则手册派）、**web-access**（直连日常 Chrome 的哲学书派）；另有一件 **chrome-automation**，调用后无任何正文注入，作为空壳对照组一并记录。核心发现：这条赛道的分水岭不是功能多少，而是“浏览器从哪来”——独立实例派和用户浏览器派写出了两套完全不同的说明书文体。

**拆解口径声明**：本期全部素材来自本机装机样本的 SKILL.md 原文与实测调用行为，检索通道受限未能联网，故社区活跃度一列不做数字评价，所有星数、仓库地址一律不引——评分只基于文件证据。

## 评测对比表

| Skill | 接口形态 | 功能完整度 (25%) | 设计质量 (25%) | 实战效果 (20%) | 上手难度 (15%) | 社区活跃度 (15%) | 加权总分* |
|-------|---------|------|------|------|------|------|------|
| web-access | 自建 CDP Proxy + curl | ★★★★★ | ★★★★☆ | ★★★★☆ | ★★☆☆☆ | 未核验 | **4.3** |
| agent-browser | 独立 CLI | ★★★★☆ | ★★★★☆ | ★★★★☆ | ★★★★☆ | 未核验 | **4.2** |
| playwright | 借 @playwright/mcp 的 CLI | ★★★☆☆ | ★★★★☆ | ★★★☆☆ | ★★★☆☆ | 未核验 | **3.7** |
| chrome-automation | —（空壳） | — | — | — | — | 未核验 | 不入榜 |

\* 社区活跃度未核验，总分按其余四维权重归一化折算。上手难度反向计分，星越多越容易上手。

## 三件正主逐个看

### agent-browser：给 Agent 的驾驶速查卡

定位是把“开浏览器”压缩成一页命令速查表。整个 SKILL.md 几乎全由代码块组成：`agent-browser open <url>` 打开页面，`snapshot -i` 拿到带 `@e1` 编号的可交互元素清单，然后 `click @e1`、`fill @e2 "text"` 完成操作。亮点在三处细节：一是**语义定位**作为 refs 之外的备胎——`agent-browser find text "Sign In" click`、`find label "Email" fill "user@test.com"`，找不到编号时可以直接按角色和文字下单；二是**登录态落盘**——`state save auth.json` 把登录会话存成文件，下次 `state load` 直接进后台，这是独立实例派解决登录问题的标准答案；三是**多会话并行**（`--session test1` 开两个互不干扰的浏览器）加 `--json` 机器可读输出，明显为自动化流水线而非人机对话设计。短板同样清楚：全文没有一句“什么时候不该用”、没有截图/反爬之外的边界提示，`--headed` 调试、`console`/`errors` 排错都写了，唯独不教你装——它假定 CLI 已经在机器上。这种“只讲方向盘、不讲驾校”的写法，上限取决于上游 CLI 的成熟度。

### playwright：规矩最细，出身藏在一行路径里

这一件借的是 Playwright 官方之力：wrapper 脚本用 `npx --package @playwright/mcp playwright-cli` 拉起官方 CLI，SKILL.md 自述安装方式为 `npm install -g @playwright/mcp@latest`。操作哲学与 agent-browser 同源——`open`、`snapshot` 拿元素编号、`click e15` 交互、操作后重新 snapshot 防 ref 过期。它真正的价值在**Guardrails（护栏）一节**，是三件里纪律写得最细的：“没有新快照时用 `eX` 占位并说明原因，不许用 run-code 绕过 refs”；“在本仓库截取工件一律放 `output/playwright/`，不许新增顶层目录”；开篇第一句更是立了规矩——"Treat this skill as CLI-first automation. Do not pivot to `@playwright/test` unless the user explicitly asks for test files"，明确不许顺手滑去写测试文件。References 分层加载（cli.md、workflows.md 按需打开）也是标准的上下文经济学。但它有一个实打实的硬伤：SKILL.md 里写死 `export PWCLI="$CODEX_HOME/skills/playwright/scripts/playwright_cli.sh"`，默认路径指向 `~/.codex/skills`——而本机实际装在 `~/.claude/skills/playwright`。照抄原文，变量指向一个不存在的位置。一行路径暴露了它从别的宿主环境移植而来的出身，也提醒所有人：跨宿主搬 Skill，路径这关没人替你过。

### web-access：不是开浏览器，是接管整个“联网”

三件里最重的一件，也是最不像说明书的一件。开篇不是命令，是方法论——“像人一样思考，兼顾高效与适应性的完成任务”，随后给出四步闭环：定义成功标准、选择起点、过程校验、完成判断。它的杀手锏在架构：不另起浏览器，而是通过 CDP Proxy 直连你**日常正在用的 Chrome**——登录态天然携带，`chrome://inspect` 勾选允许远程调试即接通。所有操作走本地 HTTP 接口（`localhost:3456` 的 `/new`、`/eval`、`/click`、`/screenshot`），连点击都分两档：`/click` 是 JS 快速点击，`/clickAt` 走 CDP 真实鼠标事件，“算用户手势，能触发文件对话框”；文件上传另有 `/setFiles` 直塞路径绕过对话框。思维密度也最高：“内容可能已在页面 DOM 中，交互只是展示手段”“搜索没命中不等于还没找对方法，也可能是目标不存在”——这些句子已经超出技能范畴，是通用联网方法论。亮点还有自学习设计：按域名把踩坑经验写进 `references/site-patterns/`，下次操作同站先读档案。短板是门槛：Node 22+、浏览器开关、Proxy 启动检查，三道前置；全文五千字级的哲学与表格，对只想点一下按钮的新手是认知过载。

## 逐项对比：四个分岔口

### 分岔口一：手从哪来

agent-browser 自己带 CLI，说明书只需要教命令；playwright 借官方 CLI，所以要写前置检查（`command -v npx`）和 wrapper；web-access 干脆自建一层 Proxy，把浏览器操作翻译成 curl 能打的 HTTP 接口。三种造法对应三种依赖风险：自带 CLI 最稳但分发成本最高；借来的 CLI 依赖上游不改名；自建 Proxy 换来最大自由，代价是用户要做一次环境手术。

### 分岔口二：浏览器从哪来（本赛道的真正分水岭）

agent-browser 和 playwright 起独立实例，干净、可并行、不碰用户隐私，但面对登录墙只有 `state save` 落盘这一条路；web-access 直连日常 Chrome，登录态白送，代价是必须立“礼貌条款”——原文写得极细：不经要求不碰用户已开的 tab、一切操作在自建后台 tab、任务结束自清理、Proxy 二十分钟无请求自动退出。要不要登录态，直接决定你该装哪一件。

### 分岔口三：手指怎么点

三件恰好给出三种寻址哲学。agent-browser 用 `@e1` 编号加语义 `find` 双通道；playwright 把 ref 纪律写成铁律（快照过期就重拍，禁止绕过）；web-access 完全不用编号，直接 `/eval` 对 DOM 说话，受阻时再降级到 GUI 点击——“程序化方式受阻时，GUI 交互是可靠的兜底”。编号制防手抖，直说 DOM 给自由，语义定位是折中，没有标准答案，只有场景取舍。

### 分岔口四：说明书怎么写

速查表（agent-browser）复制即用但无边界意识；规则手册（playwright）防走偏最好，连“工件放哪个目录”都管；哲学书（web-access）连子 Agent 分治怎么写 prompt 都教——“描述目标，避免用暗示具体手段的动词（搜索、抓取、爬取）”。文体差异的本质是作者对失控的想象：怕模型不会，就写速查表；怕模型走偏，就写护栏；怕模型死板，就写哲学。

## 空壳对照与场外一声

**chrome-automation**：两次调用注入均为零正文，SKILL.md 空货架。它证明了这条赛道也有占位选手——门牌挂了，屋里没家具。恰好与此前专栏做过的 SKILL.md 空货架审计互相印证：装机量不等于内容量。

**场外的第四条路**：本会话同时挂载着 playwright 的 MCP 插件形态——`browser_navigate`、`browser_snapshot`、`browser_click` 一整套“一个动作一个工具”的原生工具集，SKILL.md 几乎不承担教学。也就是说同一台机器上，同一件事有四种解法并存：自带 CLI、借来 CLI、自建 Proxy、MCP 工具集。Skill 生态和 MCP 生态在这条赛道正面相遇，而 Skill 的差异化武器恰好是 MCP 给不了的：行为准则、站点经验库和分治策略——工具给手，说明书给脑。

## 三条路线怎么走（图解）

```mermaid
mindmap
  root((给Agent开浏览器))
    独立CLI派
      agent-browser
        语义find加ref双通道
      playwright
        借官方CLI加护栏
    用户浏览器派
      web-access
        CDP直连带登录态
    MCP工具派
      playwright插件
        一动作一工具
    空壳
      chrome-automation
        门牌在屋无家具
```

一次“要登录态的网页操作”在三件里的不同路径：

```mermaid
flowchart TD
    A["任务：要登录态的网页操作"] --> B{"网页要不要登录态"}
    B -->|不需要| C["独立实例路线"]
    B -->|需要| D["日常浏览器路线"]
    C --> E["agent-browser<br/>state save 落盘"]
    C --> F["playwright-cli<br/>snapshot 拿编号"]
    D --> G["web-access<br/>CDP 直连已登录 Chrome"]
    E --> H["click @e1 交互"]
    F --> I["click e15 交互"]
    G --> J["eval 读DOM<br/>受阻降级 GUI 点击"]
    H --> K["对照结果收工"]
    I --> K
    J --> K
```

## 安装 / 使用命令

**agent-browser**（本机随机即用，SKILL.md 未附安装来源，装后可自检）：

```bash
agent-browser open https://example.com
agent-browser snapshot -i
agent-browser click @e1
agent-browser state save auth.json   # 登录态落盘，下次直接 load
```

**playwright**（SKILL.md 原文安装方式）：

```bash
npm install -g @playwright/mcp@latest
playwright-cli --help
# 本机修正：SKILL.md 默认路径指向 ~/.codex/skills，实际请按装机位置导出
export PWCLI="$HOME/.claude/skills/playwright/scripts/playwright_cli.sh"
"$PWCLI" open https://example.com --headed
```

（若 wrapper 脚本随包缺失，退回全局安装的 `playwright-cli` 即可。）

**web-access**（三道前置）：

```bash
bash ~/.claude/skills/web-access/scripts/check-deps.sh
# Chrome 地址栏打开 chrome://inspect/#remote-debugging 勾选允许远程调试，需 Node 22+
curl -s "http://localhost:3456/new?url=https://example.com"
```

## 推荐排行榜

- **综合设计第一：web-access（4.3）**——唯一把“联网”而非“开浏览器”当问题的选手，登录态加自学习站点档案是硬壁垒；前提是你愿意做一次环境配置。
- **新手第一件：agent-browser（4.2）**——速查表复制即跑，语义定位兜底，登录态落盘补齐独立实例派最大的短板。
- **纪律课代表：playwright（3.7）**——护栏写得最好的一课，但照抄即踩路径坑，建议克隆后先改 `PWCLI` 一行再用。
- **避雷：chrome-automation**——空壳，装了等于没装。

这条赛道给想写 Skill 的人的启示很直接：先想清楚你的浏览器从哪来，再决定说明书该写成速查表、护栏还是哲学书——三件正主恰好各占一种文体，而空壳那件，一种文体都没写。

## 参考来源

1. [agent-browser SKILL.md 原文](https://github.com/anthropics/skills) — 本机 `~/.claude/skills/agent-browser/SKILL.md`，经 Skill 工具全文读取；文中命令面、state save、sessions、Guardrails 均引自原文（上游仓库本期未能联网核验）
2. [playwright SKILL.md 原文](https://www.npmjs.com/package/@playwright/mcp) — 本机 `~/.claude/skills/playwright/SKILL.md`，wrapper 写法、`$CODEX_HOME` 路径与 Guardrails 段为原文引用
3. [web-access SKILL.md 原文](https://github.com/anthropics/skills) — 本机 `~/.claude/skills/web-access/SKILL.md`，浏览哲学、CDP Proxy API、站点经验与子 Agent 分治各节为原文引用
4. [Skills 聚合市场 skillsmp.com](https://skillsmp.com) — 生态延伸阅读入口，本期星数与下载量数据未引（离线拆解，未经核验一律不记）
5. [mcpservers.org Agent Skills Library](https://mcpservers.org/agent-skills) — 生态延伸阅读入口，MCP 工具派与 Skill 派的对照背景参考

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
