From gm-apprentice
Use when the GM is actively running a TTRPG session and needs fast help at the table — quick lookups, rules questions, on-the-fly content generation, or capturing play notes. Speed is everything: short responses, no unsolicited analysis. Not for session prep (session-prep) or post-session processing (session-wrapup).
How this skill is triggered — by the user, by Claude, or both
Slash command
/gm-apprentice:session-playThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Table-side assistant for live TTRPG sessions. Players are
Table-side assistant for live TTRPG sessions. Players are waiting. Every response must be immediately usable.
Shared references: Read shared/session-principles.md on
first invocation.
Document chain: Read shared/session-document-chain.md.
Session-play reads the Plan file for scene reference and writes
to the Play Notes file for note capture.
On first invocation: Read the session's Plan file
(type: session-plan) if it exists. This gives you the GM's
intended scenes, NPCs, and hooks for quick reference during play.
Version check: On first invocation, read
gm_apprentice_version from _meta/vault-config.md and
current_version from shared/migrations.md — frontmatter only, Read with limit: 10; the rest of the file is a long migration history you don't need for the check. If the vault
version is lower or absent, announce the mismatch and hand off
to campaign-organizer's migration workflow
(campaign-organizer/references/migration-procedure.md) before
proceeding with play support. Resume after migration completes.
Skip this check if _meta/ doesn't exist (that's first-time
setup, not migration).
Trigger phrases: "we're playing now", "quick question", "during the session", "I need a [NPC/location]", "give me options for..."
Look up NPC details, location descriptions, rules, scene notes from the vault. Essential facts only — no analysis.
Answer system-specific mechanical questions. Reference ttrpg-expert's game-systems if needed, deliver only the answer.
Create NPCs, locations, shops, encounters on the spot. Table-ready — usable immediately without editing.
After generating: "Want me to save this to the vault?"
GM may defer (e.g., 3 options where players haven't chosen).
Unsaved content flagged for wrap-up. If GM confirms, create
vault file with canon_status: DRAFT. Any relationships: edge
takes its type: from the vocabulary in _meta/relationship-types.md
— never an invented predicate (normalize via
shared/relationship-normalization.md; deep authoring waits for
wrap-up).
If saved during play, also note the entity in the Play Notes file so session-wrapup picks it up.
Accept raw shorthand play notes. Write to the session's Play
Notes file (type: session-play-notes). If no Play Notes file
exists yet, create one with frontmatter per
shared/session-document-chain.md and created_by: session-play.
Update the session index: set documents.play_notes to the new
file reference and advance status to played.
Acknowledge and hold. No editing or analysis — processed during wrap-up. Note new entities for wrap-up attention.
If players are submitting sheet edits from the published site during play, the
publish-site skill runs the "start your checking loop" workflow in a
separate terminal (references/change-request-loop.md). Point the GM there;
session-play does not process the queue itself.
Route these requests directly — don't search, load the file.
| Need | Go to |
|---|---|
| Rules dispute | ttrpg-expert/systems/{system}/rules-reference.md (CoC, D&D, PF2e, FitD, Generic) or mechanics.md (GURPS) |
| Combat mechanics | ttrpg-expert/systems/{system}/combat-reference.md (CoC) or combat.md (GURPS) or conditions-rules.md (D&D) or rules-reference.md (PF2e) or mechanics.md (FitD) |
| Improvise NPC | ttrpg-expert/npc-generation.md §The 3-Line NPC (Quick Generation) |
| Random encounter | ttrpg-expert/random-generation.md §Random Encounter Generation |
| Random NPC | ttrpg-expert/random-generation.md §Random NPC Generator |
| Spotlight imbalance | ttrpg-expert/active-play-management.md §Spotlight Management |
| Combat dragging | ttrpg-expert/active-play-management.md §Combat Length |
| Scene fell flat | ttrpg-expert/active-play-management.md §Mid-Session Adjustments |
| Pacing / tension | ttrpg-expert/active-play-management.md §Pacing and Flow |
| Improvisation help | ttrpg-expert/active-play-management.md §Improvisation |
| Narrative plan | Chapters/{chapter}/Planning/ — read the relevant plan entity (scene designs, arc structure, investigation flow, or timeline) |
Read ttrpg-expert/active-play-management.md when the GM needs
GM-craft advice (spotlight, pacing, improv, difficulty tuning)
during play. Use it as a companion reference — don't summarize
it, route to the relevant section and deliver the answer.
systems/{system}/personal/ may contain the user's own
setting reference (factions, NPCs, locations, random tables).
Gitignored — never distributed. Check here during
improvisation when public SRD/ORC files lack the setting
detail you need.
When taking play notes, use these markers so session-wrapup can extract entities automatically:
| Marker | Use when |
|---|---|
NEW-NPC | Improvised character appeared |
NEW-LOC | New location described |
NEW-ITEM | Item introduced |
NEW-EVENT | Significant event occurred |
UPDATE | Existing entity changed |
CONFLICT | Contradicts existing vault content |
Example play note entry:
NEW-NPC: Madame Voss — fortune teller at the pier, nervous,
knows about the missing ship but won't say why
Scene 3: PCs investigated the harbour. Found bloodstains
on the Merry Widow's deck. UPDATE: The Merry Widow —
confirmed abandoned, signs of struggle below decks
These markers match what session-wrapup expects in its entity extraction step — notes taken during play arrive pre-formatted for wrap-up processing.
Guides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
npx claudepluginhub antthelimey/gm-apprentice --plugin gm-apprentice