| name | playwright-cli |
| description | Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, test web applications, or extract information from web pages. |
| allowed-tools | Bash(playwright-cli:*) |
Browser Automation with playwright-cli
Quick start
playwright-cli open
playwright-cli goto https://playwright.dev
playwright-cli click e15
playwright-cli type "page.click"
playwright-cli press Enter
playwright-cli screenshot
playwright-cli close
How interaction refs work
After every command, playwright-cli emits a snapshot file (.playwright-cli/page-*.yml). Element refs (e3, e7, e15) come from that snapshot, read it before the next interactive command. Use playwright-cli snapshot to refresh on demand.
> playwright-cli goto https://example.com
- Page URL: https://example.com/
- Page Title: Example Domain
[Snapshot](.playwright-cli/page-2026-02-14T19-22-42-679Z.yml)
If --filename is not provided, a new snapshot file is created with a timestamp. Default to automatic file naming; use --filename= when the artifact is part of the workflow result.
Local installation fallback
If running globally-available playwright-cli fails, prefix with npx:
npx playwright-cli open https://example.com
npx playwright-cli click e1
Browser sessions
Use -s=<name> to run multiple parallel sessions:
playwright-cli -s=mysession open example.com --persistent
playwright-cli -s=mysession click e6
playwright-cli -s=mysession close
playwright-cli list
playwright-cli close-all
Command reference
Full surface, core, navigation, keyboard, mouse, save-as, tabs, storage (cookies / localStorage / sessionStorage), network, devtools, open parameters, snapshots, browser sessions, end-to-end examples, is in references/commands.md.
Specific tasks