scriveno 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +222 -0
  3. package/agents/continuity-checker.md +85 -0
  4. package/agents/drafter.md +248 -0
  5. package/agents/plan-checker.md +209 -0
  6. package/agents/researcher.md +114 -0
  7. package/agents/translator.md +204 -0
  8. package/agents/voice-checker.md +154 -0
  9. package/bin/install.js +1620 -0
  10. package/commands/scr/add-note.md +51 -0
  11. package/commands/scr/add-unit.md +101 -0
  12. package/commands/scr/art-direction.md +225 -0
  13. package/commands/scr/autopilot-publish.md +210 -0
  14. package/commands/scr/autopilot-translate.md +237 -0
  15. package/commands/scr/autopilot.md +200 -0
  16. package/commands/scr/back-matter.md +630 -0
  17. package/commands/scr/back-translate.md +197 -0
  18. package/commands/scr/beta-reader.md +97 -0
  19. package/commands/scr/blurb.md +149 -0
  20. package/commands/scr/book-proposal.md +210 -0
  21. package/commands/scr/build-ebook.md +448 -0
  22. package/commands/scr/build-poetry-submission.md +202 -0
  23. package/commands/scr/build-print.md +598 -0
  24. package/commands/scr/build-smashwords.md +171 -0
  25. package/commands/scr/build-world.md +158 -0
  26. package/commands/scr/cast-list.md +104 -0
  27. package/commands/scr/chapter-header.md +158 -0
  28. package/commands/scr/character-arc.md +108 -0
  29. package/commands/scr/character-ref.md +160 -0
  30. package/commands/scr/character-sheet.md +143 -0
  31. package/commands/scr/character-touch.md +157 -0
  32. package/commands/scr/character-voice-sample.md +111 -0
  33. package/commands/scr/check-notes.md +50 -0
  34. package/commands/scr/cleanup.md +159 -0
  35. package/commands/scr/compare.md +112 -0
  36. package/commands/scr/complete-draft.md +49 -0
  37. package/commands/scr/continuity-check.md +129 -0
  38. package/commands/scr/copy-edit.md +118 -0
  39. package/commands/scr/cover-art.md +382 -0
  40. package/commands/scr/cultural-adaptation.md +177 -0
  41. package/commands/scr/demo.md +93 -0
  42. package/commands/scr/dialogue-audit.md +143 -0
  43. package/commands/scr/discuss.md +118 -0
  44. package/commands/scr/discussion-questions.md +129 -0
  45. package/commands/scr/do.md +68 -0
  46. package/commands/scr/draft.md +97 -0
  47. package/commands/scr/editor-review.md +466 -0
  48. package/commands/scr/export.md +942 -0
  49. package/commands/scr/fast.md +65 -0
  50. package/commands/scr/front-matter.md +696 -0
  51. package/commands/scr/health.md +113 -0
  52. package/commands/scr/help.md +121 -0
  53. package/commands/scr/history.md +92 -0
  54. package/commands/scr/illustrate-scene.md +211 -0
  55. package/commands/scr/import.md +95 -0
  56. package/commands/scr/insert-unit.md +108 -0
  57. package/commands/scr/line-edit.md +146 -0
  58. package/commands/scr/manager.md +77 -0
  59. package/commands/scr/manuscript-stats.md +139 -0
  60. package/commands/scr/map-illustration.md +213 -0
  61. package/commands/scr/map-manuscript.md +134 -0
  62. package/commands/scr/merge-units.md +136 -0
  63. package/commands/scr/multi-publish.md +344 -0
  64. package/commands/scr/new-character.md +167 -0
  65. package/commands/scr/new-revision.md +50 -0
  66. package/commands/scr/new-work.md +148 -0
  67. package/commands/scr/next.md +125 -0
  68. package/commands/scr/originality-check.md +170 -0
  69. package/commands/scr/outline.md +131 -0
  70. package/commands/scr/pacing-analysis.md +170 -0
  71. package/commands/scr/panel-layout.md +225 -0
  72. package/commands/scr/pause-work.md +88 -0
  73. package/commands/scr/plan.md +112 -0
  74. package/commands/scr/plant-seed.md +57 -0
  75. package/commands/scr/plot-graph.md +199 -0
  76. package/commands/scr/polish.md +141 -0
  77. package/commands/scr/profile-writer.md +154 -0
  78. package/commands/scr/progress.md +51 -0
  79. package/commands/scr/publish.md +455 -0
  80. package/commands/scr/query-letter.md +183 -0
  81. package/commands/scr/quick-write.md +82 -0
  82. package/commands/scr/relationship-map.md +129 -0
  83. package/commands/scr/remove-unit.md +120 -0
  84. package/commands/scr/reorder-units.md +126 -0
  85. package/commands/scr/resume-work.md +97 -0
  86. package/commands/scr/sacred/annotation-layer.md +105 -0
  87. package/commands/scr/sacred/chronology.md +121 -0
  88. package/commands/scr/sacred/concordance.md +88 -0
  89. package/commands/scr/sacred/cross-reference.md +97 -0
  90. package/commands/scr/sacred/doctrinal-check.md +129 -0
  91. package/commands/scr/sacred/genealogy.md +107 -0
  92. package/commands/scr/sacred/source-tracking.md +101 -0
  93. package/commands/scr/sacred/verse-numbering.md +103 -0
  94. package/commands/scr/sacred-numbering-format.md +103 -0
  95. package/commands/scr/save.md +109 -0
  96. package/commands/scr/scan.md +291 -0
  97. package/commands/scr/sensitivity-review.md +169 -0
  98. package/commands/scr/series-bible.md +127 -0
  99. package/commands/scr/session-report.md +80 -0
  100. package/commands/scr/settings.md +58 -0
  101. package/commands/scr/split-unit.md +123 -0
  102. package/commands/scr/spread-layout.md +187 -0
  103. package/commands/scr/storyboard.md +262 -0
  104. package/commands/scr/subject-touch.md +168 -0
  105. package/commands/scr/submit.md +50 -0
  106. package/commands/scr/subplot-map.md +147 -0
  107. package/commands/scr/sync.md +116 -0
  108. package/commands/scr/synopsis.md +137 -0
  109. package/commands/scr/theme-tracker.md +128 -0
  110. package/commands/scr/thread.md +83 -0
  111. package/commands/scr/timeline.md +141 -0
  112. package/commands/scr/track.md +564 -0
  113. package/commands/scr/translate.md +260 -0
  114. package/commands/scr/translation-glossary.md +298 -0
  115. package/commands/scr/translation-memory.md +310 -0
  116. package/commands/scr/troubleshoot.md +59 -0
  117. package/commands/scr/undo.md +106 -0
  118. package/commands/scr/validate.md +133 -0
  119. package/commands/scr/versions.md +94 -0
  120. package/commands/scr/voice-check.md +133 -0
  121. package/commands/scr/voice-test.md +68 -0
  122. package/data/CONSTRAINTS.json +1606 -0
  123. package/data/demo/.manuscript/BRIEF.md +37 -0
  124. package/data/demo/.manuscript/CHARACTERS.md +90 -0
  125. package/data/demo/.manuscript/OUTLINE.md +46 -0
  126. package/data/demo/.manuscript/PLOT-GRAPH.md +75 -0
  127. package/data/demo/.manuscript/STATE.md +44 -0
  128. package/data/demo/.manuscript/STYLE-GUIDE.md +119 -0
  129. package/data/demo/.manuscript/THEMES.md +51 -0
  130. package/data/demo/.manuscript/WORK.md +51 -0
  131. package/data/demo/.manuscript/config.json +59 -0
  132. package/data/demo/.manuscript/drafts/body/1-the-letter-DRAFT.md +51 -0
  133. package/data/demo/.manuscript/drafts/body/2-the-workshop-DRAFT.md +51 -0
  134. package/data/demo/.manuscript/drafts/body/3-the-pier-DRAFT.md +45 -0
  135. package/data/demo/.manuscript/drafts/body/4-the-clock-DRAFT.md +59 -0
  136. package/data/demo/.manuscript/plans/5-the-reunion-PLAN.md +52 -0
  137. package/data/demo/.manuscript/reviews/2-the-workshop-REVIEW.md +61 -0
  138. package/data/export-templates/scriveno-academic.latex +184 -0
  139. package/data/export-templates/scriveno-acm.latex +67 -0
  140. package/data/export-templates/scriveno-apa7.latex +83 -0
  141. package/data/export-templates/scriveno-book.typst +175 -0
  142. package/data/export-templates/scriveno-chapbook.typst +121 -0
  143. package/data/export-templates/scriveno-elsevier.latex +76 -0
  144. package/data/export-templates/scriveno-epub.css +386 -0
  145. package/data/export-templates/scriveno-fixed-layout-epub.css +76 -0
  146. package/data/export-templates/scriveno-fixed-layout.opf +23 -0
  147. package/data/export-templates/scriveno-ieee.latex +77 -0
  148. package/data/export-templates/scriveno-lncs.latex +79 -0
  149. package/data/export-templates/scriveno-picturebook.typst +113 -0
  150. package/data/export-templates/scriveno-poetry-submission-styles.md +45 -0
  151. package/data/export-templates/scriveno-poetry-submission.docx +0 -0
  152. package/data/export-templates/scriveno-smashwords-styles.md +45 -0
  153. package/data/export-templates/scriveno-smashwords.docx +0 -0
  154. package/data/export-templates/scriveno-stageplay.typst +129 -0
  155. package/data/proof/creative-context/README.md +79 -0
  156. package/data/proof/voice-dna/GUIDED-SAMPLE.md +19 -0
  157. package/data/proof/voice-dna/README.md +45 -0
  158. package/data/proof/voice-dna/STYLE-GUIDE-EXCERPT.md +43 -0
  159. package/data/proof/voice-dna/UNGUIDED-SAMPLE.md +11 -0
  160. package/data/proof/watchmaker-flow/README.md +78 -0
  161. package/docs/architecture.md +425 -0
  162. package/docs/command-reference.md +2384 -0
  163. package/docs/configuration.md +228 -0
  164. package/docs/context-protocol.md +81 -0
  165. package/docs/contributing.md +430 -0
  166. package/docs/creative-context.md +158 -0
  167. package/docs/development.md +152 -0
  168. package/docs/drafter-quality.md +127 -0
  169. package/docs/getting-started.md +198 -0
  170. package/docs/history-protocol.md +96 -0
  171. package/docs/proof-artifacts.md +56 -0
  172. package/docs/publishing.md +296 -0
  173. package/docs/release-notes.md +457 -0
  174. package/docs/runtime-support.md +77 -0
  175. package/docs/sacred-texts.md +296 -0
  176. package/docs/shipped-assets.md +129 -0
  177. package/docs/testing.md +156 -0
  178. package/docs/translation.md +343 -0
  179. package/docs/voice-dna.md +297 -0
  180. package/docs/work-types.md +339 -0
  181. package/lib/architectural-profiles.js +134 -0
  182. package/package.json +54 -0
  183. package/templates/BRIEF.md +51 -0
  184. package/templates/CHARACTERS.md +64 -0
  185. package/templates/CONTEXT.md +56 -0
  186. package/templates/OUTLINE.md +36 -0
  187. package/templates/RECORD.md +68 -0
  188. package/templates/STATE.md +50 -0
  189. package/templates/STYLE-GUIDE.md +121 -0
  190. package/templates/THEMES.md +36 -0
  191. package/templates/WORK.md +67 -0
  192. package/templates/WORLD.md +62 -0
  193. package/templates/WRITING-RULES.md +156 -0
  194. package/templates/academic/ARGUMENT-MAP.md +40 -0
  195. package/templates/academic/CONCEPTS.md +34 -0
  196. package/templates/academic/CONTEXT.md +29 -0
  197. package/templates/academic/PROPOSAL.md +37 -0
  198. package/templates/academic/QUESTIONS.md +24 -0
  199. package/templates/config.json +72 -0
  200. package/templates/pitfalls/comic.md +54 -0
  201. package/templates/pitfalls/commentary.md +62 -0
  202. package/templates/pitfalls/memoir.md +48 -0
  203. package/templates/pitfalls/novel.md +53 -0
  204. package/templates/pitfalls/poetry_collection.md +63 -0
  205. package/templates/pitfalls/research_paper.md +66 -0
  206. package/templates/pitfalls/runbook.md +64 -0
  207. package/templates/pitfalls/screenplay.md +54 -0
  208. package/templates/platforms/README.md +16 -0
  209. package/templates/platforms/apple/manifest.yaml +20 -0
  210. package/templates/platforms/bn/manifest.yaml +20 -0
  211. package/templates/platforms/d2d/manifest.yaml +20 -0
  212. package/templates/platforms/google/manifest.yaml +20 -0
  213. package/templates/platforms/ingram/manifest.yaml +44 -0
  214. package/templates/platforms/kdp/manifest.yaml +42 -0
  215. package/templates/platforms/kobo/manifest.yaml +20 -0
  216. package/templates/platforms/smashwords/manifest.yaml +26 -0
  217. package/templates/sacred/COSMOLOGY.md +88 -0
  218. package/templates/sacred/DOCTRINES.md +45 -0
  219. package/templates/sacred/FIGURES.md +69 -0
  220. package/templates/sacred/FRAMEWORK.md +98 -0
  221. package/templates/sacred/LINEAGES.md +52 -0
  222. package/templates/sacred/README.md +20 -0
  223. package/templates/sacred/THEOLOGICAL-ARC.md +69 -0
  224. package/templates/sacred/catholic/manifest.yaml +93 -0
  225. package/templates/sacred/islamic-hafs/manifest.yaml +134 -0
  226. package/templates/sacred/islamic-warsh/manifest.yaml +134 -0
  227. package/templates/sacred/jewish/manifest.yaml +56 -0
  228. package/templates/sacred/orthodox/manifest.yaml +98 -0
  229. package/templates/sacred/pali/manifest.yaml +20 -0
  230. package/templates/sacred/protestant/manifest.yaml +86 -0
  231. package/templates/sacred/sanskrit/manifest.yaml +20 -0
  232. package/templates/sacred/tewahedo/manifest.yaml +106 -0
  233. package/templates/sacred/tibetan/manifest.yaml +20 -0
  234. package/templates/technical/AUDIENCE.md +26 -0
  235. package/templates/technical/DEPENDENCIES.md +19 -0
  236. package/templates/technical/DOC-BRIEF.md +45 -0
  237. package/templates/technical/PROCEDURES.md +37 -0
  238. package/templates/technical/REFERENCES.md +36 -0
  239. package/templates/technical/SYSTEM.md +25 -0
