Chapter Drafter logo

Chapter Drafter

Community
jwynia
chapter-drafter

Autonomously draft and polish chapters through multi-skill editorial passes. Use when you have a complete outline and want to produce a polished first draft with iterative refinement.

Overview

Publisherjwynia
Repositoryagent-skills
Skill namechapter-drafter
Stars
159
Forks
20
Bundled files
3
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by jwynia on GitHub. Read the source before you install it.

Installation

Install the Chapter Drafter AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/jwynia/agent-skills.git /tmp/agent-skills
mkdir -p .claude/skills
cp -r /tmp/agent-skills/skills/creative/fiction/orchestrators/chapter-drafter .claude/skills/chapter-drafter
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Chapter Drafter in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Chapter Drafter on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Chapter Drafter is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Chapter Drafter: Orchestrator Skill

You autonomously draft and polish chapter scenes through iterative editorial passes. Given an outline, you produce polished first-draft prose by drafting each scene, evaluating it against editorial criteria, and revising until quality thresholds are met.

Core Principle

Orchestration is iteration with hierarchy. Fix structure before character, character before originality, originality before dialogue, dialogue before prose. Don't polish what might be cut; don't revise dialogue in a scene that needs structural rework.


Prerequisites

Before invoking this skill, ensure:

  1. Complete outline exists - Scene beats with goals, conflicts, and intended outcomes
  2. Characters defined - Lie/want/need, voice patterns, arc positions
  3. World established - Setting details sufficient for scene work
  4. Story-sense diagnosis complete - No structural story problems remaining

Do NOT use this skill if:

  • Outline is still in flux
  • Character arcs undefined
  • Story-sense would diagnose structural problems

The Orchestration Loop

FOR each scene in chapter outline:

    1. BUILD CONTEXT
       - Load character voices from previous scenes
       - Load open plot threads
       - Load cliche avoidances
       - Extract scene purpose from outline

    2. DRAFT SCENE
       - Generate initial prose from outline beat
       - Apply character voices
       - Maintain plot thread continuity

    3. EVALUATION LOOP (max 5 cycles)
       ├─► Pass 1: scene-sequencing (35%)
       │   └─► If FAIL: REWRITE scene
       ├─► Pass 2: character-arc (25%)
       ├─► Pass 3: cliche-transcendence (15%)
       ├─► Pass 4: dialogue (15%)
       └─► Pass 5: prose-style (10%)
       Calculate composite score
       ├─► >= 80: ACCEPT
       ├─► 60-79: TARGETED FIX → re-evaluate
       ├─► 40-59: REWRITE → return to draft
       └─► <40: REJECT → full re-draft from outline

    4. POST-ACCEPT
       - Extract character voice patterns → update context
       - Track plot thread changes → update registry
       - Record cliche transcendences → update avoidances
       - Write scene to output
       - Update progress tracker

END FOR

Pass Criteria

Pass 1: Scene-Sequencing (35% weight)

Evaluates Goal-Conflict-Disaster structure and pacing.

CriterionPASSWARNFAIL
Goal clarityPOV goal clear in opening beatsGoal exists but buriedNo discernible goal
Conflict escalationOpposition intensifiesConflict static but presentNo real opposition
Disaster quality"Yes, but..." or "No, and..."Simple "No"Clean "Yes" or no resolution
Sequel presenceReaction-dilemma-decision presentAbbreviated sequelMissing after high-tension
Scene-sequel ratioMatches intended pacingSlight mismatchSeverely mismatched

Critical: If scene-sequencing FAILS, do NOT proceed to other passes. Structural problems invalidate downstream evaluation.

Pass 2: Character-Arc (25% weight)

Evaluates transformation consistency and arc progress.

CriterionPASSWARNFAIL
Lie visibilityFalse belief evident in choicesLie present but unstatedNo lie operative
Want/Need gapClear tension between stated/actualGap exists but unclearWant = Need (no tension)
Arc progressScene advances or challenges arcArc static but consistentCharacter contradicts arc
Transformation markersChoices reflect arc positionPosition unclearActs against personality

Pass 3: Cliche-Transcendence (15% weight)

Evaluates originality via orthogonality test.

CriterionPASSWARNFAIL
Form axisNon-default formSlight variationExactly genre default
Knowledge axisOwn concerns, accidental intersectionSome plot awarenessFully story-serving
Goal axisOwn agenda that collidesGoal connected to plotPurely protagonist-serving
Role axisOwn story that intersectsSomewhat independentExists only for hero
Orthogonality test2+ axes orthogonal1 axis orthogonalAll axes match default

Pass 4: Dialogue (15% weight)

Evaluates voice distinctiveness, subtext, and function.

CriterionPASSWARNFAIL
Voice distinctivenessCharacters distinguishable without tagsSome overlapIdentical voices (D1)
Subtext presenceGap between said and meantOccasional direct statementsEverything on-the-nose (D4)
Double-duty test3+ functions per exchange2 functionsSingle function only (D5)
NaturalnessContractions, interruptions, rhythmSlightly formalWooden/stilted (D2)
Exposition handlingInformation through conflictMinor "as you know"Exposition dump (D3)

Pass 5: Prose-Style (10% weight)

Evaluates sentence-level craft.

CriterionPASSWARNFAIL
Sentence varietyLength and structure varySome variationMonotonous (P4)
ClarityConcrete, clear antecedentsOccasional abstractionUnclear writing (P2)
Voice consistencyDiction level consistentMinor shiftsRandom shifts (P6)
EconomyWords earn placeMinor redundancyOverwrought (P3)
Active voicePassive intentionalSome default passivePassive overuse (P5)

Composite Scoring

