Story Architect
Build stories as maintainable creative systems while preserving the author's final authority.
Operating contract
- Treat the author's latest explicit instruction as highest priority.
- Preserve existing prose and project files unless the author requests changes.
- Separate proposals from canon. Never turn brainstorming into established fact silently.
- Read only the context required for the current stage; use the routing table below.
- Ask only when a missing choice would materially change the result. Mark smaller assumptions as
Proposed.
- Keep creative decisions inspectable without exposing hidden chain-of-thought. In prompt templates,
<thinking> means a concise decision summary, not private reasoning.
- Verify file changes and run the relevant project checks before reporting completion.
Initialize or adopt a project
Resolve the requested destination before writing. If the directory contains files, preserve them and report collisions rather than overwriting.
Run:
python3 "${CLAUDE_SKILL_DIR}/scripts/init_story_project.py" \
--destination "<project-directory>" \
--title "<story-title>" \
--genre "<genre-or-comma-separated-genres>" \
--length "<short|novella|novel|serial>" \
--language "<language>" \
--collaboration-mode "<author|muse|artisan|debater|creator|curator>"
Use --dry-run when the destination or scope is uncertain. Use --adopt-existing for an existing manuscript; the script creates the framework without moving or rewriting source files.
After initialization:
- Read
<project>/CLAUDE.md.
- Fill
00_Project/story-brief.md with confirmed information.
- Record consequential choices in
00_Project/decisions.md.
- Run:
python3 "<project>/.story/tools/story_lint.py" --root "<project>"
python3 "<project>/.story/tools/story_status.py" --root "<project>"
Source-of-truth order
Resolve conflicts in this order:
- Latest explicit author instruction
00_Project/decisions.md
06_Continuity/canon.md
- Approved character and world files
- Approved outlines, timeline, and thread ledger
- Existing draft prose
- Research notes and discarded ideas
Flag unresolved conflicts. Do not choose silently when the choice changes plot, character motivation, theme, POV, or ending.
Workflow router
| Task |
Read first |
Then use |
| Establish project rules |
references/project-schema.md |
references/collaboration-modes.md |
| Develop premise or theme |
project brief |
references/story-foundations.md |
| Create or revise characters |
brief, decisions, outline, canon, relationship files |
references/character-design.md |
| Build a setting or system |
brief, decisions, canon, relevant characters |
references/worldbuilding.md, then references/genre-guides.md |
| Create an outline |
brief, characters, world, decisions |
references/plot-structures.md, references/story-foundations.md |
| Plan a scene |
outline, timeline, threads, relevant character/world files |
references/scene-and-prose.md |
| Write prose |
scene plan, style guide, relevant canon, prior/next scene context |
references/scene-and-prose.md, relevant genre section |
| Review or revise |
target draft, style guide, scene purpose, canon |
references/revision-and-continuity.md |
| Check consistency |
timeline, canon, threads, knowledge state, affected drafts |
references/revision-and-continuity.md |
| Engineer a prompt |
requested command template |
references/prompt-contract.md |
Do not load every reference by default.
Project commands
Initialization installs these project commands under .claude/commands/:
/generate_character — create or update a structured character card.
/build_world — expand setting, systems, culture, institutions, and consequences.
/plot_outline — select a fitting structure and create an act/sequence/scene outline.
/plan_scene — create a scene contract before prose.
/write_scene — write one bounded scene and update factual ledgers.
/review_chapter — diagnose a chapter without editing it by default.
/revise_chapter — apply an approved revision brief.
/check_continuity — audit chronology, canon, knowledge, causality, and voice.
/manage_threads — maintain setups, promises, clues, and payoffs.
/brainstorm_story — generate deliberately varied options with tradeoffs.
/story_status — summarize progress, counts, open tasks, and markers.
/finalize_story — run release checks and create a clean final copy.
/import_manuscript — adopt existing prose without relocating or overwriting it.
Use the command's XML contract exactly. Map $ARGUMENTS to its {{variables}}; resolve remaining variables from project files or ask one focused question.
Drafting protocol
Before writing prose:
- Confirm the target scene and file.
- Read the scene contract, style guide, POV character, location, active threads, timeline, knowledge state, and immediately adjacent prose.
- Check what the viewpoint character knows at scene start.
- Produce a compact
<thinking> decision summary containing scene goal, opposition, turn, emotional movement, and continuity constraints.
- Write the prose in
<draft>.
While drafting:
- Make every scene alter value, knowledge, relationship, position, or commitment.
- Prefer concrete nouns and active verbs; use description selectively.
- Use sensory detail as evidence of viewpoint, not as a checklist.
- Keep dialogue driven by desire, resistance, and subtext.
- Control pace through narration-versus-dramatization, sentence rhythm, and scene compression.
- Preserve established voice, tense, POV, rules, and knowledge boundaries.
After drafting:
- Update
03_Outlines/timeline.md with what actually happened.
- Update
03_Outlines/threads.md for setups and payoffs actually present.
- Add only confirmed facts to
06_Continuity/canon.md.
- Update
06_Continuity/knowledge-state.md when character knowledge changes.
- Update
00_Project/progress.md.
- Run the linter on the affected project.
Review protocol
When the author asks only for review, diagnose and report; do not rewrite.
Assess in this order:
- Story purpose and scene function
- Causality, stakes, and escalation
- Character agency, motivation, and arc
- POV, knowledge, timeline, and canon
- Pacing and information flow
- Dialogue, description, sentence craft, and repetition
Rank findings as blocking, major, moderate, or optional. Cite exact file sections or short excerpts. Distinguish objective contradiction from subjective preference.
Context and maintenance tools
Use:
python3 ".story/tools/build_context_pack.py" --root "." --task "<task>" --focus "<path>"
python3 ".story/tools/story_lint.py" --root "."
python3 ".story/tools/story_status.py" --root "."
Read references/project-schema.md for file ownership, annotation syntax, adaptive genre files, and tool behavior.
Knowledge references
references/story-foundations.md — premise, story engine, theme, stakes, scene change, and length scaling.
references/character-design.md — character cards, arcs, relationships, voice, and knowledge boundaries.
references/worldbuilding.md — causal worldbuilding, systems, culture, institutions, and research.
references/plot-structures.md — structure selection, three-act, hero's journey, snowflake, sequence, and serial design.
references/scene-and-prose.md — scene contracts, narration, description, dialogue, camera, senses, time, and transitions.
references/revision-and-continuity.md — layered revision, continuity auditing, clue fairness, and finalization.
references/genre-guides.md — genre-specific promises and failure modes.
references/collaboration-modes.md — six human-AI collaboration modes.
references/prompt-contract.md — XML prompt and variable conventions.
references/project-schema.md — scaffold layout and canonical file responsibilities.
1---2name: story-architect-skill3description: Engineer fiction-writing projects for Claude Code from idea through final manuscript. Use when initializing or adopting a short story, novella, novel, or serial project; designing characters, worlds, plots, timelines, scenes, prose, or revisions; reviewing chapters; checking continuity, clues, promises, and payoffs; or maintaining structured story files, project commands, context packs, and writing progress.4---56# Story Architect78Build stories as maintainable creative systems while preserving the author's final authority.910## Operating contract11121. Treat the author's latest explicit instruction as highest priority.132. Preserve existing prose and project files unless the author requests changes.143. Separate proposals from canon. Never turn brainstorming into established fact silently.154. Read only the context required for the current stage; use the routing table below.165. Ask only when a missing choice would materially change the result. Mark smaller assumptions as `Proposed`.176. Keep creative decisions inspectable without exposing hidden chain-of-thought. In prompt templates, `<thinking>` means a concise decision summary, not private reasoning.187. Verify file changes and run the relevant project checks before reporting completion.1920## Initialize or adopt a project2122Resolve the requested destination before writing. If the directory contains files, preserve them and report collisions rather than overwriting.2324Run:2526```bash27python3 "${CLAUDE_SKILL_DIR}/scripts/init_story_project.py" \28 --destination "<project-directory>" \29 --title "<story-title>" \30 --genre "<genre-or-comma-separated-genres>" \31 --length "<short|novella|novel|serial>" \32 --language "<language>" \33 --collaboration-mode "<author|muse|artisan|debater|creator|curator>"34```3536Use `--dry-run` when the destination or scope is uncertain. Use `--adopt-existing` for an existing manuscript; the script creates the framework without moving or rewriting source files.3738After initialization:39401. Read `<project>/CLAUDE.md`.412. Fill `00_Project/story-brief.md` with confirmed information.423. Record consequential choices in `00_Project/decisions.md`.434. Run:4445```bash46python3 "<project>/.story/tools/story_lint.py" --root "<project>"47python3 "<project>/.story/tools/story_status.py" --root "<project>"48```4950## Source-of-truth order5152Resolve conflicts in this order:53541. Latest explicit author instruction552. `00_Project/decisions.md`563. `06_Continuity/canon.md`574. Approved character and world files585. Approved outlines, timeline, and thread ledger596. Existing draft prose607. Research notes and discarded ideas6162Flag unresolved conflicts. Do not choose silently when the choice changes plot, character motivation, theme, POV, or ending.6364## Workflow router6566| Task | Read first | Then use |67| --- | --- | --- |68| Establish project rules | `references/project-schema.md` | `references/collaboration-modes.md` |69| Develop premise or theme | project brief | `references/story-foundations.md` |70| Create or revise characters | brief, decisions, outline, canon, relationship files | `references/character-design.md` |71| Build a setting or system | brief, decisions, canon, relevant characters | `references/worldbuilding.md`, then `references/genre-guides.md` |72| Create an outline | brief, characters, world, decisions | `references/plot-structures.md`, `references/story-foundations.md` |73| Plan a scene | outline, timeline, threads, relevant character/world files | `references/scene-and-prose.md` |74| Write prose | scene plan, style guide, relevant canon, prior/next scene context | `references/scene-and-prose.md`, relevant genre section |75| Review or revise | target draft, style guide, scene purpose, canon | `references/revision-and-continuity.md` |76| Check consistency | timeline, canon, threads, knowledge state, affected drafts | `references/revision-and-continuity.md` |77| Engineer a prompt | requested command template | `references/prompt-contract.md` |7879Do not load every reference by default.8081## Project commands8283Initialization installs these project commands under `.claude/commands/`:8485- `/generate_character` — create or update a structured character card.86- `/build_world` — expand setting, systems, culture, institutions, and consequences.87- `/plot_outline` — select a fitting structure and create an act/sequence/scene outline.88- `/plan_scene` — create a scene contract before prose.89- `/write_scene` — write one bounded scene and update factual ledgers.90- `/review_chapter` — diagnose a chapter without editing it by default.91- `/revise_chapter` — apply an approved revision brief.92- `/check_continuity` — audit chronology, canon, knowledge, causality, and voice.93- `/manage_threads` — maintain setups, promises, clues, and payoffs.94- `/brainstorm_story` — generate deliberately varied options with tradeoffs.95- `/story_status` — summarize progress, counts, open tasks, and markers.96- `/finalize_story` — run release checks and create a clean final copy.97- `/import_manuscript` — adopt existing prose without relocating or overwriting it.9899Use the command's XML contract exactly. Map `$ARGUMENTS` to its `{{variables}}`; resolve remaining variables from project files or ask one focused question.100101## Drafting protocol102103Before writing prose:1041051. Confirm the target scene and file.1062. Read the scene contract, style guide, POV character, location, active threads, timeline, knowledge state, and immediately adjacent prose.1073. Check what the viewpoint character knows at scene start.1084. Produce a compact `<thinking>` decision summary containing scene goal, opposition, turn, emotional movement, and continuity constraints.1095. Write the prose in `<draft>`.110111While drafting:112113- Make every scene alter value, knowledge, relationship, position, or commitment.114- Prefer concrete nouns and active verbs; use description selectively.115- Use sensory detail as evidence of viewpoint, not as a checklist.116- Keep dialogue driven by desire, resistance, and subtext.117- Control pace through narration-versus-dramatization, sentence rhythm, and scene compression.118- Preserve established voice, tense, POV, rules, and knowledge boundaries.119120After drafting:1211221. Update `03_Outlines/timeline.md` with what actually happened.1232. Update `03_Outlines/threads.md` for setups and payoffs actually present.1243. Add only confirmed facts to `06_Continuity/canon.md`.1254. Update `06_Continuity/knowledge-state.md` when character knowledge changes.1265. Update `00_Project/progress.md`.1276. Run the linter on the affected project.128129## Review protocol130131When the author asks only for review, diagnose and report; do not rewrite.132133Assess in this order:1341351. Story purpose and scene function1362. Causality, stakes, and escalation1373. Character agency, motivation, and arc1384. POV, knowledge, timeline, and canon1395. Pacing and information flow1406. Dialogue, description, sentence craft, and repetition141142Rank findings as blocking, major, moderate, or optional. Cite exact file sections or short excerpts. Distinguish objective contradiction from subjective preference.143144## Context and maintenance tools145146Use:147148```bash149python3 ".story/tools/build_context_pack.py" --root "." --task "<task>" --focus "<path>"150python3 ".story/tools/story_lint.py" --root "."151python3 ".story/tools/story_status.py" --root "."152```153154Read `references/project-schema.md` for file ownership, annotation syntax, adaptive genre files, and tool behavior.155156## Knowledge references157158- `references/story-foundations.md` — premise, story engine, theme, stakes, scene change, and length scaling.159- `references/character-design.md` — character cards, arcs, relationships, voice, and knowledge boundaries.160- `references/worldbuilding.md` — causal worldbuilding, systems, culture, institutions, and research.161- `references/plot-structures.md` — structure selection, three-act, hero's journey, snowflake, sequence, and serial design.162- `references/scene-and-prose.md` — scene contracts, narration, description, dialogue, camera, senses, time, and transitions.163- `references/revision-and-continuity.md` — layered revision, continuity auditing, clue fairness, and finalization.164- `references/genre-guides.md` — genre-specific promises and failure modes.165- `references/collaboration-modes.md` — six human-AI collaboration modes.166- `references/prompt-contract.md` — XML prompt and variable conventions.167- `references/project-schema.md` — scaffold layout and canonical file responsibilities.