accessibility-seo
Skill5 starsChanged 36 days agoMITView on GitHub
Audit machine-verifiable HTML accessibility signals that directly impact search UX and AI parsing, including html lang, mobile viewport, image alt text, heading structure, descriptive anchors, and main landmarks.
In this repository24 other files it gives its agents.
- one-step-seoSkill
- answer-engine-optimizationSkill
- content-qualitySkill
- core-web-vitalsSkill
- duplicate-contentSkill
- ecommerce-seoSkill
- entity-optimizationSkill
- geo-optimizationSkill
- http-statusSkill
- image-seoSkill
- internal-linkingSkill
- international-seoSkill
- javascript-seoSkill
- llms-txtSkill
- local-seoSkill
- onpage-optimizationSkill
- schema-validationSkill
- security-hygieneSkill
- seo-auditSkill
- seo-fixSkill
- seo-regressionSkill
- sitemap-robotsSkill
- social-metadataSkill
- technical-seoSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 0 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
Run a focused audit via --skills accessibility-seo (or --skills a11y).
- Very specific: line 33
Remove or populate empty <h1>–<h6> tags (O04-heading-empty P2) and fix skipped heading levels like <h1> -> <h3> (O04-headings P2).
- Very specific: line 68
Never auto-generate generic or filename-stuffed alt text (e.g., alt="IMG_4029.jpg" or keyword-stuffed strings).
- Very specific: line 69
Never add maximum-scale=1 or user-scalable=no to <meta name="viewport">.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
accessibility-seo — HTML Accessibility & Search UX Alignment
1. Description & Activation Criteria
Activate accessibility-seo when the user wants to:
- Audit the foundational overlap between WCAG HTML accessibility, mobile search usability, and AI content extraction.
- Remediate missing
<html lang>(T09-langP2), missing/broken mobile<meta name="viewport">(T11-viewportP1), missing imagealtattributes (O08-altP1), skipped/empty headings (O04-headingsP2,O04-heading-emptyP2), vague link text (O11-generic-anchorsP3), or missing<main>/<article>landmarks (G11-semantic-contentP3). - Run a focused audit via
--skills accessibility-seo(or--skills a11y).
2. Inputs & Prerequisites
- Target: Live URL, local HTML file, or static build directory (
./dist,./out,./public). - Key flags:
--skills accessibility-seo(aliases:accessibility-ux,a11y): Filters audit findings to semantic HTML accessibility and mobile UX checks.fix --only lang,viewport: Safely previews/applies missing<html lang>and responsive<meta name="viewport">tags on local HTML files.
3. Step-by-Step Workflow
- Run an accessibility-scoped audit:
- Execute
npx one-step-seo page <url-or-file> --skills accessibility-seo --out ./seo-report.
- Execute
- Fix document language & mobile viewport (
T09-lang,T11-viewport):- Screen readers rely on
<html lang="...">to select the right pronunciation voice (T09-langP2). - Mobile browsers and mobile-first indexing require
<meta name="viewport" content="width=device-width, initial-scale=1">(T11-viewportP1) — never setuser-scalable=noormaximum-scale=1, which blocks pinch-to-zoom for low-vision users.
- Screen readers rely on
- Provide meaningful image alternatives (
O08-alt):- Inspect
report.page.imagesandO08-alt(P1). Informative images need concisealttext conveying the image's meaning; purely decorative graphics must explicitly declarealt=""(empty attribute) so screen readers skip them cleanly.
- Inspect
- Repair document outline & landmarks (
O04-headings,O04-heading-empty,G11-semantic-content,C05-table-headers):- Remove or populate empty
<h1>–<h6>tags (O04-heading-emptyP2) and fix skipped heading levels like<h1>-><h3>(O04-headingsP2). - Wrap primary page content in
<main>or<article>(G11-semantic-contentP3 on 600+ word pages) so assistive tech and AI readers can bypass navigation chrome.
- Remove or populate empty
- Replace generic link anchors (
O11-generic-anchors):- Rewrite repetitive
"click here","read more", and"learn more"anchors (O11-generic-anchorsP3 when 2+ links match) into self-describing destination labels (e.g.,"Read the API authentication guide").
- Rewrite repetitive
4. Tools & CLI Commands
# Audit accessibility-aligned SEO signals on a live page
npx one-step-seo page https://example.com --skills accessibility-seo --out ./seo-report
# Audit an entire local build directory offline
npx one-step-seo audit ./dist --pages 20 --skills a11y --offline --out ./seo-report
# Preview safe additive fixes for missing viewport and html lang
npx one-step-seo fix ./dist --only viewport,lang --lang en5. Evidence Requirements
- Quote exact counts and offending elements from
O08-alt(X/Y images missing alt),O04-heading-empty(Empty headings found: ...),O11-generic-anchors("read more" ×N),T09-lang, andT11-viewportinreport.findings. - Reference
report.page.h1,report.page.images, andreport.page.wordCountfromreport.json.
6. Expected Outputs
- Semantic Accessibility Scorecard: Status of language, mobile viewport, image
altcoverage, heading hierarchy, landmarks, and link anchors. - Remediation Diffs: Mechanical
<head>fixes viaone-step-seo fixplus human-reviewedalttext and anchor rewrites grounded in page context.
7. Limitations & External Data
- Foundational HTML scope:
one-step-seoaudits deterministic HTML markup signals (lang,viewport,alt, headings, anchors,<main>). It does not compute rendered CSS color contrast ratios, keyboard focus traps, ARIA state machine transitions, or captions on video streams — pair with browser DevTools / axe / Lighthouse accessibility testing for full WCAG 2.2 AA compliance. - Offline support: 100% supported offline.
8. Safety & Approval Rules
- Never auto-generate generic or filename-stuffed
alttext (e.g.,alt="IMG_4029.jpg"or keyword-stuffed strings);one-step-seo fixintentionally excludesalttext so descriptions stay accurate to the visual asset. - Never add
maximum-scale=1oruser-scalable=noto<meta name="viewport">.
9. Examples
# Inspect all checks in the accessibility-ux skill
npx one-step-seo skills accessibility-seo
# Apply viewport and English lang fixes to local HTML files with .bak backups
npx one-step-seo fix ./public --apply --only viewport,lang --lang enDoes it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

