From ctx
Scans markdown files for broken internal links, unreachable external URLs via HTTP checks, and missing images. Use before releases, after doc restructuring, or audits.
npx claudepluginhub activememory/ctx --plugin ctxThis skill is limited to using the following tools:
Scan markdown files for broken links. Two passes:
Validates Markdown documentation links, detecting broken relative links, missing anchor targets, malformed URLs, and orphaned documentation files. Use before releases or doc updates.
Validates Markdown links in workspace using lychee to detect broken links and path policy violations like absolute paths or excessive traversal. Use for pre-commit documentation checks.
Validates documentation references including file paths, links, line numbers, and code examples using Read, Grep, Glob. Ensures docs accuracy across projects.
Share bugs, ideas, or general feedback.
Scan markdown files for broken links. Two passes: internal (file targets) and external (HTTP URLs).
Determine which directories to scan:
docs/, doc/,
documentation/, site/.md files in the
project root (excluding node_modules/, .git/, vendor/)Report which directories are being scanned at the start of output.
/_ctx-audit runs (audit check #12)Scan every .md file in the discovered scope for markdown links
pointing to other files: [text](target.md),
[text](../path/file.md), [text](path/file.md#anchor).
For each link:
#anchor fragment before checking file existencehttp://, https://, mailto:)#section-name): these are intra-pageCollect all broken internal links as:
BROKEN: source-file.md:LINE → target.md (file not found)
Scan every .md file in the discovered scope for http:// and
https:// URLs in markdown link syntax.
For each URL:
Report failures as:
WARN: source-file.md:LINE → https://example.com (HTTP 404)
WARN: source-file.md:LINE → https://example.com (timeout)
Do not treat external failures as errors. Network partitions, rate limiting, and transient outages are common. Report them but do not fail the check.
Exceptions: skip these URLs:
localhost / 127.0.0.1 URLs (local dev servers)example.com / example.org (placeholder domains)Scan for image links:  and
.
Verify the image file exists on disk. Same resolution rules as internal links.
## Link Check Report
### Internal Links
- N broken links found (or "All clear")
- [list of broken links with file:line and target]
### External Links
- N warnings (or "All reachable")
- [list of failures with file:line, URL, and reason]
### Images
- N missing images (or "All present")
- [list of missing images with file:line and target]
### Summary
Internal: N broken / M total
External: N unreachable / M total
Images: N missing / M total
For broken internal links, offer specific fixes:
For external links, just report. The user decides whether to update, remove, or ignore.
When invoked as check #12 from /_ctx-audit:
After running the check:
.md files in the discovered scope were scanned