a11y-audit · git:20260926.9dc1355 · 2026-09-26 · sha256 7df66abf34462eb3
a11y-audit git:20260926.9dc1355A
Immutable. This exact content never changes and is served at /api/v1/blob/7df66abf34462eb3.
---
name: a11y-audit
description: "Audits accessibility against WCAG 2.2 AA — axe-core via Playwright, Lighthouse a11y, a manual keyboard/screen-reader checklist for key flows, game accessibility settings; findings with WCAG criteria and fixes. Required before release."
argument-hint: "[url or route list | all]"
user-invocable: true
allowed-tools: Read, Glob, Grep, Bash, Write, Task, AskUserQuestion
model: haiku
agent: accessibility-specialist
---
# A11y Audit
Reply in the project conversation language (CLAUDE.md → Language); code, identifiers, paths and commit messages stay in English.
`stack-reference/web-platform.md` ("Accessibility").
## Phase 1: Scope
Routes/pages (from UX specs or the argument); is the dev server running? (offer to start it).
## Phase 2: Automation
`@axe-core/playwright` over the routes (create the spec with consent), Lighthouse a11y — output.
## Phase 3: Manual checklist
Keyboard, focus (2.4.11/2.4.13), names, ARIA, contrast, target size (2.5.8), forms (3.3.7/3.3.8), motion; games — keyboard/gamepad menus, settings.
## Phase 4: Report
1. Table "finding → WCAG criterion → severity → file → fix".
2. "May I write `docs/ops/a11y-audit-<date>.md` and an axe regression test?" — one `AskUserQuestion`: write (Recommended) · show the draft/diff first · not now. After the "write" answer: `touch .claude/.write-consent` (rule 7).
3. For every critical finding, one `AskUserQuestion`: record it in `production/findings.md` (`A11Y-NNN`, template `findings.md`) (Recommended) · fix stories now · report only.
Verdict: `PASS` | `FAIL (N critical)`. Next step — one `AskUserQuestion`: fix the critical findings via `angular-engineer`/`vue-engineer`/`css-engineer` (Recommended) · re-run `/a11y-audit` after fixes · `/release-checklist`.