D&D (prep) with Claude Code 11 Jan 2026

I have teenage kids, and they are possibly dorkier than me, which is awesome. Since the pandemic, we have had a D&D game going, off and on, with some of their friends and friends' parents. It's been super fun. I am, however, the perma-DM. I am 99% fine with this, as I love the world building aspects which the DM gets to lean more heavily into than players.

Sometime this past year I started doing my session prep in Claude Code. It started with discussing ideas for arcs and settings, and rapidly turned into shockingly useful session prep. While I am impressed by frontier models' ability to program, I am in awe of their ability to help plan and prep D&D because this is very much about predicting human behavior, setting up interesting situations and being ready for what real people may do in them. That Claude can make rustc sing is nice, that it can make my players sing was unexpected.

I have, for a long time, been keeping my notes in Obsidian and git (private GH repo), laid out more or less like:

├── encounters
│   ├── agadol_ambush.md
│   ├── Audience with Kerral.md
│   └── [more, elided ...]
├── factions
│   ├── Arjun.md
│   ├── Tollkeepers.md
│   └── [more elided ...]
├── ideas
│   ├── beechport_arc_ideas.md
│   ├── The Red Dragon.md
│   └── [more, elided ...]
├── npc
│   ├── Agustin.md
│   ├── Chalan.md
│   └── [and more, elided...]
├── pc
│   ├── Borin - Notes.md
│   ├── Ethex - Notes.md
│   ├── Nameless - Notes.md
│   └── Ragux - Notes.md
├── places
│   ├── Aurum.md
│   ├── Beechport.md
│   └── [and more, elided ...]
└── sessions
    ├── [and more elided ...]
    ├── Session 026 - 2026-01-03.md
    └── Session 027 - 2026-01-17.md

Claude took to this structure like, well, a coding agent to a tree of markdown :-) I have long described myself as working best when I can "pair think" -- put me at a whiteboard with another programmer and I, at least, am more than 2x as effective. Cannot vouch for any given pair-thinker, but this seems to be common enough that I suspect the sum is greater than the parts. Rubber ducking, even with Jonathan Aquino's excellent assistance, Thank you for that video, Jon, I still use it! just is not the same. Turns out DM planning works this way to, and Claude is a good enough pair-thinker that the results are great.

Mechanically, I fire up a claude-code web session to plan the next session and just let thoughts wander all over. I let claude organize what we come up with into NPC, Faction Idea, or Session files as it makes sense, then iterate on key things for the next session. I generally have a bunch of "here is other stuff going on" in a per-arc doc (beechport_arc_ideas.md above, for example), which act as a catch all for "this might happen, and I think here are some things that might fall out of it..." type thoughts. The arc-doc is the big picture context for the next session of planning, and it will refer to key NPCs, places, factions, etc.

Historically I used something similar to the Lazy DM approach, but have been trying Brennan Lee Mulligan's toy approach lately. In both cases, Claude has been able to take a description of the materials I want at the table and produce them well enough to almost just use.

As I mentioned, the thing that has most impressed me is in encounter planning. Claude is surprisingly good at predicting what players will do in given situations, estimating the time for a given encounter, estimating the difficulty, highlighting things which will likely have an emotional impact on a specific player, etc. It can predict good beats to highlight aspects of individual characters even, and help set opportunities for specific individuals to showcase some aspect of themselves. It sometimes gets confused between NPCs and PCs, and will optimize to allow an NPC to shine, but it course corrects on this well enough.

The main thing that burnt me early was when Claude would go off the rails Is it still hallucination if the thing it is hallucinating is completely imaginary and poorly defined in the first place? on aspects of the world or players and I didn't bother to correct it, because, who cares. Later when it referred to past notes the misunderstandings started magnifying and the overall quality as a planning partner deteriorated greatly. Spending time getting on the same page, and getting Claude to record it in the various docs, was well worth it, as now it makes really good connections without help.