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.
npx skills add customerio/ai-skills --skill email-accessibilitygit clone --depth 1 https://github.com/customerio/ai-skillsWrote 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.
[](https://agentmods.dev/skills/customerio/ai-skills/email-accessibility)<a href="https://agentmods.dev/skills/customerio/ai-skills/email-accessibility"><img src="https://agentmods.dev/badge/skills/customerio/ai-skills/email-accessibility/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/customerio/ai-skills/email-accessibility"><img src="https://agentmods.dev/badge/skills/customerio/ai-skills/email-accessibility.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00137 | $0.04149 |
| Opus 5.5 | $0.00055 | $0.01660 |
| Sonnet 5.5 | $0.00027 | $0.00830 |
| Haiku 4.5 | $0.00014 | $0.00415 |
Grade A, and why
email-accessibility-checker 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 2mo ago.
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.
How it starts
The opening of the file, as written. The whole thing — 202 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Email Accessibility Checker
Analyze email HTML for accessibility issues. Combines mechanical rule-based checks with judgment-based analysis to catch issues that rules alone miss.
Token efficiency: Only report issues found. Do not list passing checks or clean elements. If the email is long, prioritize critical and serious issues first.
Severity must reflect impact, not fix complexity. Assign severity based on how much the issue affects people using assistive technology — not how easy it is to fix. A finding described as "invisible", "unreadable", or "critically low contrast" must never be assigned mild or moderate. If the language you use to describe the problem contradicts the severity label, the label is wrong.
Workflow
Step 1: Get the HTML
Obtain the final email HTML to analyze. This may be provided directly by the user, read from a file, or fetched from an API.
Before scanning: Rendered HTML often splits element attributes across multiple lines. Before running any checks, flatten the HTML so each opening tag is a single logical line — attributes on continuation lines will be silently missed by line-by-line grep patterns. When using shell tools, collapse newlines within tags before grepping (e.g. tr '\n' ' ' then sed 's/ */ /g'). When analyzing directly, always read the complete opening tag and its full text content before evaluating.
Step 2: Rule-based checks
Scan the HTML for these mechanical pass/fail issues. Severities: critical > serious > moderate > mild.
Document structure
| Severity | Rule | Details |
|---|---|---|
| serious | <html> must have a valid lang attribute |
e.g. lang="en". Check the value is a valid BCP 47 language tag. lang="und" (undetermined) is valid and not a failure — but recommend setting a specific language for better screen reader pronunciation. |
| serious | Body content wrappers must have lang and dir |
Email clients often strip <html>, so direct children of <body> (excluding empty elements, <style>, <script>, and <img alt="">) need their own lang and dir attributes. If lang and dir are present but set to generic values (lang="und", dir="auto"), do not flag as a failure — instead note as a recommendation (mild) to set specific values for better assistive technology support. |
| serious | dir must be ltr, rtl, or auto |
Flag any other value. dir="auto" is valid — recommend setting an explicit direction only as a mild improvement. |
| serious | Document should have a <title> element if the email has a view in browser link |
Title is used for navigation on hosted version of the email. |
| critical | <meta name="viewport"> must not disable zoom |
Flag maximum-scale=1, user-scalable=no, or user-scalable=0. |
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.
- 2mo ago First seen · 202 lines · 137 tokens per session scan A 1e23b16e88ed
email-accessibility-checker is a skill published in the GitHub repository customerio/ai-skills (2 stars, last pushed 2mo ago), licensed MIT. It adds 137 tokens to every session and 4,149 once invoked, about $0.0005 per session on Opus 5.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-31.
email-accessibility-checker compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| email-accessibility-checkercustomerio/ai-skills | Skill | 2 | 2mo ago | MIT | A | 137 | Claude Code, Codex |
| webgl-holographic-foilnexu-io/open-design | Skill | 106k | today | Apache-2.0 | A | 41 | Claude Code, Codex |
| html-ppt-hermes-cyber-terminalnexu-io/open-design | Skill | 106k | today | Apache-2.0 | A | 53 | Claude Code, Codex |
| html-ppt-taste-brutalistnexu-io/open-design | Skill | 106k | today | Apache-2.0 | A | 78 | Claude Code, Codex |
| visual-ralphYeachan-Heo/oh-my-codex | Skill | 34k | today | MIT | A | 52 | Codex |
| glance-canonical-layoutsandroid/skills | Skill | 10k | yesterday | Apache-2.0 | A | 56 | Claude Code |
| accessibilitymicrosoft/hve-core | Skill | 1.6k | today | MIT | A | 47 | Claude Code |