Plot Structure
Overview
Plan and manage story arcs, plot points, foreshadowing, and narrative timeline. Each arc is a markdown file in plot/arcs/ with a chronological timeline maintained in plot/timeline.md. The plot index tracks all arcs, their status, and theme coverage.
Prerequisites
A story project must already exist (created via the story-init skill). Verify by checking for story.md in the project root.
Choosing a Story Structure
- Read
story.md for genre and themes
- Consult
references/structure-models.md for available structures
- Recommend a structure based on genre (default to three-act if unclear)
- Update
plot/_index.md frontmatter structure field
- Populate the story structure section with the beat sheet
- When CLI access is available, run
story validate .
Creating an Arc
- Read
story.md for themes
- Read
plot/_index.md for existing arcs
- Read
characters/_index.md to understand available characters
- Ask for:
- Arc name
- Type (main, subplot, character, thematic)
- Which characters are involved
- Which themes it serves
- Build the arc through conversation: setup, escalations, climax, resolution
- Write the file using
references/arc-template.md
- Save to
plot/arcs/{arc-name-kebab}.md
- Update
plot/_index.md arcs table
- Update theme tracking in
plot/_index.md
- If characters are referenced, verify they exist in
characters/
- When CLI access is available, run
story reindex ., story links ., and story validate .
Managing Plot Points
Plot points live within arc files in the "Plot Points" table. When adding a plot point:
- Read the relevant arc file
- Add the plot point to the table with chapter reference (if known)
- Add the event to
plot/timeline.md in chronological order
- If the plot point involves foreshadowing, add it to the arc's foreshadowing table
- If the plot point creates a reader promise or mystery, create or update a record in
continuity/promises/ or continuity/questions/
- When CLI access is available, run
story validate .
Timeline Management
The timeline at plot/timeline.md is a chronological master list of all story events across all arcs.
When adding events:
- Insert in chronological order
- Link to the relevant arc and chapter
- Keep entries concise (one line per event)
When reviewing the timeline:
- Check for chronological consistency
- Identify pacing issues (too many events clustered, long gaps)
- Flag arcs that haven't progressed
Foreshadowing Tracking
Each arc tracks its own foreshadowing in the "Foreshadowing" table:
- Planted: What hint or setup is placed
- Payoff: What the payoff will be
- Chapter Planted / Chapter Payoff: Where each occurs
- Status:
planned, planted, or paid-off
During chapter writing, flag any planted items that haven't been paid off as reminders.
For durable cross-arc setup/payoff tracking, also maintain continuity/promises/{promise-kebab}.md with status, planted, payoff, arcs, and characters. For mystery or open-continuity tracking, maintain continuity/questions/{question-kebab}.md.
Cross-Referencing
- Arcs reference characters via frontmatter
characters field
- Arcs reference themes via frontmatter
themes field
- Plot points reference chapters
- Timeline entries link arcs and chapters
- Theme tracking in
plot/_index.md maps themes to arcs and chapters
- Promises and questions reference chapters, arcs, and characters where relevant
CLI Maintenance
Use the Story CLI when it is available. If story is not installed but the story-maintenance skill is present, use node ../story-maintenance/scripts/story.js with the same arguments, resolving the path relative to this skill folder. If no CLI is available, perform the registry and backlink checks manually.
Reference Files
references/arc-template.md - Template for arc files with frontmatter and sections
references/question-template.md - Template for continuity questions and mysteries
references/promise-template.md - Template for setup/payoff tracking
references/structure-models.md - Story structure models (three-act, hero's journey, save the cat, kishotenketsu, five-act) with beat sheets
1---2name: plot-structure3description: This skill should be used when the user asks to "create a plot arc", "story structure", "add a plot point", "story timeline", "track foreshadowing", "pacing", "act structure", "story arc", "plot outline", or wants to plan and manage the narrative structure of a story.4---5
6# Plot Structure
7
8## Overview
9
10Plan and manage story arcs, plot points, foreshadowing, and narrative timeline. Each arc is a markdown file in `plot/arcs/` with a chronological timeline maintained in `plot/timeline.md`. The plot index tracks all arcs, their status, and theme coverage.
11
12## Prerequisites
13
14A story project must already exist (created via the story-init skill). Verify by checking for `story.md` in the project root.
15
16## Choosing a Story Structure
17
181. Read `story.md` for genre and themes
192. Consult `references/structure-models.md` for available structures
203. Recommend a structure based on genre (default to three-act if unclear)
214. Update `plot/_index.md` frontmatter `structure` field
225. Populate the story structure section with the beat sheet
236. When CLI access is available, run `story validate .`
24
25## Creating an Arc
26
271. Read `story.md` for themes
282. Read `plot/_index.md` for existing arcs
293. Read `characters/_index.md` to understand available characters
304. Ask for:
31 - Arc name
32 - Type (main, subplot, character, thematic)
33 - Which characters are involved
34 - Which themes it serves
355. Build the arc through conversation: setup, escalations, climax, resolution
366. Write the file using `references/arc-template.md`
377. Save to `plot/arcs/{arc-name-kebab}.md`
388. Update `plot/_index.md` arcs table
399. Update theme tracking in `plot/_index.md`
4010. If characters are referenced, verify they exist in `characters/`
4111. When CLI access is available, run `story reindex .`, `story links .`, and `story validate .`
42
43## Managing Plot Points
44
45Plot points live within arc files in the "Plot Points" table. When adding a plot point:
46
471. Read the relevant arc file
482. Add the plot point to the table with chapter reference (if known)
493. Add the event to `plot/timeline.md` in chronological order
504. If the plot point involves foreshadowing, add it to the arc's foreshadowing table
515. If the plot point creates a reader promise or mystery, create or update a record in `continuity/promises/` or `continuity/questions/`
526. When CLI access is available, run `story validate .`
53
54## Timeline Management
55
56The timeline at `plot/timeline.md` is a chronological master list of all story events across all arcs.
57
58When adding events:
59- Insert in chronological order
60- Link to the relevant arc and chapter
61- Keep entries concise (one line per event)
62
63When reviewing the timeline:
64- Check for chronological consistency
65- Identify pacing issues (too many events clustered, long gaps)
66- Flag arcs that haven't progressed
67
68## Foreshadowing Tracking
69
70Each arc tracks its own foreshadowing in the "Foreshadowing" table:
71- **Planted:** What hint or setup is placed
72- **Payoff:** What the payoff will be
73- **Chapter Planted / Chapter Payoff:** Where each occurs
74- **Status:** `planned`, `planted`, or `paid-off`
75
76During chapter writing, flag any `planted` items that haven't been paid off as reminders.
77
78For durable cross-arc setup/payoff tracking, also maintain `continuity/promises/{promise-kebab}.md` with `status`, `planted`, `payoff`, `arcs`, and `characters`. For mystery or open-continuity tracking, maintain `continuity/questions/{question-kebab}.md`.
79
80## Cross-Referencing
81
82- Arcs reference characters via frontmatter `characters` field
83- Arcs reference themes via frontmatter `themes` field
84- Plot points reference chapters
85- Timeline entries link arcs and chapters
86- Theme tracking in `plot/_index.md` maps themes to arcs and chapters
87- Promises and questions reference chapters, arcs, and characters where relevant
88
89## CLI Maintenance
90
91Use the Story CLI when it is available. If `story` is not installed but the `story-maintenance` skill is present, use `node ../story-maintenance/scripts/story.js` with the same arguments, resolving the path relative to this skill folder. If no CLI is available, perform the registry and backlink checks manually.
92
93## Reference Files
94
95- **`references/arc-template.md`** - Template for arc files with frontmatter and sections
96- **`references/question-template.md`** - Template for continuity questions and mysteries
97- **`references/promise-template.md`** - Template for setup/payoff tracking
98- **`references/structure-models.md`** - Story structure models (three-act, hero's journey, save the cat, kishotenketsu, five-act) with beat sheets