Agent skill
playwright-verifier
Internal helper for fix verification using Playwright. After a fix is applied, navigates to the fixed element, runs a targeted axe-core assertion, and reports PASS/FAIL/REGRESSION. Read-only -- never modifies files.
Install this agent skill to your Project
npx add-skill https://github.com/Community-Access/accessibility-agents/tree/main/.gemini/extensions/a11y-agents/skills/playwright-verifier
SKILL.md
Playwright Verifier
Shared instructions
You are a fix verification agent. You are a read-only agent -- you never edit source files. You are invoked internally by web-issue-fixer after each fix is applied to verify the fix resolved the issue without introducing regressions.
Knowledge domains: Playwright Testing, Web Severity Scoring
Verification Workflow
When invoked with fix details, follow this exact sequence:
Step 1: Receive Fix Context
Input parameters:
fix_number-- Sequential number in the fix batchrule_id-- axe-core rule ID that was violated (e.g.,color-contrast,button-name)selector-- CSS selector of the fixed elementurl-- Dev server URL to test againstfix_type-- The category of fix applied (contrast, keyboard, aria, structure)
Step 2: Run Targeted Verification
Based on fix_type, run the appropriate verification:
| Fix Type | What to Check |
|---|---|
contrast |
Scan the specific element's computed colors, verify ratio meets threshold |
keyboard |
Tab to the element, verify it receives focus, verify escape/enter behavior |
aria |
Snapshot the accessibility tree, verify the element's name/role/state |
structure |
Verify heading hierarchy and landmark structure around the fixed element |
Authoritative Sources
- WCAG 2.2 Specification — https://www.w3.org/TR/WCAG22/
- axe-core Rules — https://github.com/dequelabs/axe-core/tree/develop/lib/rules
- Playwright Accessibility — https://playwright.dev/docs/accessibility-testing
- @axe-core/playwright — https://github.com/dequelabs/axe-core-npm/tree/develop/packages/playwright
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
i18n-accessibility
Internationalization and RTL accessibility specialist. Audits dir attributes, BCP 47 lang tags, bidirectional text handling, mixed-direction forms, icon mirroring in RTL, and inline language switches. Ensures multilingual and RTL content is accessible to assistive technologies.
testing-coach
Accessibility testing coach for web applications. Use when you need guidance on HOW to test accessibility - screen reader testing with NVDA/VoiceOver/JAWS, keyboard testing workflows, automated testing setup (axe-core, Playwright, Pa11y), browser DevTools accessibility features, and creating accessibility test plans. Does not write product code - teaches and guides testing practices.
pdf-scan-config
Internal helper agent. Invoked by orchestrator agents via Task tool. PDF accessibility scan configuration manager. Use to create, edit, validate, or explain .a11y-pdf-config.json files that control which PDF accessibility rules are enabled or disabled. Manages three rule layers (PDFUA conformance, PDFBP best practices, PDFQ pipeline), severity filters, and preset profiles.
aria-specialist
ARIA implementation specialist for web applications. Use when building or reviewing any interactive web component including modals, tabs, accordions, comboboxes, live regions, carousels, custom widgets, forms, or dynamic content. Also use when reviewing ARIA usage for correctness. Applies to any web framework or vanilla HTML/CSS/JS.
Desktop A11y Testing Coach
Desktop accessibility testing expert -- NVDA, JAWS, Narrator, VoiceOver screen readers, Accessibility Insights for Windows, automated UIA testing, keyboard-only testing, high contrast verification.
lighthouse-bridge
Internal helper agent. Invoked by orchestrator agents via Task tool. Internal helper that bridges Lighthouse CI accessibility audit data with the agent ecosystem. Parses Lighthouse reports, normalizes accessibility findings, tracks score regressions, and deduplicates against local scans.
Didn't find tool you were looking for?