agentleFS
appautomatonappautomaton/webmaton/skills/playwright-cli/SKILL.md

playwright-cli

Skill20 starsChanged 3 months agoMITView on GitHub

Use when a task needs Playwright-backed browser automation from the shell: open or attach to browser sessions, inspect snapshots and element refs, click/type/fill forms, debug Playwright tests, inspect console/network/storage, run Playwright snippets, capture screenshots/traces/videos, or generate reliable test code. Prefer for repeatable browser workflows and Playwright test work; not for static HTTP fetches, JSON APIs, or simple web search.

180 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use fabric-sdk, ecosystem-reference and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • MicrosoftSkill

    fabric-sdk

    How to use @microsoft/fabric-app-data to connect web applications to Fabric data sources at runtime. Build browser-based apps that query semantic models via DAX using the FabricClient API.

    Also in 9 projects that use this

  • naman10parikhSkill

    ecosystem-reference

    Quick-access directory of Claude Code ecosystem repos, skills, plugins, MCPs, and patterns. Use when improving the harness.

    Also in 5 projects that use this

  • naman10parikhSkill

    fractal-delegation

    Also in 5 projects that use this

  • MicrosoftSkill

    schema-discovery

    Explore Power BI semantic model schemas using DAX INFO functions. Progressive metadata discovery strategy, scope estimation, and narrowing techniques for tables, columns, measures, and relationships.

    Also in 9 projects that use this

  • +6 more from naman10parikh
  • +2 more from microsoft

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 2 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 161 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use refs from the latest snapshot by default.

    line 21
  2. Very specific:

    Use --raw when piping values into other tools.

    line 26
  3. Very specific:

    Use named sessions with -s=<name> for concurrent or long-lived work.

    line 27
  4. Very specific:

    Use open --persistent only when disk-persisted cookies/storage are needed.

    line 28
  5. Very specific:

    Prefer attach --cdp=chrome, attach --cdp=msedge, or attach --cdp=http://127.0.0.1:9222 when the task needs an existing browser/session.

    line 29
  6. Distinctive:

    When a Playwright test fails, prefer the CLI debug workflow:

    line 50
  7. Distinctive:

    Keep the test process running while inspecting the paused page.

    line 58

“Common” is measured: kept by at least 6 in 10 of the 161 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

playwright-cli

playwright-cli is a token-efficient shell interface to Playwright. It keeps browser state across commands, exposes page snapshots with stable element refs such as e15, and prints the Playwright code it ran so the interaction can be converted into tests.

Core Workflow

playwright-cli open https://example.com
playwright-cli snapshot
playwright-cli click e15
playwright-cli fill e5 "user@example.com"
playwright-cli press Enter
playwright-cli close

Use refs from the latest snapshot by default. Re-run snapshot after navigation, major DOM changes, or a failed ref action. Use CSS selectors or Playwright locators only when refs are unavailable or unstable.

Operating Rules

  • Discover exact syntax with playwright-cli --help and playwright-cli <command> --help; the CLI changes quickly.
  • Use --raw when piping values into other tools. Use --json only if the installed CLI advertises it.
  • Use named sessions with -s=<name> for concurrent or long-lived work.
  • Use open --persistent only when disk-persisted cookies/storage are needed.
  • Prefer attach --cdp=chrome, attach --cdp=msedge, or attach --cdp=http://127.0.0.1:9222 when the task needs an existing browser/session.
  • Close sessions when finished. Reserve close-all and kill-all for cleanup of stale sessions.

Common Tasks

playwright-cli open https://example.com --browser=chrome
playwright-cli snapshot --depth=4
playwright-cli screenshot --filename=page.png
playwright-cli console warning
playwright-cli requests --filter="/api/.*"
playwright-cli request-headers 3
playwright-cli run-code "async page => await page.context().grantPermissions(['geolocation'])"
playwright-cli tracing-start
playwright-cli tracing-stop

For a broader command map, read references/cli-reference.md.

Playwright Test Debugging

When a Playwright test fails, prefer the CLI debug workflow:

PLAYWRIGHT_HTML_OPEN=never npx playwright test --debug=cli
# wait for "Debugging Instructions", then attach to the printed session
playwright-cli attach tw-abcdef

Keep the test process running while inspecting the paused page. Use snapshots, console/network inspection, and generated Playwright code to identify the fix.

References

Load only what the task needs:

  • references/cli-reference.md — command groups, output modes, and version-sensitive features
  • references/playwright-tests.md — running and debugging Playwright tests
  • references/request-mocking.md — route mocking and request interception
  • references/running-code.md — custom Playwright snippets with run-code
  • references/session-management.md — named sessions and cleanup
  • references/storage-state.md — cookies, localStorage, sessionStorage, auth state
  • references/test-generation.md — turning CLI output into tests
  • references/tracing.md — trace capture and inspection
  • references/video-recording.md — WebM recording and chapter markers
  • references/element-attributes.md — inspect IDs/classes/data attributes not shown in snapshots

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.