项目详情

Playwright CLI

给 coding agent 的浏览器 CLI——微软公开押注「CLI + Skills 比 MCP 更省 token」的新路线

GitHub 地址 Apache-2.0 13.3k Stars Node.js 18+ v0.1.19

更新于 2026-09-14

← 返回汇总
项目速览

一句话定位

浏览器自动化从「工具schema」退回「命令行」

微软官方的 Playwright 命令行界面,2026 年复活重生:60+ 个面向 AI coding agent 的原子命令(open/type/click/snapshot/find/eval……),配合 install --skills 一键装进 Claude Code / GitHub Copilot。核心卖点写在 README 第一屏:不把页面数据强塞进 LLM 上下文——CLI 调用比 MCP 工具 schema + 完整可访问性树省得多。同一团队还维护 playwright-mcp,两条路线官方并列供选。

项目速览

核心数据

13.3k
Stars(含历史)
60+
原子命令
2 条命
2020 → 2026
0.1.x
版本阶段
来龙去脉

一个仓库的两条命

2020-06 第一条命:microsoft/playwright-cli 诞生——录制生成代码、检查选择器、截图的实验 CLI
2021 功能并入 Playwright 主仓库(npx playwright codegen 等),独立 CLI 停止演进——「被自己吸收」
2025 playwright-mcp 走红:MCP 把浏览器变 agent 工具,可访问性树 + ref(e1/e2/e3)交互模型成为事实标准
2026 第二条命:同一仓库复活,全新定位——coding agent 专用 CLI + SKILLS,README 直接对标自家 MCP:「agent 时代 CLI 更省 token」
教训与洞察 第一次死于「功能并入主库」;第二次的差异化恰好是「不是库、不是 MCP server,是命令行」——形态即卖点
观察 微软同时下注两条路线并公开对比,是罕见的产品诚实,也是对 agent 工具形态未定局的对冲
🔥 核心论点

CLI + Skills vs MCP:token 经济学

MCP 路线(playwright-mcp) 连接即加载整套工具 schema(browser_click / browser_type / …) 每次交互返回完整可访问性树快照——页面越大越贵 优势:持久会话状态 · 富内省 · 迭代式页面推理 适合:探索式自动化 · 自愈测试 · 长时自治循环 上下文成本随页面复杂度线性膨胀 痛点:大代码库 + 测试 + 推理共享同一个有限上下文窗口 schema 与页面树挤占的是「思考空间」 CLI 路线(playwright-cli + SKILLS) skill 只是一页 Markdown 教学文档,随取随用 按需窄取:find "Sign in" 只回匹配节点 snapshot --depth=N 控制树展开深度,切片取用 无 skill 也能跑:agent 自己读 --help 就会上手 上下文成本由 agent 按需决定 README 原话:不强制把页面数据塞进 LLM 高吞吐 coding agent 在大代码库场景的优先选择 同门双轨:微软官方同时维护两条路线并给出选择指南——CLI 供「平衡浏览器自动化与大代码库」的高吞吐 agent,MCP 供「持续浏览器上下文更重要」的循环。 (两条路线共享 Playwright 引擎与 ref 交互模型;snapshot 的 e21/e35 元素引用与 MCP 完全同构。)
CLI 路线(本项目) MCP 路线 痛点
能力矩阵

60+ 原子命令:十二类全覆盖

类别代表命令
核心交互open click fill --submit drag drop --path select upload check hover
感知(省 token 关键)snapshot [--depth=N] find "text" / --regex eval——窄取代替全树
导航/键盘/鼠标goto go-back press keydown/keyup mousemove mousewheel
标签页tab-list/new/close/select
存储state-save/load + cookies / localStorage / sessionStorage 全套 CRUD
网络route mock 请求 · route-list · unroute
取证(DevTools)console requests request <i> tracing-start/stop pdf screenshot [--hires]
录制回放recording-start/stop(输出 Playwright 代码)· video-start/stop
标注highlight [ref] --style= 持久高亮 · generate-locator 生成选择器
会话管理-s=name 多会话 · list close-all kill-all
监控show 可视化仪表盘 · show --annotate UI 评审模式
连接attach --extension=chrome · attach --cdp=<url> 接管真实浏览器 · detach
核心机制

