用途:Playwriter 让 AI 智能体连接你正在运行的 Chrome,而非新建无头实例,因此已有登录、Cookie、扩展和标签页状态都会保留。适合自动化需登录的站点(如 Gmail、GitHub、内部工具)、跨多步的有状态操作(购物车、多步表单)、MCP 集成控制浏览器、会话录制与 CDP 调试,以及通过隧道做远程浏览器自动化。与 agent-browser 的区别:后者新建隔离的无头浏览器,适合 CI;Playwriter 连接现有已认证会话。
主要能力:通过 -e/--eval 在会话中执行任意 Playwright 代码;提供 snapshot({ page }) 无障碍树文本、screenshotWithAccessibilityLabels({ page }) 带颜色标记的截图、getPageMarkdown()、waitForPageLoad()、getLatestLogs()、getCleanHTML()、getReactSource() 等内置全局;state 对象在同一会话多次调用间持久化;支持网络请求拦截与录屏(recording.start/stop)。MCP 暴露 execute 与 reset 两个工具。
使用方式:先安装 Chrome 扩展(扩展 ID jfeammnjpkecdekppnclgkkffahnhfhe),点击图标使标签页变绿启用;再安装 CLI:npm install -g playwriter 或 npx playwriter@latest --help。扩展会在 localhost:19988 自动启动 WebSocket 中继。核心流程为观察→操作→观察,例如:playwriter session new;playwriter -s 1 -e 'await page.goto("https://example.com")';playwriter -s 1 -e 'await snapshot({ page })';playwriter -s 1 -e 'await page.locator("aria-ref=e5").click()'。会话管理命令有 session new/list/delete/reset。远程可用 playwriter serve --token my-secret --replace,再以 --host 与 --token 连接。
限制与注意:需 Chrome 运行且扩展已启用,否则 :19988 连接被拒;执行超时可用 --timeout 30000 调整;点击失败常因弹窗遮挡,应先 snapshot 确认;CDP 断开可用 session reset 恢复。代码需用单引号包裹,多行用 heredoc。具体收费、价格与平台支持范围资料未提供。