hoangnguyen0403/quality-engineering-playwright-cli
Standardizes token-efficient browser automation via playwright-cli. Use for web verification, navigation, and capturing snapshots/logs.
npx skills add https://github.com/HoangNguyen0403/agent-skills-standard --skill quality-engineering-playwright-cli
> [!IMPORTANT]
> Tier 0 (Infrastructure): Browser process management, named sessions, network/console logs.
> Tier 1 (Core Interactions): Clicks, fills, and navigation (open vs goto).
> Tier 2 (Verification): Snapshot-based assertions and auth state persistence.
Triggers: playwright-cli, browser automation, web verify, snapshot, auth-state.json.
| Step | Command | Purpose |
| :--- | :--- | :--- |
| 1 | playwright-cli -s={ID} open <url> | Start named session. (Mandatory -s=). |
| 2 | playwright-cli -s={ID} snapshot --aria | Aria Snapshot: YAML-like view for LLM reasoning (Best for assertions). |
| 3 | playwright-cli -s={ID} console | Check for JS errors/warnings. |
| 4 | playwright-cli -s={ID} screenshot | Visual evidence. Use --mask <ref> for dynamic content. |
| 5 | playwright-cli -s={ID} close | MANDATORY Cleanup. |
For a sticky header that appears after scrolling, scroll until the header is visible, use hover on the header (or its stable role/reference) to establish the visible state, then capture the screenshot. Keep the named session open until the evidence is captured.
snapshot --aria as primary way to "see" page. Filters noise.button[name="Submit"]) over fragile CSS classes.document.body.style.animation = 'none' to freeze animations before capture.-s=. Bare commands collide across concurrent runs.open for first run; goto for mid-session navigation.close session, even on failure.snapshot rather than pixels.state-load for multi-step flows.When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:
Take hoangnguyen0403/quality-engineering-playwright-cli from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.