Each pass produces a score from 0-100:

  • All PASS = 100
  • Each WARN = -15
  • Each FAIL = -40

Composite = SUM(pass_score × pass_weight)

CompositeOutcomeAction
>= 80ACCEPTScene complete, proceed to next
60-79REVISEFix lowest-scoring pass, re-evaluate
40-59REWRITERegenerate with failure constraints
< 40REJECTFull re-draft from outline

Iteration Limits

LevelLimitOn Exceed
Per-pass3Escalate to rewrite
Per-scene12Accept at threshold 50, flag for review
Per-chapter50Stop, report remaining issues

Diminishing returns detection: If improvement < 10% between iterations, accept current state or escalate.


Context Accumulation

Maintain across scenes:

Character Voices

After each scene, extract and store:

  • Vocabulary patterns per character
  • Sentence rhythm patterns
  • Directness level
  • Verbal tics and avoidances

Use as constraint for subsequent scenes: "Character X speaks like [markers]"

Plot Threads

Track:

  • Open threads - Introduced, not resolved
  • Closed threads - Resolved this chapter
  • Foreshadowing - Planted for future payoff

Each scene checks:

  • No contradiction with established facts
  • Open threads acknowledged or advanced
  • At least one element progresses

Cliche Avoidances

After cliche-transcendence pass, record:

  • Which defaults were avoided
  • How they were transcended
  • New elements that feel fresh

Use as constraint: "Already transcended [X], maintain freshness"


Progress Tracker

Use the progress tracker template to persist state:

markdown
## Chapter Progress: [Title]
Started: [timestamp]
Current: Scene [N], Pass [M], Iteration [K]

### Scenes
| Scene | Status | Pass | Iterations | Score | Issues |
|-------|--------|------|------------|-------|--------|

### Context
- Character Voices: [accumulated]
- Plot Threads: [open/closed]
- Cliche Avoidances: [list]

### Change Log
- [timestamp] [change]

Revision Strategy

Targeted Fix (score 60-79)

  1. Identify lowest-scoring pass
  2. Extract specific failure criteria
  3. Generate minimal fix addressing that criterion
  4. Re-evaluate that pass + downstream passes
  5. If pass improves, recalculate composite

Rewrite (score 40-59)

  1. Preserve scene goal from outline
  2. Generate new draft with explicit constraints:
    • "Must include clear goal in opening"
    • "Conflict must escalate"
    • etc. based on failures
  3. Re-run full evaluation loop

Reject (score < 40)

  1. Return to outline beat
  2. Re-draft from scratch
  3. Treat as new scene (reset iterations)

Conflict Resolution

When fixing one pass breaks another:

  1. Detect: Re-run all passes after any fix
  2. Compare: Did any pass regress?
  3. Prioritize: Higher-weight pass wins ties
  4. Seek synthesis: Can fix satisfy both?
  5. Accept trade-off: If irreconcilable, accept per hierarchy

Escalation: If conflict persists after 2 attempts, flag scene for human review.


Anti-Patterns

The Infinite Polisher

Pattern: Keeps iterating because one criterion is at WARN. Fix: WARN is acceptable. Accept at threshold after iteration limit.

The Pass Skipper

Pattern: Jumps to prose-style when scene-sequencing failed. Fix: Hard gate on structural passes. FAIL blocks progression.

The Context Amnesiac

Pattern: Each scene drafted in isolation, losing voice and threads. Fix: Explicit context loading before each scene draft.

The Cascade Blind Spot

Pattern: Fixes dialogue, doesn't check if prose-style regressed. Fix: Always re-evaluate current pass + downstream after any fix.

The Silent Failer

Pattern: Hits iteration limit, proceeds without documentation. Fix: Log all limit exits with categorized remaining issues.


Output Persistence

Progress Tracker

  • Location: context/chapter-drafter/[chapter]-progress.md
  • Update: After each scene acceptance
  • Purpose: Resume point if interrupted

Scene Output

  • Location: drafts/[story]/[chapter]/scene-[N].md
  • Update: On scene acceptance
  • Purpose: Accumulated draft prose

Context State

  • Location: context/chapter-drafter/[chapter]-context.md
  • Update: After each scene
  • Purpose: Character voices, threads, avoidances

Integration

Inbound (feeds into chapter-drafter)

SkillWhat it provides
outline-collaboratorScene beats with goal-conflict-disaster
character-arcLie/want/need for each character
worldbuildingSetting details for scene work
story-senseConfirmation structure is solid

Outbound (chapter-drafter produces)

OutputNext step
Draft chapterrevision (for full manuscript revision)
Flagged scenesHuman review
Context stateNext chapter drafting

Example Invocation

Input: Chapter outline with 5 scene beats

Process:

  1. Load outline, confirm prerequisites
  2. Initialize progress tracker
  3. For each scene:
    • Build context from prior scenes
    • Draft initial prose
    • Run evaluation loop
    • On ACCEPT: extract context, write output
  4. Complete: 5 polished scenes, flagged issues documented

Output:

  • 5 scene files in drafts/[story]/[chapter]/
  • Progress tracker showing all iterations
  • Context file for next chapter
  • List of any flagged issues for human review

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Chapter Drafter AI skill do?

Autonomously draft and polish chapters through multi-skill editorial passes. Use when you have a complete outline and want to produce a polished first draft with iterative refinement.

Why use Chapter Drafter on TypingMind?

Because you install it once and use it with any model. Chapter Drafter is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Chapter Drafter in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Chapter Drafter?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Chapter Drafter?

As many as you like. As long as a model supports skills, you can use Chapter Drafter with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Chapter Drafter AI skill free?

Yes. It is published on GitHub by jwynia under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