Install
openclaw skills install @suhteevah/accesslintWeb accessibility & WCAG compliance scanner — detects WCAG 2.1 violations, missing ARIA attributes, color contrast issues, keyboard navigation problems, and semantic HTML failures across HTML, JSX, Vue, and Svelte
openclaw skills install @suhteevah/accesslintAccessLint scans codebases for WCAG 2.1 violations, missing ARIA attributes, color contrast issues, keyboard navigation problems, form accessibility failures, and semantic HTML anti-patterns. It uses regex-based pattern matching against 95+ accessibility patterns across HTML, JSX, Vue, and Svelte templates. Lefthook integration for git hooks, markdown accessibility reports with WCAG success criterion mapping.
accesslint scan [file|directory]One-shot accessibility scan of files or directories.
How to execute:
bash "<SKILL_DIR>/scripts/accesslint.sh" scan [target]
What it does:
Example usage scenarios:
accesslint scan .accesslint scan src/components/Button.tsxaccesslint scan src/accesslint scan .accesslint hooks installInstall git pre-commit hooks that scan staged files for accessibility issues before every commit.
How to execute:
bash "<SKILL_DIR>/scripts/accesslint.sh" hooks install
What it does:
accesslint hooks uninstallRemove AccessLint git hooks.
bash "<SKILL_DIR>/scripts/accesslint.sh" hooks uninstall
accesslint report [directory]Generate a markdown accessibility report with findings, severity breakdown, and WCAG criterion mapping.
bash "<SKILL_DIR>/scripts/accesslint.sh" report [directory]
What it does:
accesslint audit [directory]Deep accessibility audit with component analysis and ARIA coverage checks.
bash "<SKILL_DIR>/scripts/accesslint.sh" audit [directory]
What it does:
accesslint policy [directory]Enforce organization-specific accessibility policies on codebases.
bash "<SKILL_DIR>/scripts/accesslint.sh" policy [directory]
What it does:
accesslint sarif [directory]Generate SARIF JSON output for CI/CD integration.
bash "<SKILL_DIR>/scripts/accesslint.sh" sarif [directory]
What it does:
accesslint wcag [directory]Generate WCAG 2.1 AA/AAA compliance report.
bash "<SKILL_DIR>/scripts/accesslint.sh" wcag [directory]
What it does:
accesslint statusShow license and configuration information.
bash "<SKILL_DIR>/scripts/accesslint.sh" status
AccessLint detects 95+ accessibility patterns across 6 categories:
| Category | Examples | Severity |
|---|---|---|
| Missing ARIA & Roles | Images without alt, buttons without accessible names, inputs without labels, icon-only buttons without aria-label, SVG without title/role, links with no text content | Critical/High |
| Semantic HTML Issues | div/span used as button/link, nested interactive elements, heading hierarchy violations, multiple h1 tags, missing lang attribute, missing document title | Critical/High |
| Keyboard Navigation | Click handlers without keyboard equivalent, mouseOnly events, missing focus styles, tabindex misuse, focus traps without escape | High/Medium |
| Form Accessibility | Inputs without associated labels, missing fieldset/legend, placeholder-only labels, required fields without aria-required, error messages not linked | Critical/High |
| Color & Visual | Color-only information, potential low contrast patterns, missing prefers-reduced-motion, animations without motion preference | High/Medium |
| Dynamic Content | Live regions without aria-live, loading states without announcements, modals without focus management, toast/notification without role=alert | High/Medium |
Users can configure AccessLint in ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"accesslint": {
"enabled": true,
"apiKey": "YOUR_LICENSE_KEY_HERE",
"config": {
"severityThreshold": "high",
"customPolicies": [],
"excludePatterns": ["**/test/**", "**/examples/**", "**/storybook/**"],
"wcagLevel": "AA",
"reportFormat": "markdown"
}
}
}
}
}
hooks install, prompt to install itThe user might say things like: