Install Playwright Frontend
Pick your agent. Every command is ready to paste.
npx skills add testdino-hq/playwright-skill --skill playwright-frontendThe open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads playwright-frontend when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the playwright-frontend skill”. In Codex, type $playwright-frontend.
Playwright Frontend (Authoring Locatable Markup)
Audience: frontend engineers writing the app — the counterpart to the test-author guides in
core/. Your job here is to expose a small, stable, machine-readable contract on the DOM so tests and AI agents can locate elements deterministically, without flakiness.
A data-testid is a public API for your UI's automation layer: once a test or agent depends on it, renaming it is a breaking change. Build accessible markup first, then add deliberate, well-named, unique, stable test IDs where automation needs a durable handle.
Guide Index
| Topic | Guide |
|---|---|
data-testid conventions (when, naming, uniqueness, stability) |
data-testid-conventions.md |
| Framework patterns (React, Vue, Angular, Svelte) + centralizing IDs + production stripping | examples.md |
Golden Rules
- Semantic HTML first — give elements a real role/label/accessible name so
getByRole/getByLabelwork; then add test IDs. - Add
data-testidonly where role, label and text fall short — no-role custom widgets, scope containers, list rows, and dynamic or localized regions. A controlgetByRolealready finds uniquely needs none. - Name for global uniqueness —
feature-component-element[-variant],kebab-case. - In lists, suffix with a stable domain key, never the array index —
user-row-${user.id}✅ /user-row-${index}❌. - Decouple the value from text, locale, styling, and DOM position — those change; the test ID must not.
- Standardize on one attribute —
data-testidis Playwright's defaulttestIdAttribute; don't mixdata-test/data-qa.
Related
- core/locators.md / core/locator-strategy.md — the consumer side: choosing locators when writing tests.
- Playwright official docs: Locators, Best Practices.
Tips for Playwright Frontend
- • Start a fresh session after installing so your agent picks up the new skill.
- • It is part of a pack with 8 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Playwright Frontend
What does the Playwright Frontend skill do?
For frontend engineers authoring UI — how to make components reliably locatable by tests and AI agents. Covers the official Playwright locator priority, semantic/accessible markup first, and how to add valid, unique, stable `data-testid` attributes (naming convention, uniqueness in lists, stability rules) for React, Vue, Angular, and Svelte. Use when writing or reviewing components, or when an agent needs durable loc
How do I install Playwright Frontend?
Run "npx skills add testdino-hq/playwright-skill --skill playwright-frontend" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Playwright Frontend work in Cursor and Codex?
Yes. Playwright Frontend uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
Is Playwright Frontend free?
Playwright Frontend is open source on GitHub under the MIT license. It is free to install; check the license before commercial use.
Who made Playwright Frontend?
Playwright Frontend is published by testdino-hq in the testdino-hq/playwright-skill repository, together with 7 other skills.



