Storygen: Agentic Story Generation
We've taught AI to code, plan, and reason. Making good stories is becoming
easier; making great stories is still hard, for three reasons this skill is
built to counter:
- Data. Exceptional storytelling data is scarce — and the development
drafts and revision histories matter as much as the finished text. The
process matters as much as the output, so this pipeline captures the
iteration: plans, notes, and revision logs are artifacts, not scratch.
- Subjectivity. There is no single "right" answer. Good storytelling is
judged on four axes — coherence, emotion, persuasion, resonance — so
testing uses a panel of specialist reviewers (simulated editorial
feedback), not a single score.
- Optimization. It's easy to optimize the wrong thing. The target is
deeper narrative craft — reader immersion, empathy, transformation —
never style simulation. Convergence rules below exist to stop
polish-loops that improve prose while the story stays broken.
The setup mirrors a coding agent: coding runs Plan → Write → Test → Debug →
Refactor; storytelling runs Plan → Write → Test → Revise. And like
software, a story is a living system of contexts — it breaks when state
isn't updated correctly — so all phases read and write a story bible.
Two North Stars, from Pixar's Braintrust:
- Candor without authority. Feedback is advisory, never prescriptive.
Reviewers diagnose problems; the writer owns the fix. This preserves
creative agency.
- Make the story better, not be right. Optimize whole-story quality,
never an individual component's score.
Pipeline
Copy this checklist into a todo list and track progress:
Storygen Progress:
- [ ] Phase 0: Intake — brief, audience, format, constraints
- [ ] Phase 1: Plan — concepts, arc, spine, story bible, beat outline
- [ ] Phase 1.5: Storyline checkpoint — Braintrust reviews the outline
- [ ] Phase 2: Write — full draft, scene by scene
- [ ] Phase 3: Test — Braintrust reviews the complete draft (parallel)
- [ ] Phase 4: Revise — triage notes, rewrite, update bible
- [ ] Phase 5: Converge — repeat Test/Revise until pass, then deliver
Phase 0: Intake
Establish before planning (infer sensible defaults from the request rather
than interrogating the user; ask only if the request is genuinely ambiguous):
- Premise — the seed idea, in the user's words. It can be tiny ("I have a
crush on this guy at school"); the pipeline expands it.
- Audience & purpose — a 6-year-old's bedtime tall tale, a literary short
story, a teaching story (e.g. learning to apologize), a screenplay scene.
- Format & length — prose, script, storybook/picture-book pages, comic or
storyboard panels; word or page count.
- Constraints — real people or details to include, canon rules if
remixing existing universes, tone boundaries, content limits.
Phase 1: Plan
Never draft prose before the plan exists. Craft standards are in
craft.md — read it before planning. Produce, in order:
- Concepts. If the premise is open-ended, generate 3–5 candidate
concepts first — same seed, different genre lenses and framings — then
pick one (or present them if the user wants to choose). A one-line
daydream can expand into a dozen distinct story concepts; committing to
the first idea is how stories end up generic.
- Logline — one sentence: protagonist + desire + obstacle + stakes.
- Arc choice — pick the arc shape that fits the story from the seven in
craft.md (Classic/Freytag, Hero's Journey, Three-Act, Fichtean,
Circular, Braided, Kishōtenketsu). Default: Classic Arc. State why.
- Story spine — fill in every slot:
Once upon a time there was… Every day… One day… Because of that…
Because of that… Until finally… And ever since then…
Each "Because of that" must be causal, not sequential. If you can swap
two beats without breaking anything, the spine is broken.
- Story bible — create the living state document from the template in
story-bible.md: world seed (environment type + defining
twist + inhabitants + power/resource + struggle/conflict), character
sheets (desire, need, flaw, strengths, weaknesses, core quality, arc),
world rules, timeline, scene ledger, open threads.
- Beat outline — one line per scene: who wants what, what turns, what
changes state. For visual formats (storybook, comic, screenplay), take it
down to a shot/panel list per scene. Every scene must earn its place by
changing something.
Non-negotiables: the protagonist is driven by desire and conflict; the
audience admires the effort, not the success; characters are forced to grow
through uncomfortable situations.
Phase 1.5: Storyline checkpoint
Pixar's Braintrust reviews storyboards before animation — structural
bugs are cheapest before prose exists. Run a light Braintrust pass on the
outline: give the reviewers the spine, bible, and beat outline. Structure,
character, tension, and worldbuilding lenses apply fully; emotion and voice
review what's visible at this stage (planned emotional arc; planned voice
notes). Fix BLOCKING findings in the plan before writing a word of prose.
Phase 2: Write
Draft the full story from the beat outline. While writing:
- Work scene by scene; each scene has a turn (a value that flips: hope→fear,
ignorance→knowledge, safety→danger).
- Keep voice distinctive and dialogue purposeful — every line either reveals
character or advances the story, ideally both.
- Honesty in the unbelievable: however fantastical the premise, emotions
and choices must be true. A dragon may be impossible; the fear of
disappointing your father is not.
- After drafting, update the story bible: what each character now knows,
wants, and has lost; which threads opened or closed. Stale state produces
continuity bugs.
Phase 3: Test — the Braintrust
Run the multi-agent review. Full protocol in braintrust.md.
If subagents / a Task tool are available, launch these six reviewers in
parallel, in a single batch, each readonly, each given the complete draft
plus the story bible:
| Subagent |
Lens |
storygen-structure |
Story structure — spine, arc, causality, pacing, payoff |
storygen-emotion |
Emotional resonance — arc, empathy, earned feeling |
storygen-character |
Character development — desire, agency, growth |
storygen-world |
Worldbuilding — rules, consistency, texture (the worldbuilding expert) |
storygen-tension |
Tension & conflict — stakes, pressure, escalation |
storygen-voice |
Voice & dialogue — distinctiveness, purpose, rhythm |
If subagents are not available, run the same six reviews sequentially
in-context using the condensed rubrics in braintrust.md,
adopting one persona at a time. Do not skip lenses.
Phase 4: Revise
- Collect all notes. Discard none unread.
- Triage against the whole story, not the note's severity alone: a note
is only actioned if the fix makes the story better. When notes conflict
(e.g. tension wants a darker midpoint, emotion wants warmth), the story
spine and the protagonist's arc are the tiebreakers.
- Rewrite the affected scenes — fix root causes (usually in structure or
character motivation), not symptoms (usually in prose).
- Update the story bible — including its revision log — to reflect every
change. Then re-verify the spine still holds end to end.
Phase 5: Converge
Re-run the Braintrust on the revised draft. Ship when:
- No reviewer reports a blocking note, and
- Two consecutive rounds produce only polish-level notes, or
- Three full rounds have run. Style simulation is not narrative craft: a
fourth pass of prose-polish cannot fix anything that matters. If round
three still has blocking notes, the bug is in the plan — return to
Phase 1 and rebuild the spine.
Deliver the final story plus its iteration history: the logline, the
chosen arc and why, the spine, and what changed across revision rounds. The
process matters as much as the output — the development drafts and revision
history are part of the deliverable, not scratch to discard.
Additional resources
- craft.md — what makes stories great: spine, arcs, character,
layers, world seeds, format playbooks (tall tales, teaching stories,
universe remixes, storyboards)
- braintrust.md — review protocol, rubrics, note format
- story-bible.md — living state template and update rules
1---2name: storygen3description: Generate great stories through an agentic Plan → Write → Test → Revise pipeline with a Pixar-style Braintrust of specialist reviewers (structure, emotion, character, worldbuilding, tension, voice). Use when the user asks to write a story, short story, script, screenplay, novel chapter, children's storybook, comic, tall tale, fanfic, universe remix, or narrative of any kind — or to critique or revise an existing story draft or outline.4---56# Storygen: Agentic Story Generation78We've taught AI to code, plan, and reason. Making *good* stories is becoming9easier; making *great* stories is still hard, for three reasons this skill is10built to counter:1112- **Data.** Exceptional storytelling data is scarce — and the development13 drafts and revision histories matter as much as the finished text. The14 process matters as much as the output, so this pipeline **captures the15 iteration**: plans, notes, and revision logs are artifacts, not scratch.16- **Subjectivity.** There is no single "right" answer. Good storytelling is17 judged on four axes — **coherence, emotion, persuasion, resonance** — so18 testing uses a panel of specialist reviewers (simulated editorial19 feedback), not a single score.20- **Optimization.** It's easy to optimize the wrong thing. The target is21 deeper narrative craft — reader **immersion, empathy, transformation** —22 never style simulation. Convergence rules below exist to stop23 polish-loops that improve prose while the story stays broken.2425The setup mirrors a coding agent: coding runs Plan → Write → Test → Debug →26Refactor; storytelling runs **Plan → Write → Test → Revise**. And like27software, a story is a **living system of contexts** — it breaks when state28isn't updated correctly — so all phases read and write a story bible.2930Two North Stars, from Pixar's Braintrust:31321. **Candor without authority.** Feedback is advisory, never prescriptive.33 Reviewers diagnose problems; the writer owns the fix. This preserves34 creative agency.352. **Make the story better, not be right.** Optimize whole-story quality,36 never an individual component's score.3738## Pipeline3940Copy this checklist into a todo list and track progress:4142```43Storygen Progress:44- [ ] Phase 0: Intake — brief, audience, format, constraints45- [ ] Phase 1: Plan — concepts, arc, spine, story bible, beat outline46- [ ] Phase 1.5: Storyline checkpoint — Braintrust reviews the outline47- [ ] Phase 2: Write — full draft, scene by scene48- [ ] Phase 3: Test — Braintrust reviews the complete draft (parallel)49- [ ] Phase 4: Revise — triage notes, rewrite, update bible50- [ ] Phase 5: Converge — repeat Test/Revise until pass, then deliver51```5253### Phase 0: Intake5455Establish before planning (infer sensible defaults from the request rather56than interrogating the user; ask only if the request is genuinely ambiguous):5758- **Premise** — the seed idea, in the user's words. It can be tiny ("I have a59 crush on this guy at school"); the pipeline expands it.60- **Audience & purpose** — a 6-year-old's bedtime tall tale, a literary short61 story, a teaching story (e.g. learning to apologize), a screenplay scene.62- **Format & length** — prose, script, storybook/picture-book pages, comic or63 storyboard panels; word or page count.64- **Constraints** — real people or details to include, canon rules if65 remixing existing universes, tone boundaries, content limits.6667### Phase 1: Plan6869Never draft prose before the plan exists. Craft standards are in70[craft.md](craft.md) — read it before planning. Produce, in order:71721. **Concepts.** If the premise is open-ended, generate 3–5 candidate73 concepts first — same seed, different genre lenses and framings — then74 pick one (or present them if the user wants to choose). A one-line75 daydream can expand into a dozen distinct story concepts; committing to76 the first idea is how stories end up generic.772. **Logline** — one sentence: protagonist + desire + obstacle + stakes.783. **Arc choice** — pick the arc shape that fits the story from the seven in79 [craft.md](craft.md) (Classic/Freytag, Hero's Journey, Three-Act, Fichtean,80 Circular, Braided, Kishōtenketsu). Default: Classic Arc. State why.814. **Story spine** — fill in every slot:82 > Once upon a time there was… Every day… One day… Because of that…83 > Because of that… Until finally… And ever since then…84 Each "Because of that" must be causal, not sequential. If you can swap85 two beats without breaking anything, the spine is broken.865. **Story bible** — create the living state document from the template in87 [story-bible.md](story-bible.md): world seed (environment type + defining88 twist + inhabitants + power/resource + struggle/conflict), character89 sheets (desire, need, flaw, strengths, weaknesses, core quality, arc),90 world rules, timeline, scene ledger, open threads.916. **Beat outline** — one line per scene: who wants what, what turns, what92 changes state. For visual formats (storybook, comic, screenplay), take it93 down to a shot/panel list per scene. Every scene must earn its place by94 changing something.9596Non-negotiables: the protagonist is driven by desire and conflict; the97audience admires the effort, not the success; characters are forced to grow98through uncomfortable situations.99100### Phase 1.5: Storyline checkpoint101102Pixar's Braintrust reviews **storyboards before animation** — structural103bugs are cheapest before prose exists. Run a light Braintrust pass on the104outline: give the reviewers the spine, bible, and beat outline. Structure,105character, tension, and worldbuilding lenses apply fully; emotion and voice106review what's visible at this stage (planned emotional arc; planned voice107notes). Fix `BLOCKING` findings in the plan before writing a word of prose.108109### Phase 2: Write110111Draft the full story from the beat outline. While writing:112113- Work scene by scene; each scene has a turn (a value that flips: hope→fear,114 ignorance→knowledge, safety→danger).115- Keep voice distinctive and dialogue purposeful — every line either reveals116 character or advances the story, ideally both.117- **Honesty in the unbelievable**: however fantastical the premise, emotions118 and choices must be true. A dragon may be impossible; the fear of119 disappointing your father is not.120- After drafting, update the story bible: what each character now knows,121 wants, and has lost; which threads opened or closed. Stale state produces122 continuity bugs.123124### Phase 3: Test — the Braintrust125126Run the multi-agent review. Full protocol in [braintrust.md](braintrust.md).127128**If subagents / a Task tool are available**, launch these six reviewers **in129parallel, in a single batch**, each readonly, each given the complete draft130plus the story bible:131132| Subagent | Lens |133|---|---|134| `storygen-structure` | Story structure — spine, arc, causality, pacing, payoff |135| `storygen-emotion` | Emotional resonance — arc, empathy, earned feeling |136| `storygen-character` | Character development — desire, agency, growth |137| `storygen-world` | Worldbuilding — rules, consistency, texture (the worldbuilding expert) |138| `storygen-tension` | Tension & conflict — stakes, pressure, escalation |139| `storygen-voice` | Voice & dialogue — distinctiveness, purpose, rhythm |140141**If subagents are not available**, run the same six reviews sequentially142in-context using the condensed rubrics in [braintrust.md](braintrust.md),143adopting one persona at a time. Do not skip lenses.144145### Phase 4: Revise1461471. Collect all notes. Discard none unread.1482. **Triage against the whole story**, not the note's severity alone: a note149 is only actioned if the fix makes the *story* better. When notes conflict150 (e.g. tension wants a darker midpoint, emotion wants warmth), the story151 spine and the protagonist's arc are the tiebreakers.1523. Rewrite the affected scenes — fix root causes (usually in structure or153 character motivation), not symptoms (usually in prose).1544. Update the story bible — including its revision log — to reflect every155 change. Then re-verify the spine still holds end to end.156157### Phase 5: Converge158159Re-run the Braintrust on the revised draft. Ship when:160161- No reviewer reports a **blocking** note, and162- Two consecutive rounds produce only **polish**-level notes, or163- Three full rounds have run. Style simulation is not narrative craft: a164 fourth pass of prose-polish cannot fix anything that matters. If round165 three still has blocking notes, the bug is in the plan — return to166 Phase 1 and rebuild the spine.167168Deliver the final story **plus its iteration history**: the logline, the169chosen arc and why, the spine, and what changed across revision rounds. The170process matters as much as the output — the development drafts and revision171history are part of the deliverable, not scratch to discard.172173## Additional resources174175- [craft.md](craft.md) — what makes stories great: spine, arcs, character,176 layers, world seeds, format playbooks (tall tales, teaching stories,177 universe remixes, storyboards)178- [braintrust.md](braintrust.md) — review protocol, rubrics, note format179- [story-bible.md](story-bible.md) — living state template and update rules