Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
infrasity-labs avatar

Docs Auditor

  • 77 installs
  • 93 repo stars
  • Updated June 28, 2026
  • infrasity-labs/dev-gtm-claude-skills

Run an automated 33-check audit on a live developer docs site and get a scored inline report for DevRel launches and AI discoverability.

About

Docs Auditor is an agent skill that audits any developer documentation site against thirty-three checks grouped into seven categories, then renders an interactive score out of one hundred directly in Claude—color-coded circle, category breakdowns, and per-check evidence notes. Solo builders and small DevRel teams use it before a launch or redesign instead of manually spot-checking URLs, sitemaps, and llms.txt. It targets developer marketing, GEO workflows, technical writers planning gap analyses, and consultants who need a scored client deliverable without spreadsheets. The skill fetches the live site, samples key pages, and evaluates structure, content quality, SEO, AI discoverability, and maintenance signals. It complements human editorial review: you still fix content, but you get a consistent rubric your coding agent can rerun after each docs deploy.

  • 33 automated checks across 7 categories with a 100-point scored report
  • Fetches live site samples and renders pass/warn/fail badges with evidence in Claude
  • Covers structure, content, SEO, AI discoverability, and maintenance hygiene
  • Built for DevRel pre-launch reviews, GEO practitioners, and client deliverables

Docs Auditor by the numbers

  • 77 all-time installs (skills.sh)
  • +4 installs in the week ending Jul 25, 2026 (Skillselion tracking)
  • Ranked #696 of 1,901 Documentation skills by installs in the Skillselion catalog
  • Data as of Jul 26, 2026 (Skillselion catalog sync)
npx skills add https://github.com/infrasity-labs/dev-gtm-claude-skills --skill docs-auditor

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs77
repo stars93
Last updatedJune 28, 2026
Repositoryinfrasity-labs/dev-gtm-claude-skills

What it does

Run an automated 33-check audit on a live developer docs site and get a scored inline report for DevRel launches and AI discoverability.

Files

SKILL.mdMarkdownGitHub ↗

Docs Auditor Skill

Audits a developer documentation site across 33 checks in 7 categories. Given a docs URL, fetch all required pages, evaluate every check, and render a visual scored report.

---

Step 0a — Unlock Derived URLs via Targeted Search (CRITICAL, do this first)

Before fetching any derived URLs, run a single web_search that includes the exact file paths you need. This is required because web_fetch only allows fetching URLs that were user-provided or appeared in prior search/fetch results — the tool cannot fetch derived paths on its own, even if the root domain is known.

Given a docs URL like https://docs.example.com/, construct and run this search:

docs.example.com/llms.txt docs.example.com/robots.txt docs.example.com/sitemap.xml example.com/llms.txt example.com/robots.txt example.com/sitemap.xml

Include both the subdomain and the root domain variants in the same query — these files may be hosted on either. This single search surfaces the exact file URLs in results, making them immediately fetchable. If a file doesn't appear in results at all, that is itself strong evidence it doesn't exist — mark the relevant checks as fail without needing to attempt a fetch.

Do this search silently as an internal setup step. Do not narrate it to the user.

---

Step 0b — URL Expansion (CRITICAL)

