doc-registry
User-invoked as /doc-registry. Builds a registry of every *.md file under docs/ and .claude/, then reports any cross-references that point at missing files, with rename candidates ranked by confidence
Files2
View on GitHubSKILL.md.claude/skills/doc-registry/SKILL.md
GitHubDoc Registry
Build a corpus map of every *.md file under docs/ and .claude/, then
report cross-references that point at files that do not exist. Backed by
scripts/doc_registry.py.
When to use
- Before restructuring
docs/(get a baseline of which links will break). - After adding a new milestone or task directory (confirm all internal links are correct).
- As a quick pre-commit check when bulk-renaming docs.
- To get the list of "orphan" links that
/link-checkmight not catch (missing files rather than missing anchors).
Steps
Prerequisite — linkify bare mentions so prose references are already links before the registry scan runs (converts auto-fixable mentions, writes a report of the ambiguous ones):
python scripts/linkify_doc_mentions.pyRun the registry scanner:
python scripts/doc_registry.pyFor each
[HIGH] Likely renameentry: update the link in the source file to point at the candidate path. Use the shortest correct relative path from the source file's directory, or an absolute/-prefixed path when relative would be confusing.Do NOT rename files. The correct file already exists at the candidate path; the link was simply written with a wrong path.
For each
[MEDIUM] Possible renameentry: inspect the candidates, pick the right one if obvious, then update the link. If ambiguous, flag for human review.For each
[REVIEW] No candidates foundentry: decide whether to:- Create the missing file (then update
docs/README.mdif it belongs there). - Remove the broken link.
- Update the link to point at an existing related file.
- Create the missing file (then update
Re-run step 1 until it reports
"All .md cross-references resolve correctly.".Run
/link-checkto validate anchors and non-.mdlinks — doc-registry only checks file existence, not anchor correctness.
Output
See examples/sample-report.md for an annotated
report and how to act on each [HIGH]/[MEDIUM]/[REVIEW] tier.
A human-readable report with three sections:
- Missing .md References: each broken link with confidence tag, source location, and ranked rename candidates.
- Summary: registry size, total
.mdlinks scanned, missing count, high-confidence / needs-review split.
Complement
| Tool | Checks |
|---|---|
/doc-registry |
Missing *.md files referenced by links |
/link-check |
Broken anchors and non-.md file links |
/doc-xref <target> |
Inbound references from other docs and code |
/loop update-docs |
Iterative auto-fix + human review for the full corpus |
Run /link-check after /doc-registry for full coverage — they check
orthogonal things.