Project document navigation. Use when you need to understand how documents connect, find related content, identify orphaned pages, or orient on a project's structure before doing other work.
Parse markdown files to build a map of how a project's documents connect. Useful for orientation (what exists, how it's organized), finding related content before writing or reviewing, and maintenance (orphans, broken links, missing back-links).
The bundled resources/graph.sh script extracts relationships from these patterns:
[text](path) explicit references between documents[[entity-name]] shorthand references common in knowledge basesgraph, flowchart, and relationship lines in fenced mermaid blocksarc, chapter, characters, location that connect documents by metadatabash resources/graph.sh [root_directory]
If no directory is specified, it searches from the current working directory. The script uses only standard unix tools (grep, awk, sed, find, sort) — no Python or other runtime dependencies.
The output is plain text, structured with clear section headers. Pipe it, redirect it to a file, or read it directly.
Read resources/graph.sh if you need to understand exactly what patterns it matches, extend it for a project with custom link conventions, or debug unexpected output. For normal use, just run it and read the report.
Orphaned files aren't automatically problems — some documents are entry points (READMEs, indexes) that are linked to but not from. Missing back-links matter most in wikis and knowledge bases where bidirectional navigation is expected. Broken links are almost always worth fixing.
The graph is a starting point for investigation, not a verdict. An orphaned file might be intentionally standalone. A cluster of tightly linked files might be a well-maintained topic area or might indicate circular references with no external connections.