Plot structure

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.

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/plot-structure, including the files SKILL.md points to.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit danjdewhurst/story-skills/skills/plot-structure#main ~/.claude/skills/plot-structure

For one project only, change the path to .claude/skills/plot-structure. This skill also uses story.md — copying SKILL.md alone won't be enough. See the folder on GitHub.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Plot structure

Show the full text110 lines
namedescription
plot-structureThis 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.

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

  1. Read story.md for genre and themes
  2. Consult references/structure-models.md for available structures
  3. Recommend a structure based on genre (default to three-act if unclear)
  4. Update plot/_index.md frontmatter structure field
  5. Populate the story structure section with the beat sheet
  6. When CLI access is available, run story validate .

Creating an Arc

  1. Read story.md for themes
  2. Read plot/_index.md for existing arcs
  3. Read characters/_index.md to understand available characters
  4. Ask for:
    • Arc name
    • Type (main, subplot, character, thematic)
    • Which characters are involved
    • Which themes it serves
    • Which MICE threads the arc carries (optional mice-threads: frontmatter, e.g. [event, character]; see references/mice-quotient.md)
  5. Build the arc through conversation: setup, escalations, climax, resolution
  6. Write the file using references/arc-template.md (or scaffold it with story add arc "{Name}" --type main --character {id} --theme {theme}, then fill in the sections)
  7. Save to plot/arcs/{arc-name-kebab}.md
  8. Update plot/_index.md arcs table
  9. Update theme tracking in plot/_index.md
  10. If characters are referenced, verify they exist in characters/
  11. 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:

  1. Read the relevant arc file
  2. Add the plot point to the table with chapter reference (if known)
  3. Add the event to plot/timeline.md in chronological order
  4. If the plot point involves foreshadowing, add it to the arc's foreshadowing table
  5. If the plot point creates a reader promise or mystery, create or update a record in continuity/promises/ or continuity/questions/
  6. When CLI access is available, run story reindex ., story links ., and 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
  • Keep entries concise (one line per event)
  • Use the | When | Event | Arc | Chapter | table with these cell formats:
    • When: story-relative time for story events (e.g. Day 1, morning), or how long ago for backstory (e.g. 12 years ago, ~300 years ago)
    • Event: one concise line describing what happened
    • Arc: the arc's display name as written in its file (e.g. The Drowned Witness), or - when the event belongs to no arc
    • Chapter: Ch {N} once the event is written (e.g. Ch 1), or - for backstory and unwritten events

When reviewing the timeline:

  • Run story timeline . to see written scenes in story-time order from their date/time fields, with scenes told out of order marked, and compare it with plot/timeline.md
  • 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.

Scaffold chapters and scenes with story add chapter "{Title}" --number {N} --pov {id} --arc {arc-id} and story add scene "{Title}" --chapter chapter-{NN} --scene {M} --pov {id} --location {id}, then write the prose and outline content into the created files.

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, use bun run story -- from the Story Skills repository checkout or the bundled fallback 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, backlink, and word-count 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, Fichtean curve, Harmon's story circle) with beat sheets
  • references/mice-quotient.md - MICE threading: milieu/inquiry/character/event threads, start/end rules, and the optional mice-threads: arc frontmatter
  • references/short-story-form.md - Short fiction form: one dominant change, single effect, narrow scope
  • references/outlining-ladder.md - Premise → beat sheet → step outline → full outline, with exit criteria per rung (cross-links discovery-drafting)
