Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add AkshitIreddy/agent-skills --skill playwright-qagit clone --depth 1 https://github.com/AkshitIreddy/agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/akshitireddy/agent-skills/playwright-qa)<a href="https://agentmods.dev/skills/akshitireddy/agent-skills/playwright-qa"><img src="https://agentmods.dev/badge/skills/akshitireddy/agent-skills/playwright-qa/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/akshitireddy/agent-skills/playwright-qa"><img src="https://agentmods.dev/badge/skills/akshitireddy/agent-skills/playwright-qa.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00054 | $0.00830 |
| Opus 5 | $0.00027 | $0.00415 |
| Sonnet 5 | $0.00011 | $0.00166 |
| Haiku 4.5 | $0.00005 | $0.00083 |
Grade A, and why
playwright-qa scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Verify UI by driving it
Reasoning about a UI tells you what the code intends. Driving it tells you what it does. When those differ, only one of them is a bug report.
The loop
- Act — click, drag, type, hover, resize, with Playwright against the running dev server.
- Capture — screenshot, and where the question is not visual, capture the thing that actually answers it: console errors, a bounding box over N frames, a network log, a pixel sample.
- LOOK — actually Read the PNG. A screenshot you saved and did not open is not evidence, and claiming a fix on one is how a good specimen gets mistaken for a working app.
- Decide — fixed, or not, and what the next probe is.
Make the question measurable
Screenshots answer "does this look right". They do not answer "does it flicker", "did that actually change", or "is it still animating". Measure those:
- Flicker / instability — sample the element's bounding box or a pixel across 30 frames and assert one distinct value. "Looks stable" is not a result.
- Did it change? — sample the same pixels before and after and diff them. Two warm browns can look identical and differ, and a surface that did not change can look plausible next to three that did.
- Settled or spinning? — count animation frames over a second. An app at rest ticks a handful of times; one that keeps pace with vsync is looping.
- Cost —
performance.getEntriesByType('paint'), long tasks, or wrap the suspect call and time it. Report the number, not an adjective.
Motion evidence has limits
Playwright is not an oracle for transient motion. Headless scheduling, software GPU timing, synthetic input cadence, screenshot synchronization and sampling rate can all hide a one-frame pop or capture the state before/after the faulty boundary. A green trace means “not observed in this run,” not “cannot happen.”
For motion bugs, repeat slow and fast paths, vary the sampling phase, and pair the probe with code analysis of state ownership, preload, render submission and commit order. If a user repeatedly sees the defect in the real app, treat that as stronger evidence than a Playwright non-reproduction. Use automation to narrow the cause and reject gross regressions, not to dismiss the report.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 72 lines · 54 tokens per session scan A ecbfb72a8c4b
playwright-qa is a skill published in the GitHub repository AkshitIreddy/agent-skills (1 stars, last pushed 12d ago), licensed MIT. It adds 54 tokens to every session and 830 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
e2e-testing-patterns
Master end-to-end testing with Playwright and Cypress to build reliable test suites that catch bugs, improve confidence, and enable fast deployment. Use when implementing E2E tests, debugging flaky tests, or establishing testing standards.
browser-testing-with-devtools
Tests in real browsers via Chrome DevTools MCP. Use when building or debugging anything that runs in a browser. Use when you need to inspect the DOM, capture console errors, analyze network requests, profile performance, or verify visual output with real runtime data. Requires the chrome-devtools MCP server to be…
qa/e2e-playwright
A method for writing Playwright end-to-end tests, which automate a browser to verify complete user journeys. It covers setup, reusable page objects, login reuse, API mocking, visual checks, multiple browsers and screen sizes, CI, and debugging.
agent-browser
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.
Console Error Hunter
Systematically detect, capture, and categorize browser console errors, warnings, and unhandled exceptions during automated test execution.
selectors
Selector strategy, exploration-first workflow, locator priority order (getByRole then getByLabel then getByPlaceholder then getByText then getByTestId), and feedback/validation-message selector rules for Playwright page objects. Use when creating page objects, writing or updating locators, generating UI tests, or…