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 EliasOulkadi/shokunin --skill playwrightgit clone --depth 1 https://github.com/EliasOulkadi/shokuninWrote 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/eliasoulkadi/shokunin/playwright)<a href="https://agentmods.dev/skills/eliasoulkadi/shokunin/playwright"><img src="https://agentmods.dev/badge/skills/eliasoulkadi/shokunin/playwright/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/eliasoulkadi/shokunin/playwright"><img src="https://agentmods.dev/badge/skills/eliasoulkadi/shokunin/playwright.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 5 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 42 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 47 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 52 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 97 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 345 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00000 | $0.03450 |
| Opus 5.5 | $0.00000 | $0.01380 |
| Sonnet 5.5 | $0.00000 | $0.00690 |
| Haiku 4.5 | $0.00000 | $0.00345 |
Grade A, and why
playwright 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 1mo 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 — 371 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Playwright — Browser Automation Skill
Intelligent browser automation executor. Analyzes the user's request, selects the optimal pattern from 30+ built-in templates, generates production-grade Playwright code, and executes it with real-time reporting.
Setup
Playwright must be available in the environment. If not installed:
npm init -y
npm install playwright @playwright/test
npx playwright install chromium
For all 3 browsers:
npx playwright install
Check what's installed:
npx playwright install --dry-run
Trigger Decision Tree
When user asks for browser automation, classify the task:
User request
├── "screenshot" / "capture" / "take a picture"
│ → screenshot template
├── "responsive" / "mobile" / "different sizes"
│ → responsive check + per-viewport screenshots
├── "login" / "sign in" / "authenticate"
│ → login flow with error detection
├── "form" / "fill" / "submit" / "input"
│ → form testing with validation check
├── "broken links" / "check links" / "link validation"
│ → broken link scanner
├── "scrape" / "extract" / "get data" / "crawl"
│ → data extraction (single page or crawl)
├── "mock" / "intercept" / "stub" / "fake api"
│ → API mocking with route interception
├── "accessibility" / "a11y" / "axe" / "wcag"
│ → accessibility audit (requires axe-core)
├── "performance" / "lighthouse" / "speed" / "load time"
│ → performance audit with budgets
├── "visual" / "visual regression" / "diff"
│ → visual comparison screenshots
├── "download" / "file download"
│ → file download handler
├── "console" / "errors" / "logs"
│ → console error detector
├── "pdf" / "generate pdf"
│ → page-to-PDF converter
└── else → generic browse + report
Workflow
Step 1: Detect the environment
Before writing any code, determine what's available:
- Dev servers: Check common ports (3000, 3001, 5173, 8080, 8000, 4200, 5000, 9000) for running processes
- Installed browsers: Run
npx playwright install --dry-runto see which browsers are available - Framework indicators: Look for
package.jsondependencies (react, vue, svelte, next, nuxt) to understand the app under test - Available credentials: Check if the user mentioned login credentials or has
.envfiles
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.
- 1mo ago First seen · 371 lines · 0 tokens per session scan A 4991f2a2b1e3
playwright is a skill published in the GitHub repository EliasOulkadi/shokunin (112 stars, last pushed 19d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 3,450 tokens. 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-30.
Other skills, from other repositories
om-auto-qa-pr
QA a PR's UI change in a real browser through the configured browser-provider descriptor — first ensuring the PR has been reviewed (invoking om-auto-review-pr when it has not), then capturing screenshots and a pass/fail report, and optionally posting tracker evidence or self-QA labels without modifying source. Also…
om-integration-tests
Run and create integration/E2E tests by exploring the live app with the configured browser provider, preserving repository-native runners, reusing the shared test environment, and diagnosing failures from concrete artifacts.
qa-use
E2E testing and browser automation with qa-use CLI. Use when the user needs to run tests, verify features, automate browser interactions, or debug test failures.
browser-automation
This skill should be used when the user asks about browser automation, testing web pages, extracting content, filling forms, taking screenshots, or monitoring console/network activity. Activates for E2E testing, form automation, browsing tasks, or debugging web applications.
blazemeter-recorders
Comprehensive guide for BlazeMeter Recorders, including Chrome Extension and Proxy Recorder. Use when working with recorders for (1) Recording tests with Chrome Extension, (2) Creating and using Proxy Recorder, (3) Configuring browsers and devices for proxy recording, (4) Setting port ranges for proxy recorder, or any…
webapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.