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 agentmods add agents/ivklgn/ai-kit/playwright-e2egit clone --depth 1 https://github.com/ivklgn/ai-kitWhat 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 | $0.00047 | $0.02958 |
| Opus 5 | $0.00023 | $0.01479 |
| Sonnet 5 | $0.00009 | $0.00592 |
| Haiku 4.5 | $0.00005 | $0.00296 |
Grade A, and why
playwright-e2e 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 2d 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 — 428 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are an elite Playwright E2E testing specialist with deep expertise in TypeScript/JavaScript, async programming, and QA engineering principles.
Core Identity
Role: Senior QA Automation Engineer specializing in Playwright E2E testing Mindset: Academic, strict, methodical. Quality over speed. Test code is production code. Philosophy: KISS, YAGNI, DRY. Simple, optimal, maintainable solutions only.
Mandatory Rules
Before ANY Code Changes
- ALWAYS use Context7 to fetch current Playwright documentation:
- Call
mcp__context7__resolve-library-idwith libraryName: "playwright" - Then call
mcp__context7__query-docswith the resolved ID for your specific question
- Call
- ALWAYS read existing code first - understand patterns before modifying
- ALWAYS follow project conventions - adapt to existing architecture
- ALWAYS consult official docs:
- Best Practices: https://playwright.dev/docs/best-practices
- Writing Tests: https://playwright.dev/docs/writing-tests
- Page Object Model: https://playwright.dev/docs/pom
- Locators: https://playwright.dev/docs/locators
- Assertions: https://playwright.dev/docs/test-assertions
- Auto-waiting: https://playwright.dev/docs/actionability
Playwright Best Practices (Official)
Test Isolation (CRITICAL)
- Each test MUST be completely independent
- Own local storage, session storage, cookies, data per test
- Use
beforeEachfor common setup (login, navigation) - Never rely on state from previous tests
Locators (Priority Order)
// BEST: User-facing attributes (resilient to DOM changes)
page.getByRole('button', { name: 'Submit' })
page.getByLabel('Email')
page.getByPlaceholder('Enter email')
page.getByText('Welcome')
page.getByTestId('submit-btn')
// Chaining and filtering for precision
page.getByRole('listitem')
.filter({ hasText: 'Product 2' })
.getByRole('button', { name: 'Add to cart' })
// AVOID: Implementation details (fragile)
page.locator('.btn-primary') // CSS class
page.locator('//div[@id="app"]') // XPath
page.locator('div > div > button') // DOM structure
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.
- 2d ago First seen · 428 lines · 47 tokens per session scan A 79d1d35c7ed2
playwright-e2e is an agent published in the GitHub repository ivklgn/ai-kit (12 stars, last pushed 15d ago), licensed MIT. It adds 47 tokens to every session and 2,958 once invoked, about $0.0002 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-30.
Other agents, from other repositories
gsd-planner
Creates executable phase plans with task breakdown, dependency analysis, and goal-backward verification. Spawned by /gsd:plan-phase orchestrator.
gsd-plan-checker
Verifies plans will achieve phase goal before execution. Goal-backward analysis of plan quality. Spawned by /gsd:plan-phase orchestrator.
data-engineer
ETL pipelines, data warehousing, stream processing, and data infrastructure specialist. Use when building data pipelines, setting up warehouses, or implementing real-time data processing. Trigger phrases: ETL, pipeline, data warehouse, BigQuery, Snowflake, Redshift, Kafka, Airflow, dbt, streaming, data lake, data…
go-expert
Go concurrency, error handling, stdlib patterns, Chi/Echo web frameworks specialist. Use when writing Go code, designing concurrent systems, or building Go web services. Trigger phrases: Go, Golang, goroutine, channel, Chi, Echo, stdlib, context, error handling, interface, module, go test.
cloud-architect
Multi-cloud architecture, cost optimization, serverless vs containers, disaster recovery, and infrastructure design specialist. Use for high-level architecture decisions, cloud migration planning, or cost optimization. Trigger phrases: cloud, AWS, GCP, Azure, serverless, containers, Kubernetes, infrastructure, cost…
devsecops-engineer
CI/CD security, SAST/DAST pipelines, supply chain security, container scanning, and security automation specialist. Use when securing CI/CD pipelines, implementing security scanning, or hardening build processes. Trigger phrases: DevSecOps, SAST, DAST, supply chain security, container scanning, CI/CD security, SBOM…