@@ -0,0 +1,51 @@
1
+ ---
2
+ description: Add a quick note or reminder to the project notes file.
3
+ argument-hint: "<note text>"
4
+ ---
5
+
6
+ # Add Note
7
+
8
+ You are adding a quick note to the project's notes file.
9
+
10
+ ## What to do
11
+
12
+ 1. Take the note text from the argument
13
+ 2. Open `.manuscript/NOTES.md` (create it if it doesn't exist)
14
+ 3. If creating: add header `# Project Notes\n\n`
15
+ 4. Append the note with a timestamp:
16
+ ```
17
+ - [2026-04-07 14:30] Note text here
18
+ ```
19
+ 5. Save the file
20
+ 6. Confirm: "Note added."
21
+
22
+ ## Format
23
+
24
+ Each note is a bullet point with an ISO-style timestamp (date + time, no seconds). Notes are appended in chronological order -- newest at the bottom.
25
+
26
+ ## Response Contract
27
+
28
+ Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
29
+
30
+ Use this format:
31
+
32
+ ```markdown
33
+ Next commands:
34
+ - `/scr:...`: One short sentence explaining what this path will do.
35
+ - `/scr:...`: One short sentence explaining what this alternate path will do.
36
+ ```
37
+
38
+ If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
39
+
40
+ If the writer seems unsure or no specific next command is obvious, include this default option:
41
+
42
+ ```markdown
43
+ Next commands:
44
+ - `/scr:next`: Inspect the project state and choose the right next step.
45
+ ```
46
+
47
+ If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
48
+
49
+ ## Tone
50
+
51
+ Minimal. Just confirm. The writer is jotting something down quickly and wants to get back to work.
@@ -0,0 +1,101 @@
1
+ ---
2
+ description: Add a new unit to the end of the outline.
3
+ argument-hint: "[title]"
4
+ ---
5
+
6
+ # /scr:add-unit -- Add New Unit
7
+
8
+ Add a new structural unit to the end of the outline.
9
+
10
+ ## Usage
11
+ ```
12
+ /scr:add-unit [title]
13
+ ```
14
+
15
+ ## Instruction
16
+
17
+ You are a structure management assistant. Load:
18
+ - `.manuscript/config.json` (to get `work_type`)
19
+ - Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) (to find `work_types[work_type].hierarchy` and determine unit terminology)
20
+ - `.manuscript/OUTLINE.md` (current structural outline)
21
+ - `.manuscript/STATE.md` (progress tracking)
22
+
23
+ **Work-type adaptation:** Determine the correct unit name from CONSTRAINTS.json hierarchy:
24
+ - Novel: "chapter" (hierarchy.mid)
25
+ - Screenplay: "scene" (hierarchy.atomic) or "act" (hierarchy.top)
26
+ - Short story: "section" (hierarchy.mid)
27
+ - Scripture (Biblical): "chapter" (hierarchy.mid)
28
+ - Use `command_unit` from CONSTRAINTS.json as the default unit level
29
+
30
+ Use the adapted unit terminology throughout all output and prompts.
31
+
32
+ ---
33
+
34
+ ### ADD UNIT FLOW
35
+
36
+ <add_unit>
37
+ 1. **Resolve unit type** from CONSTRAINTS.json `work_types[work_type].hierarchy`
38
+ - Use `command_unit` to determine which level of the hierarchy this command operates on
39
+ - Display the resolved unit type to the writer: "Adding a new [chapter/scene/section/etc.]"
40
+
41
+ 2. **Prompt for details** (if not provided via argument):
42
+ - Title (required)
43
+ - Brief summary (1-2 sentences describing the unit's purpose)
44
+ - Placement in arc (if `.manuscript/PLOT-GRAPH.md` or adapted equivalent exists):
45
+ ask which arc position this unit occupies (e.g., "rising action", "climax approach")
46
+
47
+ 3. **Check for draft safety** (D-07):
48
+ - Scan `.manuscript/drafts/body/` for existing draft files
49
+ - Adding to the end should not affect existing drafts, but verify numbering continuity
50
+ - If the new unit number conflicts with any existing file naming, warn the writer
51
+
52
+ 4. **Update OUTLINE.md:**
53
+ - Append the new unit to the end of the unit list section
54
+ - Assign the next sequential number
55
+ - Include the title and summary
56
+ - Update the "High-level structure" section if the unit count changes structural boundaries
57
+
58
+ 5. **Update related files:**
59
+ - Update `.manuscript/STATE.md` to reflect the new unit (status: pending)
60
+ - If PLOT-GRAPH.md (or adapted equivalent) exists, suggest adding the new unit to an arc position
61
+
62
+ 6. **Confirm to writer:**
63
+ - Show the updated outline structure with the new unit highlighted
64
+ - Display the new unit's number, title, and position
65
+ </add_unit>
66
+
67
+ Commit: `structure: add {unit_type} "{title}"`
68
+
69
+ ## Edge Cases
70
+
71
+ - **No OUTLINE.md:** Prompt the writer to run `/scr:plan` first or `/scr:new-work` to initialize the project.
72
+ - **Empty outline:** Add as the first unit (number 1).
73
+ - **Work type with no mid hierarchy:** Use the atomic level instead (e.g., flash_fiction uses "beat").
74
+ - **Title not provided:** Ask the writer for a title before proceeding.
75
+
76
+ ## Response Contract
77
+
78
+ Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
79
+
80
+ Use this format:
81
+
82
+ ```markdown
83
+ Next commands:
84
+ - `/scr:...`: One short sentence explaining what this path will do.
85
+ - `/scr:...`: One short sentence explaining what this alternate path will do.
86
+ ```
87
+
88
+ If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
89
+
90
+ If the writer seems unsure or no specific next command is obvious, include this default option:
91
+
92
+ ```markdown
93
+ Next commands:
94
+ - `/scr:next`: Inspect the project state and choose the right next step.
95
+ ```
96
+
97
+ If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
98
+
99
+ ## Tone
100
+
101
+ Efficient and supportive. Adding a unit is a positive creative moment -- acknowledge it briefly without being effusive.
@@ -0,0 +1,225 @@
1
+ ---
2
+ description: Generate or refine the visual style bible for illustrations and cover art.
3
+ argument-hint: "[--refine]"
4
+ ---
5
+
6
+ # /scr:art-direction -- Visual Style Bible
7
+
8
+ Generate or refine ART-DIRECTION.md, the visual style bible that governs all illustration and cover art for the project.
9
+
10
+ ## Usage
11
+ ```
12
+ /scr:art-direction [--refine]
13
+ ```
14
+
15
+ ## Instruction
16
+
17
+ You are creating the project's visual style bible. Load:
18
+ - `.manuscript/config.json` (to get `work_type`, `genre`)
19
+ - Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) (to check `commands.art-direction.available` and `commands.art-direction.hidden`)
20
+ - `.manuscript/WORK.md` (genre, premise, tone, setting context)
21
+ - `.manuscript/CHARACTERS.md` or `.manuscript/FIGURES.md` (per `file_adaptations` for sacred work types) for character physical descriptions
22
+ - `.manuscript/WORLD.md` or `.manuscript/COSMOLOGY.md` (per `file_adaptations`) if it exists, for setting descriptions
23
+ - `.manuscript/illustrations/ART-DIRECTION.md` if it exists (for refine mode)
24
+
25
+ **Check availability:**
26
+
27
+ Look up the current work type's group in CONSTRAINTS.json. If the group is in `commands.art-direction.hidden`, inform the writer:
28
+
29
+ > Art direction is not available for [work_type] projects.
30
+
31
+ Then **stop**.
32
+
33
+ ---
34
+
35
+ ### INITIAL MODE (no existing ART-DIRECTION.md)
36
+
37
+ <art_direction_initial>
38
+ No visual style bible exists yet. Ask 3-4 seed questions to establish the visual identity:
39
+
40
+ 1. **Art style:** "What visual style do you envision? (realistic, stylized, watercolor, ink, digital painting, minimalist, comic/graphic, mixed media, or describe your own)"
41
+
42
+ 2. **Mood and tone:** "What's the visual mood? (warm and inviting, dark and atmospheric, bright and energetic, muted and contemplative, high-contrast dramatic, dreamy and ethereal)"
43
+
44
+ 3. **Color preferences:** "Do you have any color preferences or palette direction? (warm earth tones, cool blues/grays, vibrant saturated colors, monochromatic, specific colors that represent the story)"
45
+
46
+ 4. **Reference art or artists:** "Are there any artists, art styles, book covers, or visual references that capture the feel you want? (e.g., 'Moebius-style linework', 'Studio Ghibli palette', 'Edward Hopper lighting', or 'no specific reference')"
47
+
48
+ Wait for answers. Do not proceed until the writer responds.
49
+
50
+ After receiving answers, generate `.manuscript/illustrations/ART-DIRECTION.md` with the following sections:
51
+
52
+ ```markdown
53
+ # ART-DIRECTION
54
+
55
+ Visual style bible for [title from config.json].
56
+
57
+ ## Visual Style
58
+
59
+ [Art style direction based on seed answers. Describe the overall aesthetic: realistic, stylized, watercolor, ink, digital, etc. Include rendering approach, level of detail, and artistic intent.]
60
+
61
+ ## Color Palette
62
+
63
+ [Mood-based, season-based, or character-coded palettes with hex values.]
64
+
65
+ | Role | Color | Hex | Usage |
66
+ |------|-------|-----|-------|
67
+ | Primary | [color] | #XXXXXX | [main scenes, dominant mood] |
68
+ | Secondary | [color] | #XXXXXX | [supporting elements] |
69
+ | Accent | [color] | #XXXXXX | [highlights, focal points] |
70
+ | Shadow | [color] | #XXXXXX | [dark areas, contrast] |
71
+ | Highlight | [color] | #XXXXXX | [light sources, emphasis] |
72
+
73
+ ### Mood-Based Palette Variations
74
+ - **Tension/Conflict:** [palette shift]
75
+ - **Peace/Resolution:** [palette shift]
76
+ - **Mystery/Unknown:** [palette shift]
77
+
78
+ ## Composition Preferences
79
+
80
+ [Composition approach: dynamic, static, symmetrical, rule-of-thirds, golden ratio, diagonal, etc. Include framing preferences, depth of field approach, and perspective choices.]
81
+
82
+ - **Default framing:** [e.g., rule-of-thirds with subject off-center]
83
+ - **Action scenes:** [e.g., dynamic diagonals, motion blur]
84
+ - **Quiet moments:** [e.g., centered, symmetrical, breathing room]
85
+ - **Perspective:** [e.g., eye-level for intimacy, bird's-eye for scope]
86
+
87
+ ## Reference Artists / Styles
88
+
89
+ [Suggested reference artists matching the genre/mood from the writer's input and the work's tone.]
90
+
91
+ | Artist / Style | What to Reference | What to Avoid |
92
+ |----------------|-------------------|---------------|
93
+ | [artist/style] | [specific quality] | [specific quality] |
94
+
95
+ ## Per-Character Visual Specs
96
+
97
+ [Pulled from CHARACTERS.md / FIGURES.md. For each major character:]
98
+
99
+ ### [Character Name]
100
+ - **Appearance:** [physical description from character file]
101
+ - **Clothing/Style:** [wardrobe, accessories, signature items]
102
+ - **Expressions:** [default expression, emotional range to depict]
103
+ - **Color association:** [character-specific color from palette]
104
+ - **Visual motifs:** [recurring visual elements tied to this character]
105
+
106
+ ## Per-Setting Visual Specs
107
+
108
+ [Pulled from WORLD.md / COSMOLOGY.md if available. For each key setting:]
109
+
110
+ ### [Setting Name]
111
+ - **Lighting:** [natural, artificial, time of day, quality of light]
112
+ - **Atmosphere:** [clear, hazy, foggy, dust-filled, rain-soaked]
113
+ - **Key details:** [architectural style, vegetation, textures, materials]
114
+ - **Color temperature:** [warm, cool, neutral, mixed]
115
+ - **Mood:** [how this place should feel visually]
116
+
117
+ ## Consistency Rules
118
+
119
+ - **Object proportions:** [scale relationships, character heights relative to environment]
120
+ - **Recurring visual motifs:** [symbols, patterns, objects that appear across illustrations]
121
+ - **Typography style:** [if text appears in illustrations -- font family, weight, style]
122
+ - **Border/frame treatment:** [if illustrations use borders, vignettes, or full-bleed]
123
+ - **Negative space:** [approach to empty space in compositions]
124
+ ```
125
+
126
+ Populate each section using:
127
+ - Seed question answers for style, mood, color, and references
128
+ - CHARACTERS.md / FIGURES.md for per-character visual specs (physical descriptions, clothing, mannerisms)
129
+ - WORLD.md / COSMOLOGY.md for per-setting visual specs (locations, atmosphere, lighting)
130
+ - WORK.md genre and tone for overall aesthetic direction
131
+ - config.json work_type for genre-appropriate defaults
132
+
133
+ If CHARACTERS.md/FIGURES.md is empty or missing, include the Per-Character section with a note:
134
+ > No characters defined yet. Run `/scr:new-character` to add characters, then re-run `/scr:art-direction --refine` to update visual specs.
135
+
136
+ If WORLD.md/COSMOLOGY.md does not exist, include the Per-Setting section with a note:
137
+ > No world document found. Run `/scr:build-world` to create one, then re-run `/scr:art-direction --refine` to update setting specs.
138
+
139
+ Create the output directory if needed:
140
+ ```bash
141
+ mkdir -p .manuscript/illustrations
142
+ ```
143
+
144
+ Save to `.manuscript/illustrations/ART-DIRECTION.md`.
145
+
146
+ Commit: `art-direction: create visual style bible`
147
+
148
+ After saving, tell the writer:
149
+ > Your visual style bible is ready at `.manuscript/illustrations/ART-DIRECTION.md`. Other illustration commands (`/scr:cover-art`, `/scr:illustrate-scene`, `/scr:character-ref`) will reference this for visual consistency.
150
+ >
151
+ > To update any section: `/scr:art-direction --refine`
152
+ </art_direction_initial>
153
+
154
+ ---
155
+
156
+ ### REFINE MODE (--refine or ART-DIRECTION.md exists)
157
+
158
+ <art_direction_refine>
159
+ Load the existing `.manuscript/illustrations/ART-DIRECTION.md`.
160
+
161
+ Present a summary of current settings:
162
+ - Visual style
163
+ - Color palette (primary colors)
164
+ - Composition approach
165
+ - Number of characters with visual specs
166
+ - Number of settings with visual specs
167
+
168
+ Ask: "What would you like to update? (visual style, color palette, composition, references, character specs, setting specs, consistency rules, or describe what you want to change)"
169
+
170
+ After the writer responds:
171
+ 1. Update the specified section(s) in ART-DIRECTION.md
172
+ 2. Preserve all unchanged sections exactly as they are
173
+ 3. If updating character specs, re-read CHARACTERS.md/FIGURES.md for latest data
174
+ 4. If updating setting specs, re-read WORLD.md/COSMOLOGY.md for latest data
175
+ 5. Save the updated file
176
+
177
+ Commit: `art-direction: refine [section updated]`
178
+ </art_direction_refine>
179
+
180
+ ---
181
+
182
+ ### Prompt Output Format (D-01)
183
+
184
+ All visual prompts generated or referenced by this style bible follow the structured format:
185
+
186
+ - **Subject:** What is depicted (characters, objects, scene)
187
+ - **Composition:** Framing, perspective, focal point, negative space
188
+ - **Style:** Art style, rendering technique, level of detail
189
+ - **Color Palette:** Dominant colors, mood colors, hex references from ART-DIRECTION.md
190
+ - **Mood:** Emotional tone, atmosphere, time of day
191
+ - **Technical Specs:** Dimensions, DPI, format requirements (when applicable)
192
+
193
+ This format ensures prompts are copy-pasteable to any AI image generation tool (GPT Image, Stable Diffusion, Midjourney, etc.).
194
+
195
+ ---
196
+
197
+ ### Edge Cases
198
+
199
+ - **Sacred work type:** Use FIGURES.md instead of CHARACTERS.md; use COSMOLOGY.md instead of WORLD.md. Adapt visual language for sacred art traditions (iconographic style, liturgical colors, sacred geometry)
200
+ - **Work type hidden:** If work type group is in `commands.art-direction.hidden` (script, academic, poetry, speech_song), explain unavailability and stop
201
+ - **No genre in config.json:** Ask the writer about visual mood directly rather than inferring from genre
202
+ - **Existing ART-DIRECTION.md without --refine flag:** Detect existing file and enter refine mode automatically (no need to force --refine)
203
+
204
+ ## Response Contract
205
+
206
+ Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
207
+
208
+ Use this format:
209
+
210
+ ```markdown
211
+ Next commands:
212
+ - `/scr:...`: One short sentence explaining what this path will do.
213
+ - `/scr:...`: One short sentence explaining what this alternate path will do.
214
+ ```
215
+
216
+ If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
217
+
218
+ If the writer seems unsure or no specific next command is obvious, include this default option:
219
+
220
+ ```markdown
221
+ Next commands:
222
+ - `/scr:next`: Inspect the project state and choose the right next step.
223
+ ```
224
+
225
+ If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
@@ -0,0 +1,210 @@
1
+ ---
2
+ description: "Run full publishing pipeline unattended with quality gate (voice-check + continuity-check)."
3
+ argument-hint: "--preset <preset> [--front-level <minimum|balanced|maximum|skip>] [--back-level <minimum|balanced|maximum|skip>]"
4
+ ---
5
+
6
+ # /scr:autopilot-publish -- Unattended Publishing Pipeline
7
+
8
+ You are running the full publishing pipeline autonomously. Your job is to run quality checks, auto-generate any missing prerequisites, execute the preset pipeline, and report results -- all without asking the writer questions.
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /scr:autopilot-publish --preset <preset>
14
+ ```
15
+
16
+ The `--preset` argument is **required**. There is no interactive mode in autopilot -- the writer must specify their destination upfront. Valid presets: `kdp-paperback`, `kdp-ebook`, `query-submission`, `ebook-wide`, `ingram-paperback`, `academic-submission`, `thesis-defense`, `screenplay-query`, `share-pdf`, `share-docx`, `share-epub`, `share-bundle`, `all-formats`, `submission-package`.
17
+
18
+ `--front-level` and `--back-level` control how much front/back matter is generated when the preset includes those steps. Both default to **balanced** for retail and academic presets, **minimum** for share-* and all-formats, and **skip** for query-submission, screenplay-query, and submission-package (the package itself does not need book front/back matter). Pass `skip` to suppress the corresponding generation step entirely. The default is applied silently per the table below; the writer only needs to pass these flags to override.
19
+
20
+ ---
21
+
22
+ ## Instruction
23
+
24
+ ### STEP 0: BOOTSTRAP (context-cost protocol)
25
+
26
+ Read `.manuscript/CONTEXT.md` first if it exists. If its `Updated` timestamp is newer than `.manuscript/STATE.md` and newer than the newest file in `.manuscript/drafts/body/`, use it as your orientation source for project title, work type, phase, current unit, recent activity, and open items. In STEP 1, skip the raw-file loads of `config.json`, `STATE.md`, and `OUTLINE.md` for those fields -- still load `CONSTRAINTS.json` (CONTEXT.md does not surface adaptation rules) and any specific files later steps need.
27
+
28
+ If CONTEXT.md is missing, stale, or contradicts STATE.md, fall back to the original loads in STEP 1 unchanged. See `docs/context-protocol.md` for the contract.
29
+
30
+ ---
31
+
32
+ ### STEP 1: LOAD CONTEXT AND VALIDATE
33
+
34
+ Load these project files:
35
+
36
+ - `.manuscript/config.json` -- to get `work_type`, title, author
37
+ - Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) -- to check `publishing_prerequisites` and export availability
38
+ - `.manuscript/OUTLINE.md` -- to verify draft completeness
39
+
40
+ **Validate preset:** Check that the `--preset` value matches a known preset name. If invalid:
41
+ > Unknown preset "[value]". Available presets: kdp-paperback, kdp-ebook, query-submission, ebook-wide, ingram-paperback, academic-submission, thesis-defense, screenplay-query.
42
+
43
+ Then **stop**.
44
+
45
+ **Check draft completeness:** Verify all units in OUTLINE.md have corresponding draft files. If the draft is incomplete:
46
+ > **Warning:** Manuscript is incomplete. Missing units: [list]. Proceeding with available content -- exported files will have gaps.
47
+
48
+ Continue anyway (autopilot does not stop for incomplete drafts -- it warns and proceeds).
49
+
50
+ ---
51
+
52
+ ### STEP 2: QUALITY GATE (per D-09)
53
+
54
+ Run quality checks before the export pipeline. The quality gate **warns but does not block** -- issues are logged for the writer to review after export completes.
55
+
56
+ #### 2a. Voice Check
57
+
58
+ Check if `.manuscript/STYLE-GUIDE.md` exists:
59
+
60
+ - **If STYLE-GUIDE.md exists:** Run `/scr:voice-check` on the full manuscript. Capture the voice fidelity score and any issues found.
61
+ - **If STYLE-GUIDE.md does not exist:** Skip voice check with a note:
62
+ > Voice check skipped -- no STYLE-GUIDE.md found. Run `/scr:profile-writer` to enable voice checking.
63
+
64
+ #### 2b. Continuity Check
65
+
66
+ Run `/scr:continuity-check` on the full manuscript. Capture any contradictions or inconsistencies found.
67
+
68
+ #### 2c. Quality Gate Summary
69
+
70
+ Show the quality gate results before proceeding:
71
+
72
+ ```
73
+ Quality Gate
74
+ ============
75
+ Voice check: 3 warnings (score: 82/100 PASS)
76
+ Continuity check: 1 warning
77
+
78
+ Proceeding with export. Review full reports after completion.
79
+ ```
80
+
81
+ **Quality gate policy (D-09):** Always proceed to the export pipeline regardless of quality gate results. The quality gate is advisory -- it gives the writer information, not a veto. Even if voice check scores FAIL (below 60) or continuity check finds major contradictions, log the warnings and continue.
82
+
83
+ ---
84
+
85
+ ### STEP 3: GENERATE PREREQUISITES
86
+
87
+ Auto-generate any missing prerequisites required by the chosen preset. Do not ask -- just generate them.
88
+
89
+ **Prerequisites by preset:**
90
+
91
+ | Preset | Needs |
92
+ |--------|-------|
93
+ | kdp-paperback | front-matter, back-matter |
94
+ | kdp-ebook | front-matter, back-matter |
95
+ | query-submission | blurb, synopsis, query-letter |
96
+ | ebook-wide | front-matter, back-matter |
97
+ | ingram-paperback | front-matter, back-matter |
98
+ | academic-submission | (none) |
99
+ | thesis-defense | front-matter, back-matter |
100
+ | screenplay-query | blurb, synopsis, query-letter |
101
+ | share-pdf | (none) |
102
+ | share-docx | (none) |
103
+ | share-epub | (none) |
104
+ | share-bundle | (none) |
105
+ | all-formats | (none) |
106
+ | submission-package | synopsis, query-letter, back-matter |
107
+
108
+ For each prerequisite the preset needs:
109
+
110
+ | Prerequisite | Check | Generate Command |
111
+ |-------------|-------|-----------------|
112
+ | front-matter | `.manuscript/front-matter/` has files | `/scr:front-matter --level <resolved-front-level>` (resolve by `--front-level` or the per-preset default; if `skip`, do not run) |
113
+ | back-matter | `.manuscript/back-matter/` has files | `/scr:back-matter --level <resolved-back-level>` (resolve by `--back-level` or the per-preset default; if `skip`, do not run) |
114
+ | blurb | `.manuscript/output/blurb.md` exists | `/scr:blurb` |
115
+ | synopsis | Any `.manuscript/marketing/SYNOPSIS-*.md` file exists | `/scr:synopsis` |
116
+ | query-letter | `.manuscript/marketing/QUERY-LETTER.md` exists | `/scr:query-letter` |
117
+
118
+ Show progress as each prerequisite is generated:
119
+
120
+ ```
121
+ Generating Prerequisites
122
+ ========================
123
+ Step 1/3: Generating front matter... done (7 elements)
124
+ Step 2/3: Generating back matter... done (5 elements)
125
+ Step 3/3: Cover art... already exists, skipping
126
+ ```
127
+
128
+ ---
129
+
130
+ ### STEP 4: RUN PRESET PIPELINE
131
+
132
+ Execute the preset pipeline from `/scr:publish` (same pipeline definitions). Show progress for each step:
133
+
134
+ ```
135
+ Export Pipeline: kdp-paperback
136
+ ===============================
137
+ Step 1/2: Exporting print-ready PDF... done (manuscript-print.pdf, 312 pages)
138
+ Step 2/2: Building KDP package... done (kdp-package/)
139
+ ```
140
+
141
+ Run each export command in the preset's pipeline. If an export step fails (e.g., Pandoc not installed, Typst not found), log the error and continue to the next step if possible. Report all failures in the final summary.
142
+
143
+ ---
144
+
145
+ ### STEP 5: FINAL REPORT
146
+
147
+ Show a complete summary of everything that happened:
148
+
149
+ ```
150
+ Autopilot Publish Complete
151
+ ==========================
152
+ Preset: kdp-paperback
153
+ Duration: ~3 minutes
154
+
155
+ Quality Gate:
156
+ Voice check: 3 warnings (score: 82/100 PASS)
157
+ Continuity check: 1 warning
158
+
159
+ Generated Prerequisites:
160
+ - Front matter (7 elements)
161
+ - Back matter (5 elements)
162
+
163
+ Exported:
164
+ - manuscript-print.pdf (interior, 6x9, ~312 pages)
165
+ - kdp-package/ (cover specs, metadata, upload checklist)
166
+
167
+ Quality Reports:
168
+ - Voice check: .manuscript/full-VOICE-CHECK-REPORT.md
169
+ - Continuity check: .manuscript/FULL-CONTINUITY-REPORT.md
170
+
171
+ Errors:
172
+ (none)
173
+
174
+ Next Steps:
175
+ 1. Review quality warnings in the reports above
176
+ 2. Review the interior PDF at .manuscript/output/manuscript-print.pdf
177
+ 3. Review `.manuscript/output/kdp-package/cover-specs.md` and place the finished print cover at `.manuscript/build/paperback-cover.pdf`
178
+ 4. Upload to https://kdp.amazon.com
179
+ ```
180
+
181
+ If any steps failed, show them in the "Errors" section with actionable fix instructions (e.g., "Pandoc not installed -- run `brew install pandoc` and re-run").
182
+
183
+ ---
184
+
185
+ ## Response Contract
186
+
187
+ Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
188
+
189
+ Use this format:
190
+
191
+ ```markdown
192
+ Next commands:
193
+ - `/scr:...`: One short sentence explaining what this path will do.
194
+ - `/scr:...`: One short sentence explaining what this alternate path will do.
195
+ ```
196
+
197
+ If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
198
+
199
+ If the writer seems unsure or no specific next command is obvious, include this default option:
200
+
201
+ ```markdown
202
+ Next commands:
203
+ - `/scr:next`: Inspect the project state and choose the right next step.
204
+ ```
205
+
206
+ If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
207
+
208
+ ## Tone
209
+
210
+ Autopilot is the "set it and forget it" mode. Be concise in progress updates -- one line per step. Save the detail for the final report. The writer chose autopilot because they trust the pipeline and want results, not conversation.