docs-audit
Skill542 starsChanged 11 days agoMITView on GitHub
Diataxis docs audit — tutorials, how-to, reference, explanation; checks README, API docs, deployment guides, changelog, staleness.
- Reads credentials
We split this skill into the rules it gives an agent
10 rules. 0 are common, 8 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 28
Check README.md for these sections (each is pass/fail):
- Very specific: line 42
Check for OpenAPI / Swagger spec (openapi.yaml, swagger.json)
- Distinctive: line 43
Check for auto-generated docs (Swagger UI, Redoc, tsdoc, typedoc)
- Distinctive: line 44
Check if endpoints in the code match the spec (any undocumented endpoints?)
- Distinctive: line 45
Check for example requests and responses
- Distinctive: line 58
Check if API docs mention endpoints/features that no longer exist
- Distinctive: line 59
Check if environment variable docs list vars that are no longer used
- Very specific: line 86
After printing the findings table, persist via the shared audit-history lib so the docs trend across runs becomes legible.
- Distinctive: line 131
README is the minimum: Every project needs a README with at least: description, quick start, and how to deploy.
- Distinctive: line 133
Diataxis is a lens, not a checklist: Don't fail a project for missing all four quadrants — most projects start with tutorials + reference …
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Writing: read docs/skills/shared/writing-rule.md before you write a durable artifact.
/docs-audit — Documentation Completeness (Diataxis)
Deep-dive documentation analysis using the Diataxis framework. Checks that docs cover all four quadrants (tutorials, how-to guides, reference, explanation) and are not stale. Invoke when /launch-check's documentation row shows WARN or FAIL.
Diataxis Framework
| Quadrant | Purpose | What to look for |
| Tutorials | Learning-oriented, guided first steps | Getting started guide, quickstart, "Hello World" |
| How-to guides | Goal-oriented, solving specific problems | Deployment guide, migration guide, troubleshooting |
| Reference | Information-oriented, accurate description | API docs, config reference, CLI flags, environment variables |
| Explanation | Understanding-oriented, why things work | Architecture overview, design decisions (AgDRs), ADRs |
Process
Step 1: README quality
Check README.md for these sections (each is pass/fail):
| Section | Present? | Quality check |
| Project description | One paragraph explaining what this is and who it's for | |
| Prerequisites | Language version, tools needed, accounts required | |
| Quick start | Copy-pasteable commands to get running locally in < 5 minutes | |
| Development setup | How to set up the dev environment, run tests, lint | |
| Deployment | How to deploy to staging and production | |
| Contributing | How to contribute (branch naming, PR process, code standards) | |
| License | License type and link |
Step 2: API documentation (if applicable)
- Check for OpenAPI / Swagger spec (
openapi.yaml,swagger.json) - Check for auto-generated docs (Swagger UI, Redoc, tsdoc, typedoc)
- Check if endpoints in the code match the spec (any undocumented endpoints?)
- Check for example requests and responses
Step 3: Operational docs
- Deployment guide: how to deploy, what environment variables are needed
- Runbook: what to do when things go wrong (overlap with
/monitoring-audit) - Changelog: is there a CHANGELOG.md? Are releases documented?
- Architecture overview: high-level diagram or description of components
- AgDRs/ADRs: are technical decisions documented?
Step 4: Staleness detection
- Compare
README.mdlast-modified date with recent code changes - Check if API docs mention endpoints/features that no longer exist
- Check if environment variable docs list vars that are no longer used
- Flag docs that reference deprecated tools, libraries, or patterns
Step 5: Output
DOCS AUDIT — <project> @ <sha>
Diataxis coverage:
Tutorials: ✓ getting-started.md exists
How-to: ✓ deployment guide, ✗ migration guide, ✗ troubleshooting
Reference: ✓ OpenAPI spec (28 endpoints), ✗ env vars undocumented
Explanation: ✓ 3 AgDRs, ✗ no architecture overview
| # | Area | Status | Finding |
|----|------|--------|---------|
| D1 | README | WARN | Missing "Contributing" section |
| D2 | API docs | PASS | OpenAPI spec matches code (28/28 endpoints) |
| D3 | Env vars | FAIL | 12 env vars in .env.example, 0 documented in README |
| D4 | Changelog | PASS | CHANGELOG.md updated with last 5 releases |
| D5 | Staleness | WARN | README references "Express" but code migrated to Fastify 3 months ago |
Documentation readiness: PARTIAL (1 fail, 2 warnings)Persist the run + render trend
After printing the findings table, persist via the shared audit-history lib so the docs trend across runs becomes legible. See docs/agdr/AgDR-0019-audit-artefact-persistence.md.
Resolve project name + score + verdict
<project-name> from apexyard.projects.yaml (or basename + /handover reminder if unregistered).
Score: score = max(0, 100 - 25*critical - 10*high - 3*medium - 1*low). Verdict by worst-severity: critical/high → fail, medium → conditional, low/none → pass. Legacy "Documentation readiness" three-state: PARTIAL → conditional, MISSING → fail, COMPLETE → pass.
Persist + render
source "$(git rev-parse --show-toplevel)/.claude/hooks/_lib-audit-history.sh"
# Lowercase severity in the payload — the lib expects critical/high/medium/low/info.
payload=$(mktemp); cat > "$payload" <<'EOF'
{
"schema_version": 1,
"findings": [
{"id": "D2", "severity": "high", "status": "open", "summary": "No docs/how-to/ dir; recipes scattered in Slack"},
{"id": "D3", "severity": "high", "status": "open", "summary": "Env vars not documented in README (12 in .env.example)"},
{"id": "D5", "severity": "medium", "status": "open", "summary": "README references Express; code migrated to Fastify 3 months ago"}
]
}
EOF
# Body: per templates/audits/docs-audit.md (Diataxis quadrants + README + staleness)
body=$(mktemp); cat > "$body" <<'EOF'
... (filled-in body — Diataxis groupings + README quality + staleness + Recommended priority) ...
EOF
ts=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
audit_run_persist "<project-name>" "docs-audit" "$ts" "fail" 60 "$body" < "$payload"
rm -f "$payload" "$body"
audit_render_trend "<project-name>" "docs-audit" 5Opt-in commit
touch projects/<name>/audits/docs-audit/.audit-history-trackedRules
- README is the minimum. Every project needs a README with at least: description, quick start, and how to deploy. Everything else is a "should have."
- Check for staleness, not just existence. A README that exists but describes the wrong stack is worse than no README.
- Diataxis is a lens, not a checklist. Don't fail a project for missing all four quadrants — most projects start with tutorials + reference and add the rest over time.
- Auto-PASS for the ops repo itself. ApexYard's own docs are governed by its own process — this skill is for managed projects.
- Always persist via the lib. The persist step runs regardless of opt-in commit state.
- Severity vocabulary in the JSON is lowercase. The lib expects
critical/high/medium/low/info.
Part of ApexYard — multi-project SDLC framework for Claude Code · MIT.
Other versions13 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 13
- mastra-ai/mastra★ 29ksame name
- strands-agents/sdk-python★ 9ksame name
- strands-agents/harness-sdk★ 8.9ksame name
- hiroppy/tmux-agent-sidebar★ 559same name
- strands-agents/box★ 490same name
- Seekers2001/docs-governance★ 320same name
- qshanx/docs-governance★ 253same name
- willdady/platypus★ 126same name
- colonyops/hive★ 39same name
- hay-kot/hive-desktop★ 4same name
3 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use docs-planner, docs-reviewer and 4 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
strands-agentsSkilldocs-planner
Find the gaps in the Box documentation and produce a prioritized backlog for docs/user/ and docs/design/. Use when planning documentation work, after a feature or a binary ships without a page, for a periodic health check of the docs, or when asked "what docs need writing", "plan the docs work", "prioritize the docs backlog", or "what should we document next".
Also in 3 projects that use this
strands-agentsSkilldocs-reviewer
Review a Box documentation draft in docs/user/ or docs/design/ for placement, structure, altitude, readability, terminology, and claim scope, and give a verdict (Ship it, Tighten, or Rethink). Use after docs-writer produces a draft, before a docs pull request, or when asked to "review this draft", "check my docs", or "is this page ready to ship". Read-only.
Also in 3 projects that use this
VercelSkilldocs-diagrams
Draw diagrams for the Next.js docs in the style of the ones already published there: the light/dark PNGs an mdx references with `<Image srcLight="/docs/light/<name>.png" srcDark="/docs/dark/<name>.png">`. Use when a guide or API reference needs a new diagram or an existing one needs a change. Hand-written SVG from a primitives library, rendered by headless Chrome at 2x. No AI image generation.
Also in 3 projects that use this
GoogleSkilldocs-writer
Also in 3 projects that use this
MicrosoftSkillwriting-for-agents
Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.
Also in 3 projects that use this
GoogleSkilldomain-modeling
Build and sharpen a project's domain model. Use when the user wants to pin down domain terminology or a ubiquitous language, record an architectural decision, or when another skill needs to maintain the domain model.
Also in 3 projects that use this
In this repository71 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/apexyard.mdcCursor rule
- accessibility-auditSkill
- agdrSkill
- analytics-auditSkill
- approve-architectureSkill
- approve-designSkill
- approve-mergeSkill
- audit-depsSkill
- bugSkill
- c4Skill
- challengeSkill
- code-reviewSkill
- codify-ruleSkill
- compliance-checkSkill
- debugSkill
- decideSkill
- design-reviewSkill
- design-syncSkill
- dfdSkill
- eval-agentsSkill
- extract-featuresSkill
- fan-outSkill
- feature-diagramSkill
- featureSkill
- geo-auditSkill
- handoverSkill
- ideaSkill
- inboxSkill
- investigationSkill
- journeySkill
- launch-checkSkill
- migrationSkill
- monitoring-auditSkill
- mutation-testSkill
- onboardSkill
- orbitSkill
- pdfSkill
- performance-auditSkill
- plan-initiativeSkill
- preflightSkill
- processSkill
- projectsSkill
- prototype-closeSkill
- prototypeSkill
- releaseSkill
- release-syncSkill
- report-apexyard-bugSkill
- request-apexyard-featureSkill
- roadmapSkill
- scaffoldSkill
- security-reviewSkill
- seo-auditSkill
- setupSkill
- spike-closeSkill
- spikeSkill
- split-portfolioSkill
- stakeholder-updateSkill
- start-ticketSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

