关于 playwright
playwright 是一项以命令行为先的技能,通过 playwright-cli 从终端操作真实浏览器。它使用页面快照和元素引用来引导交互,并提供表单、多标签页和追踪工作流。
主要功能
- 01通过命令行启动并控制浏览器
- 02获取页面快照并使用元素引用交互
- 03填写表单并在多个标签页间导航
- 04记录追踪并捕获截图或 PDF
适用场景
- 01自动化浏览器表单流程
- 02交互前检查页面元素
- 03通过追踪调试多步骤界面流程
- 04捕获浏览器截图或 PDF
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ letta-ai/ skills --skill playwright安装后在 Claude Code 中输入/playwright确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSE.txtNOTICE.txtagents/openai.yamlassets/playwright-small.svgreferences/cli.mdworkflows.mdscripts/playwright_cli.sh详细介绍
Playwright CLI 技能
使用 playwright-cli 从终端操控真实浏览器。优先使用随附的包装脚本,这样即使未全局安装 CLI,也能正常运行。
将此技能视为以 CLI 为先的自动化工具。除非用户明确要求测试文件,否则不要转而使用 @playwright/test。
前置条件检查(必需)
在提出命令之前,检查是否可用 npx(包装脚本依赖它):
command -v npx >/dev/null 2>&1
如果不可用,请暂停并要求用户安装 Node.js/npm(它们会提供 npx)。请逐字提供以下步骤:
# Verify Node/npm are installed
node --version
npm --version
# If missing, install Node.js/npm, then:
npm install -g @playwright/cli@latest
playwright-cli --help
确认存在 npx 后,继续使用包装脚本。全局安装 playwright-cli 是可选的。
技能路径(设置一次)
# Set SKILL_DIR to the directory containing this SKILL.md
export PWCLI="<path-to-skill>/scripts/playwright_cli.sh"
将 <path-to-skill> 替换为实际的技能安装目录(例如 .skills/playwright 或 ~/.letta/skills/playwright)。
快速开始
使用包装脚本:
"$PWCLI" open https://playwright.dev --headed
"$PWCLI" snapshot
"$PWCLI" click e15
"$PWCLI" type "Playwright"
"$PWCLI" press Enter
"$PWCLI" screenshot
如果用户更倾向于全局安装,也可以使用以下方式:
npm install -g @playwright/cli@latest
playwright-cli --help
核心工作流
- 打开页面。
- 获取快照,以取得稳定的元素引用。
- 使用最新快照中的引用进行交互。
- 导航或 DOM 发生重大变化后,重新获取快照。
- 在有用时捕获产物(屏幕截图、PDF、跟踪记录)。
最简循环:
"$PWCLI" open https://example.com
"$PWCLI" snapshot
"$PWCLI" click e3
"$PWCLI" snapshot
何时重新获取快照
在以下情况后重新获取快照:
- 导航
- 点击会大幅改变 UI 的元素
- 打开/关闭模态框或菜单
- 切换标签页
引用可能会失效。如果命令因引用缺失而失败,请重新获取快照。
推荐模式
填写并提交表单
"$PWCLI" open https://example.com/form
"$PWCLI" snapshot
"$PWCLI" fill e1 "[email protected]"
"$PWCLI" fill e2 "password123"
"$PWCLI" click e3
"$PWCLI" snapshot
使用跟踪记录调试 UI 流程
"$PWCLI" open https://example.com --headed
"$PWCLI" tracing-start
# ...interactions...
"$PWCLI" tracing-stop
多标签页操作
"$PWCLI" tab-new https://example.com
"$PWCLI" tab-list
"$PWCLI" tab-select 0
"$PWCLI" snapshot
包装脚本
包装脚本使用 npx --package @playwright/cli playwright-cli,因此无需全局安装即可运行 CLI:
"$PWCLI" --help
除非仓库已统一采用全局安装,否则优先使用包装脚本。
参考资料
仅打开所需内容:
- CLI 命令参考:
references/cli.md - 实用工作流与故障排除:
references/workflows.md
使用规范
- 引用
e12等元素 ID 前,务必先获取快照。 - 引用似乎失效时,重新获取快照。
- 除非确有需要,否则优先使用明确的命令,而不是
eval和run-code。 - 如果没有最新快照,请使用
eX等占位引用并说明原因;不要通过run-code绕过引用。 - 视觉检查有帮助时,使用
--headed。 - 在此仓库中捕获产物时,请使用
output/playwright/,避免新建顶层产物目录。 - 默认使用 CLI 命令和工作流,而不是 Playwright 测试规范。
评论
支持 Markdown