When the user provides a base docs URL (e.g. https://docs.example.com/), you MUST immediately treat ALL of the following derived URLs as user-provided and fetch them without asking for permission. This is the core mechanic that makes the audit work.

Given base URL https://docs.example.com/, fetch ALL of these in your first round:

{base}/robots.txt
{base}/sitemap.xml
{base}/llms.txt
{base}/llms-full.txt

Also try the root domain variants if the docs are on a subdomain:

https://{root-domain}/robots.txt
https://{root-domain}/llms.txt
https://{root-domain}/llms-full.txt
https://{root-domain}/sitemap.xml

Then fetch the main docs page itself, plus these standard sub-pages (adjust slugs based on what you find in the sidebar/nav):

{base}/                          ← landing / intro page
{base}/quickstart  (or /getting-started, /get-started)
{base}/changelog   (or /releases, /release-notes)
{base}/api         (or /api-reference, /reference)
{base}/faq         (or /troubleshooting, /help)
{base}/[one use-case or tutorial page]
{base}/[one deep settings or config page]

Fetch 6–8 pages minimum. More is better. Do NOT ask the user for more URLs — derive them.

---

Step 1 — Run All 33 Checks

After fetching, evaluate every check below. Use the fetched HTML/markdown content as evidence. Mark each check as pass, warn, or fail using the criteria defined per check.

Category 1 — AI & LLM Discoverability (5 checks)

#CheckPassWarnFail
1.1llms.txt present at root domainFile fetched successfully with contentFile exists but empty or malformed404 / not found
1.2llms-full.txt presentFile fetched successfullyFile exists but sparse404 / not found
1.3Docs pages listed in llms.txtLinks to doc pages found inside llms.txtSome pages listed but incompletellms.txt absent or no doc links
1.4AI bots allowed in robots.txtGPTBot, ClaudeBot, or similar explicitly allowed OR no disallow rules for themBots not mentioned (ambiguous)Bots explicitly disallowed
1.5Docs pages in sitemap.xmlSitemap found and contains doc page URLsSitemap exists but sparse / partialSitemap missing or 404

Category 2 — Structure & Navigation (6 checks)

#CheckPassWarnFail
2.1Introduction / overview page exists with real contentPage exists with substantive product description (>200 words)Page exists but thin / vagueNo intro page found
2.2Quickstart / Getting Started with actionable stepsStep-by-step guide gets user to working statePage exists but steps are vague or incompleteNo quickstart found
2.3API Reference / Reference section presentDedicated API reference section with endpoints or methodsSome reference content but not organized as API refNo reference section found
2.4Sidebar / navigation menu presentSidebar with categorized links visible in HTMLSidebar present but flat / uncategorizedNo sidebar detected
2.5Breadcrumb navigation presentBreadcrumb trail visible on sampled pagesPresent on some pages but not allNo breadcrumbs found
2.6Search functionality presentSearch input detected in HTMLSearch linked externally but not on-pageNo search found

Category 3 — Content Completeness (6 checks)

#CheckPassWarnFail
3.1Use cases / tutorials / examples section presentDedicated section with at least 2 full tutorial pagesSection exists but only 1 page or very thinNo use cases / tutorials found
3.2Code examples presentCode blocks found on multiple sampled pagesCode present on 1 page onlyNo code examples found
3.3Multiple language examples (Python, JS, cURL, etc.)2+ languages shown in code examplesOnly 1 language shownNo code examples at all
3.4Changelog / Release notes presentChangelog page exists with actual entriesPage exists but empty or placeholderNo changelog found
3.5FAQ / Troubleshooting section presentDedicated FAQ or troubleshooting page with real Q&AsFAQ mentioned but minimalNo FAQ or troubleshooting found
3.6Error messages / status codes documentedError codes or status codes listed anywhere in docsBrief mentions onlyNo error documentation found

Category 4 — Content Quality (3 checks)

#CheckPassWarnFail
4.1Intro page explains what the product is and who it's forClear product description + target audience statedProduct described but audience vagueGeneric/marketing intro with no substance
4.2Quickstart gets user to a working stateEnd-to-end steps from zero to working outputSteps present but incomplete or missing key detailQuickstart too vague to follow
4.3Sampled pages have sufficient depth (not stubs)All sampled pages have real content (>150 words, structured)Mix of full pages and stubsMajority of sampled pages are stubs

Category 5 — Technical SEO & Crawlability (5 checks)

#CheckPassWarnFail
5.1HTTPS enforcedAll fetched URLs use HTTPSMixed HTTP/HTTPSHTTP only
5.2Meta titles present on docs pages<title> tag found on all sampled pagesPresent on some pagesMissing on most pages
5.3Meta descriptions present on docs pagesmeta-description found on all sampled pagesPresent on some pagesMissing on most pages
5.4Canonical URLs present and correctCanonical tag present and points to the correct domainCanonical present but points to wrong/preview domainNo canonical tags found
5.5No noindex directives on docs pagesmeta-robots: index, follow on all sampled pagesMixed — some pages noindexMost pages set to noindex

Category 6 — Internal Linking & Flow (4 checks)

#CheckPassWarnFail
6.1Docs pages cross-link to each otherInternal links found in body content of sampled pagesSome pages cross-link but most don'tNo internal links found in body
6.2Next / previous page navigation presentPrev/next nav links at bottom of sampled pagesPresent on some pagesNot found
6.3Links to GitHub / source codeGitHub or source code link found in docsMentioned in text but not linkedNo GitHub / source links found
6.4Community / support links present (Discord, Slack, Forum, Chat)Direct links to community or support channel foundMentioned but no direct linkNo community or support references

Category 7 — Versioning & Maintenance (4 checks)

#CheckPassWarnFail
7.1Version indicator visible (v1.2, "latest", badge)Version badge or label visible on sampled pagesVersion mentioned in text but no badgeNo versioning signals found
7.2Last updated / freshness signal on pages"Last updated" date or similar visibleChangelog exists as proxy signalNo freshness signals found anywhere
7.3Install commands include version pinningInstall commands show pinned versions (e.g. pip install foo==1.2)Install commands present but unpinnedNo install commands found
7.4Deprecation notices present (if multi-version)Deprecation banners or notices visibleChangelog mentions deprecationsNo deprecation notices (only fail if multi-version product)

---

Step 2 — Score Calculation

Score each category out of its max points. Each check is worth equal points within its category. Each category is weighted equally (each = 100/7 ≈ 14.3 points max).

Within each category:

  • Pass = full points
  • Warn = half points
  • Fail = 0 points

Final score = sum across all 7 categories, rounded to nearest integer out of 100.

---

Step 3 — Render the Report

Generate a standalone HTML report file:

  • Use the HTML/CSS/JS template in references/widget-template.md as the design reference.
  • Write the completed report to a file named {domain}-docs-audit.html in the current working

directory (e.g. supabase-docs-audit.html).

  • The report must include:

1. Score hero — large score out of 100, domain name, pass/warn/fail summary counts 2. Legend — green dot = Pass, amber dot = Warn, red dot = Fail 3. Category sections — one block per category with:

  • Category name and score (e.g. "3/5")
  • Pill badges: "X pass", "X warn", "X fail"
  • Each check row with icon (✓ / ! / ✗), label, and a short evidence note
  • Substitute all audit data (score, counts, category scores, check statuses, evidence notes)

directly into the template — do not leave any placeholder values unfilled.

  • The file must be fully self-contained (no external dependencies) so it opens correctly in

any browser without a server.

---

Step 4 — After the Report

After rendering, provide a short text summary (3–5 sentences) covering:

  • The 1–2 strongest categories
  • The biggest gaps / quick wins
  • Any critical issues (e.g. broken canonical, noindex on docs, AI bots blocked)

Offer to go deeper on any category or create a prioritized action plan.

---

Notes for Edge Cases

  • Subdomain docs (e.g. docs.stripe.com): always also check root domain (stripe.com) for

robots.txt, llms.txt, and sitemap.xml — they are often hosted at root.

  • Docs behind auth: if pages return 401/403, mark relevant checks as warn with note

"Could not verify — page requires authentication."

  • JS-rendered docs: if fetched HTML is sparse (< 200 chars of text), note that the docs

may be JS-rendered and some checks may be inconclusive.

  • check 7.4 (deprecation): only fail this if evidence suggests the product has multiple

versions. If it's clearly v1 only, mark as N/A (counts as pass for scoring).

Related skills

Documentationseocontent

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.