What this gives you
When you run a session with Claude Code connected to TxTavern, three things happen automatically:
- Narration goes to your players. When you ask for a room description or dramatic moment, the Archivist pushes it straight to the session Moments feed. Players watching the session page see it arrive live.
- Significant events get logged. The Archivist flags combat outcomes, reveals, and player decisions as they happen. Confirm them and they’re written down – ready to become the session recap.
- Nothing leaves the session lost. The live log file is a running record of everything: internal planning, narrated prose, captured events. Post-session, it’s the raw material for your recap and wiki update.
Before the session
1. Create a game session in the app
Go to your campaign and create a session for today’s game. The session needs to exist so Moments have somewhere to land.
Note the session ID from the URL – you’ll use it if the Archivist can’t find it automatically.
2. Open two windows
| Window | What it’s for |
|---|---|
| Archivist | Your Claude Code terminal – planning, lore, rulings, narration |
| Scribe | Either bin/session-log (tailing the live log) or the session page in your browser |
The Scribe window lets you glance at what’s been captured without switching context.
3. Start the live log
The Archivist will create story/sessions/prep/session-NNN-live.md when the session begins. You can also run:
bash
bin/session-log # tail the latest session's live log
bin/session-log 36 # tail session 36 specifically
During the session
Internal work (stays in the conversation)
Talk to the Archivist normally. Ask questions, plan what’s coming, look up lore, work through rulings. None of this goes to the players – it’s your thinking space.
“What does Marta know about the missing merchant? What’s the most interesting version of this scene?”
Getting narration to your players
When you’re ready to read something aloud, use /txt-narrate:
/txt-narrate The party enters the abandoned mill
Or just ask naturally:
“Give me the room description for when they open the cellar door.”
The Archivist will:
1. Write atmospheric, present-tense, read-aloud prose grounded in your world’s lore
2. Push it to the Moments feed (kind: narration) – players see it arrive live
3. Append it to the live log, marked with >
You read it aloud. The players read it on their screens. The session record has it.
Capturing significant events
The Archivist will flag things that matter:
- A PC drops to 0 HP
- An enemy dies
- A nat 20 lands
- A secret is revealed
- The party makes a major decision
When it flags something, confirm to log it:
“Yes, log that.”
It gets pushed as a player note and written to the live log. If it’s not significant, just ignore the flag and move on.
You always have the final say. The Archivist never writes canon without confirmation.
After the session
Tell the Archivist the session is over. It will offer to:
- Review the live log – walk through what was captured and confirm what’s canon
- Draft the session recap – structured write-up from the live log entries
- Run the wiki ingest – fan out from the recap and update every NPC, location, and plot thread it touched
The live log already has everything organised: internal notes, narrated passages, flagged events. Post-session work is reviewing, not reconstructing.
Quick reference
| What you want | How to do it |
|---|---|
| Narrate to players | /txt-narrate or ask for a read-aloud description |
| Check what’s been captured | bin/session-log in a second terminal |
| Log a significant event | Confirm when the Archivist flags it |
| See players’ live view | Session show page in the browser |
| Start post-session review | Tell the Archivist “session over” |
Requirements
- TxTavern MCP connected (see Connecting Your AI)
- Claude Code CLI with the Archivist agent (
claude --agent archivist) - A
GameSessionrecord created in the app before the session starts story/_status.mdupdated with the current session number (or pass it as an argument to/txt-narrate)