A method for building personalized, multi-episode learning curricula using AI-powered character dialogue.
I spent four months having philosophical conversations with the cast of The Good Place inside Claude. Fifty episodes. Six arcs. Twelve characters who evolved across the curriculum and helped me explore questions I'd been carrying for decades. Then I built a second track β 22 episodes with real cultural figures exploring Walt Whitman's Song of Myself. The method held both times.
This repo contains everything you need to build your own version.
π Read the full story (Reddit) Β· π Detailed methodology guide (Substack)
βββ README.md β You are here
βββ quick-start.md β Get running in 15 minutes
βββ prompts/
β βββ project-instructions.md β Core setup prompt for the AI
β βββ curriculum-design.md β Prompt for collaboratively building your arcs
β βββ episode-starter.md β How to kick off each episode
β βββ crystallization.md β End-of-block synthesis prompt
β βββ handoff.md β Generate the opening prompt for your next chat
βββ characters/
β βββ good-place-cast.md β Voice guides for the Soul Squad
β βββ generic-template.md β Blank template for any ensemble cast
βββ templates/
β βββ crystallization-template.md
β βββ arc-planning-template.md
βββ examples/
β βββ personnas/
β βββ bad-janet.md
β βββ chidi.md
β βββ eleanor.md
β βββ janet.md
β βββ jason.md
β βββ michael-schur.md
β βββ michael.md
β βββ tahani.md
β βββ arc3_episodes_26-30_prompt.md
β βββ curriculum.md
β βββ sample-episode-excerpt.md β What a conversation actually looks like
βββ vault-setup/ β OPTIONAL: Obsidian knowledge vault guide
βββ vault-guide.md
You need: Access to Claude (claude.ai β free tier works, Pro recommended for longer conversations and the Projects feature)
Time to first episode: ~15 minutes of setup, then your first conversation
Choose an ensemble cast you know well. Not just their catchphrases β their worldview, their blind spots, how they react under pressure. This repo includes voice guides for The Good Place cast, plus a generic template you can adapt for any characters.
Create a new Project in Claude. Add the project instructions from prompts/project-instructions.md as your project instructions. This gives the AI the ground rules for every conversation in the project.
If you're using the free tier without Projects, paste the project instructions at the start of your first conversation instead.
Don't plan alone. Use the prompt in prompts/curriculum-design.md to collaboratively build your arc structure and episode topics. Come in with a general direction β "I want to explore philosophy," "I want to think about creativity and meaning," "I want to work through some life questions" β and let the conversation shape the specifics.
If you're starting fresh with a new AI account, the AI won't have context about your life yet. The curriculum design prompt includes onboarding questions to build that foundation before planning episodes.
Use the prompt in prompts/episode-starter.md. Pick a topic and a lead character. Then just talk. See examples/sample-episode-excerpt.md for what the conversation format actually looks like.
Episodes typically run 15 minutes to an hour. Let them breathe.
This is the most important step. After every five episodes, use prompts/crystallization.md to synthesize what happened. Then use prompts/handoff.md to have the AI generate the opening prompt for your next five-episode chat.
The crystallization is primarily a learning tool β the act of compressing what happened forces you to actually process it. It also maintains continuity across chats, since AI conversations have a limited context window and you'll need to start new chats every five episodes.
Run episodes. Crystallize. Hand off. Let the characters evolve. Let yourself be surprised.
Character-based Socratic dialogue. Characters don't lecture. They ask probing questions, build on your answers, disagree with each other, and occasionally get things wrong in productive ways. You push back. That's where the learning happens.
Collaborative curriculum design. You and the AI build the arc structure together. You bring the direction; the AI proposes the architecture. You refine until it fits.
Crystallization checkpoints. Every five episodes, stop and distill. Not summarize β compress. What surprised you? What patterns emerged? What's unresolved? This is where conversations become learning.
Handoff prompts. At the end of each five-episode chat, the AI generates the opening prompt for the next chat. You never cold-start a new segment.
Character evolution. The characters grow across episodes. The AI maintains continuity through crystallization documents and project instructions. Episode 40 Chidi is not Episode 1 Chidi.
These emerged from fifty episodes of trial and error:
Push back on the characters. The AI tends toward agreement. The best moments come from disagreement. When a character projects something onto your experience that doesn't fit, say so.
Name your patterns. When an insight or recurring theme emerges, give it a name. This makes it portable and signals to the AI that it's worth tracking.
Don't let the AI over-praise you. The AI defaults to affirming responses. The project instructions address this, but reinforce it: "Characters should engage critically, not affirm reflexively. Praise should be specific and earned."
Set privacy boundaries early. These conversations get personal. Decide before you start what's yours to explore and what belongs to someone else. Tell the AI explicitly that certain topics involving certain people are off limits.
The method is portable. The content isn't. Your curriculum will produce different insights than mine did. That's the point. The structure travels; the discoveries are yours.
| File | What It Does | When to Use It |
|---|---|---|
project-instructions.md |
Core setup β character guidelines, conversation rules, your role, continuity expectations | Once, at project setup |
curriculum-design.md |
Collaborative arc and episode planning, includes onboarding for new users | Once, before starting episodes |
episode-starter.md |
Kicks off an individual episode with a topic and lead character | Every episode |
crystallization.md |
Synthesizes the last five episodes into a distilled checkpoint | Every 5 episodes |
handoff.md |
Generates the opening prompt for the next five-episode chat | Every 5 episodes, after crystallization |
| File | What It Does |
|---|---|
good-place-cast.md |
Voice and personality guides for Eleanor, Chidi, Tahani, Jason, Michael, Janet, Bad Janet, and Michael Schur |
generic-template.md |
Blank template for defining any ensemble cast β fill in voice, worldview, blind spots, philosophical role |
| File | What It Does |
|---|---|
crystallization-template.md |
Structure for your five-episode synthesis documents |
arc-planning-template.md |
Structure for planning a full arc (theme, core question, episode sketches) |
The vault-setup/ folder contains a guide for preserving your curriculum in an Obsidian knowledge vault. This is entirely optional β you don't need it to run the curriculum. It's there for anyone who wants a durable, searchable archive of their learning that survives platform changes. Think of it as a bonus for the more adventurous.
Here's a brief look at what the conversation format actually feels like. This is a condensed, illustrative example β not a full episode transcript.
Topic: What does "enough" mean? Lead: Eleanor, with Chidi
ELEANOR: Okay, so here's my question. You've got this life β the job, the family, the hobbies, the whole deal. When you list it all out, it sounds like a lot. But my question isn't whether it's a lot. My question is: do you ever feel like you're doing all of it so you don't have to sit still?
You: Honestly? I used to wonder that too. But I think there's a difference between filling time and being engaged. My schedule is full because I'm interested, not because I'm avoiding something.
ELEANOR: See, that's a very reasonable answer. Chidi, back me up β that's exactly the kind of reasonable answer that makes me suspicious.
CHIDI: I... actually think he might be right, Eleanor. There's a difference between Pascal's divertissement β distraction as escape β and genuine engagement. The question is whether the activity feels nourishing or numbing.
ELEANOR: Fine. New question. When's the last time you did nothing and it felt good? Not productive nothing. Not meditation nothing. Just... nothing.
You: Last Tuesday. My wife and I sat in the car after picking something up and just watched the ocean for ten minutes. No agenda. It was great.
ELEANOR: [long pause] Okay. That's not the answer of someone who's running.
The full example with commentary is in examples/sample-episode-excerpt.md.
This method isn't limited to The Good Place or to philosophy. The core structure β ensemble characters, Socratic dialogue, crystallization checkpoints, character evolution β works for any domain where you want to explore questions through conversation.
Some possibilities:
- Literature: Characters from a novel or film exploring its themes through your experience (I did this with Walt Whitman's Song of Myself using real cultural figures as hosts)
- History: Historical figures examining contemporary questions through their particular lens
- Career/Life: Characters from a show you love helping you think through professional or personal crossroads
- Creative work: Characters serving as collaborators or critics for a creative project
Use the generic-template.md to define your cast. The key requirements: characters who think differently from each other, who would genuinely disagree, and who bring distinct perspectives to hard questions.
- No peer review. The philosophical content in my curriculum was not reviewed by academics. Where I had existing knowledge, the AI's treatment was nuanced and genuinely insightful. Where I didn't, I can't fully evaluate the accuracy. Bring your own critical thinking
- AI over-affirms. Even with instructions to push back, the AI tends to praise responses more than a human teacher would. Some characters (Eleanor, Bad Janet) naturally resist this; others need the nudge
- Privacy is real. AI conversations are not private in the way a therapist's office is. Your data is processed by the AI company. The likelihood of exposure is small, but the guarantee doesn't exist. Be as open as you're comfortable with
- The AI can be wrong in ways you can't detect. If you don't have background in the subject matter, you may not catch inaccuracies. This is personal exploration, not accredited education
- Context window limits. You can't run the whole curriculum in one chat. The five-episode segmentation with crystallization handoffs is the workaround, and it actually improves the experience
This project wouldn't exist without The Good Place β created by Michael Schur, brought to life by a brilliant cast and writing team. The characters had enough philosophical depth that they could carry a stranger's education years after the show ended. That's extraordinary.
Built with Claude by Anthropic.
This repo is shared under MIT License. Use it, adapt it, make it yours. If you build something with it, I'd love to hear about it.