DnD-Campaign-Two/.claude/skills/cleanup-note/SKILL.md
2026-07-27 23:29:05 -04:00

6.9 KiB

name description
cleanup-note Take a raw, voice-dictated or rough Markdown note and promote it into a canonical Baltun'ia vault note — identify what entity it is, correct spelling/proper-noun typos against established vault names, reshape it into the matching framework template's headings, wikilink every known entity, file it into the correct folder, and add the reciprocal link from its parent. Use when the DM says "clean up this note", "process this dictation", "sort out this file", or passes a rough note as an argument to be normalized.

Clean Up & Promote a Raw Note

This is the intake / cleanup phase for rough notes (usually voice-dictated, so expect run-on prose, homophone errors, and mangled proper nouns). The goal is to turn one messy file into a canonical note that is indistinguishable from one the DM wrote by hand — correctly typed, spelled, structured, linked, and filed.

First read .claude/skills/_shared/vault-conventions.md.

The note to clean up is passed as an argument (a file path). If none was given, ask which file. Never guess.

Steps

  1. Read the raw note. Read the target file in full. Also note its current location — a dictated note is often dumped loose at the vault root or in an inbox folder, not where it belongs.

  2. Identify what it is. Decide the entity type from its content, not its filename. Match to one of the vault's note kinds and load the matching template so you reshape to the right shape:

    • NPC → z_templates/Framework Templates/NPC Framework Template.md
    • POI (a visitable site inside a city) → POI Framework Template.md
    • Region / City (location) → Location Framework Template.md
    • Faction → Faction Framework Template.md
    • Session recap → this isn't a cleanup job; hand off to /session-recap.
    • In-world document (speech, letter, proposition) → goes in the relevant city's Documents/ folder; keep it as the in-world artifact, no template.
    • History / lore, Species, Deity, Creature, Economy, Language → file per the vault map; match a nearby sibling note's structure rather than a framework template. If it's genuinely ambiguous (e.g. a person who might be a live NPC or a historical Key Figure), state your read and ask the DM to confirm the type before restructuring.
  3. Ground it in the vault. Before fixing or linking anything, gather what's already established. Search the vault for every proper noun in the note (names, places, factions, deities). Read the likely parent note (the POI, city, region, or faction this belongs under) and the Campaign Premise / Campaign Flow if it touches the main plot. This grounding drives the next three steps.

  4. Fix spelling & proper-noun typos. Voice dictation mangles names. For each proper noun, find the closest canonical spelling that already exists in the vault and correct to it (e.g. dictated "Voxu" / "Vox you" → Voxiu, "belters" → Belters). Fix ordinary spelling/grammar too, but preserve the DM's voice and any deliberate in-world coinage. A name with no near-match in the vault is probably a genuinely new entity — keep it as dictated and treat it as a new note/stub, don't "correct" it into an unrelated existing name. Keep a list of every correction to show the DM.

  5. Reshape into structural sections (no frontmatter). Pour the content into the matching template's ###/## headings. Follow the vault's structural conventions exactly:

    • No YAML frontmatter, ever. "Metadata" in this vault means heading-based sections plus inline tags like a race note *(Human, elderly)* — not properties. Add these, not frontmatter.
    • Rename or drop sections to fit — never leave empty boilerplate. If the dictation only covers a few fields, keep those sections and omit the rest; leave a [[red link]]-free gap the DM can fill, and list the gaps for them.
    • Match the local house style (Notable-NPC bold-name + → hook lines, American spelling, in-world present tense for descriptions).
    • Do not invent hard canon. If the note implies but doesn't state a motivation, secret, death, or loyalty, leave it out and flag it — those are the DM's calls (collaborative style). Structure what's there; don't pad.
  6. Wikilink every known entity. Wikilink the first mention of any species, region, city, faction, deity, POI, or NPC that has (or should have) a note. Use [[Note Name|display text]] when the filename differs from the prose. An entity with no note yet still gets a [[red link]] — that's intentional; collect these as stubs to flag.

  7. Determine destination & filename. Compute where the promoted note belongs per the containment rules and naming conventions:

    • NPC → .../<POI>/<Full Name> - <POI>.md (or - <City>; historical → Key Figures/<Name>.md)
    • POI → .../<City>/<POI>/<POI>.md
    • City → .../<Region>/<City>/<City>.md; Region → .../<Region>/<Region>.md
    • Faction → World Almanac/Factions/<Faction>/<Faction> Overview.md
    • Document → .../<City>/Documents/<Title>.md If the parent folder doesn't exist yet, that's a signal the parent note is also missing — flag it.
  8. Show the DM before applying. Present, and wait for approval:

    • the identified type and the destination path + filename;
    • the typo/spelling corrections (dictated → canonical) as a list;
    • the cleaned note in full (or a diff against the original);
    • links added and red-link stubs worth creating later;
    • the reciprocal backlink you'll add to the parent (see below);
    • any flagged gaps / uninvented canon the DM should decide on.
  9. Apply on approval. Then:

    • Write the cleaned note to its correct path/filename.
    • If the original file was a loose dump elsewhere, offer to delete it (don't leave a stale duplicate) — confirm first, and never delete a file you can't confirm is the same content you just promoted.
    • Add the reciprocal [[link]] in the parent note (NPC → parent POI's "Notable NPCs"; POI → city's "Notable Features"; city → region's "Notable Cities"; faction → Faction Relationships.md) so the graph stays connected.
    • Remind the DM of the red-link stubs; offer to create the important ones via /create-npc, /create-poi, /create-location, or /create-faction.

Guardrails

  • This skill normalizes and files existing content; it does not invent the campaign. When a field is missing, flag it — don't fabricate motivations, secrets, or events (that's the DM's call, per the collaborative style).
  • When a proper noun has no vault match, treat it as new, not as a typo.
  • Keep canonical content out of z_* folders.
  • Preserve unicode punctuation already in the vault; when editing existing notes (e.g. adding the backlink), anchor Edits on plain-ASCII substrings.