Playwright CLI
sanity-io/sanity
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
Automates browser interactions for web testing, form filling, screenshots, and data extraction using playwright-cli.
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install zebbern/claude-code-guide playwright-cli --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/playwright/playwright-cli .claude/skills/playwright-cli && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .claude/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cliType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install zebbern/claude-code-guide playwright-cli --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/playwright/playwright-cli .agents/skills/playwright-cli && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .agents/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install zebbern/claude-code-guide playwright-cli --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/playwright/playwright-cli .cursor/skills/playwright-cli && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .cursor/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/zebbern/claude-code-guide.git --path skills/playwright/playwright-cli--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install zebbern/claude-code-guide playwright-cli --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/playwright/playwright-cli .gemini/skills/playwright-cli && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .gemini/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install zebbern/claude-code-guide playwright-cliInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/playwright/playwright-cli .github/skills/playwright-cli && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .github/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zebbern/claude-code-guide --skill playwright-cli -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install zebbern/claude-code-guide playwright-cli --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zebbern/claude-code-guide.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/playwright/playwright-cli .opencode/skills/playwright-cli && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "playwright-cli" agent skill from https://github.com/zebbern/claude-code-guide/tree/main/skills/playwright/playwright-cli into .opencode/skills/playwright-cli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "playwright-cli", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
playwright-cliAutomates browser interactions for web testing, form filling, screenshots, and data extraction using playwright-cli.
Playwright CLI is an agent skill from zebbern/claude-code-guide. Automates browser interactions for web testing, form filling, screenshots, and data extraction using playwright-cli. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, test web applications, extract information from web pages, mock network requests, manage browser sessions, or generate test code.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files (for example `advanced-workflows.md`, `core-commands.md` and `device-emulation.md`).
It sits in Testing & QA, covering Browser testing, Forms and invoices and Test generation. It works with Playwright. The repository describes itself as: Claude Code Guide - Setup, Commands, workflows, agents, skills & tips-n-tricks from beginner to power user! The licence is MIT.
10 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 4698e3b. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Bash(playwright-cli:*)From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
playwright.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Playwright CLI loads about 2.4k tokens when it runs. Until then it costs about 91 tokens; SKILL.md has 244 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from zebbern/claude-code-guide at commit 4698e3b, republished under its MIT licence (© zebbern). 244 words, ~2,375 tokens.
.claude/skills/playwright-cli/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.Comprehensive CLI-driven browser automation — navigate, interact, mock, debug, record, and generate tests without writing a single script file.
# Install and set up
playwright-cli install --skills
playwright-cli install-browser
# Open a browser and navigate
playwright-cli open https://playwright.dev
# Take a snapshot to see interactive elements (refs like e1, e2, e3...)
playwright-cli snapshot
# Interact using element refs from the snapshot
playwright-cli click e15
playwright-cli fill e5 "search query"
playwright-cli press Enter
# Take a screenshot
playwright-cli screenshot
# Close the browser
playwright-cli closesnapshot first — identify element refs before interacting; never guess ref numbersfill for inputs, click for buttons — type sends keystrokes one-by-one, fill replaces the entire value-s=name isolates cookies, storage, and tabs per sessionstate-save auth.json after login, state-load auth.json to skip login next timetracing-start before the failing step, not afterrun-code for advanced scenarios — when CLI commands aren't enough, drop into full Playwright APIclose or close-all when done; kill-all for zombie processesscreenshot --filename=checkout-step3.png not screenshotroute to intercept third-party services, not your own app--persistent keeps cookies and storage across restartsplaywright-cli open [url] # Launch browser, optionally navigate
playwright-cli goto <url> # Navigate to URL
playwright-cli snapshot # Show page elements with refs
playwright-cli snapshot --filename=snap.yaml # Save snapshot to file
playwright-cli click <ref> # Click an element
playwright-cli dblclick <ref> # Double-click
playwright-cli fill <ref> "value" # Clear and fill input
playwright-cli type "text" # Type keystroke by keystroke
playwright-cli select <ref> "option-value" # Select dropdown option
playwright-cli check <ref> # Check a checkbox
playwright-cli uncheck <ref> # Uncheck a checkbox
playwright-cli hover <ref> # Hover over element
playwright-cli drag <src-ref> <dst-ref> # Drag and drop
playwright-cli upload <ref> ./file.pdf # Upload a file
playwright-cli eval "document.title" # Evaluate JS expression
playwright-cli eval "el => el.textContent" <ref> # Evaluate on element
playwright-cli close # Close the browserplaywright-cli go-back # Browser back button
playwright-cli go-forward # Browser forward button
playwright-cli reload # Reload current pageplaywright-cli press Enter # Press a key
playwright-cli press ArrowDown # Arrow keys
playwright-cli keydown Shift # Hold key down
playwright-cli keyup Shift # Release key
playwright-cli mousemove 150 300 # Move mouse to coordinates
playwright-cli mousedown [right] # Mouse button down
playwright-cli mouseup [right] # Mouse button up
playwright-cli mousewheel 0 100 # Scroll (deltaX, deltaY)playwright-cli dialog-accept # Accept alert/confirm/prompt
playwright-cli dialog-accept "text" # Accept prompt with input
playwright-cli dialog-dismiss # Dismiss/cancel dialogplaywright-cli tab-list # List all open tabs
playwright-cli tab-new [url] # Open new tab
playwright-cli tab-select <index> # Switch to tab by index
playwright-cli tab-close [index] # Close tab (current or by index)playwright-cli screenshot # Screenshot current page
playwright-cli screenshot <ref> # Screenshot specific element
playwright-cli screenshot --filename=pg.png # Save with custom filename
playwright-cli pdf --filename=page.pdf # Save page as PDF
playwright-cli video-start # Start video recording
playwright-cli video-stop output.webm # Stop and save video
playwright-cli resize 1920 1080 # Resize viewportplaywright-cli state-save [file.json] # Save cookies + localStorage
playwright-cli state-load <file.json> # Restore saved state
playwright-cli cookie-list [--domain=...] # List cookies
playwright-cli cookie-get <name> # Get specific cookie
playwright-cli cookie-set <name> <value> [opts] # Set a cookie
playwright-cli cookie-delete <name> # Delete a cookie
playwright-cli cookie-clear # Clear all cookies
playwright-cli localstorage-list # List localStorage items
playwright-cli localstorage-get <key> # Get localStorage value
playwright-cli localstorage-set <key> <val> # Set localStorage value
playwright-cli localstorage-delete <key> # Delete localStorage item
playwright-cli localstorage-clear # Clear all localStorage
playwright-cli sessionstorage-list # List sessionStorage
playwright-cli sessionstorage-get <key> # Get sessionStorage value
playwright-cli sessionstorage-set <key> <val> # Set sessionStorage value
playwright-cli sessionstorage-delete <key> # Delete sessionStorage item
playwright-cli sessionstorage-clear # Clear all sessionStorageplaywright-cli route "<pattern>" [opts] # Intercept matching requests
playwright-cli route-list # List active route overrides
playwright-cli unroute "<pattern>" # Remove specific route
playwright-cli unroute # Remove all routesplaywright-cli console [level] # Show console messages
playwright-cli network # Show network requests
playwright-cli tracing-start # Start trace recording
playwright-cli tracing-stop # Stop and save trace
playwright-cli run-code "async page => {}" # Execute Playwright API codeplaywright-cli -s=<name> <command> # Run command in named session
playwright-cli list # List all active sessions
playwright-cli close-all # Close all browsers
playwright-cli kill-all # Force kill all processes
playwright-cli delete-data # Delete session user data
playwright-cli open --browser=firefox # Use specific browser
playwright-cli open --persistent # Persist profile to disk
playwright-cli open --profile=/path # Custom profile directory
playwright-cli open --config=config.json # Use config file
playwright-cli open --extension # Connect via extension| What you're doing | Guide |
|---|---|
| Core browser interaction | core-commands.md |
| Generating test code | test-generation.md |
| Screenshots, video, PDF | screenshots-and-media.md |
| What you're doing | Guide |
|---|---|
| Tracing and debugging | tracing-and-debugging.md |
| Network mocking & interception | request-mocking.md |
| Running custom Playwright code | running-custom-code.md |
| What you're doing | Guide |
|---|---|
| Cookies, localStorage, auth state | storage-and-auth.md |
| Multi-session management | session-management.md |
| What you're doing | Guide |
|---|---|
| Device & environment emulation | device-emulation.md |
| Complex multi-step workflows | advanced-workflows.md |
© zebbern, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 10 other files in skills/playwright/playwright-cli of zebbern/claude-code-guide.
Open the folder on GitHubat commit 4698e3b
Playwright CLI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Playwright CLI this skillzebbern/claude-code-guide | 4.6k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Playwright CLIsanity-io/sanity | 6.4k | 18 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Write and Verify Playwright Testsappsmithorg/appsmith | 41k | — | ~2.9k | Automated safety check: Notes | Apache-2.0 | |
| PlaywrightJetBrains/skills | 363 | 11 repos | ~986 | Automated safety check: Pass | Apache-2.0 | |
| Playwright CLItestdino-hq/playwright-skill | 385 | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Playwright Stealth Verifyliarjsdev/liarjs-skills | 518 | 1 repos | ~1.3k | Automated safety check: Notes | MIT |
sanity-io/sanity
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
appsmithorg/appsmith
Writes a Playwright end-to-end test from a prompt, runs it against a live Appsmith deployment and retries with fixes up to three times until it passes.
JetBrains/skills
A skill your agent uses when the task requires automating a real browser from the terminal (navigation, form filling, snapshots, screenshots, data extraction, UI-flow debugging) via playwright-cli…
testdino-hq/playwright-skill
Automates browser interactions for testing and validating your own web applications using playwright-cli.
liarjsdev/liarjs-skills
Check whether a Playwright, Puppeteer, Selenium or CDP-driven browser presents a coherent fingerprint, using liarjs as a library against a Page you already have - navigator.webdriver, HeadlessChrome…
6BNBN/FlowPilot
A skill your agent uses when the task requires automating a real browser from the terminal in Cursor, including navigation, form filling, snapshots, screenshots, data extraction, and UI-flow…
zebbern/claude-code-guide
This skill should be used when setting up, auditing, or enforcing internationalization/localization in UI codebases (React/TS, i18next or similar, JSON locales), including installing/configuring the…
zebbern/claude-code-guide
Interactive system flow tracing across CODE, API, AUTH, DATA, NETWORK layers with SQLite persistence and Mermaid export.
zebbern/claude-code-guide
Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts.
zebbern/claude-code-guide
Analyze codebases and automatically generate architecture diagrams, flowcharts, and org charts.
zebbern/claude-code-guide
Scan code for security issues: dependency vulnerabilities (npm/pip audit), secret leaks (regex and entropy analysis), and OWASP anti-patterns like SQL injection, XSS, or command injection.
zebbern/claude-code-guide
Generate self-contained HTML/SVG infographics from JSON data, including stat cards, bar charts, flow diagrams, and mixed dashboards.
Works with
Categories
Automates browser interactions for web testing, form filling, screenshots, and data extraction using playwright-cli. Playwright CLI is an agent skill from zebbern/claude-code-guide. Automates browser interactions for web testing, form filling, screenshots, and data extraction using playwright-cli.
Playwright CLI fits situations like: the user needs to navigate websites; interact with web pages; take screenshots; test web applications.
Run `npx skills add zebbern/claude-code-guide --skill playwright-cli -a claude-code`. Or copy the skill folder (skills/playwright/playwright-cli in zebbern/claude-code-guide) into .claude/skills/playwright-cli in your project. Claude Code loads it when a task matches its description.
Run `npx skills add zebbern/claude-code-guide --skill playwright-cli -a codex`. Or copy the skill folder (skills/playwright/playwright-cli in zebbern/claude-code-guide) into .agents/skills/playwright-cli in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zebbern/claude-code-guide --skill playwright-cli -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/playwright-cli, .gemini/skills/playwright-cli, .github/skills/playwright-cli and .opencode/skills/playwright-cli in your project.
SKILL.md names no scripts, command-line tools or credentials: Playwright CLI is instructions for the agent only. Its frontmatter pre-approves these tools: Bash(playwright-cli:*).
SKILL.md names 1 domain. In commands or code: playwright.dev; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Playwright CLI is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Playwright CLI: Playwright CLI (sanity-io/sanity, 6.4k stars), Write and Verify Playwright Tests (appsmithorg/appsmith, 41k stars), Playwright (JetBrains/skills, 363 stars) and Playwright CLI (testdino-hq/playwright-skill, 385 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
zebbern (a GitHub user) maintains it in zebbern/claude-code-guide, which has 4,648 GitHub stars. The repository holds 46 skills in this directory. The repository was last updated on October 7, 2026.
Source: zebbern/claude-code-guide on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.