accessibility-pass

accessibility-pass is a skill for Claude Code, Codex from microsoft/cat-agent-skills. It costs 69 tokens per session (1,203 once invoked), scanned A, original, MIT.

An accessibility checker for PowerPoint decks, Word documents, HTML pages, and Markdown files. Accessibility means making digital content usable by people with disabilities, including people using screen readers or with colour-vision difficulties.

In plain words
What is it for?
Checking or correcting accessibility problems in presentations, documents, web pages, and Markdown files using Microsoft's accessibility rules.
Why use it?
It finds issues such as missing alternative text, untitled slides, and poor colour contrast before a document or page is handed over. It can fix issues when asked.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

About the project

microsoft/cat-agent-skills is a static website that catalogs reusable instruction sets and related packages for AI agents. People use it to search, filter, rate, and download skills for Cowork, Copilot Studio, and Scout, along with Copilot plugins and Scout automations. The catalogue entries are the skills, instructions, plugins, and settings displayed by the site.

microsoft/cat-agent-skills · 64 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/microsoft/cat-agent-skills/accessibility-pass
Any agent
npx skills add microsoft/cat-agent-skills --skill accessibility-pass
Clone the repo
git clone --depth 1 https://github.com/microsoft/cat-agent-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for accessibility-pass

README.md
[![agentmods](https://agentmods.dev/badge/skills/microsoft/cat-agent-skills/accessibility-pass.svg)](https://agentmods.dev/skills/microsoft/cat-agent-skills/accessibility-pass)
Your own site
<a href="https://agentmods.dev/skills/microsoft/cat-agent-skills/accessibility-pass"><img src="https://agentmods.dev/badge/skills/microsoft/cat-agent-skills/accessibility-pass.svg" alt="Measured on agentmods" height="20"></a>
Per session 69 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,203 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00069 $0.01203
Opus 5 $0.00034 $0.00602
Sonnet 5 $0.00014 $0.00241
Haiku 4.5 $0.00007 $0.00120

Measured 6d ago against content hash b4a43e423f49, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

accessibility-pass scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/a11y_check.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

submissions/accessibility-pass/SKILL.md · 117 lines

How it starts

The opening of the file, as written. The whole thing — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Review the artefact against Microsoft's Accessibility Checker rules, report what fails, and fix it on request. Use the rule names below verbatim. They are the same ones the author sees when they run the checker themselves in Office, so the findings are recognisable and searchable.

Instructions

  1. Get the file. Supported: .pptx, .docx, .html, .md. If the user pasted raw HTML or Markdown instead, save it to a file first.

  2. Run the bundled checker when a Python environment is available, from the skill's own root directory (the folder containing scripts/), so the relative path resolves:

    python scripts/a11y_check.py <file> --json
    

    It needs python-pptx for .pptx and python-docx for .docx; HTML and Markdown need nothing beyond the standard library. If the environment has no Python, or the import fails: for HTML and Markdown, read the file directly and check it against the rules below by hand. For .pptx and .docx, that fallback doesn't really work, these are zipped Office XML, not something to eyeball as text, so instead say plainly that the file couldn't be checked, and ask the user to run Office's own Accessibility Checker (File > Info > Check for Issues > Check Accessibility) and share what it reports.

  3. Add the judgement calls the script deliberately does not make:

    • Alt text that exists but is useless. "image1.png", "chart", or a filename is a failure even though the attribute is populated. Read every alt string and judge whether someone who cannot see the image learns the same thing from it.
    • Wrongly decorative. Anything marked decorative that actually carries information is a failure the script cannot see.
    • Reading order that is flagged but fine. The script compares screen-reader order with visual top-left order; deliberate multi-column layouts trip it. Confirm before reporting.
    • Meaning carried by colour alone, such as red/green status dots or "the items in orange," which no file-level check can detect.
    • Captions and transcripts for embedded audio or video.
    • Contrast the script skipped. It only compares explicit RGB values. Theme colours, gradients, and picture fills come back unchecked. Report them as unchecked, never as passing.
  4. Report findings grouped by severity, worst first, one row each:

    Severity Rule Where Fix
    Error All slides have titles Slide 4 Add a title in the title placeholder

    Open with a one-line count (3 errors, 5 warnings, 1 tip). If nothing fails, say so and list what could not be checked mechanically.

  5. Offer to apply the fixes. Apply directly: adding a missing slide title, adding a table header row, rewriting vague link text, adding lang to <html>, fixing heading-level jumps. Ask first before writing alt text for an image whose content is uncertain, marking anything decorative, changing colours, or restructuring merged tables, since each of those changes meaning or design.

  6. Re-run the checker after fixing and report what is left.

Read the full file on GitHub · 117 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 117 lines · 69 tokens per session scan A b4a43e423f49

Subscribe to this mod's changes

accessibility-pass is a skill published in the GitHub repository microsoft/cat-agent-skills (64 stars, last pushed 4d ago), licensed MIT. It adds 69 tokens to every session and 1,203 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.