2.2 KiB
| name | description |
|---|---|
| lore-audit | Audit the Baltun'ia vault for structural and continuity problems — broken/misspelled wikilinks, orphan notes nothing links to, missing reciprocal links, entities mentioned in recaps but never written up, and lore contradictions. Use when the DM says "check the vault", "find broken links", "what's inconsistent?", "what am I missing?", or wants a health check before/after a big writing push. |
Audit the Vault
First read .claude/skills/_shared/vault-conventions.md.
What to check
Run these passes over the .md files (skip z_*, .obsidian, .smart-env):
-
Broken wikilinks. Extract every
[[Target]]/[[Target|alias]]. For each target, confirm a matching note exists (Obsidian matches by basename, case-insensitive, with or without folders). Report links whose target has no file — separating intentional stubs (entity that should exist) from likely typos (near-match to an existing note name; suggest the fix). -
Orphans. Notes that nothing links to (excluding index/overview hubs and recaps). These are easy to lose in the graph — suggest where to link them.
-
Missing reciprocity. NPC notes whose parent POI doesn't list them; POIs not in their city's Notable Features; cities not in their region's Notable Cities; factions referenced widely but absent from Faction Relationships.
-
Unwritten entities. Proper nouns that recur in Session Recaps / Campaign Flow but have no note yet (likely NPCs/POIs introduced in play). List the highest-recurrence ones first.
-
Contradictions. Surface conflicting facts (e.g. an NPC's faction, a location's region, a date) between notes and recaps. Only flag genuine conflicts, with both sources quoted.
Output
Group findings by severity (Broken links → Contradictions → Missing reciprocity → Orphans → Unwritten entities), each with the file path and a one-line suggested fix. Do not edit anything yet — present the report, then ask which fixes to apply (and apply the safe, mechanical ones like reciprocal links and clear typo corrections on confirmation). For larger sweeps, consider fanning the passes out across subagents.