Outline Planning
Purpose: Refine the master outline into volume + chapter outlines. Do not redesign the overall story.
Project Root Guard
- Must run inside a project containing .
- If missing, ask for the project path and into it.
Reference Loading Levels (strict, lazy)
Use progressive disclosure and load only what the current step requires:
- L0: No references before scope/volume is confirmed.
- L1: Minimum set for current generation step.
- L2: Conditional references only if constraints/genre details are needed.
L1 (step-gated minimum)
- Before Step 3 (volume skeleton):
references/strand-weave-pattern.md
.claude/references/genre-profiles.md
L2 (conditional)
- Before Step 3, load only if the cool point structure needs refinement:
references/cool-points-guide.md
- Before Step 4, load only if hook/rhythm subdivision is needed:
.claude/references/reading-power-taxonomy.md
- Before Step 3/4, load only if the genre is esports/live stream fiction/Cthulhu:
references/outlining/genre-volume-pacing.md
Workflow
- Load project data.
- Select volume and confirm scope.
- Generate volume skeleton.
- Generate chapter outlines in batches.
- Validate + save + update state.
1) Load project data
bash
cat "$PROJECT_ROOT/.webnovel/state.json"
cat "$PROJECT_ROOT/大纲/总纲.md"
Optional (only if they exist):
If the master outline (总纲.md) lacks volume ranges / core conflict / climax, ask the user to fill those before proceeding.
2) Select volume
- Offer choices from the master outline (volume name + chapter range).
- Confirm any special requirements (tone, POV emphasis, romance, etc.).
If the master outline is missing volume names/chapter ranges/core conflicts/volume-ending climaxes, first ask the user to supplement and update the master outline before proceeding.
3) Generate volume skeleton
Load genre profile and apply standards:
bash
cat ".claude/references/genre-profiles.md"
Extract for current genre:
- Strand ratio (Quest/Fire/Constellation)
- Cool point density standards (minimum/recommended per chapter)
- Preferred hook types
Strand Weave Planning Strategy
Based on genre profile, distribute chapters:
- Quest Strand (Mainline Progression): 55-65% of chapters
- Clear goals, visible progress, phased achievements
- Examples: Breaking through realms, completing tasks, obtaining treasures
- Fire Strand (Emotion/Relationships): 20-30% of chapters
- Changes in character relationships, emotional conflicts, team dynamics
- Examples: Interactions with the female lead, mentor-apprentice conflicts, brotherly betrayal
- Constellation Strand (World/Mystery): 10-20% of chapters
- Worldview reveals, foreshadowing, mystery progression
- Examples: Discovering ancient secrets, revealing villainous conspiracies, world truths
Weaving pattern (recommended):
- Switch dominant Strand every 3-5 chapters
- Climax chapters can interweave multiple Strands
- Concentrate Quest Strand in the last 3-5 chapters of the volume
For esports/live stream fiction/Cthulhu genres, apply the dedicated volume pacing template:
bash
cat "${CLAUDE_PLUGIN_ROOT}/skills/webnovel-plan/references/outlining/genre-volume-pacing.md"
Cool Point Density Planning Strategy
Based on genre profile:
- Regular chapters: 1-2 small cool points (intensity 2-3)
- Key chapters: 2-3 cool points, at least 1 medium cool point (intensity 4-5)
- Climax chapters: 3-4 cool points, at least 1 major cool point (intensity 6-7)
Distribution rule:
- At least 1 key chapter every 5-8 chapters
- At least 1 climax chapter per volume (usually at the end of the volume)
Constraint Trigger Planning Strategy
If idea_bank.json exists:
bash
cat ".webnovel/idea_bank.json"
Calculate trigger frequency:
- Anti-cliché rules: Trigger once every N chapters
- N = max(5, total chapters / 10)
- Example: 50-chapter volume → trigger every 5 chapters
- Example: 100-chapter volume → trigger every 10 chapters
- Hard constraints: Applied throughout the entire volume, reflected in chapter goals/cool point design
- Protagonist flaws: Become a source of conflict at least 2 times per volume
- Villain mirroring: Must reflect mirror comparison in chapters where villains appear
Use this template and fill from the master outline + idea_bank:
markdown
# Volume {volume_id}: {Volume Name}
> Chapter Range: Chapters {start} - {end}
> Core Conflict: {conflict}
> Volume-Ending Climax: {climax}
## Volume Summary
{2-3 paragraph overview}
## Key Characters & Villains
- Main Characters Introduced:
- Villain Hierarchy:
## Strand Weave Planning
|---------|------------|---------|
## Cool Point Density Planning
|------|---------|---------|------|
## Foreshadowing Planning
|------|------|---------|
## Constraint Trigger Planning (if applicable)
- Anti-cliché Rules: Trigger once every N chapters
- Hard Constraints: Applied throughout the volume
4) Generate chapter outlines (batched)
Batching rule:
- ≤20 chapters: 1 batch
- 21–40 chapters: 2 batches
- 41–60 chapters: 3 batches
-
60 chapters: 4+ batches
Chapter generation strategy
For each chapter, determine:
1. Strand assignment (follow volume skeleton distribution)
- Quest: Mainline task progression, goal achievement, ability improvement
- Fire: Character relationships, emotional conflicts, team dynamics
- Constellation: Worldview reveals, foreshadowing, mystery progression
2. Cool point design (based on Strand and position)
- Quest Strand → Achievement cool points (humiliation reversal, underdog rise, breakthrough)
- Fire Strand → Emotional cool points (recognition, protection, confession)
- Constellation Strand → Cognitive cool points (truth, prophecy, identity revelation)
3. Hook design (based on next chapter's Strand)
- Suspense hook: Raise questions, create crises
- Promise hook: Tease rewards, hint at twists
- Emotional hook: Relationship changes, character crises
4. Villain hierarchy (based on volume skeleton)
- None: Daily chapters, cultivation chapters, relationship chapters
- Minor: Small conflicts, minor villains, local confrontations
- Medium: Medium villains appear, important conflicts, phased confrontations
- Major: Major villains appear, core conflicts, volume-level climaxes
5. Key entities (new or important)
- New characters: Name + one-sentence positioning
- New locations: Name + one-sentence description
- New items: Name + function
- New forces: Name + stance
6. Constraint check (if idea_bank exists)
- Is the anti-cliché rule triggered?
- Are hard constraints reflected?
- Are protagonist flaws demonstrated?
- Is villain mirroring reflected?
Chapter format (include villain hierarchy for context-agent):
markdown
### Chapter {N}: {Title}
- Goal: {≤20 characters}
- Cool Point: {Type} - {≤30 characters}
- Strand: {Quest|Fire|Constellation}
- Villain Hierarchy: {None/Minor/Medium/Major}
- POV/Protagonist: {Protagonist A/Protagonist B/Female Lead/Ensemble}
- Key Entities: {New or important appearances}
- Hook: {Type} - {≤30 characters}
Field Explanations:
- Hook: The end-of-chapter hook to be planned for this chapter
- Example: Suspense Hook - The identity of the mysterious person is about to be revealed
- Meaning: This chapter's ending should include this suspense hook
- The next chapter's context-agent will read chapter_meta[N].hook (the actual implemented hook) to generate "pick up from previous chapter" guidance
- Hook type references: Suspense Hook | Crisis Hook | Promise Hook | Emotional Hook | Choice Hook | Desire Hook
Save after each batch:
bash
@'
{batch_content}
'@ | Add-Content -Encoding UTF8 "$PROJECT_ROOT/大纲/第{volume_id}卷-详细大纲.md"
5) Validate + save
Validation checks (must pass all)
1. Cool point density check
- Each chapter has ≥1 small cool point (intensity 2-3)
- At least 1 key chapter every 5-8 chapters (intensity 4-5)
- At least 1 climax chapter per volume (intensity 6-7)
2. Strand ratio check
Count chapters by Strand and compare with genre profile:
- Quest: Should account for 55-65%
- Fire: Should account for 20-30%
- Constellation: Should account for 10-20%
If deviation >15%, adjust chapter assignments.
3. Master outline consistency check
- Does the volume's core conflict run through the chapters?
- Is the volume-ending climax reflected in the last 3-5 chapters?
- Do key characters appear as planned?
4. Constraint trigger frequency check (if idea_bank exists)
- Number of anti-cliché rule triggers ≥ total chapters / N (N = max(5, total chapters/10))
- Hard constraints are reflected in at least 50% of chapters
- Protagonist flaws become a source of conflict at least 2 times
- Villain mirroring is reflected in chapters where villains appear
5. Completeness check
Every chapter must have:
- Goal (≤20 characters)
- Cool Point (type + ≤30 character description)
- Strand (Quest/Fire/Constellation)
- Villain Hierarchy (None/Minor/Medium/Major)
- POV/Protagonist
- Key Entities (at least 1)
- Hook (type + ≤30 character description)
Update state (include chapters range):
bash
python "${CLAUDE_PLUGIN_ROOT}/scripts/update_state.py" \
--project-root "$PROJECT_ROOT" \
--volume-planned {volume_id} \
--chapters-range "{start}-{end}"
Final check:
- Chapter outline file has been written:
- Each chapter includes: Goal/Cool Point/Strand/Villain Hierarchy/POV/Key Entities/Hook
- Consistent with master outline conflict/climax, reasonable constraint trigger frequency (if idea_bank is enabled)
Hard fail conditions (must stop)
- Chapter outline file does not exist or is empty
- Any chapter is missing: Goal/Cool Point/Strand/Villain Hierarchy/POV/Key Entities/Hook
- Obvious conflict with master outline core conflict or volume-ending climax
- Insufficient constraint trigger frequency (when idea_bank is enabled)
Rollback / recovery
If any hard fail triggers:
- Stop and list the failing items.
- Re-generate only the failed batch (do not overwrite the whole file).
- If the last batch is invalid, remove that batch and rewrite it.
- Only update state after Final check passes.
Next steps:
- Continue planning next volume → /webnovel-plan
- Start writing → /webnovel-write