
Playwriter
Automate the user’s real Chrome (not a fresh headless instance) with Playwright snippets via the Playwriter CLI for JS-heavy sites and login walls.
Overview
Playwriter is an agent skill most often used in Build (also Validate, Ship) that automates the user’s existing Chrome through the Playwriter extension and CLI using Playwright code snippets in a stateful sandbox.
Install
npx skills add https://github.com/remorses/playwriter --skill playwriterWhat is this skill?
- Attaches to the user’s existing Chrome via the Playwriter extension instead of launching an isolated Playwright browser
- Requires running `playwriter skill` in full (no `head` pipe) before automation—timeouts, selectors, and pitfalls live th
- Stateful local JS sandbox with `playwriter session new` and `-e` snippet execution
- Recommended for JS-heavy sites (Instagram, Twitter), cookie/login walls, and lazy-loaded SPAs over webfetch/curl
- Documents session management, selector strategies to avoid, and slow-page best practices in CLI output
- REQUIRED first step: run `playwriter skill` and read the complete output with no `head`/`tail` truncation
Adoption & trust: 4k installs on skills.sh; 3.6k GitHub stars; 0/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need your agent to interact with modern SPAs and logged-in pages, but separate Playwright MCPs launch cold browsers and curl cannot execute client-side JavaScript or pass real session cookies.
Who is it for?
Indie builders automating or verifying behavior on JS-heavy, auth-gated sites who already use Chrome with the Playwriter extension.
Skip if: Server-only APIs with no UI, batch HTML scraping that does not need a logged-in browser, or agents that refuse to read the full CLI skill output before scripting.
When should I use this skill?
Automate the user’s existing Chrome via Playwriter for JS-heavy websites instead of webfetch/curl or other Playwright MCPs that launch a new browser.
What do I get? / Deliverables
After loading the full `playwriter skill` documentation, you run session-scoped Playwright snippets against your real Chrome profile with guidance on timeouts and selectors suited to slow and gated sites.
- Stateful playwriter session with executed Playwright snippets
- Documented automation steps aligned with official timeout and selector rules
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Build/integrations is the canonical shelf because the skill connects your agent to browser automation through the Playwriter extension and CLI—a tooling integration pattern. Browser control via extension + stateful sandbox is an integration surface between the coding agent and the user’s existing Chrome session.
Where it fits
Walk through a gated prototype in your logged-in Chrome to confirm lazy-loaded routes render.
Wire agent workflows that execute `playwriter -e` snippets against a persistent session instead of one-off fetches.
Re-run navigation scripts on production-like SPAs with the timeout and selector rules from the full skill doc.
Reproduce a customer-reported UI bug in the same browser profile they use, including cookies and extensions.
How it compares
Use instead of generic Playwright MCP servers that spawn a new browser unrelated to the user’s cookies and extensions.
Common Questions / FAQ
Who is playwriter for?
Playwriter is for developers using Claude Code, Cursor, or similar agents who want Playwright-level control over their own Chrome session for SPAs, social sites, and login-protected flows.
When should I use playwriter?
Use it in Validate to exercise a prototype behind a login wall; in Build when integrating agent-driven browser checks; and in Ship when regression-testing lazy-loaded or cookie-gated production UIs—always after `playwriter skill` is read in full.
Is playwriter safe to install?
It can drive a live browser with your profile data; review the Security Audits panel on this Prism page and avoid automating sensitive accounts without understanding network and session exposure.
SKILL.md
READMESKILL.md - Playwriter
## REQUIRED: Read Full Documentation First **Before using playwriter, you MUST run this command:** ```bash playwriter skill # IMPORTANT! do not use | head here. read in full! ``` This outputs the complete documentation including: - Session management and timeout configuration - Selector strategies (and which ones to AVOID) - Rules to prevent timeouts and failures - Best practices for slow pages and SPAs - Context variables, utility functions, and more **Do NOT skip this step.** The quick examples below will fail without understanding timeouts, selector rules, and common pitfalls from the full docs. **Read the ENTIRE output.** Do NOT pipe through `head`, `tail`, or any truncation command. The skill output must be read in its entirety — critical rules about timeouts, selectors, and common pitfalls are spread throughout the document, not just at the top. ## Minimal Example (after reading full docs) ```bash playwriter session new playwriter -s 1 -e 'await page.goto("https://example.com")' ``` **Always use single quotes** for the `-e` argument. Single quotes prevent bash from interpreting `$`, backticks, and backslashes inside your JS code. Use double quotes or backtick template literals for strings inside the JS. If `playwriter` is not found, use `npx playwriter@latest` or `bunx playwriter@latest`.