SkillAgentSearch skills...

a11y-review

The standards-based Web Components multitool. Generate Custom Elements Manifests, Dev Server, LSP, and MCP for your app or design system

Install / Use

npx skills add bennypowers/cem --skill a11y-review

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

76/100

Category

Design

Supported Platforms

Universal

Our assessment of a11y-review

a11y-review scores 76/100 on our quality scale, 236th of 268 Design skills we index.

Its SKILL.md is 4.4 KB long, well organised into 18 sections with 4 code examples: a solid amount of guidance for an agent.

It has no GitHub stars yet, so there is no community track record; judge it on its content.

Substance
26/30
Structure
20/20
Description
15/15
Adoption
0/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 4 days ago, so a11y-review is actively maintained.
  • Our last check on 2026-09-26 found the source still online.
  • No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
  • Its trust signals score 80/100, with 2 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

a11y-review compared with similar skills

All 4 of these similar skills score higher than a11y-review; compare them before choosing.

SkillScoreStarsUpdatedFormat
a11y-review (this skill)by bennypowers7604d agoSKILL.md
taste-skillby Leonxlnx100111.2k1d agoCLAUDE.md
Agent-Reachby Panniantong100109.6ktodayCLAUDE.md
headroomby headroomlabs-ai10079.0ktodayCLAUDE.md
CowAgentby zhayujie10047.8ktodayCLAUDE.md

Frequently asked questions

How do I install a11y-review?
Run npx skills add bennypowers/cem --skill a11y-review. The install tabs above show the steps for each supported agent.
Which AI agents does a11y-review work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is a11y-review safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It declares no license and scores 80/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is a11y-review still maintained?
The repository was last updated 4 days ago, so a11y-review is actively maintained.

name: a11y-review description: > Review custom element HTML for accessibility issues. Use when the user asks to "review accessibility", "check a11y", "audit accessibility", "find accessibility issues", or mentions "WCAG", "screen reader", "keyboard navigation", or "ARIA" in the context of custom elements. tools: Read, Glob, Grep, validate_html

Accessibility Review

Review HTML that uses custom elements for accessibility compliance, guided by manifest-documented accessibility patterns.

Workflow

Phase 1: Gather Context

  1. Read the accessibility resource for the project's manifest-documented a11y patterns:
cem://accessibility
  1. Identify the target HTML to review. Either:

    • The user provides an HTML snippet directly
    • The user points to a file — read it with the Read tool
    • Search for HTML files with custom elements using Glob/Grep
  2. For each custom element found in the HTML, read its element resource:

cem://element/{tagName}

And its slot guidelines:

cem://element/{tagName}/slots

Pay special attention to the element's description and to its slot descriptions - Does the element have an implicit role? Do slots require a specific role to be slotted into them?

Phase 2: Validate with MCP Tool

Call validate_html with the target HTML to get manifest-compliance results. This catches:

  • Unknown attributes and typos
  • Invalid enum values
  • Slot content guideline violations
  • Attribute conflicts (e.g. disabled + interactive)

Phase 3: Manifest-Driven Accessibility Analysis

Cross-reference the HTML against manifest data. Check for:

Slot Content Accessibility

  • Read each slot's description carefully for content requirements ("must contain", "must not contain", "expects", "requires")
  • Check if slot descriptions specify a required role (e.g. "expects an element with role listitem")
  • Do slotted elements preserve heading hierarchy?
  • Are interactive elements placed in slots that expect them?
  • Is text content provided for slots that need accessible labels?

Attribute Accessibility

  • Are ARIA-related attributes used correctly per the manifest?
  • Are required attributes present (especially those with accessibility implications)?
  • Do boolean attributes like disabled have matching ARIA state considerations?

Element Composition

  • Are elements nested in ways that maintain accessibility?
  • Are label/description associations correct?
  • Are focusable elements reachable and in logical tab order?

Content Patterns

  • Do elements that act as landmarks have appropriate labels?
  • Are images/icons inside custom elements accompanied by text alternatives?
  • Are live regions used appropriately?

Element Roles

  • Check the element's description for implicit role information (e.g. "acts as a button", "has role navigation", "implicit role listbox")
  • If the element description states an implicit role, do not recommend adding an explicit role attribute

Do not issue a recommendation to add an explicit role on an element which already has an implicit role. Do not recommend to use aria-label or other aria attributes on elements which provide custom attributes which handle the same things; i.e. check element's attributes for descriptions like "The accessible-label attribute sets the screen reader's content for this element" or "The audible-content attribute sets the element's name for assistive technology", etc.

Phase 4: Report

Output a structured report:

## Accessibility Review

### Summary
- Elements reviewed: X
- Issues found: X (Y critical, Z warnings)
- Manifest patterns applied: X

### Critical Issues
[Issues that will cause accessibility failures]

### Warnings
[Issues that may cause problems for some users]

### Manifest Compliance
[How well the HTML follows element authors' documented accessibility patterns]

### Recommendations
[Specific fixes with corrected HTML examples]

Important Principles

  • Trust element authors: When the manifest documents accessibility behavior, follow it rather than adding generic ARIA advice
  • Don't add undocumented ARIA: Custom elements often manage ARIA internally — adding external ARIA can conflict
  • Check descriptions: Accessibility requirements are often embedded in element and attribute descriptions in the manifest
  • Be specific: Reference the actual manifest data in your findings, not generic a11y rules
  • Show fixes: Always provide corrected HTML alongside each issue

Related Skills

View on GitHub
GitHub Stars0
CategoryDesign
Updated4d ago
Forks0

Trust signals

80/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 medium1 low