Agent Skills
Back to gallery
AP
Copilot StudioCowork
.zip

Accessibility Pass

accessibilitydocumentspresentationspowerpointqualityscripts

Check a PowerPoint deck, Word document, HTML page, or Markdown file against Microsoft's Accessibility Checker rules (missing alt text, untitled slides, headerless tables, low contrast, illogical reading order) and fix what it finds.


Accessibility Pass

Most skills in this gallery produce decks and documents. This one checks what comes out the other end.

Point it at a .pptx, .docx, .html, or .md file and it reports every accessibility failure it can find, using the same rule names Microsoft’s own Accessibility Checker uses, so the findings match what you see in the Office ribbon, then fixes them on request.

What it checks

Errors Missing alt text, untitled slides, tables with no header row, restricted document access
Warnings Contrast below WCAG AA, merged/complex tables, illogical slide reading order, uncaptioned media, vague link text
Tips Duplicate slide titles, documents with no heading styles, missing document language

How it works

Two passes. A bundled script (scripts/a11y_check.py) does the arithmetic: it computes real WCAG contrast ratios, reads alt-text attributes straight out of the file’s XML, and compares screen-reader order against visual layout. Then the agent does the part a script can’t, judging whether alt text is useful, whether something marked decorative really is, and whether meaning is being carried by colour alone.

The script needs python-pptx for PowerPoint files and python-docx for Word files. HTML and Markdown use the Python standard library only. Without a Python environment, HTML and Markdown still work: the agent reads the file directly and applies the same rules by hand, just less precisely. PowerPoint and Word files don’t have that fallback, they’re zipped Office XML, not something to read as plain text, so without Python the skill asks the user to run Office’s own Accessibility Checker and share what it finds instead.

Known limits

Worth knowing before you trust a clean result:

  • Contrast is only checked where colours are explicit. Theme colours, gradients, and text over images are reported as unchecked, not as passing. Office’s built-in checker has the same blind spot.
  • Reading order is a geometry heuristic. Intentional multi-column layouts can be flagged; the skill is told to confirm before reporting.
  • This is not a conformance audit. No automated tool can certify WCAG or EN 301 549. A clean pass means no detected issues, which is not the same as accessible.

Rules reference

Rules for the Accessibility Checker · WCAG 2.1 contrast minimum


Skill by Tim Karlsson (╯°□°)╯︵ ┻━┻ Works 60% of the time, every time.

Rate & discuss this skill

Give this skill a 👍 with your GitHub account. Ratings power the gallery's "Top rated" sort (refreshed on each deploy).