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,1606 @@
1
+ {
2
+ "$schema": "./constraints.schema.json",
3
+ "version": "2.0.5",
4
+ "description": "Scriveno constraint system: work types, command availability, exports, and dependencies. Every command checks this file at runtime.",
5
+ "_notes": {
6
+ "sacred_keys": "Sacred subcommands live at commands/scr/sacred/<name>.md and run as /scr:sacred:<name>. Their CONSTRAINTS keys use the sacred:<name> form so /scr:help can render the runnable slash-command path directly. The sacred-numbering-format entry is a separate flat command (commands/scr/sacred-numbering-format.md) that surfaces the active tradition's numbering format. It used to be named sacred-verse-numbering, which collided with sacred:verse-numbering at install time -- both flattened to scr-sacred-verse-numbering. Renamed in v1.6.x; the installer now refuses to install when two sources share a flat skill name."
7
+ },
8
+ "command_intents": {
9
+ "start": ["new-work", "demo", "import", "profile-writer", "manager"],
10
+ "draft": ["next", "discuss", "plan", "draft", "quick-write", "voice-test"],
11
+ "revise": ["editor-review", "voice-check", "continuity-check", "line-edit", "copy-edit", "polish", "beta-reader"],
12
+ "navigate": ["next", "progress", "manuscript-stats", "map-manuscript", "pause-work", "resume-work"],
13
+ "publish": ["complete-draft", "front-matter", "back-matter", "blurb", "publish", "export", "build-ebook", "build-print"],
14
+ "translate": ["translate", "translation-glossary", "translation-memory", "back-translate", "cultural-adaptation", "multi-publish"],
15
+ "collaborate": ["track", "editor-review", "compare", "history", "versions", "save"],
16
+ "repair": ["scan", "health", "sync", "validate", "cleanup", "troubleshoot", "undo"]
17
+ },
18
+
19
+ "work_type_groups": {
20
+ "prose": {
21
+ "label": "Prose",
22
+ "members": ["novel", "novella", "short_story", "flash_fiction", "memoir", "creative_nonfiction", "biography", "essay", "essay_collection"]
23
+ },
24
+ "script": {
25
+ "label": "Script",
26
+ "members": ["screenplay", "stage_play", "tv_pilot", "tv_series_bible", "audio_drama", "libretto"]
27
+ },
28
+ "academic": {
29
+ "label": "Academic",
30
+ "members": ["research_paper", "thesis", "journal_article", "white_paper", "literature_review", "monograph"]
31
+ },
32
+ "technical": {
33
+ "label": "Technical Writing",
34
+ "members": ["technical_guide", "runbook", "api_reference", "design_spec"]
35
+ },
36
+ "visual": {
37
+ "label": "Visual",
38
+ "members": ["comic", "graphic_novel", "childrens_book", "picture_book"]
39
+ },
40
+ "poetry": {
41
+ "label": "Poetry",
42
+ "members": ["poetry_collection", "single_poem", "song_lyric"]
43
+ },
44
+ "interactive": {
45
+ "label": "Interactive",
46
+ "members": ["interactive_fiction", "game_narrative"]
47
+ },
48
+ "speech_song": {
49
+ "label": "Speech & Song",
50
+ "members": ["speech"]
51
+ },
52
+ "sacred": {
53
+ "label": "Sacred & Historical",
54
+ "members": [
55
+ "scripture_biblical", "scripture_quranic", "scripture_torah",
56
+ "scripture_vedic", "scripture_buddhist", "scripture_generic",
57
+ "commentary", "devotional", "liturgical",
58
+ "historical_chronicle", "historical_account", "mythological_collection",
59
+ "religious_epic", "sermon", "homiletic_collection"
60
+ ]
61
+ }
62
+ },
63
+
64
+ "work_types": {
65
+ "novel": {
66
+ "label": "Novel",
67
+ "group": "prose",
68
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "scene" },
69
+ "command_unit": "chapter",
70
+ "word_count_range": [70000, 100000],
71
+ "page_range": [280, 400],
72
+ "unit_count_range": [20, 35],
73
+ "unit_word_range": [2500, 5000],
74
+ "unit_page_range": [10, 20]
75
+ },
76
+ "novella": {
77
+ "label": "Novella",
78
+ "group": "prose",
79
+ "hierarchy": { "top": null, "mid": "chapter", "atomic": "scene" },
80
+ "command_unit": "chapter",
81
+ "word_count_range": [17500, 40000],
82
+ "page_range": [70, 160],
83
+ "unit_count_range": [5, 15],
84
+ "unit_word_range": [2000, 4000],
85
+ "unit_page_range": [8, 16]
86
+ },
87
+ "short_story": {
88
+ "label": "Short Story",
89
+ "group": "prose",
90
+ "hierarchy": { "top": null, "mid": "section", "atomic": "beat" },
91
+ "command_unit": "section",
92
+ "word_count_range": [1000, 7500],
93
+ "page_range": [4, 30],
94
+ "unit_count_range": [1, 5],
95
+ "unit_word_range": [500, 2500],
96
+ "unit_page_range": [2, 10]
97
+ },
98
+ "flash_fiction": {
99
+ "label": "Flash Fiction",
100
+ "group": "prose",
101
+ "hierarchy": { "top": null, "mid": null, "atomic": "beat" },
102
+ "command_unit": "beat",
103
+ "word_count_range": [100, 1000],
104
+ "page_range": [1, 4],
105
+ "unit_count_range": [1, 3],
106
+ "unit_word_range": [100, 500],
107
+ "unit_page_range": [1, 2]
108
+ },
109
+ "memoir": {
110
+ "label": "Memoir",
111
+ "group": "prose",
112
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "vignette" },
113
+ "command_unit": "chapter",
114
+ "word_count_range": [60000, 90000],
115
+ "page_range": [240, 360],
116
+ "unit_count_range": [15, 30],
117
+ "unit_word_range": [2500, 5000],
118
+ "unit_page_range": [10, 20]
119
+ },
120
+ "creative_nonfiction": {
121
+ "label": "Creative Nonfiction",
122
+ "group": "prose",
123
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "scene" },
124
+ "command_unit": "chapter",
125
+ "word_count_range": [50000, 90000],
126
+ "page_range": [200, 360],
127
+ "unit_count_range": [12, 25],
128
+ "unit_word_range": [2500, 5000],
129
+ "unit_page_range": [10, 20]
130
+ },
131
+ "biography": {
132
+ "label": "Biography",
133
+ "group": "prose",
134
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "scene" },
135
+ "command_unit": "chapter",
136
+ "word_count_range": [70000, 120000],
137
+ "page_range": [280, 480],
138
+ "unit_count_range": [15, 35],
139
+ "unit_word_range": [3000, 5000],
140
+ "unit_page_range": [12, 20]
141
+ },
142
+ "essay": {
143
+ "label": "Essay",
144
+ "group": "prose",
145
+ "hierarchy": { "top": null, "mid": "section", "atomic": "paragraph_block" },
146
+ "command_unit": "section",
147
+ "word_count_range": [1500, 10000],
148
+ "page_range": [6, 40],
149
+ "unit_count_range": [3, 8],
150
+ "unit_word_range": [500, 2000],
151
+ "unit_page_range": [2, 8]
152
+ },
153
+ "essay_collection": {
154
+ "label": "Essay Collection",
155
+ "group": "prose",
156
+ "hierarchy": { "top": "part", "mid": null, "atomic": "essay" },
157
+ "command_unit": "essay",
158
+ "word_count_range": [40000, 80000],
159
+ "page_range": [160, 320],
160
+ "unit_count_range": [10, 25],
161
+ "unit_word_range": [2000, 6000],
162
+ "unit_page_range": [8, 24]
163
+ },
164
+ "screenplay": {
165
+ "label": "Screenplay",
166
+ "group": "script",
167
+ "hierarchy": { "top": "act", "mid": "sequence", "atomic": "scene" },
168
+ "command_unit": "act",
169
+ "word_count_range": [7500, 12500],
170
+ "page_range": [90, 120],
171
+ "unit_count_range": [3, 5],
172
+ "unit_word_range": [2000, 4000],
173
+ "unit_page_range": [25, 35]
174
+ },
175
+ "stage_play": {
176
+ "label": "Stage Play",
177
+ "group": "script",
178
+ "hierarchy": { "top": "act", "mid": "scene", "atomic": "beat" },
179
+ "command_unit": "act",
180
+ "word_count_range": [10000, 15000],
181
+ "page_range": [60, 120],
182
+ "unit_count_range": [1, 5],
183
+ "unit_word_range": [3000, 7000],
184
+ "unit_page_range": [15, 40]
185
+ },
186
+ "tv_pilot": {
187
+ "label": "TV Pilot",
188
+ "group": "script",
189
+ "hierarchy": { "top": "act", "mid": "scene", "atomic": "beat" },
190
+ "command_unit": "act",
191
+ "word_count_range": [5000, 10000],
192
+ "page_range": [30, 60],
193
+ "unit_count_range": [4, 6],
194
+ "unit_word_range": [1000, 2500],
195
+ "unit_page_range": [6, 12]
196
+ },
197
+ "tv_series_bible": {
198
+ "label": "TV Series Bible",
199
+ "group": "script",
200
+ "hierarchy": { "top": "season", "mid": "episode", "atomic": "scene" },
201
+ "command_unit": "episode",
202
+ "word_count_range": [15000, 40000],
203
+ "page_range": [60, 160],
204
+ "unit_count_range": [6, 13],
205
+ "unit_word_range": [1500, 3000],
206
+ "unit_page_range": [6, 12]
207
+ },
208
+ "audio_drama": {
209
+ "label": "Audio Drama / Podcast Script",
210
+ "group": "script",
211
+ "hierarchy": { "top": "season", "mid": "episode", "atomic": "scene" },
212
+ "command_unit": "episode",
213
+ "word_count_range": [3000, 8000],
214
+ "page_range": [12, 32],
215
+ "unit_count_range": [1, 10],
216
+ "unit_word_range": [2000, 5000],
217
+ "unit_page_range": [8, 20]
218
+ },
219
+ "libretto": {
220
+ "label": "Libretto / Musical",
221
+ "group": "script",
222
+ "hierarchy": { "top": "act", "mid": "scene", "atomic": "number" },
223
+ "command_unit": "act",
224
+ "word_count_range": [5000, 12000],
225
+ "page_range": [20, 48],
226
+ "unit_count_range": [2, 3],
227
+ "unit_word_range": [2000, 5000],
228
+ "unit_page_range": [8, 20]
229
+ },
230
+ "research_paper": {
231
+ "label": "Research Paper",
232
+ "group": "academic",
233
+ "hierarchy": { "top": null, "mid": "section", "atomic": "subsection" },
234
+ "command_unit": "section",
235
+ "word_count_range": [5000, 15000],
236
+ "page_range": [20, 60],
237
+ "unit_count_range": [4, 8],
238
+ "unit_word_range": [1000, 3000],
239
+ "unit_page_range": [4, 12]
240
+ },
241
+ "thesis": {
242
+ "label": "Thesis / Dissertation",
243
+ "group": "academic",
244
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "section" },
245
+ "command_unit": "chapter",
246
+ "word_count_range": [40000, 100000],
247
+ "page_range": [160, 400],
248
+ "unit_count_range": [5, 10],
249
+ "unit_word_range": [5000, 15000],
250
+ "unit_page_range": [20, 60]
251
+ },
252
+ "journal_article": {
253
+ "label": "Journal Article",
254
+ "group": "academic",
255
+ "hierarchy": { "top": null, "mid": "section", "atomic": "subsection" },
256
+ "command_unit": "section",
257
+ "word_count_range": [3000, 8000],
258
+ "page_range": [12, 32],
259
+ "unit_count_range": [4, 7],
260
+ "unit_word_range": [500, 2000],
261
+ "unit_page_range": [2, 8]
262
+ },
263
+ "white_paper": {
264
+ "label": "White Paper",
265
+ "group": "academic",
266
+ "hierarchy": { "top": null, "mid": "section", "atomic": "subsection" },
267
+ "command_unit": "section",
268
+ "word_count_range": [3000, 10000],
269
+ "page_range": [12, 40],
270
+ "unit_count_range": [4, 8],
271
+ "unit_word_range": [500, 2000],
272
+ "unit_page_range": [2, 8]
273
+ },
274
+ "literature_review": {
275
+ "label": "Literature Review",
276
+ "group": "academic",
277
+ "hierarchy": { "top": null, "mid": "section", "atomic": "subsection" },
278
+ "command_unit": "section",
279
+ "word_count_range": [5000, 15000],
280
+ "page_range": [20, 60],
281
+ "unit_count_range": [4, 8],
282
+ "unit_word_range": [1000, 3000],
283
+ "unit_page_range": [4, 12]
284
+ },
285
+ "monograph": {
286
+ "label": "Monograph",
287
+ "group": "academic",
288
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "section" },
289
+ "command_unit": "chapter",
290
+ "word_count_range": [50000, 100000],
291
+ "page_range": [200, 400],
292
+ "unit_count_range": [8, 15],
293
+ "unit_word_range": [4000, 8000],
294
+ "unit_page_range": [16, 32]
295
+ },
296
+ "technical_guide": {
297
+ "label": "Technical Guide / User Guide",
298
+ "group": "technical",
299
+ "hierarchy": { "top": null, "mid": "section", "atomic": "procedure" },
300
+ "command_unit": "section",
301
+ "word_count_range": [3000, 25000],
302
+ "page_range": [12, 100],
303
+ "unit_count_range": [4, 12],
304
+ "unit_word_range": [500, 2500],
305
+ "unit_page_range": [2, 10],
306
+ "config_defaults": {
307
+ "audience_level": "mixed",
308
+ "review_mode": "accuracy_first"
309
+ }
310
+ },
311
+ "runbook": {
312
+ "label": "Runbook / SOP",
313
+ "group": "technical",
314
+ "hierarchy": { "top": null, "mid": "procedure", "atomic": "step" },
315
+ "command_unit": "procedure",
316
+ "word_count_range": [1500, 12000],
317
+ "page_range": [6, 48],
318
+ "unit_count_range": [3, 10],
319
+ "unit_word_range": [300, 1500],
320
+ "unit_page_range": [1, 6],
321
+ "config_defaults": {
322
+ "audience_level": "operator",
323
+ "review_mode": "accuracy_first"
324
+ }
325
+ },
326
+ "api_reference": {
327
+ "label": "API or CLI Reference",
328
+ "group": "technical",
329
+ "hierarchy": { "top": null, "mid": "resource", "atomic": "endpoint" },
330
+ "command_unit": "resource",
331
+ "word_count_range": [2000, 30000],
332
+ "page_range": [8, 120],
333
+ "unit_count_range": [5, 40],
334
+ "unit_word_range": [150, 1000],
335
+ "unit_page_range": [1, 4],
336
+ "config_defaults": {
337
+ "audience_level": "developer",
338
+ "review_mode": "accuracy_first"
339
+ }
340
+ },
341
+ "design_spec": {
342
+ "label": "Design Spec / Architecture Doc",
343
+ "group": "technical",
344
+ "hierarchy": { "top": "system", "mid": "section", "atomic": "decision" },
345
+ "command_unit": "section",
346
+ "word_count_range": [2000, 15000],
347
+ "page_range": [8, 60],
348
+ "unit_count_range": [4, 12],
349
+ "unit_word_range": [500, 2000],
350
+ "unit_page_range": [2, 8],
351
+ "config_defaults": {
352
+ "audience_level": "mixed",
353
+ "review_mode": "accuracy_first"
354
+ }
355
+ },
356
+ "poetry_collection": {
357
+ "label": "Poetry Collection",
358
+ "group": "poetry",
359
+ "hierarchy": { "top": "section", "mid": null, "atomic": "poem" },
360
+ "command_unit": "section",
361
+ "word_count_range": [5000, 15000],
362
+ "page_range": [48, 120],
363
+ "unit_count_range": [3, 8],
364
+ "unit_word_range": [1000, 3000],
365
+ "unit_page_range": [8, 20]
366
+ },
367
+ "single_poem": {
368
+ "label": "Single Poem",
369
+ "group": "poetry",
370
+ "hierarchy": { "top": null, "mid": "stanza", "atomic": "line" },
371
+ "command_unit": "stanza",
372
+ "word_count_range": [20, 2000],
373
+ "page_range": [1, 8],
374
+ "unit_count_range": [1, 20],
375
+ "unit_word_range": [10, 200],
376
+ "unit_page_range": [1, 1]
377
+ },
378
+ "song_lyric": {
379
+ "label": "Lyric / Song",
380
+ "group": "poetry",
381
+ "hierarchy": { "top": null, "mid": "section", "atomic": "line" },
382
+ "command_unit": "section",
383
+ "word_count_range": [100, 600],
384
+ "page_range": [1, 3],
385
+ "unit_count_range": [3, 6],
386
+ "unit_word_range": [20, 150],
387
+ "unit_page_range": [1, 1]
388
+ },
389
+ "comic": {
390
+ "label": "Comic / Graphic Novel",
391
+ "group": "visual",
392
+ "hierarchy": { "top": "volume", "mid": "issue", "atomic": "panel" },
393
+ "command_unit": "issue",
394
+ "word_count_range": [2000, 5000],
395
+ "page_range": [22, 32],
396
+ "unit_count_range": [1, 6],
397
+ "unit_word_range": [500, 1500],
398
+ "unit_page_range": [22, 32]
399
+ },
400
+ "graphic_novel": {
401
+ "label": "Graphic Novel",
402
+ "group": "visual",
403
+ "hierarchy": { "top": "volume", "mid": "chapter", "atomic": "panel" },
404
+ "command_unit": "chapter",
405
+ "word_count_range": [5000, 20000],
406
+ "page_range": [80, 200],
407
+ "unit_count_range": [5, 12],
408
+ "unit_word_range": [500, 2500],
409
+ "unit_page_range": [10, 25]
410
+ },
411
+ "childrens_book": {
412
+ "label": "Children's Book",
413
+ "group": "visual",
414
+ "hierarchy": { "top": null, "mid": "spread", "atomic": "page" },
415
+ "command_unit": "spread",
416
+ "word_count_range": [500, 5000],
417
+ "page_range": [24, 48],
418
+ "unit_count_range": [12, 24],
419
+ "unit_word_range": [20, 200],
420
+ "unit_page_range": [2, 2]
421
+ },
422
+ "picture_book": {
423
+ "label": "Picture Book",
424
+ "group": "visual",
425
+ "hierarchy": { "top": null, "mid": "spread", "atomic": "illustration_text" },
426
+ "command_unit": "spread",
427
+ "word_count_range": [200, 1000],
428
+ "page_range": [24, 40],
429
+ "unit_count_range": [12, 20],
430
+ "unit_word_range": [10, 60],
431
+ "unit_page_range": [2, 2]
432
+ },
433
+ "interactive_fiction": {
434
+ "label": "Interactive Fiction",
435
+ "group": "interactive",
436
+ "hierarchy": { "top": null, "mid": "node", "atomic": "choice_branch" },
437
+ "command_unit": "node",
438
+ "word_count_range": [20000, 100000],
439
+ "page_range": [80, 400],
440
+ "unit_count_range": [20, 100],
441
+ "unit_word_range": [500, 2000],
442
+ "unit_page_range": [2, 8]
443
+ },
444
+ "game_narrative": {
445
+ "label": "Game Narrative",
446
+ "group": "interactive",
447
+ "hierarchy": { "top": "act", "mid": "quest", "atomic": "dialogue_tree" },
448
+ "command_unit": "quest",
449
+ "word_count_range": [30000, 150000],
450
+ "page_range": [120, 600],
451
+ "unit_count_range": [10, 40],
452
+ "unit_word_range": [2000, 5000],
453
+ "unit_page_range": [8, 20]
454
+ },
455
+ "speech": {
456
+ "label": "Speech",
457
+ "group": "speech_song",
458
+ "hierarchy": { "top": null, "mid": "section", "atomic": "beat" },
459
+ "command_unit": "section",
460
+ "word_count_range": [500, 5000],
461
+ "page_range": [2, 20],
462
+ "unit_count_range": [3, 6],
463
+ "unit_word_range": [150, 1000],
464
+ "unit_page_range": [1, 4]
465
+ },
466
+ "scripture_biblical": {
467
+ "label": "Scripture (Biblical)",
468
+ "group": "sacred",
469
+ "hierarchy": { "top": "testament", "mid": "book", "atomic": "verse" },
470
+ "command_unit": "book",
471
+ "config_defaults": { "verse_numbering_system": "masoretic", "calendar_system": "gregorian" },
472
+ "word_count_range": null,
473
+ "page_range": null,
474
+ "unit_count_range": [39, 66],
475
+ "unit_word_range": [1000, 50000],
476
+ "unit_page_range": [4, 200],
477
+ "_note": "Varies by scope -- full Bible vs single book. No meaningful total range."
478
+ },
479
+ "scripture_quranic": {
480
+ "label": "Scripture (Quranic)",
481
+ "group": "sacred",
482
+ "hierarchy": { "top": null, "mid": "surah", "atomic": "ayah" },
483
+ "command_unit": "surah",
484
+ "config_defaults": { "verse_numbering_system": "quranic_hafs", "calendar_system": "hijri" },
485
+ "word_count_range": null,
486
+ "page_range": null,
487
+ "unit_count_range": [1, 114],
488
+ "unit_word_range": [50, 12000],
489
+ "unit_page_range": [1, 48],
490
+ "_note": "Varies by scope -- full Quran vs single surah. No meaningful total range."
491
+ },
492
+ "scripture_torah": {
493
+ "label": "Scripture (Torah)",
494
+ "group": "sacred",
495
+ "hierarchy": { "top": "chumash", "mid": "parashah", "atomic": "pasuk" },
496
+ "command_unit": "parashah",
497
+ "config_defaults": { "verse_numbering_system": "masoretic", "calendar_system": "hebrew" },
498
+ "word_count_range": null,
499
+ "page_range": null,
500
+ "unit_count_range": [1, 54],
501
+ "unit_word_range": [1000, 8000],
502
+ "unit_page_range": [4, 32],
503
+ "_note": "Varies by scope -- full Torah vs single parashah."
504
+ },
505
+ "scripture_vedic": {
506
+ "label": "Scripture (Vedic)",
507
+ "group": "sacred",
508
+ "hierarchy": { "top": "veda", "mid": "mandala", "atomic": "sukta" },
509
+ "command_unit": "mandala",
510
+ "config_defaults": { "calendar_system": "vikram_samvat" },
511
+ "word_count_range": null,
512
+ "page_range": null,
513
+ "unit_count_range": [1, 10],
514
+ "unit_word_range": [2000, 20000],
515
+ "unit_page_range": [8, 80],
516
+ "_note": "Varies by scope -- single Veda vs collection."
517
+ },
518
+ "scripture_buddhist": {
519
+ "label": "Scripture (Buddhist)",
520
+ "group": "sacred",
521
+ "hierarchy": { "top": "pitaka", "mid": "nikaya", "atomic": "sutta" },
522
+ "command_unit": "sutta",
523
+ "config_defaults": { "calendar_system": "buddhist_era" },
524
+ "word_count_range": null,
525
+ "page_range": null,
526
+ "unit_count_range": [1, 50],
527
+ "unit_word_range": [500, 10000],
528
+ "unit_page_range": [2, 40],
529
+ "_note": "Varies by scope -- single sutta vs full nikaya."
530
+ },
531
+ "scripture_generic": {
532
+ "label": "Scripture (Generic)",
533
+ "group": "sacred",
534
+ "hierarchy": { "top": "testament", "mid": "book", "atomic": "verse" },
535
+ "command_unit": "book",
536
+ "word_count_range": null,
537
+ "page_range": null,
538
+ "unit_count_range": [1, 100],
539
+ "unit_word_range": [500, 30000],
540
+ "unit_page_range": [2, 120],
541
+ "_note": "Varies by tradition and scope."
542
+ },
543
+ "commentary": {
544
+ "label": "Commentary / Exegesis",
545
+ "group": "sacred",
546
+ "hierarchy": { "top": null, "mid": "section", "atomic": "annotation_block" },
547
+ "command_unit": "section",
548
+ "word_count_range": [20000, 150000],
549
+ "page_range": [80, 600],
550
+ "unit_count_range": [5, 30],
551
+ "unit_word_range": [2000, 8000],
552
+ "unit_page_range": [8, 32]
553
+ },
554
+ "devotional": {
555
+ "label": "Devotional",
556
+ "group": "sacred",
557
+ "hierarchy": { "top": null, "mid": "theme", "atomic": "entry" },
558
+ "command_unit": "entry",
559
+ "word_count_range": [15000, 50000],
560
+ "page_range": [60, 200],
561
+ "unit_count_range": [30, 366],
562
+ "unit_word_range": [200, 800],
563
+ "unit_page_range": [1, 3]
564
+ },
565
+ "liturgical": {
566
+ "label": "Liturgical Text",
567
+ "group": "sacred",
568
+ "hierarchy": { "top": "rite", "mid": "section", "atomic": "rubric" },
569
+ "command_unit": "section",
570
+ "word_count_range": [5000, 30000],
571
+ "page_range": [20, 120],
572
+ "unit_count_range": [5, 20],
573
+ "unit_word_range": [500, 3000],
574
+ "unit_page_range": [2, 12]
575
+ },
576
+ "historical_chronicle": {
577
+ "label": "Historical Chronicle",
578
+ "group": "sacred",
579
+ "hierarchy": { "top": "era", "mid": "chapter", "atomic": "event" },
580
+ "command_unit": "chapter",
581
+ "word_count_range": [50000, 150000],
582
+ "page_range": [200, 600],
583
+ "unit_count_range": [10, 40],
584
+ "unit_word_range": [3000, 6000],
585
+ "unit_page_range": [12, 24]
586
+ },
587
+ "historical_account": {
588
+ "label": "Historical Account",
589
+ "group": "sacred",
590
+ "hierarchy": { "top": "part", "mid": "chapter", "atomic": "scene" },
591
+ "command_unit": "chapter",
592
+ "word_count_range": [40000, 100000],
593
+ "page_range": [160, 400],
594
+ "unit_count_range": [10, 30],
595
+ "unit_word_range": [3000, 5000],
596
+ "unit_page_range": [12, 20]
597
+ },
598
+ "mythological_collection": {
599
+ "label": "Mythological Collection",
600
+ "group": "sacred",
601
+ "hierarchy": { "top": "cycle", "mid": null, "atomic": "tale" },
602
+ "command_unit": "tale",
603
+ "word_count_range": [30000, 100000],
604
+ "page_range": [120, 400],
605
+ "unit_count_range": [10, 50],
606
+ "unit_word_range": [1500, 5000],
607
+ "unit_page_range": [6, 20]
608
+ },
609
+ "religious_epic": {
610
+ "label": "Religious Epic",
611
+ "group": "sacred",
612
+ "hierarchy": { "top": "book", "mid": "canto", "atomic": "verse" },
613
+ "command_unit": "canto",
614
+ "word_count_range": [50000, 300000],
615
+ "page_range": [200, 1200],
616
+ "unit_count_range": [10, 100],
617
+ "unit_word_range": [2000, 8000],
618
+ "unit_page_range": [8, 32]
619
+ },
620
+ "sermon": {
621
+ "label": "Sermon / Homily",
622
+ "group": "sacred",
623
+ "hierarchy": { "top": null, "mid": "movement", "atomic": "beat" },
624
+ "command_unit": "sermon",
625
+ "word_count_range": [1500, 4000],
626
+ "page_range": [6, 16],
627
+ "unit_count_range": [3, 5],
628
+ "unit_word_range": [400, 1000],
629
+ "unit_page_range": [2, 4]
630
+ },
631
+ "homiletic_collection": {
632
+ "label": "Homiletic Collection",
633
+ "group": "sacred",
634
+ "hierarchy": { "top": "liturgical_year", "mid": null, "atomic": "sermon" },
635
+ "command_unit": "sermon",
636
+ "word_count_range": [50000, 150000],
637
+ "page_range": [200, 600],
638
+ "unit_count_range": [30, 60],
639
+ "unit_word_range": [1500, 4000],
640
+ "unit_page_range": [6, 16]
641
+ }
642
+ },
643
+
644
+ "commands": {
645
+ "new-work": {
646
+ "category": "core",
647
+ "available": ["all"],
648
+ "description": "Initialize a new creative work"
649
+ },
650
+ "discuss": {
651
+ "category": "core",
652
+ "available": ["all"],
653
+ "renames_by_unit": true,
654
+ "description": "Shape the next unit before planning"
655
+ },
656
+ "plan": {
657
+ "category": "core",
658
+ "available": ["all"],
659
+ "renames_by_unit": true,
660
+ "description": "Research and plan the next unit"
661
+ },
662
+ "draft": {
663
+ "category": "core",
664
+ "available": ["all"],
665
+ "renames_by_unit": true,
666
+ "description": "Draft the planned unit"
667
+ },
668
+ "editor-review": {
669
+ "category": "core",
670
+ "available": ["all"],
671
+ "adapted": {
672
+ "academic": { "rename": "peer-review" },
673
+ "technical": { "rename": "technical-review" },
674
+ "sacred": { "rename": "scholarly-review" }
675
+ },
676
+ "description": "Manual review of drafted unit and editor-writer collaboration workflow",
677
+ "collaboration_flags": ["--proposal", "--notes", "--respond"],
678
+ "collaboration_artifacts": ["proposals/", "editor-notes/", "decisions.json"]
679
+ },
680
+ "submit": {
681
+ "category": "core",
682
+ "available": ["all"],
683
+ "renames_by_unit": true,
684
+ "description": "Package and finalize unit"
685
+ },
686
+ "next": {
687
+ "category": "navigation",
688
+ "available": ["all"],
689
+ "description": "Auto-detect and run the next workflow step"
690
+ },
691
+ "do": {
692
+ "category": "navigation",
693
+ "available": ["all"],
694
+ "description": "Natural language router for free-text commands"
695
+ },
696
+ "help": {
697
+ "category": "navigation",
698
+ "available": ["all"],
699
+ "description": "Show available commands grouped by stage"
700
+ },
701
+ "progress": {
702
+ "category": "navigation",
703
+ "available": ["all"],
704
+ "description": "Show current state and next step"
705
+ },
706
+ "demo": {
707
+ "category": "navigation",
708
+ "available": ["all"],
709
+ "description": "Launch pre-built sample project sandbox"
710
+ },
711
+ "import": {
712
+ "category": "navigation",
713
+ "available": ["all"],
714
+ "description": "Import existing manuscript into Scriveno structure"
715
+ },
716
+ "map-manuscript": {
717
+ "category": "navigation",
718
+ "available": ["all"],
719
+ "description": "Analyze existing manuscript structure, voice, characters, and themes"
720
+ },
721
+ "voice-test": {
722
+ "category": "quality",
723
+ "available": ["all"],
724
+ "description": "Voice calibration before first draft"
725
+ },
726
+ "new-character": {
727
+ "category": "character_world",
728
+ "available": ["prose", "script", "visual", "interactive"],
729
+ "adapted": {
730
+ "academic": { "rename": "new-concept", "behavior": "academic_concept" },
731
+ "sacred": { "rename": "new-figure", "behavior": "sacred_figure" }
732
+ },
733
+ "hidden": ["poetry", "speech_song"],
734
+ "requires": ["WORK.md"]
735
+ },
736
+ "character-sheet": {
737
+ "category": "character_world",
738
+ "available": ["prose", "script", "visual", "interactive"],
739
+ "adapted": {
740
+ "academic": { "rename": "concept-sheet" },
741
+ "sacred": { "rename": "figure-sheet" }
742
+ },
743
+ "hidden": ["poetry", "speech_song"],
744
+ "requires": ["CHARACTERS.md"]
745
+ },
746
+ "character-touch": {
747
+ "category": "character_world",
748
+ "available": ["prose", "script", "visual", "interactive", "sacred"],
749
+ "adapted": {
750
+ "sacred": { "rename": "figure-touch" }
751
+ },
752
+ "hidden": ["academic", "poetry", "speech_song"],
753
+ "requires": ["CHARACTERS.md", "draft_exists"]
754
+ },
755
+ "relationship-map": {
756
+ "category": "character_world",
757
+ "available": ["prose", "script", "visual", "interactive"],
758
+ "adapted": {
759
+ "sacred": { "rename": "lineage-map" }
760
+ },
761
+ "hidden": ["academic", "poetry", "speech_song"],
762
+ "requires": ["CHARACTERS.md", { "min_characters": 2 }]
763
+ },
764
+ "build-world": {
765
+ "category": "character_world",
766
+ "available": ["prose", "script", "technical", "visual", "interactive"],
767
+ "adapted": {
768
+ "technical": { "rename": "map-system" },
769
+ "sacred": { "rename": "build-cosmology" }
770
+ },
771
+ "hidden": ["academic", "poetry", "speech_song"]
772
+ },
773
+ "cast-list": {
774
+ "category": "character_world",
775
+ "available": ["prose", "script", "visual", "interactive"],
776
+ "adapted": {
777
+ "sacred": { "rename": "figures-list" }
778
+ },
779
+ "hidden": ["academic", "poetry", "speech_song"]
780
+ },
781
+ "character-arc": {
782
+ "category": "character_world",
783
+ "available": ["prose", "script", "visual", "interactive"],
784
+ "adapted": {
785
+ "sacred": { "rename": "figure-arc" }
786
+ },
787
+ "hidden": ["academic", "poetry", "speech_song"]
788
+ },
789
+ "character-voice-sample": {
790
+ "category": "character_world",
791
+ "available": ["prose", "script", "visual", "interactive"],
792
+ "adapted": {
793
+ "sacred": { "rename": "register-sample" }
794
+ },
795
+ "hidden": ["academic", "poetry", "speech_song"]
796
+ },
797
+ "plot-graph": {
798
+ "category": "structure",
799
+ "available": ["prose", "script", "technical", "visual", "interactive"],
800
+ "adapted": {
801
+ "academic": { "rename": "argument-map" },
802
+ "technical": { "rename": "procedure-map" },
803
+ "sacred": { "rename": "theological-arc" }
804
+ },
805
+ "hidden": ["poetry", "speech_song"],
806
+ "requires": ["OUTLINE.md"]
807
+ },
808
+ "timeline": {
809
+ "category": "structure",
810
+ "available": ["prose", "script", "academic", "visual", "interactive"],
811
+ "adapted": {
812
+ "sacred": { "rename": "chronology" }
813
+ },
814
+ "hidden": ["poetry", "speech_song"]
815
+ },
816
+ "theme-tracker": {
817
+ "category": "structure",
818
+ "available": ["prose", "script", "visual", "poetry", "interactive"],
819
+ "adapted": {
820
+ "academic": { "rename": "research-questions" },
821
+ "sacred": { "rename": "doctrine-tracker" }
822
+ },
823
+ "hidden": ["speech_song"]
824
+ },
825
+ "subject-touch": {
826
+ "category": "structure",
827
+ "available": ["all"],
828
+ "adapted": {
829
+ "academic": { "rename": "concept-touch" },
830
+ "technical": { "rename": "procedure-touch" },
831
+ "sacred": { "rename": "doctrine-touch" }
832
+ },
833
+ "description": "Update evolving subject, concept, procedure, doctrine, object, image, or reader-state movement",
834
+ "requires": ["THEMES.md", "draft_exists"]
835
+ },
836
+ "subplot-map": {
837
+ "category": "structure",
838
+ "available": ["prose", "script", "interactive"],
839
+ "adapted": {
840
+ "sacred": { "rename": "narrative-threads" }
841
+ },
842
+ "hidden": ["academic", "visual", "poetry", "speech_song"]
843
+ },
844
+ "outline": {
845
+ "category": "structure",
846
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
847
+ "adapted": {},
848
+ "hidden": ["poetry", "speech_song"],
849
+ "requires": ["OUTLINE.md"]
850
+ },
851
+ "add-unit": {
852
+ "category": "structure_management",
853
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
854
+ "adapted": {},
855
+ "hidden": ["poetry", "speech_song"],
856
+ "requires": ["OUTLINE.md"]
857
+ },
858
+ "insert-unit": {
859
+ "category": "structure_management",
860
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
861
+ "adapted": {},
862
+ "hidden": ["poetry", "speech_song"],
863
+ "requires": ["OUTLINE.md"]
864
+ },
865
+ "remove-unit": {
866
+ "category": "structure_management",
867
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
868
+ "adapted": {},
869
+ "hidden": ["poetry", "speech_song"],
870
+ "requires": ["OUTLINE.md"]
871
+ },
872
+ "split-unit": {
873
+ "category": "structure_management",
874
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
875
+ "adapted": {},
876
+ "hidden": ["poetry", "speech_song"],
877
+ "requires": ["OUTLINE.md"]
878
+ },
879
+ "merge-units": {
880
+ "category": "structure_management",
881
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
882
+ "adapted": {},
883
+ "hidden": ["poetry", "speech_song"],
884
+ "requires": ["OUTLINE.md"]
885
+ },
886
+ "reorder-units": {
887
+ "category": "structure_management",
888
+ "available": ["prose", "script", "academic", "technical", "visual", "interactive", "sacred"],
889
+ "adapted": {},
890
+ "hidden": ["poetry", "speech_song"],
891
+ "requires": ["OUTLINE.md"]
892
+ },
893
+ "continuity-check": {
894
+ "category": "review",
895
+ "available": ["prose", "script", "technical", "visual", "interactive"],
896
+ "adapted": {
897
+ "academic": { "rename": "citation-check" },
898
+ "technical": { "rename": "consistency-check" },
899
+ "sacred": { "rename": "doctrinal-check" }
900
+ },
901
+ "hidden": ["poetry", "speech_song"],
902
+ "requires": ["draft_exists"]
903
+ },
904
+ "voice-check": {
905
+ "category": "review",
906
+ "available": ["all"],
907
+ "adapted": {
908
+ "sacred": { "rename": "register-check" }
909
+ },
910
+ "requires": ["draft_exists", "STYLE-GUIDE.md"]
911
+ },
912
+ "sensitivity-review": {
913
+ "category": "review",
914
+ "available": ["all"],
915
+ "adapted": {
916
+ "academic": { "rename": "ethics-review" },
917
+ "sacred": { "rename": "interfaith-review" }
918
+ },
919
+ "requires": ["draft_exists"]
920
+ },
921
+ "pacing-analysis": {
922
+ "category": "review",
923
+ "available": ["prose", "script", "academic", "visual", "interactive", "sacred"],
924
+ "hidden": ["poetry", "speech_song"],
925
+ "requires": ["draft_exists"]
926
+ },
927
+ "dialogue-audit": {
928
+ "category": "review",
929
+ "available": ["prose", "script", "interactive"],
930
+ "adapted": {
931
+ "visual": { "behavior": "balloon_text" }
932
+ },
933
+ "hidden": ["academic", "poetry", "speech_song", "sacred"],
934
+ "requires": ["draft_exists"]
935
+ },
936
+ "beta-reader": {
937
+ "category": "review",
938
+ "available": ["all"],
939
+ "adapted": {
940
+ "academic": { "rename": "reviewer-simulation" },
941
+ "technical": { "rename": "usability-review" },
942
+ "sacred": { "rename": "theological-review" }
943
+ },
944
+ "requires": ["draft_exists"]
945
+ },
946
+ "originality-check": {
947
+ "category": "review",
948
+ "available": ["all"],
949
+ "requires": ["draft_exists"]
950
+ },
951
+ "line-edit": {
952
+ "category": "quality",
953
+ "available": ["all"],
954
+ "requires": ["draft_exists"]
955
+ },
956
+ "copy-edit": {
957
+ "category": "quality",
958
+ "available": ["all"],
959
+ "requires": ["draft_exists"]
960
+ },
961
+ "polish": {
962
+ "category": "quality",
963
+ "available": ["all"],
964
+ "requires": ["draft_exists", "STYLE-GUIDE.md"]
965
+ },
966
+ "quick-write": {
967
+ "category": "quality",
968
+ "available": ["all"]
969
+ },
970
+ "cover-art": {
971
+ "category": "illustration",
972
+ "available": ["prose", "visual", "poetry", "sacred"],
973
+ "hidden": ["script", "academic", "interactive", "speech_song"],
974
+ "requires": ["WORK.md"]
975
+ },
976
+ "illustrate-scene": {
977
+ "category": "illustration",
978
+ "available": ["prose", "visual", "interactive", "sacred"],
979
+ "hidden": ["script", "academic", "poetry", "speech_song"],
980
+ "requires": ["ART-DIRECTION.md", "draft_exists"]
981
+ },
982
+ "character-ref": {
983
+ "category": "illustration",
984
+ "available": ["prose", "script", "visual", "interactive"],
985
+ "adapted": {
986
+ "sacred": { "rename": "figure-ref" }
987
+ },
988
+ "hidden": ["academic", "poetry", "speech_song"]
989
+ },
990
+ "art-direction": {
991
+ "category": "illustration",
992
+ "available": ["prose", "visual", "interactive", "sacred"],
993
+ "hidden": ["script", "academic", "poetry", "speech_song"]
994
+ },
995
+ "chapter-header": {
996
+ "category": "illustration",
997
+ "available": ["prose", "sacred"],
998
+ "hidden": ["script", "academic", "visual", "poetry", "interactive", "speech_song"]
999
+ },
1000
+ "map-illustration": {
1001
+ "category": "illustration",
1002
+ "available": ["prose", "visual", "interactive", "sacred"],
1003
+ "hidden": ["script", "academic", "poetry", "speech_song"],
1004
+ "requires": ["WORLD.md"]
1005
+ },
1006
+ "spread-layout": {
1007
+ "category": "illustration",
1008
+ "available": ["visual"],
1009
+ "hidden": ["prose", "script", "academic", "poetry", "interactive", "speech_song", "sacred"]
1010
+ },
1011
+ "panel-layout": {
1012
+ "category": "illustration",
1013
+ "available": ["visual"],
1014
+ "constraint": "comic_only",
1015
+ "hidden": ["prose", "script", "academic", "poetry", "interactive", "speech_song", "sacred"]
1016
+ },
1017
+ "storyboard": {
1018
+ "category": "illustration",
1019
+ "available": ["script", "visual"],
1020
+ "hidden": ["prose", "academic", "poetry", "interactive", "speech_song", "sacred"]
1021
+ },
1022
+ "front-matter": {
1023
+ "category": "publishing",
1024
+ "available": ["prose", "script", "academic", "visual", "sacred"],
1025
+ "adapted": {
1026
+ "academic": { "behavior": "academic_front_matter" },
1027
+ "sacred": { "behavior": "sacred_front_matter" }
1028
+ },
1029
+ "hidden": ["poetry", "interactive", "speech_song"],
1030
+ "requires": ["complete-draft"]
1031
+ },
1032
+ "back-matter": {
1033
+ "category": "publishing",
1034
+ "available": ["prose", "script", "academic", "visual", "sacred"],
1035
+ "adapted": {
1036
+ "academic": { "behavior": "academic_back_matter" },
1037
+ "sacred": { "behavior": "sacred_back_matter" }
1038
+ },
1039
+ "hidden": ["poetry", "interactive", "speech_song"],
1040
+ "requires": ["complete-draft"]
1041
+ },
1042
+ "blurb": {
1043
+ "category": "publishing",
1044
+ "available": ["prose", "script", "visual", "poetry", "interactive", "sacred"],
1045
+ "hidden": ["academic", "speech_song"],
1046
+ "requires": ["complete-draft"]
1047
+ },
1048
+ "synopsis": {
1049
+ "category": "publishing",
1050
+ "available": ["prose", "script", "visual"],
1051
+ "hidden": ["academic", "poetry", "interactive", "speech_song", "sacred"],
1052
+ "requires": ["complete-draft"]
1053
+ },
1054
+ "query-letter": {
1055
+ "category": "publishing",
1056
+ "available": ["prose", "script", "sacred"],
1057
+ "hidden": ["academic", "visual", "poetry", "interactive", "speech_song"],
1058
+ "requires": ["blurb", "synopsis"]
1059
+ },
1060
+ "book-proposal": {
1061
+ "category": "publishing",
1062
+ "available": ["prose", "sacred"],
1063
+ "constraint": "nonfiction_only",
1064
+ "hidden": ["script", "academic", "visual", "poetry", "interactive", "speech_song"],
1065
+ "requires": ["synopsis"]
1066
+ },
1067
+ "discussion-questions": {
1068
+ "category": "publishing",
1069
+ "available": ["prose"],
1070
+ "adapted": {
1071
+ "sacred": { "rename": "study-questions" }
1072
+ },
1073
+ "hidden": ["script", "academic", "visual", "poetry", "interactive", "speech_song"],
1074
+ "requires": ["complete-draft"]
1075
+ },
1076
+ "publish": {
1077
+ "category": "publishing",
1078
+ "available": ["all"],
1079
+ "description": "Publishing wizard or preset-driven pipeline (wraps export commands)"
1080
+ },
1081
+ "export": {
1082
+ "category": "publishing",
1083
+ "available": ["all"],
1084
+ "description": "Compile and export manuscript to publication-ready formats (markdown, docx, pdf, epub, fountain, fdx, latex, packages)",
1085
+ "requires": ["complete-draft"]
1086
+ },
1087
+ "autopilot-publish": {
1088
+ "category": "publishing",
1089
+ "available": ["all"],
1090
+ "description": "Run full publishing pipeline unattended with quality gate",
1091
+ "requires": ["complete-draft"]
1092
+ },
1093
+ "build-ebook": {
1094
+ "category": "publishing",
1095
+ "available": ["prose", "visual", "poetry", "interactive", "sacred"],
1096
+ "description": "Build EPUB with platform-aware accessibility guardrails (Pandoc + EAA compliance)",
1097
+ "requires": ["complete-draft"]
1098
+ },
1099
+ "build-print": {
1100
+ "category": "publishing",
1101
+ "available": ["prose", "visual", "poetry", "sacred", "academic", "script"],
1102
+ "description": "Build print-ready PDF with platform trim sizes and page-count guardrails (Pandoc + Typst), and academic publisher class wrappers for IEEE, ACM, Springer LNCS, Elsevier, and APA7 (Pandoc + LaTeX).",
1103
+ "requires": ["complete-draft"]
1104
+ },
1105
+ "build-smashwords": {
1106
+ "category": "publishing",
1107
+ "available": ["prose", "visual"],
1108
+ "description": "Build Smashwords/D2D-compliant DOCX via Pandoc --reference-doc (no tabs, first-line indent via style, auto-TOC)",
1109
+ "requires": ["complete-draft"]
1110
+ },
1111
+ "build-poetry-submission": {
1112
+ "category": "publishing",
1113
+ "available": ["poetry"],
1114
+ "description": "Build poetry submission manuscript DOCX (one poem per page, 12pt Times/Garamond, title page, TOC)",
1115
+ "requires": ["complete-draft"]
1116
+ },
1117
+ "translate": {
1118
+ "category": "translation",
1119
+ "available": ["all"],
1120
+ "description": "Translate manuscript per-unit using fresh-context-per-unit pattern with glossary and translation memory",
1121
+ "requires": ["complete-draft"]
1122
+ },
1123
+ "translation-glossary": {
1124
+ "category": "translation",
1125
+ "available": ["all"],
1126
+ "description": "Create and manage bilingual term glossary for consistent translation"
1127
+ },
1128
+ "translation-memory": {
1129
+ "category": "translation",
1130
+ "available": ["all"],
1131
+ "description": "Build and manage translation memory from completed translations"
1132
+ },
1133
+ "cultural-adaptation": {
1134
+ "category": "translation",
1135
+ "available": ["all"],
1136
+ "description": "Flag idioms, humor, customs, and cultural references that need localization",
1137
+ "requires": ["translate"]
1138
+ },
1139
+ "back-translate": {
1140
+ "category": "translation",
1141
+ "available": ["all"],
1142
+ "description": "Translate translation back to source language for side-by-side verification",
1143
+ "requires": ["translate"]
1144
+ },
1145
+ "multi-publish": {
1146
+ "category": "translation",
1147
+ "available": ["all"],
1148
+ "description": "Export translated editions in all target formats with localized front/back matter",
1149
+ "requires": ["translate"]
1150
+ },
1151
+ "autopilot-translate": {
1152
+ "category": "translation",
1153
+ "available": ["all"],
1154
+ "description": "Run multi-language translation pipeline unattended with glossary, translation, and publishing",
1155
+ "requires": ["complete-draft"]
1156
+ },
1157
+ "sacred:concordance": {
1158
+ "category": "sacred_exclusive",
1159
+ "available": ["sacred"],
1160
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1161
+ "requires": ["draft_exists"]
1162
+ },
1163
+ "sacred:cross-reference": {
1164
+ "category": "sacred_exclusive",
1165
+ "available": ["sacred"],
1166
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1167
+ "requires": ["draft_exists"]
1168
+ },
1169
+ "sacred:genealogy": {
1170
+ "category": "sacred_exclusive",
1171
+ "available": ["sacred"],
1172
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1173
+ "requires": ["FIGURES.md", { "min_figures": 2 }]
1174
+ },
1175
+ "sacred:chronology": {
1176
+ "category": "sacred_exclusive",
1177
+ "available": ["sacred"],
1178
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"]
1179
+ },
1180
+ "sacred:annotation-layer": {
1181
+ "category": "sacred_exclusive",
1182
+ "available": ["sacred"],
1183
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1184
+ "requires": ["draft_exists"]
1185
+ },
1186
+ "sacred:verse-numbering": {
1187
+ "category": "sacred_exclusive",
1188
+ "available": ["sacred"],
1189
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1190
+ "requires": ["draft_exists"]
1191
+ },
1192
+ "sacred-numbering-format": {
1193
+ "category": "sacred_exclusive",
1194
+ "available": ["sacred"],
1195
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1196
+ "requires": ["config.tradition"]
1197
+ },
1198
+ "sacred:source-tracking": {
1199
+ "category": "sacred_exclusive",
1200
+ "available": ["sacred"],
1201
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"]
1202
+ },
1203
+ "sacred:doctrinal-check": {
1204
+ "category": "sacred_exclusive",
1205
+ "available": ["sacred"],
1206
+ "hidden": ["prose", "script", "academic", "visual", "poetry", "interactive", "speech_song"],
1207
+ "requires": ["draft_exists", "DOCTRINES.md"]
1208
+ },
1209
+ "manager": {
1210
+ "category": "utility",
1211
+ "available": ["all"],
1212
+ "description": "Interactive command center for managing multiple writing projects"
1213
+ },
1214
+ "health": {
1215
+ "category": "utility",
1216
+ "available": ["all"],
1217
+ "description": "Diagnose and repair common project state issues"
1218
+ },
1219
+ "scan": {
1220
+ "category": "utility",
1221
+ "available": ["all"],
1222
+ "description": "Detect drift between recorded state (STATE.md, OUTLINE.md, config.json) and what is on disk"
1223
+ },
1224
+ "sync": {
1225
+ "category": "utility",
1226
+ "available": ["all"],
1227
+ "description": "Synchronize installed Scriveno runtime commands, skills, and agents with the current source"
1228
+ },
1229
+ "cleanup": {
1230
+ "category": "utility",
1231
+ "available": ["all"],
1232
+ "description": "Strip template scaffold markers from draft files"
1233
+ },
1234
+ "validate": {
1235
+ "category": "utility",
1236
+ "available": ["all"],
1237
+ "description": "Scan manuscript for unresolved scaffold markers before export"
1238
+ },
1239
+ "fast": {
1240
+ "category": "utility",
1241
+ "available": ["all"],
1242
+ "description": "Make a quick inline edit without full planning overhead"
1243
+ },
1244
+ "add-note": {
1245
+ "category": "utility",
1246
+ "available": ["all"],
1247
+ "description": "Add a quick note or reminder to the project notes file"
1248
+ },
1249
+ "check-notes": {
1250
+ "category": "utility",
1251
+ "available": ["all"],
1252
+ "description": "Review all project notes"
1253
+ },
1254
+ "plant-seed": {
1255
+ "category": "utility",
1256
+ "available": ["all"],
1257
+ "description": "Plant a creative seed -- an idea, image, or fragment for future use"
1258
+ },
1259
+ "troubleshoot": {
1260
+ "category": "utility",
1261
+ "available": ["all"],
1262
+ "description": "Diagnose why something isn't working and suggest fixes"
1263
+ },
1264
+ "thread": {
1265
+ "category": "utility",
1266
+ "available": ["all"],
1267
+ "description": "Start or continue a focused conversation thread on a specific topic"
1268
+ },
1269
+ "settings": { "category": "utility", "available": ["all"] },
1270
+ "profile-writer": { "category": "utility", "available": ["all"] },
1271
+ "save": { "category": "session", "available": ["all"] },
1272
+ "history": { "category": "session", "available": ["all"] },
1273
+ "compare": { "category": "session", "available": ["all"] },
1274
+ "versions": { "category": "session", "available": ["all"] },
1275
+ "undo": { "category": "session", "available": ["all"] },
1276
+ "pause-work": { "category": "session", "available": ["all"] },
1277
+ "resume-work": { "category": "session", "available": ["all"] },
1278
+ "session-report": { "category": "session", "available": ["all"] },
1279
+ "track": {
1280
+ "category": "collaboration",
1281
+ "description": "Manage revision tracks -- create, switch, compare, merge, and propose changes",
1282
+ "subcommands": ["create", "list", "switch", "compare", "merge", "propose"],
1283
+ "available": ["prose", "script", "academic", "technical", "visual", "sacred", "poetry", "interactive", "speech_song"],
1284
+ "hidden": [],
1285
+ "requires": [],
1286
+ "co_writing": true
1287
+ },
1288
+ "manuscript-stats": { "category": "navigation", "available": ["all"] },
1289
+ "complete-draft": { "category": "core", "available": ["all"] },
1290
+ "new-revision": { "category": "core", "available": ["all"] },
1291
+ "autopilot": { "category": "core", "available": ["all"] },
1292
+ "series-bible": { "category": "core", "available": ["all"] }
1293
+ },
1294
+
1295
+ "exports": {
1296
+ "markdown": { "available": ["all"] },
1297
+ "docx_manuscript": { "available": ["prose", "script", "academic", "technical", "poetry", "speech_song", "sacred"] },
1298
+ "docx_formatted": { "available": ["prose", "academic", "technical", "poetry", "speech_song", "sacred"] },
1299
+ "pdf_manuscript": { "available": ["prose", "script", "academic", "technical", "visual", "poetry", "speech_song", "sacred"] },
1300
+ "pdf_print_ready": { "available": ["prose", "visual", "poetry", "sacred"] },
1301
+ "fountain": { "available": ["script"] },
1302
+ "fdx": { "available": ["script"], "constraint": "screenplay_or_tv_only" },
1303
+ "latex": { "available": ["academic", "sacred"], "note_for_sacred": "critical editions" },
1304
+ "epub": { "available": ["prose", "visual", "poetry", "interactive", "sacred"] },
1305
+ "build_ebook": { "available": ["prose", "visual", "poetry", "interactive", "sacred"] },
1306
+ "build_print": { "available": ["prose", "visual", "poetry", "sacred", "academic", "script"] },
1307
+ "mobi": { "available": ["prose", "visual", "sacred"] },
1308
+ "kdp_package": { "available": ["prose", "visual", "poetry", "sacred"] },
1309
+ "ingram_package": { "available": ["prose", "visual", "poetry", "sacred"] },
1310
+ "query_package": { "available": ["prose", "script", "sacred"] },
1311
+ "submission_package": { "available": ["prose", "script", "sacred"] },
1312
+ "apa_mla_chicago": { "available": ["academic"] },
1313
+ "bibtex": { "available": ["academic"] }
1314
+ },
1315
+
1316
+ "dependencies": {
1317
+ "core_chain": [
1318
+ { "command": "new-work", "requires": [] },
1319
+ { "command": "discuss", "requires": ["OUTLINE.md"] },
1320
+ { "command": "plan", "requires": ["{N}-CONTEXT.md"] },
1321
+ { "command": "draft", "requires": [".manuscript/plans/{N}-*-PLAN.md"] },
1322
+ { "command": "editor-review", "requires": [".manuscript/drafts/body/{N}-*-DRAFT.md"] },
1323
+ { "command": "submit", "requires": [".manuscript/reviews/{N}-REVIEW.md"] },
1324
+ { "command": "complete-draft", "requires": ["all_units_submitted"] },
1325
+ { "command": "new-revision", "requires": ["archived_draft"] }
1326
+ ],
1327
+ "feature_prerequisites": {
1328
+ "relationship-map": ["CHARACTERS.md", { "min_characters": 2 }],
1329
+ "subplot-map": ["OUTLINE.md", { "min_threads": 2 }],
1330
+ "character-arc": ["CHARACTERS.md"],
1331
+ "character-voice-sample": ["CHARACTERS.md", "STYLE-GUIDE.md"],
1332
+ "plot-graph": ["OUTLINE.md"],
1333
+ "timeline": ["OUTLINE.md"],
1334
+ "theme-tracker": ["THEMES.md"],
1335
+ "subject-touch": ["THEMES.md", "draft_exists"],
1336
+ "continuity-check": ["draft_exists"],
1337
+ "voice-check": ["draft_exists", "STYLE-GUIDE.md"],
1338
+ "pacing-analysis": ["draft_exists"],
1339
+ "dialogue-audit": ["draft_exists_with_dialogue"],
1340
+ "beta-reader": ["draft_exists"],
1341
+ "line-edit": ["draft_exists"],
1342
+ "copy-edit": ["draft_exists"],
1343
+ "sensitivity-review": ["draft_exists"],
1344
+ "originality-check": ["draft_exists"],
1345
+ "polish": ["draft_exists", "STYLE-GUIDE.md"],
1346
+ "illustrate-scene": ["ART-DIRECTION.md", "scene_drafted"],
1347
+ "character-ref": ["CHARACTERS.md"],
1348
+ "cover-art": ["WORK.md"],
1349
+ "map-illustration": ["WORLD.md"],
1350
+ "sacred:concordance": ["draft_exists"],
1351
+ "sacred:cross-reference": ["draft_exists"],
1352
+ "sacred:genealogy": ["FIGURES.md", { "min_figures": 2 }],
1353
+ "sacred:chronology": ["OUTLINE.md"],
1354
+ "sacred:annotation-layer": ["draft_exists"],
1355
+ "sacred:verse-numbering": ["draft_exists"],
1356
+ "sacred:source-tracking": ["WORK.md"],
1357
+ "sacred:doctrinal-check": ["draft_exists", "DOCTRINES.md"],
1358
+ "outline": ["OUTLINE.md"],
1359
+ "add-unit": ["OUTLINE.md"],
1360
+ "insert-unit": ["OUTLINE.md"],
1361
+ "remove-unit": ["OUTLINE.md"],
1362
+ "split-unit": ["OUTLINE.md"],
1363
+ "merge-units": ["OUTLINE.md"],
1364
+ "reorder-units": ["OUTLINE.md"]
1365
+ },
1366
+ "publishing_prerequisites": {
1367
+ "front-matter": ["complete-draft"],
1368
+ "back-matter": ["complete-draft"],
1369
+ "blurb": ["complete-draft"],
1370
+ "synopsis": ["complete-draft"],
1371
+ "query-letter": ["blurb", "synopsis"],
1372
+ "book-proposal": ["synopsis", "sample_chapter"],
1373
+ "discussion-questions": ["complete-draft"],
1374
+ "export": ["complete-draft"],
1375
+ "kdp-package": ["front-matter", "back-matter", "export"],
1376
+ "translate": ["complete-draft"],
1377
+ "translation-glossary": [],
1378
+ "translation-memory": ["translate"],
1379
+ "cultural-adaptation": ["translate"],
1380
+ "back-translate": ["translate"],
1381
+ "multi-publish": ["translate", "kdp-package"],
1382
+ "autopilot-translate": ["complete-draft"]
1383
+ },
1384
+ "soft_prerequisites": {
1385
+ "draft": { "recommended": ["discuss"], "without_it": "Uses defaults from STYLE-GUIDE.md" },
1386
+ "plan": { "recommended": ["research_enabled"], "without_it": "Plans without genre research" },
1387
+ "cover-art": { "recommended": ["CHARACTERS.md", "ART-DIRECTION.md"], "without_it": "Generates from WORK.md alone" },
1388
+ "translate": { "recommended": ["translation-glossary"], "without_it": "Translates without term consistency" },
1389
+ "cultural-adaptation": { "recommended": ["translation-glossary"], "without_it": "Flags issues without glossary context" },
1390
+ "back-translate": { "recommended": ["cultural-adaptation"], "without_it": "Verifies without cultural adaptation context" },
1391
+ "multi-publish": { "recommended": ["back-translate", "cultural-adaptation"], "without_it": "Publishes without quality verification" },
1392
+ "autopilot-translate": { "recommended": ["translation-glossary"], "without_it": "Creates glossary automatically during pipeline" },
1393
+ "autopilot": { "recommended": ["profile-writer"], "without_it": "Uses config defaults" }
1394
+ }
1395
+ },
1396
+
1397
+ "command_adaptations": {
1398
+ "academic": {
1399
+ "copy-edit": { "adapted_name": "citation-check", "additional_focus": "citation format, bibliography consistency" },
1400
+ "beta-reader": { "adapted_name": "peer-review", "additional_focus": "methodology critique, argument strength" },
1401
+ "export": { "adapted_name": "journal-submit", "additional_presets": ["apa", "mla", "chicago"] }
1402
+ },
1403
+ "technical": {
1404
+ "build-world": { "adapted_name": "map-system", "description": "System boundaries, environments, and operating context" },
1405
+ "plot-graph": { "adapted_name": "procedure-map", "description": "Procedure flow, escalation path, and task sequence" },
1406
+ "editor-review": { "adapted_name": "technical-review", "description": "Accuracy, clarity, and audience-fit review" },
1407
+ "beta-reader": { "adapted_name": "usability-review", "description": "Operator or reader trial for task completion" },
1408
+ "continuity-check": { "adapted_name": "consistency-check", "description": "Terminology, procedure, and version consistency" }
1409
+ },
1410
+ "sacred": {
1411
+ "new-character": { "adapted_name": "new-figure", "description": "Create figure profile" },
1412
+ "character-sheet": { "adapted_name": "figure-sheet", "description": "View/edit figure profile" },
1413
+ "character-arc": { "adapted_name": "figure-arc", "description": "Spiritual/historical arc" },
1414
+ "cast-list": { "adapted_name": "figures-list", "description": "Roster of all figures" },
1415
+ "relationship-map": { "adapted_name": "lineage-map", "description": "Genealogical/covenantal relationships" },
1416
+ "build-world": { "adapted_name": "build-cosmology", "description": "Sacred geography, cosmological framework" },
1417
+ "character-voice-sample": { "adapted_name": "register-sample", "description": "Voice register sample" },
1418
+ "voice-check": { "adapted_name": "register-check", "description": "Voice register consistency" },
1419
+ "plot-graph": { "adapted_name": "theological-arc", "description": "Salvation history or dharmic cycle" },
1420
+ "theme-tracker": { "adapted_name": "doctrine-tracker", "description": "Doctrinal threads" },
1421
+ "subplot-map": { "adapted_name": "narrative-threads", "description": "Narrative threads across text" },
1422
+ "character-ref": { "adapted_name": "figure-ref", "description": "Visual figure reference for sacred art" },
1423
+ "discussion-questions": { "adapted_name": "study-questions", "description": "Study/reflection questions" },
1424
+ "editor-review": { "adapted_name": "scholarly-review", "description": "Academic review" },
1425
+ "beta-reader": { "adapted_name": "theological-review", "description": "Doctrinal/pastoral review" },
1426
+ "sensitivity-review": { "adapted_name": "interfaith-review", "description": "Sensitivity across traditions" }
1427
+ }
1428
+ },
1429
+
1430
+ "file_adaptations": {
1431
+ "default": {
1432
+ "BRIEF.md": "BRIEF.md",
1433
+ "RECORD.md": "RECORD.md",
1434
+ "CHARACTERS.md": "CHARACTERS.md",
1435
+ "RELATIONSHIPS.md": "RELATIONSHIPS.md",
1436
+ "WORLD.md": "WORLD.md",
1437
+ "PLOT-GRAPH.md": "PLOT-GRAPH.md",
1438
+ "THEMES.md": "THEMES.md"
1439
+ },
1440
+ "academic": {
1441
+ "BRIEF.md": "PROPOSAL.md",
1442
+ "RECORD.md": "RECORD.md",
1443
+ "CHARACTERS.md": "CONCEPTS.md",
1444
+ "WORLD.md": "CONTEXT.md",
1445
+ "PLOT-GRAPH.md": "ARGUMENT-MAP.md",
1446
+ "THEMES.md": "QUESTIONS.md"
1447
+ },
1448
+ "technical": {
1449
+ "BRIEF.md": "DOC-BRIEF.md",
1450
+ "RECORD.md": "RECORD.md",
1451
+ "CHARACTERS.md": "AUDIENCE.md",
1452
+ "RELATIONSHIPS.md": "DEPENDENCIES.md",
1453
+ "WORLD.md": "SYSTEM.md",
1454
+ "PLOT-GRAPH.md": "PROCEDURES.md",
1455
+ "THEMES.md": "REFERENCES.md"
1456
+ },
1457
+ "sacred": {
1458
+ "BRIEF.md": "FRAMEWORK.md",
1459
+ "RECORD.md": "RECORD.md",
1460
+ "CHARACTERS.md": "FIGURES.md",
1461
+ "RELATIONSHIPS.md": "LINEAGES.md",
1462
+ "WORLD.md": "COSMOLOGY.md",
1463
+ "PLOT-GRAPH.md": "THEOLOGICAL-ARC.md",
1464
+ "THEMES.md": "DOCTRINES.md"
1465
+ }
1466
+ },
1467
+
1468
+ "sacred_config_schema": {
1469
+ "tradition": {
1470
+ "values": ["catholic", "orthodox", "tewahedo", "protestant", "jewish", "islamic-hafs", "islamic-warsh", "pali", "tibetan", "sanskrit"],
1471
+ "required_when": "work_type.group == sacred",
1472
+ "description": "The specific sacred tradition profile slug for the work"
1473
+ },
1474
+ "verse_numbering_system": {
1475
+ "values": ["masoretic", "septuagint", "quranic_hafs", "quranic_warsh", "pali_canon", "custom"],
1476
+ "default": null,
1477
+ "description": "Verse/passage numbering convention for the tradition"
1478
+ },
1479
+ "calendar_system": {
1480
+ "values": ["gregorian", "hebrew", "hijri", "vikram_samvat", "buddhist_era", "regnal", "multiple"],
1481
+ "default": "gregorian",
1482
+ "description": "Calendar system used for dates and chronology"
1483
+ },
1484
+ "translation_philosophy": {
1485
+ "values": ["formal_equivalence", "dynamic_equivalence", "paraphrase", "interlinear"],
1486
+ "default": "formal_equivalence",
1487
+ "description": "Approach to sacred text translation"
1488
+ },
1489
+ "canonical_alignment": {
1490
+ "type": "string",
1491
+ "examples": ["kjv", "nrsv", "niv", "sahih_international", "yusuf_ali"],
1492
+ "default": null,
1493
+ "description": "Canonical translation to align vocabulary and phrasing with"
1494
+ },
1495
+ "annotation_traditions": {
1496
+ "type": "array",
1497
+ "examples": ["catholic", "reformed", "orthodox", "sunni", "shia", "theravada", "mahayana"],
1498
+ "default": [],
1499
+ "description": "Annotation traditions to apply or reference"
1500
+ },
1501
+ "doctrinal_framework": {
1502
+ "type": "string",
1503
+ "examples": ["nicene_creed", "westminster_confession", "augsburg_confession", "aqidah_tahawiyya"],
1504
+ "default": null,
1505
+ "description": "Doctrinal framework guiding interpretation"
1506
+ },
1507
+ "preserve_source_terms": {
1508
+ "type": "array",
1509
+ "default": [],
1510
+ "description": "Terms that should never be translated, kept in source language with transliteration"
1511
+ },
1512
+ "transliteration_style": {
1513
+ "values": ["academic", "popular", "tradition_standard"],
1514
+ "default": "popular",
1515
+ "description": "Style of transliteration for non-Latin script terms"
1516
+ }
1517
+ },
1518
+
1519
+ "architectural_profiles": {
1520
+ "_description": "Phase 29 v1.7: valid values + work-type defaults for the project-spec tradition and platform keys. The runtime validator cross-checks these values against the templates/sacred/ and templates/platforms/ directory listings -- the intersection is the accepted set, so new contributor-dropped manifests are picked up at load time without editing this file.",
1521
+ "_render_variants": {
1522
+ "_note": "How templates/WORK.md {{PROFILE_BLOCK}} is rendered per work-type group by /scr:new-work. Wiring of new-work substitution lands in a later phase.",
1523
+ "sacred": "- **Tradition:** {{TRADITION}}\n- **Platform:** {{PLATFORM}}",
1524
+ "prose": "- **Platform:** {{PLATFORM}}",
1525
+ "visual": "- **Platform:** {{PLATFORM}}",
1526
+ "poetry": "- **Platform:** {{PLATFORM}}",
1527
+ "script": "Not applicable for this work type.",
1528
+ "academic": "Not applicable for this work type.",
1529
+ "technical": "Not applicable for this work type.",
1530
+ "interactive": "Not applicable for this work type.",
1531
+ "speech_song": "Not applicable for this work type."
1532
+ },
1533
+ "traditions": {
1534
+ "_seeded": ["catholic", "orthodox", "tewahedo", "protestant", "jewish", "islamic-hafs", "islamic-warsh", "pali", "tibetan", "sanskrit"],
1535
+ "_note": "This array seeds the initial set. The authoritative runtime value list is the intersection of _seeded with directory names under templates/sacred/ that contain a manifest.yaml. A contributor dropping templates/sacred/<new-tradition>/manifest.yaml extends the accepted set without editing this file."
1536
+ },
1537
+ "platforms": {
1538
+ "_seeded": ["kdp", "ingram", "d2d", "apple", "kobo", "google", "bn", "smashwords"],
1539
+ "_note": "This array seeds the initial set. The authoritative runtime value list is the intersection of _seeded with directory names under templates/platforms/ that contain a manifest.yaml. A contributor dropping templates/platforms/<new-platform>/manifest.yaml extends the accepted set without editing this file."
1540
+ },
1541
+ "applies_to_groups": {
1542
+ "tradition": ["sacred"],
1543
+ "platform": ["prose", "visual", "poetry", "sacred"]
1544
+ },
1545
+ "defaults_by_work_type": {
1546
+ "_description": "Per-work-type defaults applied by the runtime when the project spec omits the key. The value MUST be one of the seeded traditions/platforms above. An unlisted work type MUST NOT receive a default (runtime returns null).",
1547
+ "tradition": {
1548
+ "scripture_biblical": "catholic",
1549
+ "scripture_quranic": "islamic-hafs",
1550
+ "scripture_torah": "jewish",
1551
+ "scripture_buddhist": "pali",
1552
+ "scripture_vedic": "sanskrit",
1553
+ "scripture_generic": null,
1554
+ "commentary": null,
1555
+ "devotional": null,
1556
+ "liturgical": null,
1557
+ "historical_chronicle": null,
1558
+ "historical_account": null,
1559
+ "mythological_collection": null,
1560
+ "religious_epic": null,
1561
+ "sermon": null,
1562
+ "homiletic_collection": null
1563
+ },
1564
+ "platform": {
1565
+ "novel": "kdp",
1566
+ "novella": "kdp",
1567
+ "short_story": "kdp",
1568
+ "flash_fiction": "kdp",
1569
+ "memoir": "kdp",
1570
+ "creative_nonfiction": "kdp",
1571
+ "biography": "kdp",
1572
+ "essay": "kdp",
1573
+ "essay_collection": "kdp",
1574
+ "poetry_collection": "kdp",
1575
+ "single_poem": "kdp",
1576
+ "song_lyric": "kdp",
1577
+ "comic": "kdp",
1578
+ "graphic_novel": "kdp",
1579
+ "childrens_book": "kdp",
1580
+ "picture_book": "kdp",
1581
+ "scripture_biblical": "kdp",
1582
+ "scripture_quranic": "kdp",
1583
+ "scripture_torah": "kdp",
1584
+ "scripture_vedic": "kdp",
1585
+ "scripture_buddhist": "kdp",
1586
+ "scripture_generic": "kdp",
1587
+ "commentary": "kdp",
1588
+ "devotional": "kdp",
1589
+ "liturgical": "kdp",
1590
+ "historical_chronicle": "kdp",
1591
+ "historical_account": "kdp",
1592
+ "mythological_collection": "kdp",
1593
+ "religious_epic": "kdp",
1594
+ "sermon": "kdp",
1595
+ "homiletic_collection": "kdp"
1596
+ }
1597
+ }
1598
+ },
1599
+
1600
+ "messages": {
1601
+ "command_hidden": "The `{command}` command is designed for {available_groups}. Your {work_type} uses `{alternative}` instead.",
1602
+ "prerequisite_missing": "You need to run `{prerequisite}` before `{command}`. Want me to run it now?",
1603
+ "prerequisite_file_missing": "The `{command}` command needs `{file}` which doesn't exist yet. Run `{generator_command}` first.",
1604
+ "command_adapted": "Note: in your {work_type} project, `{original}` is called `{adapted}`. Both names work."
1605
+ }
1606
+ }