| 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
Used in DynamoHome for exploratory testing โ navigating the live dev server, discovering data-testid gaps, and validating interactions before writing formal Playwright tests.
Typical DynamoHome workflow
npm run start
playwright-cli open http://localhost:8080
playwright-cli snapshot
playwright-cli click e5
playwright-cli snapshot
playwright-cli close
Core commands
playwright-cli open http://localhost:8080
playwright-cli goto http://localhost:8080
playwright-cli snapshot
playwright-cli click e3
playwright-cli hover e4
playwright-cli press Enter
playwright-cli eval "document.title"
playwright-cli screenshot
playwright-cli console
playwright-cli network
playwright-cli close
Snapshots
After each command, playwright-cli returns a snapshot of the current page with element refs (e.g. e5, e12). Use these refs to interact with specific elements. Snapshots are saved under .playwright-cli/ โ this folder is git-ignored.
What to do with findings
Once you have identified the interactions and selectors needed:
- Add any missing
data-testid attributes to the source components (via the frontend-agent)
- Create Page Object classes in
tests/e2e/pages/ or tests/e2e/components/
- Write formal test cases in the appropriate
tests/e2e/*.spec.ts file
Do not leave raw playwright-cli findings as permanent tests โ convert them into the POM structure defined in the end-to-end-testing skill.