wiki-lint
Skill1 starsChanged 33 days agoMITView on GitHub
Health-check and analyze the wiki - broken links, orphans, stale or contradictory pages, missing pages, coverage gaps - then fix the mechanics, propose the changes to claims, and report. Use when the user asks to lint, audit, clean up, analyze or health-check the wiki, or asks what is missing or what to read next.
42 other projects use a version of this.
Adopted by
Most recently taken up by
- Ar9av/obsidian-wikitheir own version, first seen Nov 8, 2026
- ggoosen/Digital-Workforcetheir own version, first seen Nov 8, 2026
- chobizzy/llm-wikitheir own version, first seen Nov 1, 2026
- wareagledusty/wiki-federation-starter-kittheir own version, first seen Nov 1, 2026
- leiverkus/research-superpowerstheir own version, first seen Nov 1, 2026
- ProduktEntdecker/enterprise-memory-startertheir own version, first seen Nov 1, 2026
Used with
Projects with it also use wiki-capture, wiki-status and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jehrhardtSkillwiki-capture
Quickly capture raw thoughts, links, images, or notes to today's Obsidian daily note from anywhere in Pi. Use when the user wants to jot something down for later wiki processing.
Also in 6 projects that use this
nexuschainsSkillwiki-status
Reports the current state of the wiki vault — page counts, category breakdown, hub pages, orphans, stale entries, and a delta showing what has changed since the last ingest. Use this skill when the operator asks "what's the status", "wiki dashboard", "how many pages", "what's stale", "what's been ingested", "show me the delta", or "wiki health overview". Also surfaces structural insights (top hubs, fragmented clusters, bridge pages) when the operator asks "wiki insights", "what's central", or "show me the hubs". Read-only: this skill reports and recommends; it does not modify any files.
Also in 5 projects that use this
nexuschainsSkillcross-linker
Scans the wiki vault and adds missing [[wikilinks]] between pages that are related but not yet connected. Use this skill when the operator says "link my pages", "find missing links", "cross-reference the wiki", "connect my wiki", "add wikilinks", or after any large ingest to weave new pages into the existing knowledge graph. Also trigger when orphaned pages need connecting or when wiki-lint reports fragmented tag clusters. This is a write-heavy skill — it modifies page files to insert links, unlike wiki-lint which only reports.
Also in 4 projects that use this
Ivy-Chen1999Skillwiki-synthesize
Systematically discover synthesis opportunities across the Obsidian wiki — pairs or clusters of concepts that co-occur frequently across pages but have no synthesis page connecting them. Creates new synthesis/ pages that draw explicit cross-cutting conclusions. Use when the user says "synthesize my wiki", "find connections", "what concepts keep coming up together", "/wiki-synthesize", or after a large ingest when the vault has grown significantly.
Also in 4 projects that use this
Ivy-Chen1999Skillwiki-setup
Initialize a new Obsidian wiki vault with the correct structure, special files, and configuration. Use this skill when the user wants to set up a new wiki from scratch, initialize the vault structure, create the .env file, or says things like "set up my wiki", "initialize obsidian", "create a new vault", "get started with the wiki". Also use when the user needs to reconfigure their existing vault or fix a broken setup.
Also in 5 projects that use this
bozhouDevSkillwiki-update
Use when revising existing wiki pages because knowledge has changed, a new piece of information updates or contradicts existing content, or the user wants to directly edit wiki content with LLM assistance.
Also in 7 projects that use this
- +1 more from nexuschains
- +4 more from Ivy-Chen1999
Other versions42 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 42
- AgriciDaniel/claude-obsidian★ 16ksame name
- Ar9av/obsidian-wiki★ 3.7ksame name
- kfchou/wiki-skills★ 189same name
- IssacW228/student-llm-wiki★ 173same name
- vanillaflava/llm-wiki-skills★ 65same name
- cookyman74/llmwiki-harness★ 34same name
- Ivy-Chen1999/llm-wiki-kit★ 21same name
- schub-tech/llm-ideation-wiki★ 11same name
- CarbeneAI/Forge★ 9same name
- CodePhobiia/claude-roblox-game-studio★ 9same name
32 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository4 other files it gives its agents.
- templates/AGENTS.mdAGENTS.md
- wiki-ingestSkill
- wiki-initSkill
- wiki-querySkill
The file
We split this skill into the rules it gives an agent
1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 33 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 47
Add the missing cross-references.
“Common” is measured: kept by at least 6 in 10 of the 33 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Lint
Two passes: mechanical (the script finds it), then semantic (you find it).
Links, frontmatter, the index and new cross-references you fix yourself. A fix that changes, merges or removes what a page claims is a proposal: list it with the pages and the source that settles it, and make it when the user approves.
Paths written here (raw/…, wiki/…, AGENTS.md) are from the wiki root; the first line of llm-wiki stats says where that is. The CLI takes them as written and prints paths from the current directory: open, write and edit files by the printed form.
1. Mechanical
llm-wiki lint and work the list top-down:
| code | fix |
frontmatter type location slug date raw | repair the page per llm-wiki ref page-formats |
pdf-extract pdf-figure | finish the PDF ingest per llm-wiki ref pdf-ingest: extract, read the named image, add its ## Figures entry |
broken-link / missing-page | create the page if 2+ pages want it or it is a real entity/concept; otherwise unlink |
bad-source unsourced uncited | find the backing source page (llm-wiki search), cite it; an unverifiable claim is marked Unsourced:, and its removal is a proposal |
duplicate | propose the merge: one page, the other name in aliases:, links repointed |
orphan | link it from the pages that should mention it (llm-wiki search "<title>"); merging it into another page is a proposal |
stale | re-read the newer source page and propose what it changes on the page |
page-size | move a section or sub-topic to a page of its own per llm-wiki ref page-formats (Page size and sibling pages) |
stub | propose: expand from its sources, or merge into a parent page |
unlinked-mention | link the first mention per section |
contradiction | resolvable from the sources? propose the [!resolved] rewrite. Otherwise keep and list it in the report |
pending | list in the report; ingest only if the user asks |
Done when every error and warning llm-wiki lint still shows either waits on a proposal or is a warning you chose to keep, with a reason.
2. Semantic
llm-wiki stats for hubs and tags. Read wiki/overview.md, then the hub pages and every page updated since the last lint entry in llm-wiki log. Look for:
- Contradictions between pages that the callouts miss: same entity, different facts.
- Superseded claims: a page asserting what a later source revised.
- Missing pages: a concept three pages explain in passing and none defines.
- Missing cross-references: pages on related things that never link.
- Thin synthesis:
overview.mdthreads that no longer match the pages under them. - Gaps: questions the wiki raises and cannot answer.
Add the missing cross-references. Everything else found here is a proposal, each with the source pages that settle it. For gaps, propose too - a web search may fill them, but new material enters through raw/ and /wiki-ingest, with the user's go-ahead.
3. Report and log
Report: fixed (counts by code), proposals waiting for the user's word, open contradictions, kept warnings, 3-5 questions worth investigating, 3-5 sources worth finding.
Apply the proposals the user approves, then llm-wiki lint again.
llm-wiki log lint "<N> fixed, <M> open" -m "<the report's key lines>"
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