会话模型:一个 agent 一台浏览器,互不打扰

  • 命名会话:-s=todo-app 让每个项目/每个 agent 绑定独立浏览器实例;playwright-cli list 总览
  • 环境变量绑定:PLAYWRIGHT_CLI_SESSION=todo-app claude .——agent 全程无感使用专属会话
  • 内存态默认:cookies 与 storage 在会话内保留、关浏览器即弃;--persistent 落盘跨重启
  • 清理三板斧:close(页)/close-all(全部优雅)/kill-all(强杀进程)——agent 失控时的保险丝
# 两个 agent 各自的浏览器,同时跑
playwright-cli -s=frontend open http://localhost:3000
playwright-cli -s=e2e open https://staging.site

# 人类围观 agent 干活
playwright-cli show        # 实时仪表盘

# 会话状态跨命令保持
playwright-cli open https://shop.dev
playwright-cli fill e12 "user@mail.com"
playwright-cli click e15   # 登录态保留
人机协作

show:agent 干活,人类围观 + 随时接管

  • 会话网格:所有活跃会话按 workspace 分组,每格实时屏幕直播 + 当前 URL + 页面标题——多个 agent 并行跑浏览器的监控塔
  • 会话详情:点开单会话,标签栏 + 导航控件 + 完整远程控制——点进视口即接管鼠标键盘,Esc 释放
  • 批处理:网格上一键关闭会话 / 清理休眠数据
  • UI 评审模式:show --annotate 专为设计反馈打造
定位洞察

这是「agent 浏览器自动化」独有的新需求:浏览器在后台无头干活,人类需要可观测、可介入、可夺回的窗口。show 把监督做成了产品功能——比传统截图/日志流高一个层级。

工程质量

为 agent 的工作留证据链

视频 + 章节标记

video-start 录屏,video-chapter "登录失败" 打章节,video-show-actions 给每个动作加可视标注——agent 测试报告直接是可跳转的录像。

Playwright 全家桶继承

tracing 起停、run-code 跑任意 Playwright 片段、recording 把人工操作转录为代码——CLI 是薄壳,底下是成熟引擎。

调试三件套

highlight 持久高亮元素(自定义 CSS 样式)、console 按级别过滤、requests 逐条网络请求——agent 排障不用截图猜。

上手

三步:装 CLI → 装 skills → 放话

# 1. 全局安装
npm install -g @playwright/cli@latest

# 2. 给 agent 装 skill(Claude Code / Copilot)
playwright-cli install --skills

# 3. 对 agent 说
> Test the "add todo" flow on
> https://demo.playwright.dev/todomvc
> using playwright-cli.
  • Skills-less 也能用:不装 skill,agent 自己读 --help 就能上手——「指个方向让它 cook」
  • 人类同样可用:open --headed 看着浏览器,type/press/check 手动操作同一套命令——agent 与人共享接口
  • 设备仿真:open --mobile / --device="iPhone 15" / --browser=chrome
  • 接管现有浏览器:Chrome 扩展连接或 CDP 端点 attach——带上你已登录的真实环境
生态位

agent 浏览器工具的三国杀

playwright-mcpplaywright-cli社区 agent-browser 类
形态MCP server(工具 schema)CLI + SKILL.md各异(浏览器内插件/CLI)
上下文成本schema + 全树快照按需窄取(find/--depth)看实现
适合长循环自治 · 富内省高吞吐 coding agent · 大代码库并行轻量个人场景
维护方微软官方微软官方社区
引擎前两者共享 Playwright 引擎与 ref 交互模型(e21/e35)

真正的看点不是命令清单,而是「agent 工具该长什么样」的路线之争有了官方对照实验——微软双轨并行,让市场用 token 账单投票。

风险提示

需要警惕

潜力评估

评分:8.0 / 10 · tracking

战略意义
9.0
设计理念
9.0
工程质量
8.5
成熟度
5.5
生态验证
6.0

评分重心在「路线价值」而非「当前完成度」:它是 CLI-vs-MCP 之争里目前最高规格的参赛者。若 token 收益被社区实测确认,会成为 coding agent 浏览器操作的事实默认;若被证伪,则是微软一次干净的对冲。两种结局都值得跟踪。


上一个
colibrì
下一个
AIDE ML
1 / 13