audit-docs
Skill548 starsChanged 9 days agoApache-2.0View on GitHub
Audits internal (dev/) and external (docs/) documentation completeness for a feature, subject, or set of existing docs, maps changes indicated by the user, across Infrahub's documentation layers, reports gaps, and optionally applies the fixes. TRIGGER when: the user wants to audit or check documentation coverage, find doc gaps after a feature branch, or verify docs are still current for a subject or specific files. DO NOT TRIGGER when: authoring new documentation from scratch → the writing-infrahub-docs skill from the OpsMill skills plugin; only linting/formatting Markdown → run `uv run invoke docs.lint`.
17 other projects use a version of this.
Adopted by
Most recently taken up by
- TserenTserenov/FMT-exocortex-templatetheir own version, first seen Nov 2, 2026
- iwesys/IWEtheir own version, first seen Nov 1, 2026
- driangle/vibeviewtheir own version, first seen Nov 1, 2026
- Evan-Daruwalla/claude-skill-suitetheir own version, first seen Oct 20, 2026
- LandonTomaine/LT-Agentstheir own version, first seen Oct 20, 2026
- faparicior/sdlc-skillstheir own version, first seen Oct 20, 2026
Used with
Projects with it also use diagnose and skill-creator.
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.
MicrosoftSkilldiagnose
Use to systematically diagnose why scenarios fail — identifies root causes by analyzing agent traces, codebase, and behavioral patterns
Also in 3 projects that use this
SentrySkillskill-creator
Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.
Also in 4 projects that use this
Other versions17 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 17
- frankarobotics/franka_ros2★ 392same name
- chrisguidry/docket★ 148same name
- TserenTserenov/FMT-exocortex-template★ 63same name
- DGouron/review-flow★ 42same name
- gtrabanco/agentic-workflow★ 23same name
- fritzprix/libr-agent★ 11same name
- driangle/vibeview★ 4same name
- bmaltais/skills★ 2same name
- faparicior/sdlc-skills★ 2same name
- krixon/skills★ 1same name
7 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.
In this repository54 other files it gives its agents.
- AGENTS.mdAGENTS.md
- backend/AGENTS.mdAGENTS.md
- docs/AGENTS.mdAGENTS.md
- backend/CLAUDE.mdCLAUDE.md
- CLAUDE.mdCLAUDE.md
- docs/CLAUDE.mdCLAUDE.md
- analyzing-ci-flakinessSkill
- commitSkill
- creating-changelog-entriesSkill
- creating-issuesSkill
- creating-prdSkill
- grilling-ideasSkill
- harvesting-reviewSkill
- migrate-feature-pageSkill
- monitoring-pull-requestsSkill
- neo4j-cypher-guideSkill
- opsmill-dev-analyzing-bugsSkill
- opsmill-dev-fixing-bugsSkill
- opsmill-dev-test-driving-bugsSkill
- pre-ciSkill
- prSkill
- rebaseSkill
- reviewing-pull-requestsSkill
- speckit-agent-context-updateSkill
- speckit-analyzeSkill
- speckit-checklistSkill
- speckit-clarifySkill
- speckit-constitutionSkill
- speckit-convergeSkill
- speckit-critique-runSkill
- speckit-git-commitSkill
- speckit-git-featureSkill
- speckit-git-initializeSkill
- speckit-git-remoteSkill
- speckit-git-validateSkill
- speckit-implementSkill
- speckit-opsmill-autoSkill
- speckit-opsmill-extractSkill
- speckit-opsmill-implementSkill
- speckit-opsmill-prepSkill
- speckit-opsmill-retrospectSkill
- speckit-opsmill-summarySkill
- speckit-planSkill
- speckit-review-codeSkill
- speckit-review-commentsSkill
- speckit-review-errorsSkill
- speckit-review-runSkill
- speckit-review-simplifySkill
- speckit-review-testsSkill
- speckit-review-typesSkill
- speckit-specifySkill
- speckit-tasksSkill
- speckit-taskstoissuesSkill
- upgrading-infrastructure-dependenciesSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 3 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 16 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 28
Treat $ARGUMENTS as what to audit.
- Very specific: line 38
If $ARGUMENTS is empty, ask what to audit — a commit range, branch name, subject, or list of doc paths (default: current branch vs stable).
- Distinctive: line 102
Ask the user which fixes to apply before editing anything:
- Distinctive: line 110
Prefer editing existing files over creating new ones.
- Distinctive: line 111
Check cross-references in both directions (A links to B and B links to A).
- Very specific: line 112
Run uv run invoke docs.lint to perform global Markdown/MDX linting across the repo.
“Common” is measured: kept by at least 6 in 10 of the 16 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
Documentation Audit
User Input
$ARGUMENTSWhat this does
Audit documentation completeness — after a feature branch, for a subject, or across a set of existing docs. Scan the relevant changes, cross-reference them against every Infrahub documentation layer, and report the gaps. Then, only with the user's approval, apply the fixes. The goal is coverage without over-documentation: a gap is only a gap if a reader is actually left without something they need.
Workflow
1. Gather scope
Treat $ARGUMENTS as what to audit. It will be one of:
- A commit range or branch name — audit all changes in that range. Run
git log <range> --oneline --statto understand every change. The input in order of importance is:- PR description (if the branch corresponds to a PR or if a PR is provided)
- Pull Request review comments, resolved and unresolved. Usually this is GOLD information to be included in the internal docs (if the branch corresponds to a PR or if a PR is provided)
- Any changelog fragment and spec link. If missing, flag it as a gap.
- The source code diffs themselves.
- A subject (e.g. "webhooks", "computed attributes", "IPAM") — audit documentation for that topic across the codebase, regardless of branch. Use Grep/Glob to find all related code and docs, then assess coverage against
dev/knowledge/,docs/docs/,dev/specs/, the componentAGENTS.mdfiles, and the code itself. - A set of doc paths (e.g.
docs/docs/guides/installation.mdx dev/knowledge/backend/templates.md) — audit only those files. Read each one, identify the feature/topic it covers, then search the codebase for the corresponding implementation to confirm the doc is current and complete, and check whether the code has drifted from what the doc describes.
If $ARGUMENTS is empty, ask what to audit — a commit range, branch name, subject, or list of doc paths (default: current branch vs stable).
2. Map changes to documentation layers
For each changed area, check all five documentation layers:
| Layer | Location | Question |
| Technical reference | dev/knowledge/backend/ or dev/knowledge/frontend/ | Does the knowledge doc explain how this works? |
| User-facing docs | docs/docs/topics/ or docs/docs/guides/ | Can users understand and use this feature? |
| Feature spec | dev/specs/ | Is there a spec, and does it match what was built? |
| Changelog | changelog/ | Is there a changelog fragment for user-visible changes? |
| Cross-references | All docs | Do related docs link back in both directions? |
Also check these secondary locations when relevant:
dev/knowledge/backend/architecture.md— component map, if new directories were created.dev/knowledge/backend/testing.md— if new test patterns were introduced.dev/knowledge/backend/schema-definitions.md— if new schema types were added.- The
AGENTS.mdof the component that changed — if new top-level modules were created.
3. Generate the audit report
Present findings in this format:
## Documentation Audit Report
### Scope
<!-- What was scanned: branch/range, subject, or list of doc files -->
### Changes Summary
<!-- Grouped by area: schema, logic, tests, etc. -->
### Documentation Status
For each document checked:
- **File**: path
- **Status**: Current / Outdated / Missing / N/A
- **Details**: What is good, what is missing
### Gaps Found
For each gap:
- **What is missing**: Description
- **Where**: Which file to update or create
- **Severity**: High / Medium / Low
- **Suggested fix**: Concrete content or edit
### Not Gaps (By Design)
Things that look like gaps but are intentionally absent. This section prevents over-documentation.
Common reasons something is not a gap:
- Feature uses standard mechanisms (GraphQL mutations, UI forms) that do not need a dedicated guide.
- Entity is fully documented within a parent feature's knowledge doc.
- An ADR is unnecessary when the spec already captures design decisions.4. Apply fixes
Ask the user which fixes to apply before editing anything:
- Apply all — edit or create all proposed documentation.
- Cherry-pick — let the user select which changes to apply.
- None — keep the report as reference only.
For approved fixes:
- Prefer editing existing files over creating new ones.
- Check cross-references in both directions (A links to B and B links to A).
- Run
uv run invoke docs.lintto perform global Markdown/MDX linting across the repo.
Guardrails
- Never edit docs before the user has approved specific fixes — the report comes first; writing is a separate, opt-in step (Step 4).
- Report the "Not Gaps" honestly — an audit that flags everything as missing is as useless as one that misses real gaps. Justify why intentional absences are fine.
- Ground every gap in a concrete reader need — say who is left without what, and point to the exact file to change. No vague "could use more docs".
- Prefer editing over creating — a new file is only justified when no existing doc is the right home for the content.
Does 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.

