/crisp-a11y
Accessibility, scored not skimmed.
What it does
A deep accessibility audit. /crisp-a11y evaluates a component or screen against the applicable WCAG 2.2 AA success criteria — perceivable, operable, understandable, robust — and marks each pass, fail, or not applicable. Every failure gets an exact violation, a P0–P3 severity, and a code-level fix precise enough to implement without guesswork.
It goes four times deeper than the accessibility checklist in /handoff, calculates real contrast ratios when you provide token values, and finishes by writing a portable a11y-checklist.md the team can commit.
When to reach for it
Reach for it when accessibility needs evidence, not assurance:
- A pre-launch compliance pass on a key flow or component
- A keyboard or screen-reader complaint has surfaced and you need the full picture
- Reviewing a design-system component every product surface will inherit
- The
/handoffchecklist raised questions that need criterion-level answers
What it produces
- WCAG 2.2 AA scorecard
- Code-level fixes (not vague direction)
- a11y-checklist.md
- P0–P3 severity violations
In the terminal
Illustrative example output — not a real audit.
Semantics before ARIA
The audit's standing principle: prefer native HTML over ARIA patching. A native button is keyboard-accessible, focusable, and correctly announced with no extra code; a div with role="button" needs tabindex, keyboard handlers, and ARIA to imitate what the browser provides free. Any div or span acting as a control gets flagged — and the fix is almost always the correct native element, not more ARIA.
Common questions
How is this different from the /handoff accessibility section?
Depth. Handoff includes a build checklist — keyboard, screen reader, visual basics. This command evaluates individual WCAG 2.2 AA success criteria, calculates contrast ratios from your actual token values, and returns exact code fixes per failure.
What does it need from me?
The component or screen, its primary interaction type — form, navigation, modal, data display — and ideally your colour token values, which turn contrast checks from approximate flags into exact ratios.
What counts as a P0?
A failure that completely blocks an assistive-technology user: a screen-reader user who cannot complete the task, or a keyboard-only user who is trapped. P0s are listed first with fixes, under the heading "fix before shipping".
Why does it mention APCA?
WCAG 2 contrast ratios are the compliance floor, but APCA models how people actually perceive text contrast more accurately. The audit uses WCAG 2 where standards require it and APCA as the design truth.
Install
Installs all fourteen CRISP skills and auto-detects your AI harness. Run /crisp-teach once per project first.
Related skills