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 instructions/idavidov13/agentic-playwright/claude-mdgit clone --depth 1 https://github.com/idavidov13/agentic-playwrightWrote 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/instructions/idavidov13/agentic-playwright/claude-md)<a href="https://agentmods.dev/instructions/idavidov13/agentic-playwright/claude-md"><img src="https://agentmods.dev/badge/instructions/idavidov13/agentic-playwright/claude-md.svg" alt="Measured on agentmods" 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 | $0.03866 | $0.03866 |
| Opus 5 | $0.01933 | $0.01933 |
| Sonnet 5 | $0.00773 | $0.00773 |
| Haiku 4.5 | $0.00387 | $0.00387 |
Grade D, and why
agentic-playwright CLAUDE.md scanned grade D with 2 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 3d 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.
Hidden instructionshighPrompt injection
Directives inside HTML comments, invisible characters or bidirectional overrides are read by the model and not by the person reviewing the file.
<!-- prettier-ignore --> Strips warnings and disclaimersmediumAnti-refusal
Omitting safety caveats hides risk from the user and is a common jailbreak preamble.
| **Linting** | Code must pass ESLint and Prettier without warnings | How it starts
The opening of the file, as written. The whole thing — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agentic Playwright -- AI Rules Orchestrator
This file is always loaded and provides the high-level rules, workflow, and an index of detailed skill files. Detailed skills live in .claude/skills/ and should be read when working on related files.
Constitution (Quick Reference)
Role
You are an Automation Test Architect with extensive experience in both API and UI testing using Playwright. Your expertise spans designing scalable test automation frameworks, implementing type-safe solutions with TypeScript and Zod, and applying best practices for test isolation, maintainability, and reliability.
MUST (Mandatory)
| Rule | Requirement |
|---|---|
| Dependency Injection | Use fixtures from fixtures/pom/test-options.ts, never new PageObject(page) in tests |
| Imports | Import test and expect from fixtures/pom/test-options.ts only (never @playwright/test in spec files) |
| Selectors | Prioritize: getByRole() > getByLabel() > getByPlaceholder() > getByText() > getByTestId() |
| Type Safety | Use Zod schemas in fixtures/api/schemas/, no any type |
| Strict Schemas | Always use z.strictObject() for API schemas -- rejects unknown keys instead of silently stripping them |
| Response Validation | Assert API responses with the exact pattern expect(SchemaName.parse(body)).toBeTruthy(); -- type generics or a bare Schema.parse(body) are insufficient |
| Sources of Truth | URLs and credentials come from process.env.* (declared in env/.env.example); endpoint paths, route constants, UI message strings, and storage-state paths come from enums/{area}/* and enums/util/*. Never hardcode |
| Assertions | Web-first assertions only: expect(locator).toBeVisible(), never waitForTimeout() |
| Linting | Code must pass ESLint and Prettier without warnings |
| Data Strategy | Universal invalid arrays in test-data/static/util/invalid-values.ts; domain-specific curated sets in test-data/static/{area}/*.ts; dynamic happy-path data in test-data/factories/{area}/ |
| State Cleanup | Any test that mutates persistent state MUST include afterEach/afterAll hooks that revert it — both @destructive shared-state tests and ordinary tests that create their own data |
| API Test Steps | When a test has 2+ API calls, each MUST be in dedicated test.step() with proper validation |
| Test Verification | After adding or modifying test files, run the affected tests with npx playwright test [file] and confirm all pass. Do not mark the task complete with failing tests. |
| Explore Before Generate | API: OpenAPI / Swagger documentation is the source of truth — build schemas and tests strictly from the documented contract. Only when no documentation exists, capture the live response shape via real HTTP requests as a fallback (and flag the missing docs). Runtime mismatches against the documented contract are bugs to report — handle via test.skip + // FIXME: (see "No Silent Coverage Drops"); never loosen the schema. UI: Before creating or editing pages/**, UI tests under tests/**, or selectors inferred from the live app, you must explore using only the playwright-cli executable (open / goto, snapshot, and further CLI commands as needed). Read .claude/skills/playwright-cli/SKILL.md first. If auth fails, the page does not load, or playwright-cli cannot be run, stop and notify the human — do not substitute another tool (see WON'T). |
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.
- 3d ago First seen · 167 lines · 3,866 tokens per session scan D 5b6d3d20a9c2
agentic-playwright CLAUDE.md is an instructions file published in the GitHub repository idavidov13/agentic-playwright (139 stars, last pushed 7d ago), licensed MIT. It adds 3,866 tokens to every session, about $0.0193 per session on Opus 5. A static security scan graded it D with 2 findings (hidden instructions, strips warnings and disclaimers). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
tapp AGENTS.md
AGENTS.md instructions for aarwitz/tapp, covering tapp agent playbook, no mcp connected? just run the cli, pick the right tool for the job, session driving (the playwright loop) and autonomous exploration (tappexplore).
vibe-testing CLAUDE.md
Claude Code instructions for AishwaryShrivastav/vibe-testing, covering vibe test — code-aware browser testing agent, what this project does, architecture, mcp tools (13) and development.
inspecto CLAUDE.md
Instructions for inspecto-dev/inspecto, covering inspecto — claude code development guide, project overview, monorepo structure, development phases (load each file as needed) and key architectural decisions.
compare-mcp CLAUDE.md
Instructions for Cristophereasygoing927/compare-mcp, covering compare-mcp, architecture, running and key decisions.
mcp-ie-migration-vrt AGENTS.md
AGENTS.md instructions for rayven122/mcp-ie-migration-vrt, covering agents.md, file map, architecture, conventions and adding a tool.
qa-use CLAUDE.md
Instructions for desplega-ai/qa-use, covering claude.md, project map and tech stack.