Auto-healing Markdown links — anchor links to a UUID so they survive refactors: repair moved links, robustify plain ones. No database, editor-agnostic.
Grounded in available product and source data
darnlink keeps Markdown links from breaking when files get moved or renamed. Markdown is useful for documentation because it gives fine-grained version history and is easy for both humans and language models to read, but its one flaw is that links break the moment a document tree is reorganized.
darnlink fixes that deterministically and automatically. Each link carries its target's UUID inline, so when a file moves, running darnlink . --write finds it by UUID and rewrites just the path, while the link stays a normal, clickable Markdown link. It's built for trees of many nested Markdown files that get relocated and refactored over time, and it doesn't require a database.
darnlink is a tool that automatically heals Markdown links that break when files are moved or renamed, by tagging each link with a UUID.
It's for people managing large trees of nested Markdown documentation files that get reorganized, moved, or renamed over time.
Each link carries its target's UUID inline; when you run darnlink . --write after moving a file, darnlink finds the target by UUID and rewrites the stale path while keeping the link a normal, clickable Markdown link.
No, darnlink works without a database.