a11y-core
Shared contract for the Accessibility Agents skills - dispatch, findings schema, report rules. Read by skills, never dispatched…
Reference data, not a reviewer. Canonical severity level definitions and cross-domain mapping for web, document, and markdown audits. Score impact ranges, WCAG conformance alignment, and cross-format normalization.
Claude Code
$ npx -y skills add Community-Access/accessibility-agents --skill kb-severity-mapping --agent claude-code
Codex
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a codex -y
Cursor
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a cursor -y
Gemini CLI
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a gemini-cli -y
GitHub Copilot
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a github-copilot -y
OpenCode
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a opencode -y
Windsurf
$ npx skills add Community-Access/accessibility-agents --skill kb-severity-mapping -a windsurf -y
name: kb-severity-mapping description: Reference data, not a reviewer. Canonical severity level definitions and cross-domain mapping for web, document, and markdown audits. Score impact ranges, WCAG conformance alignment, and cross-format normalization. license: MIT disable-model-invocation: true user-invocable: false metadata: tier: reference domain: cross-cutting output: none effort: low title: Severity Mapping
Canonical severity definitions shared across web, document, and markdown audit domains.
> **What reports actually use.** The score and grade in every rendered report > come from `skills/a11y-core/scripts/merge-findings.mjs`: severity weights > critical 10, serious 5, moderate 2, minor 1; confidence factors high 1.0, > medium 0.7, low 0.4; the penalty is scaled by the number of checks run; grades > are A 90+, B 80+, C 70+, D 60+, F below 60. Where this file differs, the > script decides. A score is not a conformance claim: only a finding-free > review against every criterion at the target level supports "conforms".
Severity is what a person experiences; WCAG level is what conformance requires. The two are independent, so the conformance column below is typical, not a rule.
Each level, with its definition, WCAG conformance and score weight.
| Level | Definition | Typical WCAG Conformance | Score Weight | |---|---|---|---| | **Critical** | Blocks access entirely for one or more user groups. No workaround exists. | Fails Level A | 10 | | **Serious** | Severely impairs access; a workaround may exist but is unreasonable. | Fails Level A or AA | 5 | | **Moderate** | Causes friction or confusion; most users can still complete the task. | Fails Level A or AA | 2 | | **Minor** | Polish issue; no meaningful barrier for most users. | Technique deviation | 1 |
Each canonical level, with its web (axe-core or playwright), document (office or PDF) and markdown.
| Canonical Level | Web (axe-core / Playwright) | Document (Office/PDF) | Markdown | |---|---|---|---| | Critical | `critical` (axe-core) | Missing document title; untagged PDF; missing heading structure | Broken anchor link leading to dead navigation | | Serious | `serious` (axe-core) | Missing alt text on informational image; table has no headers | Ambiguous link text (e.g., "click here"); missing alt text on image | | Moderate | `moderate` (axe-core) | Merged table cells; color-only data encoding | Skipped heading level; missing table caption | | Minor | `minor` (axe-core) | Decorative image with non-empty alt; redundant bookmark | Emoji in heading; em-dash used as list separator |
The weights are the renderer's (`skills/a11y-core/scripts/merge-findings.mjs`; formula in `kb-web-severity-scoring`). Each finding counts once. Findings merge when the same rule fires at the same location, or when findings at the same location describe the same defect under different rules; the same rule on another element or page is a separate finding.
When generating a unified report that combines web, document, and markdown findings:
1. Map each finding to the canonical severity level using the table above. 2. Apply the weight of the canonical level, not the domain-specific tool's internal scoring. 3. A rendered report scores all merged findings together. A per-page or per-file score, where a report shows one, is the same formula over that page's findings. 4. Do not double-count a finding that appears in both an axe-core scan and a Playwright behavioral scan -- deduplicate by rule ID and element location.
Confidence scales a finding's weight in every domain. Each level, with its factor and signals:
| Confidence | Factor | Source signals | |---|---|---| | high | 1.0 | Two sources agree (for example axe-core and code review), or the check is structural and certain. A third confirming source keeps it high. | | medium | 0.7 | Single source, likely issue | | low | 0.4 | Single source, heuristic; needs human review |
A finding with no confidence counts as high.
WCAG 2.2 AA enforcement for agentic coding, as a set of Agent Skills. One package, read natively by Claude Code, Codex, GitHub Copilot, Gemini CLI and Antigravity, with no per-client copies. Models forget accessibility while generating code.
Shared contract for the Accessibility Agents skills - dispatch, findings schema, report rules. Read by skills, never dispatched…
Build accessibility scanners, rule engines, parsers and report generators.
Web UI accessibility lead. Use before writing or changing HTML, JSX, TSX, Vue, Svelte, CSS or templates. Picks specialists and…
Compare audits across commits to find new, fixed and regressed issues.
Generate a W3C or EU model accessibility statement from audit results.
GitHub Actions: workflow runs, logs, re-runs and CI failure triage.
Produce the "Playwright 1.xx API Review" artifact for a range of commits - the public API additions and the breaking or behavior…
Write, refine, run, and QA promptfoo evaluation suites: promptfooconfig.yaml, prompts, providers, vars, tests, assertions,…
DeepEval evaluation workflow for AI agents and LLM applications. TRIGGER when the user wants to evaluate or improve an AI agent,…