Offline link checker for built static sites
Crawls a built static site folder offline and reports broken internal links, missing #anchors and missing assets with line numbers. External links are checked only on request.
What it does
Checks a built folder such as dist/ or public/ directly, without running a server.
- Broken internal links (a tags pointing to pages that do not exist), with file and line number
- In-page links such as
#section-idwhose target id does not exist - Missing images and files referenced by img, srcset, CSS url(), script, link, video posters, og:image and more
- Supports clean URLs (
/aboutas/about.htmlor/about/index.html) and sub-path hosting (--base-path /docs) - External links only with
--external: one HEAD request at a time with a delay, retried with a small GET when HEAD is refused
How to use
python scripts/link_check.py dist --site-url https://www.example.com --md link-report.md
python scripts/link_check.py dist --external --delay 1.0
The agent reviews the results and proposes fixes in the source templates or content, not in the build output.
Requirements
- Python 3 (standard library only)
- Network access only when checking external links
Caveats
- Site files are never modified; only the report files you name are written.
- Links created by JavaScript at runtime and server-side redirect rules are not evaluated.
- HTTP 403/429 or TLS errors from external sites can be caused by bot protection or the local environment.
How to install
- Unzip the downloaded file (it contains a
static-site-link-checker/folder withSKILL.md). - Copy the whole folder into your agent's skills folder.
- Claude:
~/.claude/skills/(per project:.claude/skills/) - Hermes Agent:
~/.hermes/skills/ - Codex:
~/.agents/skills// Cursor:~/.cursor/skills/ - Claude app (claude.ai): upload the ZIP in Customize → Skills
- Claude:
- Restart the agent and check that the skill appears in its skill list.
Seller
AI Skill Market (official)
44 published skills