New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Create a plot arc, story structure, add a plot point

Plot structure

by danjdewhurst · MIT license · ★ 241 on GitHub · updated Sep 22

Plot structure cover

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…

---
name: plot-structure
description: 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.
---

# 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

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.

The SKILL.md below is the copy AgentAlley read and checked. The repo has changed it since; the other files are from commit 28817a2.

Manual install (npx, ZIP)
Claude Codenpx skills add danjdewhurst/story-skills --skill plot-structure -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/danjdewhurst/story-skills/tar.gz/28817a272657 \ | tar -xz -C ~/.claude/skills --strip-components=2 story-skills-28817a272657/skills/plot-structure
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/dd19f3280ff82967390c/plot-structure.zip" -OutFile "$env:TEMP\plot-structure.zip"; Expand-Archive "$env:TEMP\plot-structure.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md8.1 KB
  • references/7 files · 13.6 KB
Read the files here
danjdewhurst/28817a28 files
Shared references2SKILL.md reads these from elsewhere in the repo. Not in the ZIP.Get them on GitHub ↗
SKILL.md
Show the full text110 lines

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 
View all files on GitHub →

Details

Updated
Sep 22, 2026
License
MIT
Stars on the repo
★ 241
Checked
Source
danjdewhurst/story-skills ↗
Creator
danjdewhurst · 13 listings
View creator

Similar skills

See all →
SkillAnalyzes article structureArticle IllustratorJimLiu/baoyu-skills · by JimLiuAnalyzes article structure, identifies positions requiring visual aids, generates illustrations with Type × Style × Palette three-dimension approach. Use when user asks to "illustrate article", "add images", "generate images for article", or "为文章配图".★ 26.6k GitHub starsSkillGenerates article cover images with 5 dimensions combiningCover Image GeneratorJimLiu/baoyu-skills · by JimLiuGenerates article cover images with 5 dimensions (type, palette, rendering, text, mood) combining 11 color palettes and 7 rendering styles. Supports cinematic (2.35:1), widescreen (16:9), and square (1:1) aspects. Use when user asks to "generate cover image", "create article cover", or "make cover".★ 26.6k GitHub starsSkillExtract clean article content from URLsArticle extractormichalparkola/tapestry-skills · by michalparkolaExtract clean article content from URLs (blog posts, articles, tutorials) and save as readable text. Use when user wants to download, extract, or save an article/blog post from a URL without ads, navigation, or clutter.★ 553 GitHub starsSkillDesigns end-of-article CTAsEnd-of-Article CTA Designersamber/cc-skills · by samberDesigns end-of-article CTAs — copy, layout, placement, A/B test plan, accessibility — for blog posts, newsletters, and essays. Use whenever the user asks to write, review, or improve a CTA at the bottom of an article; mentions "end-of-post CTA", "call-to-action", "signup box", "newsletter CTA", "subscribe block", or "what should I put at the bottom"; or asks how to turn readers into subscribers, leads, customers, or paying supporters. Covers personal blogs, paid newsletters (Substack, beehiiv, Ghost), and brand content-marketing blogs. Do NOT use for opening hooks, ledes, or post titles — use samber/cc-skills@copywriting-hooks instead. Not for landing-page, ad, or email copy.★ 222 GitHub starsSkillGenerate brand storytelling and narrative video promptsBrand Storytelling & Narrative Video Content for Seedance 2.0 on Higgsfieldcharlesdove977/UGC-Factory · by charlesdove977Generate brand storytelling and narrative video prompts for Seedance 2.0 on Higgsfield. Use whenever the user wants to create a brand story video, company origin story, mission video, about us video, brand film, corporate narrative, founder story, brand anthem, company culture video, or emotional brand content. Triggers on: brand story, brand video, company story, origin story, about us, mission video, brand film, brand anthem, corporate video, company culture, founder story, brand narrative, or any request for brand/company storytelling video. Use even for "tell our company story" or "make a video about our mission.★ 83 GitHub starsSkillHand over your messy notesTurn a pile of notes into an articlemattpocock/skills · by mattpocockHand over your messy notes, transcripts and half-thoughts on a topic, and get back a finished article that flows from one point to the next.★ 267k GitHub stars

More from danjdewhurst

SkillWrite a chapter, next chapter, chapter outlineChapter writingdanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to "write a chapter", "next chapter", "chapter outline", "draft chapter", "continue the story", "write a scene", "outline a chapter", or wants to write prose for a story project.★ 241 GitHub starsSkillCreate a character, update a character, add a characterCharacter managementdanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to "create a character", "update a character", "add a character", "build a family tree", "character relationships", "character timeline", "character arc", "character profile", or needs to manage characters in a story project.★ 241 GitHub starsSkillPantsing, discovery write, write without an outlineDiscovery draftingdanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to "pantsing", "discovery write", "write without an outline", "discovery draft", "write into the dark", "story kernel", "reconcile a chapter", "reverse outline", "cut a subplot", "dead end", "drafting sprint", "writing cadence", or wants to draft a story by discovery with retrospective bible reconciliation.★ 241 GitHub starsSkillProcess beta reader feedback, alpha reader feedbackFeedback triagedanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to "process beta reader feedback", "alpha reader feedback", "feedback round", "synthesize reader feedback", "reader notes", "beta feedback", "readiness check", or wants to collect, reconcile, and act on external reader feedback for a story project.★ 241 GitHub starsSkillMystery, fair play, clue, red herring, romance beats, HEAGenre craftdanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to "mystery", "fair play", "clue", "red herring", "romance beats", "HEA", "thriller", "ticking clock", "horror", "dread", "MG", "YA", "middle grade", "young adult", "science fiction", "sci-fi", "serial", "episodic", "web serial", "genre conventions", or wants genre-specific structural craft for a story project.★ 241 GitHub starsSkillRevise a chapter, edit prose, continuity checkRevision continuitydanjdewhurst/story-skills · by danjdewhurstThis skill should be used when the user asks to revise a chapter, edit prose, continuity check, find inconsistencies, audit character state, check timeline consistency, line edit, developmental edit, polish a draft, or prepare existing story material for the next revision pass.★ 241 GitHub stars