diff --git a/templates/drafting.yml b/templates/drafting.yml index 6465b6d..285407a 100644 --- a/templates/drafting.yml +++ b/templates/drafting.yml @@ -1,5 +1,5 @@ name: drafting -description: "Write one chapter in draft-only mode — continuity check, draft prompt, draft, character state extraction, then stop. No editorial pipeline." +description: "Write one chapter in draft-only mode -- continuity check, draft prompt, draft, character state extraction, then stop. No editorial pipeline." debug: true rag_exclude: [business_plan, charter] system: agent_prompt @@ -44,7 +44,7 @@ sections: steps: - type: think hint: | - PASS 0 — BIBLE, CONTINUITY, AND DRAFT PROMPT + PASS 0 -- BIBLE, CONTINUITY, AND DRAFT PROMPT GENRE: {genre_name} | AUDIENCE: {genre_audience} PROSE STYLE GUIDE: {prose_style} @@ -56,16 +56,16 @@ steps: - Ignore future chapters, editorial reviews, roundtables, polish drafts, and any non-chapter artifacts. - Never pull facts from a deliverable whose filename indicates a later chapter than {chapter_ref}. - ╔══════════════════════════════════════════════════════════════════╗ - ║ THE READER KNOWS RULE ║ - ║ You may only use information established in chapters 1 through ║ - ║ {chapter_number}. Stop reading the outline at Chapter ║ - ║ {chapter_number_next}. Characters enter this chapter as they ║ - ║ left chapter {chapter_number_prev} -- not as they end at book ║ - ║ end. ║ - ╚══════════════════════════════════════════════════════════════════╝ + ???????????????????????????????????????????????????????????????????? + ? THE READER KNOWS RULE ? + ? You may only use information established in chapters 1 through ? + ? {chapter_number}. Stop reading the outline at Chapter ? + ? {chapter_number_next}. Characters enter this chapter as they ? + ? left chapter {chapter_number_prev} -- not as they end at book ? + ? end. ? + ???????????????????????????????????????????????????????????????????? - STEP 1 — READ THE OUTLINE (chapters 1 through {chapter_number} ONLY): + STEP 1 -- READ THE OUTLINE (chapters 1 through {chapter_number} ONLY): Look at PROJECT DELIVERABLES for the outline file. STOP at "Chapter {chapter_number_next}:" -- do NOT read beyond. Extract and record: @@ -81,42 +81,42 @@ steps: arc resolution or end-state descriptions. PASS 1 must write every character to their voice profile without exception. - STEP 2 — CHARACTER STATE (as of chapter {chapter_number_prev}): + STEP 2 -- CHARACTER STATE (as of chapter {chapter_number_prev}): Priority order: - 1. RAG asset [character-state] — overrides everything. Record as "LIVE CHARACTER STATE:". + 1. RAG asset [character-state] -- overrides everything. Record as "LIVE CHARACTER STATE:". 2. Established traits from the outline up to chapter {chapter_number_prev} only. Ignore outcomes that happen in later chapters. LOCATION CONTINUITY CHECK (if [character-state] is present): Does this chapter's outline place any character at a location inconsistent with their Location field in [character-state]? - If conflict found — FLAG before drafting: + If conflict found -- FLAG before drafting: "LOCATION CONFLICT: [char] is at [state-location] per last chapter but outline places them at [outline-location]. Resolve by opening in transit or adjusting." - STEP 3 — FIND THE PREVIOUS CHAPTER: + STEP 3 -- FIND THE PREVIOUS CHAPTER: Look at PROJECT DELIVERABLES for the chapter that comes BEFORE this one. If no previous chapter exists (this IS Chapter 1), skip to STEP 5. - STEP 4 — QUOTE THE ENDING: - Copy the LAST 2–3 sentences of the previous chapter here, word for word. + STEP 4 -- QUOTE THE ENDING: + Copy the LAST 2-3 sentences of the previous chapter here, word for word. Label them: "PREVIOUS CHAPTER ENDED WITH: ..." Your new chapter MUST pick up from this exact moment. - STEP 5 — BUILD THE DRAFT PROMPT: + STEP 5 -- BUILD THE DRAFT PROMPT: Write the exact drafting prompt for the next pass. That prompt must include: - CHAPTER: Exact chapter number and title - POV CHARACTER: Whose perspective are we in? - FIRST LINE: The exact opening sentence, continuing from the previous ending - EMOTIONAL ARC: What does the protagonist feel at start vs end OF THIS CHAPTER? - CHAPTER GOAL: What plot event MUST happen here? - - KEY BEATS: 3–5 numbered scene beats that will form the chapter + - KEY BEATS: 3-5 numbered scene beats that will form the chapter - CLOSING HOOK: Exact last image or line that makes readers continue - Reminders about continuity, prose style, and target length Also note any Active obligations, Open loops, or Known secrets from [character-state] that should be honored or advanced in this chapter. - Check RAG for [world-state] — current NPC attitudes and faction memory. + Check RAG for [world-state] -- current NPC attitudes and faction memory. If present, record as "LIVE WORLD STATE:". NPCs listed there behave per their attitude. Stop here. Output ONLY the draft prompt. Do NOT write chapter prose yet. @@ -124,31 +124,31 @@ steps: - type: think model: power hint: | - PASS 1 — WRITE THE DRAFT + PASS 1 -- WRITE THE DRAFT Use the draft prompt below as your exact writing brief: {steps[0].text} Requirements: - - Start with the FIRST LINE you planned — make it continue naturally from the previous chapter + - Start with the FIRST LINE you planned -- make it continue naturally from the previous chapter - If the draft prompt contains a line starting with "LOCKED PREVIOUS CHAPTER HOOK:", your FIRST LINE MUST directly resolve that hook - If the draft prompt contains "AUTHOR'S INTENT:", treat it as a binding directive - Follow the KEY BEATS in order, but write with full scene depth - All character names must be consistent with the bible/outline - Every dialogue exchange must be tight and voice-distinct - - Show, don't tell — externalize emotion through action, detail, and dialogue + - Show, don't tell -- externalize emotion through action, detail, and dialogue - Every scene beat moves the story forward OR reveals character - End with the CLOSING HOOK you planned - Match the prose style guide: {prose_style} - - Target length: {chapter_target_words} words — write the FULL chapter, not a summary - - ⚠️ DO NOT stop early. If under {chapter_target_words} words, continue with interiority, + - Target length: {chapter_target_words} words -- write the FULL chapter, not a summary + - ?? DO NOT stop early. If under {chapter_target_words} words, continue with interiority, sensory detail, extended dialogue beats, and transitions until hitting the target. - VOICE ANTI-PATTERNS — FORBIDDEN ON EVERY PAGE: + VOICE ANTI-PATTERNS -- FORBIDDEN ON EVERY PAGE: - Do NOT open with the "didn't just X; it Y" construction. Use varied openers. - - Thematic contrast appears max ONCE per scene as metaphor — not every paragraph. + - Thematic contrast appears max ONCE per scene as metaphor -- not every paragraph. - Do NOT label an emotion already shown through action or dialogue. - Do NOT count or reference chapter numbers in the prose. "Five chapters of..." is an AI fingerprint. - Each character must have at least ONE verbal imperfection per scene they appear in. @@ -161,24 +161,24 @@ steps: - type: think hint: | - PASS 3 — CHARACTER + WORLD STATE EXTRACTION + PASS 3 -- CHARACTER + WORLD STATE EXTRACTION You have just completed the chapter draft. Extract structured state for continuity tracking. - Write in compact format — this content is stored as a RAG asset read by the NEXT chapter. + Write in compact format -- this content is stored as a RAG asset read by the NEXT chapter. Every character who appeared must have an entry. - OUTPUT FORMAT — write this EXACTLY, filling in real values: + OUTPUT FORMAT -- write this EXACTLY, filling in real values: # Character State: {chapter_ref} ## [Character Name] - Location: [specific location — building, floor, city — no vague "nearby"] + Location: [specific location -- building, floor, city -- no vague "nearby"] Physical: [injuries, fatigue, notable physical state, or "no injuries"] Emotional: [dominant emotion at chapter end; what they carry into next chapter] - Active obligations: [debts/promises owed — format: "owes [person] [what] (Ch[N]) — UNPAID/PAID"] - Open loops: [unresolved conflicts — format: "[parties] [issue] (Ch[N]) — UNRESOLVED/RESOLVED"] - Known secrets: [info this character has that others don't — "knows [what] — [who does NOT know]"] - Arc: [XX%] — [one sentence: what permanently changed, or "no change"] + Active obligations: [debts/promises owed -- format: "owes [person] [what] (Ch[N]) -- UNPAID/PAID"] + Open loops: [unresolved conflicts -- format: "[parties] [issue] (Ch[N]) -- UNRESOLVED/RESOLVED"] + Known secrets: [info this character has that others don't -- "knows [what] -- [who does NOT know]"] + Arc: [XX%] -- [one sentence: what permanently changed, or "no change"] Permanent: [YES if something permanently changed (death, power gained/lost, relationship changed); NO otherwise] (Repeat for EVERY named character who appeared in this chapter) @@ -186,16 +186,16 @@ steps: # World State: {chapter_ref} ## NPC Memory - - [NPC Name] ([faction/location]): [ATTITUDE] — [what happened] — [behavioral consequence] + - [NPC Name] ([faction/location]): [ATTITUDE] -- [what happened] -- [behavioral consequence] ## Faction Attitudes - - [Faction name]: [current attitude toward protagonists] — [reason] + - [Faction name]: [current attitude toward protagonists] -- [reason] ## Active World Events - [Event]: [status and expected timeline] CRITICAL: Keep total output under 3500 characters. Be precise and specific. - Do NOT write prose — only the structured data above. + Do NOT write prose -- only the structured data above. - type: rag_write asset_id: "character-state"