1---
2name: plot-structure
3description: 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
35 - Which MICE threads the arc carries (optional `mice-threads:` frontmatter, e.g. `[event, character]`; see `references/mice-quotient.md`)
365. Build the arc through conversation: setup, escalations, climax, resolution
376. Write the file using `references/arc-template.md` (or scaffold it with `story add arc "{Name}" --type main --character {id} --theme {theme}`, then fill in the sections)
387. Save to `plot/arcs/{arc-name-kebab}.md`
398. Update `plot/_index.md` arcs table
409. Update theme tracking in `plot/_index.md`
4110. If characters are referenced, verify they exist in `characters/`
4211. When CLI access is available, run `story reindex .`, `story links .`, and `story validate .`
43 
44## Managing Plot Points
45 
46Plot points live within arc files in the "Plot Points" table. When adding a plot point:
47 
481. Read the relevant arc file
492. Add the plot point to the table with chapter reference (if known)
503. Add the event to `plot/timeline.md` in chronological order
514. If the plot point involves foreshadowing, add it to the arc's foreshadowing table
525. If the plot point creates a reader promise or mystery, create or update a record in `continuity/promises/` or `continuity/questions/`
536. When CLI access is available, run `story reindex .`, `story links .`, and `story validate .`
54 
55## Timeline Management
56 
57The timeline at `plot/timeline.md` is a chronological master list of all story events across all arcs.
58 
59When adding events:
60- Insert in chronological order
61- Keep entries concise (one line per event)
62- Use the `| When | Event | Arc | Chapter |` table with these cell formats:
63 - **When:** story-relative time for story events (e.g. `Day 1, morning`), or how long ago for backstory (e.g. `12 years ago`, `~300 years ago`)
64 - **Event:** one concise line describing what happened
65 - **Arc:** the arc's display name as written in its file (e.g. `The Drowned Witness`), or `-` when the event belongs to no arc
66 - **Chapter:** `Ch {N}` once the event is written (e.g. `Ch 1`), or `-` for backstory and unwritten events
67 
68When reviewing the timeline:
69- Run `story timeline .` to see written scenes in story-time order from their `date`/`time` fields, with scenes told out of order marked, and compare it with `plot/timeline.md`
70- Check for chronological consistency
71- Identify pacing issues (too many events clustered, long gaps)
72- Flag arcs that haven't progressed
73 
74## Foreshadowing Tracking
75 
76Each arc tracks its own foreshadowing in the "Foreshadowing" table:
77- **Planted:** What hint or setup is placed
78- **Payoff:** What the payoff will be
79- **Chapter Planted / Chapter Payoff:** Where each occurs
80- **Status:** `planned`, `planted`, or `paid-off`
81 
82During chapter writing, flag any `planted` items that haven't been paid off as reminders.
83 
84For 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`.
85 
86Scaffold chapters and scenes with `story add chapter "{Title}" --number {N} --pov {id} --arc {arc-id}` and `story add scene "{Title}" --chapter chapter-{NN} --scene {M} --pov {id} --location {id}`, then write the prose and outline content into the created files.
87 
88## Cross-Referencing
89 
90- Arcs reference characters via frontmatter `characters` field
91- Arcs reference themes via frontmatter `themes` field
92- Plot points reference chapters
93- Timeline entries link arcs and chapters
94- Theme tracking in `plot/_index.md` maps themes to arcs and chapters
95- Promises and questions reference chapters, arcs, and characters where relevant
96 
97## CLI Maintenance
98 
99Use the Story CLI when it is available. If `story` is not installed, use `bun run story --` from the Story Skills repository checkout or the bundled fallback `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, backlink, and word-count checks manually.
100 
101## Reference Files
102 
103- **`references/arc-template.md`** - Template for arc files with frontmatter and sections
104- **`references/question-template.md`** - Template for continuity questions and mysteries
105- **`references/promise-template.md`** - Template for setup/payoff tracking
106- **`references/structure-models.md`** - Story structure models (three-act, hero's journey, save the cat, kishotenketsu, five-act, Fichtean curve, Harmon's story circle) with beat sheets
107- **`references/mice-quotient.md`** - MICE threading: milieu/inquiry/character/event threads, start/end rules, and the optional `mice-threads:` arc frontmatter
108- **`references/short-story-form.md`** - Short fiction form: one dominant change, single effect, narrow scope
109- **`references/outlining-ladder.md`** - Premise → beat sheet → step outline → full outline, with exit criteria per rung (cross-links discovery-drafting)
110 

Discussion

Alternatives

Also in Blog & articlesSee all 320 in Content creator →