Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/idavidov13/agentic-playwrightnpx agentmods add skills/idavidov13/agentic-playwright/helpersWrote 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/idavidov13/agentic-playwright/helpers)<a href="https://agentmods.dev/skills/idavidov13/agentic-playwright/helpers"><img src="https://agentmods.dev/badge/skills/idavidov13/agentic-playwright/helpers/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/idavidov13/agentic-playwright/helpers"><img src="https://agentmods.dev/badge/skills/idavidov13/agentic-playwright/helpers.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 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 Prompt Injection · line 36 Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.Fix: Remove the large whitespace padding (blank-line blocks or long space runs) and review any content hidden below or to the right of it. Keep skill files compact and reviewable so no instructions can be
- medium Prompt Injection · line 36 Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.Fix: Remove the large whitespace padding (blank-line blocks or long space runs) and review any content hidden below or to the right of it. Keep skill files compact and reviewable so no instructions can be
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.00152 | $0.02987 |
| Opus 5.5 | $0.00061 | $0.01195 |
| Sonnet 5.5 | $0.00030 | $0.00597 |
| Haiku 4.5 | $0.00015 | $0.00299 |
Grade A, and why
helpers 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 — 195 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Helpers
Critical
- Helpers are plain functions. No Playwright fixture lifecycle — no
use(), nobase.extend. If you need setup →use(data)→ teardown, it's a fixture, not a helper (see thefixturesskill). - App-specific logic lives in
helpers/{area}/(e.g.helpers/app/). Generic utilities live inhelpers/util/. - ALWAYS add JSDoc with
@paramand@returnson every exported helper. - ALWAYS specify explicit return types (
Promise<void>,string, etc.). No implicitany. - NEVER hardcode URLs, credentials, or tokens. Read env-driven values from
process.env.*(see theconfigskill). Useenums/{area}/*for endpoint paths and storage-state paths. - ALWAYS validate API responses inside helpers with the mandatory pattern
expect(SchemaName.parse(body)).toBeTruthy();— identical to theapi-testingCritical rule. - Function naming: camelCase verbs (
createAppStorageState,setUserAccessToken,formatDate,parseCurrency). - Do not promote a helper to a helper fixture unless the same setup/teardown is copy-pasted across 3+ spec files and needs guaranteed lifecycle (see the
api-testingskill, Phase 8 rule of thumb). - Mutating
process.envfrom a helper is a narrow exception, not a general pattern. It is acceptable only for auth-bootstrap helpers that publish a token (e.g. writingprocess.env.ACCESS_TOKENinside a login helper). Do not copy the env-mutation pattern into other helpers — return values through the function signature instead.
File Locations
{area}is a placeholder. Before creating or referencing any path below, runls helpers/to discover the real subdirectory names in this repo (e.g.,front-office,back-office) and use those instead.
| Type | Directory | Purpose | Scaffold example |
|---|---|---|---|
| App helpers | helpers/{area}/ |
App-specific helper functions (auth bootstrap, storage state, seeding) | helpers/app/createStorageState.ts |
| Utility helpers | helpers/util/ |
Generic utility functions reusable across apps/projects | helpers/util/util.ts |
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 · 195 lines · 152 tokens per session scan A 8fb8ffccf743
helpers is a skill published in the GitHub repository idavidov13/agentic-playwright (235 stars, last pushed 5d ago), licensed MIT. It adds 152 tokens to every session and 2,987 once invoked, about $0.0006 per session on Opus 5.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-30.
Other skills, from other repositories
vindicate
Use when the user wants to write, add, fix, stabilize (flaky), refactor, run, or audit Playwright browser tests, draft requirements/stories from a recording (no tests), find test-coverage gaps, scaffold a Playwright project, or set up Playwright CI. Vindicate's guided workflow for grounded, conformant Playwright test…
E2E Testing Patterns
Comprehensive end-to-end testing methodologies and best practices covering architecture, test design, data management, flakiness prevention, and cross-browser strategies.
Laravel Dusk Testing
Expert-level Laravel Dusk browser testing skill for PHP/Laravel applications. Covers Chrome-based E2E testing, browser assertions, Page Objects, component testing, authentication helpers, and database integration.
JMeter Load Testing
Load and performance testing skill using Apache JMeter, covering test plans, thread groups, assertions, listeners, timers, and distributed testing.
ac-qa-e2e-review
Reviews spec implementation with E2E visual browser validation via Playwright. Triggers on keywords: e2e review, visual review, spec review, browser validation.
ac-qa-test-e2e
Executes E2E tests from definition files with Playwright browser automation. Triggers on keywords: test e2e, run e2e, execute e2e test, e2e test runner.