@oh-story/dsh 0.1.0

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 (488) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +38 -0
  3. package/cordis.patch.yml +3 -0
  4. package/lib/client.js +1201 -0
  5. package/lib/client.js.map +7 -0
  6. package/lib/drama/LICENSE.upstream +21 -0
  7. package/lib/drama/manifest.json +1012 -0
  8. package/lib/drama/skills/short-drama/SKILL.md +153 -0
  9. package/lib/drama/skills/short-drama/agents/openai.yaml +4 -0
  10. package/lib/drama/skills/short-drama/assets/creator-decision.example.jsonl +4 -0
  11. package/lib/drama/skills/short-drama/assets/production-observation.example.jsonl +2 -0
  12. package/lib/drama/skills/short-drama/assets/project-template/short-drama.json +36 -0
  13. package/lib/drama/skills/short-drama/assets/reference-observation.example.jsonl +2 -0
  14. package/lib/drama/skills/short-drama/references/audience-reveal.md +74 -0
  15. package/lib/drama/skills/short-drama/references/contract-and-ownership.md +94 -0
  16. package/lib/drama/skills/short-drama/references/creator-workflow.md +82 -0
  17. package/lib/drama/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +73 -0
  18. package/lib/drama/skills/short-drama/references/form-cards//344/272/214/347/273/264/345/212/250/346/200/201/346/274/253.md +74 -0
  19. package/lib/drama/skills/short-drama/references/form-cards//345/233/275/346/274/253/344/272/214/346/254/241/345/205/203.md +79 -0
  20. package/lib/drama/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +75 -0
  21. package/lib/drama/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +85 -0
  22. package/lib/drama/skills/short-drama/references/form-cards//351/243/216/346/240/274/345/214/226/344/270/211/347/273/264.md +72 -0
  23. package/lib/drama/skills/short-drama/references/knowhow-index.md +80 -0
  24. package/lib/drama/skills/short-drama/references/lifecycle-commands.md +130 -0
  25. package/lib/drama/skills/short-drama/references/look-development.md +52 -0
  26. package/lib/drama/skills/short-drama/references/pickup-and-alternate.md +58 -0
  27. package/lib/drama/skills/short-drama/references/production-form-profiles.md +126 -0
  28. package/lib/drama/skills/short-drama/references/reference-roles.md +142 -0
  29. package/lib/drama/skills/short-drama/references/runtime-preflight.md +27 -0
  30. package/lib/drama/skills/short-drama/scripts/project_tool.py +1963 -0
  31. package/lib/drama/skills/short-drama/scripts/selftest.py +287 -0
  32. package/lib/drama/skills/short-drama-assets/SKILL.md +187 -0
  33. package/lib/drama/skills/short-drama-assets/agents/openai.yaml +4 -0
  34. package/lib/drama/skills/short-drama-assets/assets/character-look.example.jsonl +3 -0
  35. package/lib/drama/skills/short-drama-assets/assets/continuity.example.jsonl +4 -0
  36. package/lib/drama/skills/short-drama-assets/assets/decisions.example.jsonl +5 -0
  37. package/lib/drama/skills/short-drama-assets/assets/location-view.example.jsonl +3 -0
  38. package/lib/drama/skills/short-drama-assets/assets/occurrences.example.jsonl +5 -0
  39. package/lib/drama/skills/short-drama-assets/assets/prop-state.example.jsonl +3 -0
  40. package/lib/drama/skills/short-drama-assets/examples/minimal/characters.jsonl +2 -0
  41. package/lib/drama/skills/short-drama-assets/examples/minimal/looks.jsonl +2 -0
  42. package/lib/drama/skills/short-drama-assets/references/asset-review-checklist.md +89 -0
  43. package/lib/drama/skills/short-drama-assets/references/character-and-look.md +164 -0
  44. package/lib/drama/skills/short-drama-assets/references/continuity-delta.md +123 -0
  45. package/lib/drama/skills/short-drama-assets/references/identity-vs-variant.md +146 -0
  46. package/lib/drama/skills/short-drama-assets/references/location-and-view.md +84 -0
  47. package/lib/drama/skills/short-drama-assets/references/occurrence-extraction.md +111 -0
  48. package/lib/drama/skills/short-drama-assets/references/prop-and-state.md +107 -0
  49. package/lib/drama/skills/short-drama-assets/references/stage-contract.md +136 -0
  50. package/lib/drama/skills/short-drama-assets/references/voice-direction.md +171 -0
  51. package/lib/drama/skills/short-drama-assets/scripts/asset_check.py +267 -0
  52. package/lib/drama/skills/short-drama-assets/scripts/selftest.py +89 -0
  53. package/lib/drama/skills/short-drama-develop/SKILL.md +157 -0
  54. package/lib/drama/skills/short-drama-develop/agents/openai.yaml +4 -0
  55. package/lib/drama/skills/short-drama-develop/assets/adaptation-map.example.jsonl +1 -0
  56. package/lib/drama/skills/short-drama-develop/assets/creative-brief.md +120 -0
  57. package/lib/drama/skills/short-drama-develop/assets/episode-map.jsonl +1 -0
  58. package/lib/drama/skills/short-drama-develop/assets/story-engine.md +181 -0
  59. package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +219 -0
  60. package/lib/drama/skills/short-drama-develop/references/creative-reference-intake.md +57 -0
  61. package/lib/drama/skills/short-drama-develop/references/director-brief-craft.md +113 -0
  62. package/lib/drama/skills/short-drama-develop/references/episode-design.md +509 -0
  63. package/lib/drama/skills/short-drama-develop/references/genre-and-hook-playbook.md +240 -0
  64. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +112 -0
  65. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +51 -0
  66. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +51 -0
  67. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +51 -0
  68. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +51 -0
  69. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +51 -0
  70. package/lib/drama/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +51 -0
  71. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +51 -0
  72. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +109 -0
  73. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/201/214/345/234/272/345/226/234/345/211/247.md +51 -0
  74. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +51 -0
  75. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +51 -0
  76. package/lib/drama/skills/short-drama-develop/references/genre-cards.md +92 -0
  77. package/lib/drama/skills/short-drama-develop/references/mechanism-loop.md +282 -0
  78. package/lib/drama/skills/short-drama-develop/references/multi-episode-intake.md +128 -0
  79. package/lib/drama/skills/short-drama-develop/references/premise-devices.md +211 -0
  80. package/lib/drama/skills/short-drama-develop/references/reveal-reversal-payoff.md +99 -0
  81. package/lib/drama/skills/short-drama-develop/references/serial-character-and-memory.md +293 -0
  82. package/lib/drama/skills/short-drama-develop/references/stage-contract.md +88 -0
  83. package/lib/drama/skills/short-drama-develop/references/story-craft.md +359 -0
  84. package/lib/drama/skills/short-drama-develop/scripts/episode_intake.py +699 -0
  85. package/lib/drama/skills/short-drama-develop/scripts/selftest.py +47 -0
  86. package/lib/drama/skills/short-drama-image-prompts/SKILL.md +181 -0
  87. package/lib/drama/skills/short-drama-image-prompts/agents/openai.yaml +4 -0
  88. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +187 -0
  89. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompts.md +37 -0
  90. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +128 -0
  91. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-prompts.md +31 -0
  92. package/lib/drama/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +2 -0
  93. package/lib/drama/skills/short-drama-image-prompts/references/character-and-look.md +154 -0
  94. package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +231 -0
  95. package/lib/drama/skills/short-drama-image-prompts/references/edit-and-revision.md +122 -0
  96. package/lib/drama/skills/short-drama-image-prompts/references/location-plate.md +152 -0
  97. package/lib/drama/skills/short-drama-image-prompts/references/look-and-state-variant.md +96 -0
  98. package/lib/drama/skills/short-drama-image-prompts/references/lookdev-frame.md +38 -0
  99. package/lib/drama/skills/short-drama-image-prompts/references/production-sheet-recipes.md +177 -0
  100. package/lib/drama/skills/short-drama-image-prompts/references/prop-plate.md +140 -0
  101. package/lib/drama/skills/short-drama-image-prompts/references/review-and-fixtures.md +92 -0
  102. package/lib/drama/skills/short-drama-image-prompts/references/stage-contract.md +89 -0
  103. package/lib/drama/skills/short-drama-image-prompts/scripts/image_prompt_check.py +443 -0
  104. package/lib/drama/skills/short-drama-image-prompts/scripts/selftest.py +93 -0
  105. package/lib/drama/skills/short-drama-novel-analyze/SKILL.md +245 -0
  106. package/lib/drama/skills/short-drama-novel-analyze/agents/openai.yaml +4 -0
  107. package/lib/drama/skills/short-drama-novel-analyze/assets/episode-candidate.example.jsonl +3 -0
  108. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-triage.md +116 -0
  109. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-value.md +124 -0
  110. package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +155 -0
  111. package/lib/drama/skills/short-drama-novel-analyze/references/chapter-extraction.md +141 -0
  112. package/lib/drama/skills/short-drama-novel-analyze/references/stage-contract.md +67 -0
  113. package/lib/drama/skills/short-drama-novel-analyze/scripts/novel_index.py +651 -0
  114. package/lib/drama/skills/short-drama-novel-analyze/scripts/selftest.py +51 -0
  115. package/lib/drama/skills/short-drama-produce/SKILL.md +103 -0
  116. package/lib/drama/skills/short-drama-produce/agents/openai.yaml +4 -0
  117. package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +140 -0
  118. package/lib/drama/skills/short-drama-produce/references/providers/gpt-image-2.md +24 -0
  119. package/lib/drama/skills/short-drama-produce/references/providers/minimax-music.md +25 -0
  120. package/lib/drama/skills/short-drama-produce/references/providers/seedance.md +40 -0
  121. package/lib/drama/skills/short-drama-produce/scripts/fixture_adapter.py +60 -0
  122. package/lib/drama/skills/short-drama-produce/scripts/production_tool.py +1635 -0
  123. package/lib/drama/skills/short-drama-produce/scripts/provider_adapters.py +964 -0
  124. package/lib/drama/skills/short-drama-produce/scripts/selftest.py +134 -0
  125. package/lib/drama/skills/short-drama-review/SKILL.md +178 -0
  126. package/lib/drama/skills/short-drama-review/agents/openai.yaml +4 -0
  127. package/lib/drama/skills/short-drama-review/assets/finding-template.jsonl +2 -0
  128. package/lib/drama/skills/short-drama-review/assets/supersession-decision.example.json +42 -0
  129. package/lib/drama/skills/short-drama-review/assets/verdict-template.json +32 -0
  130. package/lib/drama/skills/short-drama-review/examples/minimal-findings.jsonl +2 -0
  131. package/lib/drama/skills/short-drama-review/examples/minimal-verdict.json +34 -0
  132. package/lib/drama/skills/short-drama-review/references/anti-template-repair.md +114 -0
  133. package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +270 -0
  134. package/lib/drama/skills/short-drama-review/references/project-calibration.md +85 -0
  135. package/lib/drama/skills/short-drama-review/references/review-method.md +82 -0
  136. package/lib/drama/skills/short-drama-review/references/rubric-assets-prompts.md +115 -0
  137. package/lib/drama/skills/short-drama-review/references/rubric-source-analysis.md +108 -0
  138. package/lib/drama/skills/short-drama-review/references/rubric-story-script.md +164 -0
  139. package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +166 -0
  140. package/lib/drama/skills/short-drama-review/references/stage-contract.md +87 -0
  141. package/lib/drama/skills/short-drama-review/scripts/review_check.py +325 -0
  142. package/lib/drama/skills/short-drama-review/scripts/selftest.py +87 -0
  143. package/lib/drama/skills/short-drama-storyboard/SKILL.md +264 -0
  144. package/lib/drama/skills/short-drama-storyboard/agents/openai.yaml +4 -0
  145. package/lib/drama/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +2 -0
  146. package/lib/drama/skills/short-drama-storyboard/assets/coverage-template.json +49 -0
  147. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-prompts.md +32 -0
  148. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-template.jsonl +2 -0
  149. package/lib/drama/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +12 -0
  150. package/lib/drama/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +2 -0
  151. package/lib/drama/skills/short-drama-storyboard/assets/shot-template.jsonl +2 -0
  152. package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +241 -0
  153. package/lib/drama/skills/short-drama-storyboard/references/coverage-audition.md +39 -0
  154. package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +169 -0
  155. package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +264 -0
  156. package/lib/drama/skills/short-drama-storyboard/references/review-and-fixtures.md +70 -0
  157. package/lib/drama/skills/short-drama-storyboard/references/scene-visual-plan.md +39 -0
  158. package/lib/drama/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +157 -0
  159. package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +192 -0
  160. package/lib/drama/skills/short-drama-storyboard/references/shot-revision-identity.md +29 -0
  161. package/lib/drama/skills/short-drama-storyboard/references/stage-contract.md +110 -0
  162. package/lib/drama/skills/short-drama-storyboard/scripts/selftest.py +191 -0
  163. package/lib/drama/skills/short-drama-storyboard/scripts/storyboard_check.py +824 -0
  164. package/lib/drama/skills/short-drama-video-prompts/SKILL.md +245 -0
  165. package/lib/drama/skills/short-drama-video-prompts/agents/openai.yaml +4 -0
  166. package/lib/drama/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +21 -0
  167. package/lib/drama/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +101 -0
  168. package/lib/drama/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +212 -0
  169. package/lib/drama/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +2 -0
  170. package/lib/drama/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +31 -0
  171. package/lib/drama/skills/short-drama-video-prompts/assets/performance.fragment.json +38 -0
  172. package/lib/drama/skills/short-drama-video-prompts/assets/video-prompts.md +46 -0
  173. package/lib/drama/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +2 -0
  174. package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +240 -0
  175. package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +255 -0
  176. package/lib/drama/skills/short-drama-video-prompts/references/generability.md +93 -0
  177. package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +304 -0
  178. package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +191 -0
  179. package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +312 -0
  180. package/lib/drama/skills/short-drama-video-prompts/references/review-and-fixtures.md +168 -0
  181. package/lib/drama/skills/short-drama-video-prompts/references/stage-contract.md +110 -0
  182. package/lib/drama/skills/short-drama-video-prompts/scripts/container_check.py +329 -0
  183. package/lib/drama/skills/short-drama-video-prompts/scripts/motion_timing_check.py +450 -0
  184. package/lib/drama/skills/short-drama-video-prompts/scripts/music_spec_check.py +327 -0
  185. package/lib/drama/skills/short-drama-video-prompts/scripts/selftest.py +82 -0
  186. package/lib/drama/skills/short-drama-write/SKILL.md +284 -0
  187. package/lib/drama/skills/short-drama-write/agents/openai.yaml +4 -0
  188. package/lib/drama/skills/short-drama-write/assets/beats.jsonl +2 -0
  189. package/lib/drama/skills/short-drama-write/assets/episode-card-standalone.json +120 -0
  190. package/lib/drama/skills/short-drama-write/assets/episode-card.json +55 -0
  191. package/lib/drama/skills/short-drama-write/assets/screenplay.md +36 -0
  192. package/lib/drama/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +89 -0
  193. package/lib/drama/skills/short-drama-write/references/dialogue-craft.md +519 -0
  194. package/lib/drama/skills/short-drama-write/references/production-format-dialect.md +273 -0
  195. package/lib/drama/skills/short-drama-write/references/scene-handoff-capsule.md +51 -0
  196. package/lib/drama/skills/short-drama-write/references/scene-sound-dramaturgy.md +43 -0
  197. package/lib/drama/skills/short-drama-write/references/screenplay-format.md +260 -0
  198. package/lib/drama/skills/short-drama-write/references/script-craft.md +558 -0
  199. package/lib/drama/skills/short-drama-write/references/stage-contract.md +94 -0
  200. package/lib/drama/skills/short-drama-write/references/substitutable-realization.md +107 -0
  201. package/lib/drama/skills/short-drama-write/scripts/duration_estimate.py +309 -0
  202. package/lib/drama/skills/short-drama-write/scripts/screenplay_index.py +1091 -0
  203. package/lib/drama/skills/short-drama-write/scripts/selftest.py +229 -0
  204. package/lib/drama/skills/short-drama-write/scripts/voice_sheet_check.py +416 -0
  205. package/lib/index.js +756 -0
  206. package/lib/index.js.map +7 -0
  207. package/lib/oh-story/LICENSE.upstream +21 -0
  208. package/lib/oh-story/manifest.json +1351 -0
  209. package/lib/oh-story/roles/chapter-extractor.md +314 -0
  210. package/lib/oh-story/roles/character-designer.md +169 -0
  211. package/lib/oh-story/roles/consistency-checker.md +190 -0
  212. package/lib/oh-story/roles/narrative-writer.md +294 -0
  213. package/lib/oh-story/roles/story-architect.md +195 -0
  214. package/lib/oh-story/roles/story-explorer.md +364 -0
  215. package/lib/oh-story/roles/story-researcher.md +304 -0
  216. package/lib/oh-story/skills/browser-cdp/SKILL.md +175 -0
  217. package/lib/oh-story/skills/story/SKILL.md +116 -0
  218. package/lib/oh-story/skills/story/VERSION +1 -0
  219. package/lib/oh-story/skills/story-cover/SKILL.md +327 -0
  220. package/lib/oh-story/skills/story-cover/references/cover-styles.md +210 -0
  221. package/lib/oh-story/skills/story-deslop/SKILL.md +445 -0
  222. package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +582 -0
  223. package/lib/oh-story/skills/story-deslop/references/banned-words.md +147 -0
  224. package/lib/oh-story/skills/story-deslop/scripts/check-ai-patterns.js +1371 -0
  225. package/lib/oh-story/skills/story-deslop/scripts/check-degeneration.js +330 -0
  226. package/lib/oh-story/skills/story-deslop/scripts/check-outline-copy.js +241 -0
  227. package/lib/oh-story/skills/story-deslop/scripts/normalize-punctuation.js +410 -0
  228. package/lib/oh-story/skills/story-import/SKILL.md +634 -0
  229. package/lib/oh-story/skills/story-import/references/character-state-reverse.md +82 -0
  230. package/lib/oh-story/skills/story-import/references/format-and-structure.md +169 -0
  231. package/lib/oh-story/skills/story-import/references/length-routing.md +134 -0
  232. package/lib/oh-story/skills/story-import/references/state-tracking.md +108 -0
  233. package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +442 -0
  234. package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +175 -0
  235. package/lib/oh-story/skills/story-import/references/tracking-transaction.md +161 -0
  236. package/lib/oh-story/skills/story-import/scripts/tracking_commit.py +1139 -0
  237. package/lib/oh-story/skills/story-long-analyze/SKILL.md +329 -0
  238. package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +270 -0
  239. package/lib/oh-story/skills/story-long-analyze/references/material-decomposition.md +530 -0
  240. package/lib/oh-story/skills/story-long-analyze/references/output-templates.md +559 -0
  241. package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +80 -0
  242. package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +149 -0
  243. package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +133 -0
  244. package/lib/oh-story/skills/story-long-scan/SKILL.md +342 -0
  245. package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +197 -0
  246. package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +114 -0
  247. package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +105 -0
  248. package/lib/oh-story/skills/story-long-scan/references/scan-output-format.md +207 -0
  249. package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +78 -0
  250. package/lib/oh-story/skills/story-long-write/SKILL.md +327 -0
  251. package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +582 -0
  252. package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +302 -0
  253. package/lib/oh-story/skills/story-long-write/references/banned-words.md +147 -0
  254. package/lib/oh-story/skills/story-long-write/references/character-basics.md +445 -0
  255. package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +428 -0
  256. package/lib/oh-story/skills/story-long-write/references/character-relations.md +385 -0
  257. package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +502 -0
  258. package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +62 -0
  259. package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +282 -0
  260. package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +426 -0
  261. package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +209 -0
  262. package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +188 -0
  263. package/lib/oh-story/skills/story-long-write/references/format-and-structure.md +169 -0
  264. package/lib/oh-story/skills/story-long-write/references/genre-catalog.md +480 -0
  265. package/lib/oh-story/skills/story-long-write/references/genre-core-mechanics.md +415 -0
  266. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
  267. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
  268. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
  269. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
  270. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
  271. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
  272. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
  273. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
  274. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
  275. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
  276. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
  277. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
  278. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
  279. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
  280. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
  281. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
  282. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
  283. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
  284. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
  285. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
  286. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
  287. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
  288. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
  289. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
  290. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
  291. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
  292. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
  293. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
  294. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
  295. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
  296. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
  297. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
  298. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards.md +91 -0
  299. package/lib/oh-story/skills/story-long-write/references/genre-readers.md +235 -0
  300. package/lib/oh-story/skills/story-long-write/references/genre-writing-formulas.md +444 -0
  301. package/lib/oh-story/skills/story-long-write/references/hooks-chapter.md +225 -0
  302. package/lib/oh-story/skills/story-long-write/references/hooks-paragraph.md +146 -0
  303. package/lib/oh-story/skills/story-long-write/references/hooks-suspense.md +352 -0
  304. package/lib/oh-story/skills/story-long-write/references/opening-design.md +349 -0
  305. package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +457 -0
  306. package/lib/oh-story/skills/story-long-write/references/outline-methods.md +287 -0
  307. package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +389 -0
  308. package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +326 -0
  309. package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +522 -0
  310. package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +354 -0
  311. package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +711 -0
  312. package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +622 -0
  313. package/lib/oh-story/skills/story-long-write/references/quality-checklist.md +184 -0
  314. package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +109 -0
  315. package/lib/oh-story/skills/story-long-write/references/reversal-toolkit.md +349 -0
  316. package/lib/oh-story/skills/story-long-write/references/state-tracking.md +108 -0
  317. package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +409 -0
  318. package/lib/oh-story/skills/story-long-write/references/style-craft.md +347 -0
  319. package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +510 -0
  320. package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +161 -0
  321. package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +140 -0
  322. package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +171 -0
  323. package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +99 -0
  324. package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +284 -0
  325. package/lib/oh-story/skills/story-long-write/references/writing-craft.md +421 -0
  326. package/lib/oh-story/skills/story-long-write/scripts/check-ai-patterns.js +1371 -0
  327. package/lib/oh-story/skills/story-long-write/scripts/check-degeneration.js +330 -0
  328. package/lib/oh-story/skills/story-long-write/scripts/check-outline-copy.js +241 -0
  329. package/lib/oh-story/skills/story-long-write/scripts/normalize-punctuation.js +410 -0
  330. package/lib/oh-story/skills/story-long-write/scripts/tracking_commit.py +1139 -0
  331. package/lib/oh-story/skills/story-review/SKILL.md +483 -0
  332. package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +582 -0
  333. package/lib/oh-story/skills/story-review/references/banned-words.md +147 -0
  334. package/lib/oh-story/skills/story-review/references/character-relations.md +385 -0
  335. package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +282 -0
  336. package/lib/oh-story/skills/story-review/references/plot-core-methods.md +522 -0
  337. package/lib/oh-story/skills/story-review/references/quality-checklist.md +250 -0
  338. package/lib/oh-story/skills/story-review/references/quality-rubric.md +55 -0
  339. package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +18 -0
  340. package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +19 -0
  341. package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +20 -0
  342. package/lib/oh-story/skills/story-review/references/tracking-transaction.md +161 -0
  343. package/lib/oh-story/skills/story-review/scripts/check-ai-patterns.js +1371 -0
  344. package/lib/oh-story/skills/story-review/scripts/check-degeneration.js +330 -0
  345. package/lib/oh-story/skills/story-review/scripts/normalize-punctuation.js +410 -0
  346. package/lib/oh-story/skills/story-review/scripts/tracking_commit.py +1139 -0
  347. package/lib/oh-story/skills/story-setup/SKILL.md +495 -0
  348. package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +582 -0
  349. package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +147 -0
  350. package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +445 -0
  351. package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +428 -0
  352. package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +385 -0
  353. package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +282 -0
  354. package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +426 -0
  355. package/lib/oh-story/skills/story-setup/references/agent-references/emotional-methods.md +179 -0
  356. package/lib/oh-story/skills/story-setup/references/agent-references/format-and-structure.md +169 -0
  357. package/lib/oh-story/skills/story-setup/references/agent-references/genre-catalog.md +480 -0
  358. package/lib/oh-story/skills/story-setup/references/agent-references/genre-core-mechanics.md +415 -0
  359. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
  360. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
  361. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
  362. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
  363. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
  364. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
  365. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
  366. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
  367. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
  368. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
  369. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
  370. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
  371. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
  372. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
  373. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
  374. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
  375. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
  376. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
  377. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
  378. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
  379. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
  380. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
  381. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
  382. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
  383. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
  384. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
  385. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
  386. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
  387. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
  388. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
  389. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
  390. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
  391. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards.md +91 -0
  392. package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +235 -0
  393. package/lib/oh-story/skills/story-setup/references/agent-references/genre-writing-formulas.md +444 -0
  394. package/lib/oh-story/skills/story-setup/references/agent-references/hooks-chapter.md +225 -0
  395. package/lib/oh-story/skills/story-setup/references/agent-references/hooks-suspense.md +352 -0
  396. package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +349 -0
  397. package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +457 -0
  398. package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +287 -0
  399. package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +389 -0
  400. package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +522 -0
  401. package/lib/oh-story/skills/story-setup/references/agent-references/quality-checklist.md +247 -0
  402. package/lib/oh-story/skills/story-setup/references/agent-references/reversal-toolkit.md +349 -0
  403. package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +409 -0
  404. package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +510 -0
  405. package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +421 -0
  406. package/lib/oh-story/skills/story-short-analyze/SKILL.md +278 -0
  407. package/lib/oh-story/skills/story-short-analyze/references/anti-ai-writing.md +582 -0
  408. package/lib/oh-story/skills/story-short-analyze/references/banned-words.md +147 -0
  409. package/lib/oh-story/skills/story-short-analyze/references/character-basics.md +453 -0
  410. package/lib/oh-story/skills/story-short-analyze/references/character-design-methods.md +438 -0
  411. package/lib/oh-story/skills/story-short-analyze/references/character-relations.md +395 -0
  412. package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +79 -0
  413. package/lib/oh-story/skills/story-short-analyze/references/genre-catalog.md +490 -0
  414. package/lib/oh-story/skills/story-short-analyze/references/genre-core-mechanics.md +425 -0
  415. package/lib/oh-story/skills/story-short-analyze/references/genre-readers.md +245 -0
  416. package/lib/oh-story/skills/story-short-analyze/references/genre-writing-formulas.md +453 -0
  417. package/lib/oh-story/skills/story-short-analyze/references/genre-writing-techniques.md +475 -0
  418. package/lib/oh-story/skills/story-short-analyze/references/hooks-chapter.md +225 -0
  419. package/lib/oh-story/skills/story-short-analyze/references/hooks-paragraph.md +146 -0
  420. package/lib/oh-story/skills/story-short-analyze/references/hooks-suspense.md +352 -0
  421. package/lib/oh-story/skills/story-short-analyze/references/material-decomposition.md +685 -0
  422. package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +165 -0
  423. package/lib/oh-story/skills/story-short-analyze/references/output-templates.md +561 -0
  424. package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +242 -0
  425. package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +90 -0
  426. package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +54 -0
  427. package/lib/oh-story/skills/story-short-scan/SKILL.md +212 -0
  428. package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +90 -0
  429. package/lib/oh-story/skills/story-short-write/SKILL.md +433 -0
  430. package/lib/oh-story/skills/story-short-write/references/banned-words.md +147 -0
  431. package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +62 -0
  432. package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +282 -0
  433. package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +179 -0
  434. package/lib/oh-story/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +159 -0
  435. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +156 -0
  436. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +163 -0
  437. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +167 -0
  438. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +178 -0
  439. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +166 -0
  440. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +159 -0
  441. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +151 -0
  442. package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +153 -0
  443. package/lib/oh-story/skills/story-short-write/references/genre-styles//350/277/275/345/246/273/347/201/253/350/221/254/345/234/272.md +210 -0
  444. package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +444 -0
  445. package/lib/oh-story/skills/story-short-write/references/genre-writing-techniques.md +488 -0
  446. package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +225 -0
  447. package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +146 -0
  448. package/lib/oh-story/skills/story-short-write/references/hooks-suspense.md +352 -0
  449. package/lib/oh-story/skills/story-short-write/references/output-contract.md +165 -0
  450. package/lib/oh-story/skills/story-short-write/references/quality-checklist.md +222 -0
  451. package/lib/oh-story/skills/story-short-write/references/reversal-toolkit.md +349 -0
  452. package/lib/oh-story/skills/story-short-write/references/short-craft.md +185 -0
  453. package/lib/oh-story/skills/story-short-write/references/short-deslop.md +133 -0
  454. package/lib/oh-story/skills/story-short-write/references/short-format.md +167 -0
  455. package/lib/oh-story/skills/story-short-write/references/submission-craft.md +35 -0
  456. package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +158 -0
  457. package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +153 -0
  458. package/lib/oh-story/skills/story-short-write/scripts/check-ai-patterns.js +1371 -0
  459. package/lib/oh-story/skills/story-short-write/scripts/check-degeneration.js +330 -0
  460. package/lib/oh-story/skills/story-short-write/scripts/check-outline-copy.js +241 -0
  461. package/lib/oh-story/skills/story-short-write/scripts/normalize-punctuation.js +410 -0
  462. package/lib/types/client/file-activity.d.ts +30 -0
  463. package/lib/types/client/file-activity.d.ts.map +1 -0
  464. package/lib/types/client/file-tree.d.ts +20 -0
  465. package/lib/types/client/file-tree.d.ts.map +1 -0
  466. package/lib/types/client/index.d.ts +12 -0
  467. package/lib/types/client/index.d.ts.map +1 -0
  468. package/lib/types/client/jsonl-preview.d.ts +15 -0
  469. package/lib/types/client/jsonl-preview.d.ts.map +1 -0
  470. package/lib/types/client/markdown-preview.d.ts +38 -0
  471. package/lib/types/client/markdown-preview.d.ts.map +1 -0
  472. package/lib/types/index.d.ts +25 -0
  473. package/lib/types/index.d.ts.map +1 -0
  474. package/lib/types/native-hooks.d.ts +16 -0
  475. package/lib/types/native-hooks.d.ts.map +1 -0
  476. package/lib/types/role-provider.d.ts +6 -0
  477. package/lib/types/role-provider.d.ts.map +1 -0
  478. package/lib/types/role-tool.d.ts +10 -0
  479. package/lib/types/role-tool.d.ts.map +1 -0
  480. package/lib/types/skill-provider.d.ts +15 -0
  481. package/lib/types/skill-provider.d.ts.map +1 -0
  482. package/lib/types/workspace-request-trust.d.ts +13 -0
  483. package/lib/types/workspace-request-trust.d.ts.map +1 -0
  484. package/lib/types/workspace-route.d.ts +10 -0
  485. package/lib/types/workspace-route.d.ts.map +1 -0
  486. package/lib/types/workspace-security.d.ts +9 -0
  487. package/lib/types/workspace-security.d.ts.map +1 -0
  488. package/package.json +107 -0
@@ -0,0 +1,559 @@
1
+ # 拆文输出模板
2
+ 按需加载,配合 SKILL.md 和 material-decomposition.md 使用。
3
+
4
+ 本文件按 story-long-analyze 唯一管道的阶段编号组织:Stage 0-5 各阶段输出模板 + 停靠点「快速预览报告」模板 + 跨阶段通用速查。
5
+
6
+ ---
7
+
8
+ ## 通用速查
9
+
10
+ ### 爽点类型
11
+
12
+ | 类型 | 定义 | 例子 |
13
+ |------|------|------|
14
+ | 装逼打脸 | 实力碾压被轻视的人 | 「你也配?」 |
15
+ | 逆袭反转 | 绝境翻盘 | 废材觉醒 |
16
+ | 获得机缘 | 得到别人没有的 | 捡到神器 |
17
+ | 信息差碾压 | 读者和主角知道别人不知道的 | 重生先知优势 |
18
+ | 情感满足 | 人物关系发展 | 告白/团聚/认可 |
19
+ | 扮猪吃虎 | 隐藏实力突然展露 | 弱者实则是强者 |
20
+
21
+ ### 钩子类型
22
+
23
+ | 类型 | 定义 | 示例 |
24
+ |------|------|------|
25
+ | 悬念钩 | 未解之谜 | 「剑为什么认他为主?」 |
26
+ | 冲突钩 | 直接对抗 | 开篇追杀 |
27
+ | 反差钩 | 违反常识 | 「穿越第一天就破产」 |
28
+ | 代入钩 | 读者共鸣 | 相似困境 |
29
+ | 信息差钩 | 读者知道角色不知道的 | 「他还不知道面前是……」 |
30
+
31
+ ### 爽点循环结构
32
+
33
+ 三层微观循环:
34
+ - **铺垫层(蓄势)**:压抑/困境/信息差制造情绪缺口
35
+ - **释放层(爽感)**:展露实力/打脸/碾压,强度由反应层数和篇幅决定
36
+ - **衔接层(承转)**:旧循环结束埋新钩子
37
+
38
+ 反应层递进:质疑/轻视 → 震惊/打脸 → 强者重新评价 → 扩散效应
39
+ 反应篇幅比 = 反应总字数 / 装逼字数。低于1.5 = 爽感没接住。
40
+
41
+ ### 衔接过渡模式
42
+
43
+ | 模式 | 机制 | 示例 |
44
+ |------|------|------|
45
+ | 打完小的来大的 | 释放层对手引出更强对手 | 打败弟子→师父找上门 |
46
+ | 胜利发现隐患 | 释放成功暴露新问题 | 赢了比赛→发现中毒 |
47
+ | 身份暴露/反转 | 释放中身份被识破 | 打脸后被认出真实身份 |
48
+ | 利益升级 | 成果指向更大目标 | 线索→更深层宝藏 |
49
+ | 关系突变 | 释放改变关系格局 | 救的人变仇家后代 |
50
+
51
+ ### 题材爽点形态
52
+
53
+ | 题材 | 释放层形态 | 反应层来源 | 铺垫层缺口 |
54
+ |------|-----------|-----------|-----------|
55
+ | 玄幻/修仙 | 实力碾压/境界突破 | 同门/对手/长老震惊 | 功法残缺/资源匮乏/血脉压制 |
56
+ | 都市 | 预测准确/身份揭露 | 商业对手/前女友/权贵 | 破产/被辞/被退婚 |
57
+ | 系统文 | 解锁稀有技能/任务奖励 | 系统稀有度标注 | 任务失败惩罚/技能冷却 |
58
+ | 历史 | 以弱胜强/先知优势 | 谋士/帝王/敌将震惊 | 信息不对称/身份低微 |
59
+ | 悬疑 | 真相揭露/反杀 | 被揭穿者崩溃/读者恍然 | 线索误导/嫌疑人洗白 |
60
+
61
+ ---
62
+
63
+ ## 快速预览报告
64
+
65
+ Stage 1 停靠点交付物,输出 `拆文库/{书名}/快速预览.md`。**字段全部取自 Stage 0/1 已产出数据**(概要.md + 黄金三章深度拆解),不引入需 Stage 2-6 才能算出的字段。与终态 `拆文报告.md` 向上兼容——「基本信息」「黄金三章评分」两节同名同结构,全量拆完后 `拆文报告.md` 是 `快速预览.md` 的超集。
66
+
67
+ ```markdown
68
+ # 快速预览:{书名}
69
+
70
+ > 基于黄金三章 + 全书概要的早期判断。完整拆解见后续 Stage 2-6。
71
+ > 状态:已完成 Stage 0-1,{已暂停 / 已继续全量拆解}
72
+
73
+ ## 基本信息
74
+
75
+ 书名 | 题材 | 总章数 | 总字数 | 目标平台(源书所在平台,拆解时识别,无则留空)
76
+
77
+ ## 黄金三章评分
78
+
79
+ 直接复用 Stage 1 三章深度拆解结论,5 维评分表:
80
+
81
+ | 维度 | 评分 | 说明 |
82
+ |------|------|------|
83
+ | 开篇钩子 | 1-5 | |
84
+ | 主角塑造 | 1-5 | |
85
+ | 爽点设计 | 1-5 | |
86
+ | 世界观铺设 | 1-5 | |
87
+ | 章尾悬念 | 1-5 | |
88
+
89
+ ## 开篇判断
90
+
91
+ - 开篇钩子类型与效果(来自 Stage 1 第1章「开篇钩子」)
92
+ - 主角立人设手法
93
+ - 世界观铺设方式
94
+ - 黄金三章节奏:三章各自功能
95
+
96
+ ## 早期可借鉴点
97
+
98
+ 来自 Stage 1 各章「可借鉴要素」的汇总,3-5 条。
99
+
100
+ ## 是否值得全量拆解 — 建议
101
+
102
+ 一句话结论:基于黄金三章质量,建议{继续全量拆解 / 重点拆解某部分 / 此书参考价值有限}。
103
+
104
+ ## 下一步
105
+
106
+ 继续全量拆解将产出:逐章摘要、剧情聚合、角色档案、世界观设定、完整拆文报告。
107
+ ```
108
+
109
+ > `快速预览.md` 与 `拆文报告.md` 并存:前者是停靠点快照,后者是终态。终态生成后不删除 `快速预览.md`,保留早期判断痕迹。
110
+
111
+ ---
112
+
113
+ ## Stage 0 概要(thin first-pass)
114
+
115
+ > **范围说明**:Stage 0 只能基于章节标题 + 卷段结构 + 抽样开头/结尾产出 thin first-pass(~200 字)。**禁止**在此阶段写出 500-1000 字 plot-aware 概要——读取范围不足以支撑那个密度。完整版在 Stage 5 落盘覆盖(见本文件「Stage 5 拆文报告 + 全书概要」节)。
116
+
117
+ 输出 `概要.md`:总字数{X}万 | 总章数{N} | 题材{类型}
118
+
119
+ | 卷/段 | 章节范围 | 章数 | 预估字数 |
120
+ |-------|----------|------|----------|
121
+ | {卷名} | 第1-X章 | {N} | {W}万 |
122
+
123
+ 首版概要(~200字,thin first-pass):{从章节标题 + 第1章+末章抽样归纳出的核心驱动 + 主角名 + 大致设定,不要硬凑剧情转折}
124
+ 章节索引:| 章节 | 标题 | 字数 |
125
+
126
+ > Stage 5 完成后会就地覆盖此文件的「首版概要」段为「全书概要(500-1000字 plot-aware)」。章节索引和卷段表保留不变。
127
+
128
+ ## Stage 1 黄金三章
129
+
130
+ 黄金三章拆为三个单章文件,每章一个:`章节/第1章_深度拆解.md`、`章节/第2章_深度拆解.md`、`章节/第3章_深度拆解.md`。每个文件按以下模板输出。
131
+
132
+ 字数约{X}字 | 核心事件:{一句话}
133
+
134
+ **开篇钩子**(第1章看前500字):类型{悬念/冲突/反差/信息差/代入感} | 手法{描述} | 效果{强/中/弱}—{原因}
135
+
136
+ **人物出场**:{列表} | 主角塑造{直接描写/对话/行为/他人评价} | 第一印象{描述}
137
+
138
+ **世界观铺设**:透露{信息} | 隐藏{信息} | 方式{对话/旁白/事件}
139
+
140
+ **结构拆解**:| 段落范围 | 功能{铺垫/冲突/爽点/收尾} | 字数 |
141
+
142
+ **爽点分析**:类型{装逼打脸/逆袭反转/获得机缘/信息差碾压/情感满足} | 铺垫{X}字 / 释放{Y}字 / 铺放比{Z:1} | 情绪曲线
143
+
144
+ **反应层拆解**(如有):
145
+
146
+ | 层级 | 角色 | 反应 | 篇幅 |
147
+ |------|------|------|------|
148
+ | 质疑/轻视 | | | |
149
+ | 震惊/打脸 | | | |
150
+ | 强者重评 | | | |
151
+ | 扩散传播 | | | |
152
+
153
+ 反应篇幅比{N:1} — 低于1.5 = 爽感不足
154
+
155
+ **释放后追证**(如有):爽点释放后反派真实态度?{行为+原文引用}
156
+
157
+ **冲突升级**(如有):{行为} | 升级层级{口头→经济→暴力} | 对角色画像影响
158
+
159
+ **背景信息揭示**(如有):揭示{什么} | 叙事功能{推翻预设/重新解读/铺垫新线/认知偏差} | 对主线影响
160
+
161
+ **章尾钩子**:类型{悬念/反转/新信息/新角色} | 内容{描述} | 期待度{强/中/弱}
162
+
163
+ **可借鉴要素**:{可复用技巧}
164
+
165
+ > 第二、三章额外关注:信息密度 / 冲突升级(vs上章) / 节奏变化 / 爽点间隔字数。
166
+ > 反派若为非人形(灵气复苏/末世/国运等抽象对抗型),在「爽点分析」处改用抽象对抗型路由:核心对抗面{描述} | 紧迫感来源{描述} | 升级机制{描述} | 叙事替代{用什么替代传统打脸}。
167
+
168
+ ## Stage 2 章节摘要+情节点
169
+
170
+ 输出 `章节/第{N}章_摘要.md`:
171
+
172
+ **概要**:{100-300字,写成单行的一个自然段,不折行、不拆条目。按事件发生的顺序连贯讲清本章发生了什么、为什么发生、结果如何。因果照实写,但不靠"因为…所以…"这类同一连接词反复串联。优先写进:改变剧情走向的动作与结果、反常信息、会延续到后续章节的伏笔线索、有辨识度的具体细节(数字、原话、反常现象)。只写本章原文有的事实,不加空泛评价(如"感人""精彩""震撼")和主观解读}
173
+ **关键事件**:1.{事件} 2.{事件} 3.{事件}
174
+
175
+ **关键信息与扩写技法**:
176
+
177
+ | 关键信息/剧情走向 | 原文如何扩写 | 扩写技法 | 对读者情绪的作用 | 可复用提醒 |
178
+ |---|---|---|---|---|
179
+ | {本章必须让读者知道/误判/期待/确认的信息} | {作者用了哪些事件、对话、反应层、细节、误导或回扣把它扩成场景} | {铺垫后置/反应层放大/信息差/对比锚点/延迟揭示/身体反应/小目标嵌套/其他} | {好奇/期待/压抑/爽/心疼/紧张/甜/热血/其他} | {保留情绪逻辑,替换人物、场景、事件素材;禁止照搬具体桥段} |
180
+
181
+ **逐章写法公式**:
182
+
183
+ - **情绪流向**:起:{开篇情绪} → 承:{铺垫/加压情绪} → 转:{爆发/反转情绪} → 合:{余波/钩子情绪}
184
+ - **节奏配比**:慢铺垫 {X%} / 快冲突 {X%} / 爽点爆发 {X%} / 悬念留白 {X%}
185
+ - **本章结构公式**:{节点1动作(目的)} + {节点2动作(目的)} + {节点3动作(目的)} + {节点4动作(目的)}
186
+ - **本章核心技巧**:{一句话概括本章最可迁移的结构手法,如用反应层放大信息差、用小目标承接大矛盾;只描述写法,不评价质量}
187
+ - **卡点与伏笔**:结尾卡点:{类型+内容+下章期待};埋设/回收伏笔:{伏笔名/物件/信息 → 章节功能}
188
+
189
+ **出场人物**:| 角色 | 本章重要性 | 别名 | 本章表现 |
190
+
191
+ **情节点**(每章10-40个,按字数动态调节,150-200字/个;硬下限10——短章按关键步骤拆足):
192
+
193
+ 太粗(整段打架)→丢细节;太细(举起右手)→碎片化。恰当:完整戏剧事件("主角三招击败反派,围观者震惊")。
194
+
195
+ P{序号} **{标题}**:类型{转折点/信息揭示/冲突/解决/铺垫/行动/对话/状态变化} | {白描一句话:谁做了什么、结果如何;原文给出起因或理由的一并写进来,不推测动机;埋伏笔的写出伏笔线索} | 涉及{全名,多人逗号分隔;纯环境铺垫无具体人物时保留"涉及"标签、值留空} | 地点{如明确} | 物品{如涉及} | 时间{如明确}
196
+
197
+ > 标题是 ≤15 字的短标签(如「衙门见闻」「龙血针检测」),白描才是承载事实的那一句。两者不要写成同一句话——标题复述一遍不算白描。
198
+
199
+ {可选引用行:≤400字原文直接引用,不加“原文引用:”标签。只给关键情节点加,挑选标准见下;不选中的情节点直接跳到下一行}
200
+ 主题标签{爱情/亲情/友情/权力/金钱/成长/复仇/悬念/搞笑/热血/日常/其他} | 基调:{紧张/轻松/悲伤/热血/爽/甜/温馨/恐怖/压抑/其他}
201
+
202
+ > **`{}` 是占位标记,不是要输出的字符**:上面每个 `{...}` 都表示「把内容填在这里」,`/` 是候选项之间的分隔号。落盘文本里不应出现花括号,也不应把候选项列表原样抄下来。照抄成 `类型{行动}`、`主题标签{搞笑}`、`地点{未明确}` 都是错的。
203
+ >
204
+ > 一个完整的正确样例(照这个写,两行为一组):
205
+ >
206
+ > ```
207
+ > P7 **龙血针检测**:类型信息揭示 | 许七安用龙血针验出对方身份,当场揭穿 | 涉及许七安,郑兴怀 | 地点府衙后堂 | 物品龙血针 | 时间入夜
208
+ > 主题标签悬念 | 基调:紧张
209
+ > ```
210
+ >
211
+ > - **字段名后不加冒号、不加括号**:写 `类型信息揭示`,不写 `类型:信息揭示` 或 `类型{信息揭示}`。
212
+ > - **`主题标签` 只填一个值**:本章该情节点最主导的那一个。不要用 `/`、`、`、`,` 或空格并列多个——落盘校验按「一个值」读,并列写法会被判成枚举越界而触发重跑。
213
+ > - **空字段统一写「无」**:如 `物品无`、`时间无`。不要用 `—`、`未知`,也不要整段省略(`涉及` 段必须保留,纯环境铺垫时值写「无」)。
214
+ > - **每个情节点后紧跟自己的那一行 `主题标签X | 基调:Y`**,不要把所有标签行堆到文件末尾,也不要把它并进 P 行内部。
215
+ >
216
+ > 末行硬约束:`基调:` 全角冒号不可省略(Stage 6 文风按它 grep);`主题标签` 不加冒号;两者各取上列枚举、勿混(温馨/紧张/甜是基调、非主题);都不贴合用「其他」。
217
+ >
218
+ > 枚举消歧:爽=打脸/复仇得手/反转的解气感;热血=拼搏战斗的燃;甜=恋爱暧昧的甜;温馨=亲情/友情的暖;恐怖=惊悚诡异/生理恐惧;紧张=危机悬而未决。主题里,亲情=家人/师徒/类亲情;爱情=恋爱;友情=朋友/伙伴/兄弟;金钱=财富/利益/算计;权力=地位/权势。都不贴合才用「其他」,勿硬塞近义项。
219
+
220
+ **白描铁律**(P 行的白描是情节点的主要证据,写不准下游全歪):
221
+
222
+ | 维度 | 禁止 | 正确 |
223
+ |------|------|------|
224
+ | 情感 | 邵阳感到心碎和愤怒(原文只写了他看见拥抱) | 邵阳目睹宋丽与人拥抱,表情由刺痛转为冷漠 |
225
+ | 评价 | 这是一段精彩的打斗 | 林雷三招击败对手,围观者倒吸一口凉气 |
226
+ | 氛围 | 气氛变得紧张起来 | 所有人停止说话,目光集中在门口 |
227
+ | 意图 | 他想借此展示实力 | 他将石锁单手举过头顶,环视众人 |
228
+ | 叙事框架词 | 通过对话,郑松得知张子豪在韩国训练 | 吴志斌告诉郑松,张子豪在韩国训练 |
229
+
230
+ 原文明说的起因、理由和内心活动照写("存款花光了,他去找许新年借钱"里的起因是原文给的),只是不替角色推测原文没写出来的动机;原文同时给了外部表现时优先写表现。情节点严格按原文事件的时间顺序排列,不重排、不逻辑归纳。
231
+
232
+ **原文引用规则(精选,不逐点铺满)**:情节点的主要证据是 P 行的白描——事实、结果、原文给出的起因、伏笔线索必须在白描里写全。引用是补充证据,只给三类情节点保留:关键转折(改变本章或全书走向的转折点/解决)、关键台词(有辨识度、后续会被回扣的原话)、写法样本(值得当句式/节奏/对话样本回查的段落)。
233
+
234
+ - 每章至多 8 条;其余情节点不写引用行。本章确实没有值得回查的段落时一条都可以不留,不要为凑数给过场和纯环境铺垫配引用
235
+ - 引用 ≤400 字,逐字连续切片,保留原文语气,不改写、不缩写、不跨段拼接
236
+ - 选中的段落过长或分散时,用一行 `原文定位:{5-15字可 grep 回原文的原句片段}` 代替整段引用
237
+
238
+ **Stage 2 输出自检**(并行 agent 与 solo/direct 串行两条路径同一份要求):概要为按时序的连贯叙述(非条目罗列、非同一连接词反复串联)|每个情节点白描客观且写全事实/结果/原文给出的起因|标题为 ≤15 字短标签且不与白描同句|情节点严格按时序|情节点数 10-40(按字数动态调节,硬下限 10)|关键转折/关键台词/写法样本类情节点留了引用或 `原文定位`,全章不超过 8 条|角色用全名|类型/基调/主题标签只取规定枚举|角色描述不跨章|`关键信息与扩写技法` 与 `逐章写法公式` 齐全。
239
+
240
+ ## Stage 2 角色过滤
241
+
242
+ | 分类 | 标准 | 提取深度 |
243
+ |------|------|----------|
244
+ | 不提取 | 出场1次且无台词(通用路人) | 跳过 |
245
+ | 简化提取 | 出场2-3次且单一功能 | 功能标签+首次章节 |
246
+ | 完整提取 | 出场3次以上/有台词且推动剧情/与主角直接互动 | 完整档案 |
247
+
248
+ 别名合并:主条目用首次正式名,别名列于 `aliases: []`。
249
+
250
+ ## Stage 3 聚合分析
251
+
252
+ ### Stage 3 前置:故事框架识别
253
+
254
+ 输出写入 `剧情/故事线.md` 顶部:
255
+
256
+ ```markdown
257
+ ## 故事框架
258
+
259
+ | 项目 | 内容 |
260
+ |------|------|
261
+ | 框架类型 | {升级流/复仇线/日常单元/多线交织/蜕变成长/混合} |
262
+ | 核心驱动 | {一句话描述全书的核心叙事引擎} |
263
+ | 主轴矛盾 | {贯穿全书的根本矛盾} |
264
+ | 升级机制 | {力量/地位/关系的递进方式,如无则填"—"} |
265
+ | 叙事节奏模式 | {铺垫→冲突→爽点→新悬念 的典型周期} |
266
+ | 判断依据 | {哪些章节/情节点支撑此判断} |
267
+ | 预期剧情数 | {基于总章数的预期范围,参考 material-decomposition.md 预期数量引导表} |
268
+ ```
269
+
270
+ **框架识别后自检**(写入 `剧情/故事线.md` 框架部分之后):
271
+
272
+ ```markdown
273
+ ## 框架识别自检
274
+
275
+ | 检查项 | 结果 | 说明 |
276
+ |--------|------|------|
277
+ | 覆盖率 | {X%} | {已覆盖章节数/总章节数} |
278
+ | 粒度检查 | {通过/不通过} | {如不通过,说明哪个剧情过细/过粗} |
279
+ | 独立性检查 | {通过/不通过} | {如不通过,说明哪个剧情不满足哪项标准} |
280
+ | 数量检查 | {通过/不通过} | {实际剧情数 vs 预期范围} |
281
+ ```
282
+
283
+ ### Stage 3 权威产物分工
284
+
285
+ Stage 3 除剧情文件外,必须写一个轻量索引 `剧情/README.md`,再分别写两个权威文件:
286
+
287
+ ```markdown
288
+ # 剧情目录索引
289
+
290
+ | 文件 | 权威范围 | 下游用法 |
291
+ |---|---|---|
292
+ | `节奏.md` | 关键信息推进、爽点循环、情绪触动点、爆发节奏 | 产出 `rhythm_reference` |
293
+ | `情绪模块.md` | 读者需求、情绪引擎、套路框架、可复现模块卡 | 产出 `selected_emotion_module` |
294
+ | `故事线.md` | 故事框架与故事线摘要 | 投影摘要,不覆盖权威文件 |
295
+ | `拆文报告.md` | 人类阅读报告 | 投影摘要,不覆盖权威文件 |
296
+
297
+ 冲突时以 `节奏.md` / `情绪模块.md` 为准;两个文件用 EM/RH/TR ID 互相引用。
298
+
299
+ ## 剧情单元清单
300
+
301
+ | 剧情单元 | 类型 | 桥段标签 | 章节范围 | 体量 |
302
+ |---|---|---|---|---|
303
+ | `{标题}.md` | {类型} | {桥段标签} | 第{X}-{Y}章 | 共{N}章,约{M}万字 |
304
+
305
+ 清单仅是检索索引投影(各列取剧情单元既有字段),剧情定义权威在各剧情单元文件;节奏/情绪权威仍在 `节奏.md` / `情绪模块.md`。
306
+ ```
307
+
308
+ - `剧情/节奏.md` 是**节奏与触发点权威索引**:关键信息推进、爽点循环、情绪触动点、爆发节奏、长间隔风险都在这里落盘。
309
+ - `剧情/情绪模块.md` 是**读者需求与可复现模块权威索引**:读者为什么爱看、情绪引擎如何运转、爽文套路如何嵌进故事框架、如何重组复现都在这里落盘。
310
+ - `剧情/故事线.md` 和 `拆文报告.md` 只写摘要和引用,不复制完整模块定义;冲突时以下游写作读取 `剧情/节奏.md` / `剧情/情绪模块.md` 为准。
311
+
312
+ ### Stage 3 剧情
313
+
314
+ 输出 `剧情/{标题}.md`:
315
+
316
+ | 项目 | 内容 |
317
+ |------|------|
318
+ | 标题 | 简洁有力,15字以内 |
319
+ | 类型 | {主线/爱情/成长/复仇/寻宝/悬疑/战斗/权谋/修炼/危机/谜团/日常/其他} — 悬疑=主动推理调查,谜团=世界观/身世等未解之谜 |
320
+ | 概要 | {150-300字,按时序连贯叙述这条剧情线的起承转合与因果,不靠同一连接词反复串联;含核心角色及定位、关键地点、关键道具(如有)、对主角/世界的影响} |
321
+ | 核心目标 | {具体、可衡量的戏剧目标,如"赢得大比冠军"} |
322
+ | 核心冲突 | {具体冲突对象+冲突事件} |
323
+ | 关键信息功能 | {这条剧情负责让读者获得/等待/误判/确认什么信息} |
324
+ | 读者需求 | {满足安全感/优越感/期待感/情感补偿/认知反转/陪伴感等哪类需求} |
325
+ | 情绪模块ID | {引用 `剧情/情绪模块.md` 中的 EM-001 等,不在此重复完整卡片} |
326
+ | 套路框架位置 | {退婚打脸/迟来追悔/升级试炼/掉马震惊/以小搏大/其他;说明它如何在本故事框架内运转} |
327
+ | 桥段标签 | 从桥段词表选命中项,逗号分隔;可补表外确有桥段;无匹配留空,不硬凑(词表见 references/deconstruction-notes.md) |
328
+ | 章节范围 | 第{X}-{Y}章(共{N}章,约{M}万字) |
329
+
330
+ 结构分布:铺垫期 | 发展期 | 高潮期 | 收尾期(各含章节范围)
331
+
332
+ 情节点索引:| 序号 | 章节 | 描述 | 归属置信度 |
333
+
334
+ ### Stage 3 故事线
335
+
336
+ 输出 `剧情/故事线.md`(在框架识别之后):
337
+
338
+ 每条故事线:
339
+
340
+ | 项目 | 内容 |
341
+ |------|------|
342
+ | 标题 | 简洁有力,15字以内 |
343
+ | 类型 | {主线/感情线/成长线/复仇线/夺宝线/冲突线/谜团线/其他} |
344
+ | 描述 | {300-600字,划分3-8个发展阶段,每个阶段含:核心冲突、关键角色及作用、能力/资源/地位演进、主题母题。追踪伏笔与回收关系链。标注与其他故事线的交织关系} |
345
+ | 情绪引擎摘要 | {1-2句概述这条线如何制造缺口、延迟满足、释放和余波;详情指向 `剧情/情绪模块.md`} |
346
+ | 套路运行方式 | {爽文/情感/悬疑等套路如何嵌入故事框架而不是孤立桥段;详情指向模块ID} |
347
+ | 主题 | {不超过3个} |
348
+ | 包含剧情 | {剧情标题列表,按时序排列。每条故事线至少包含1个剧情} |
349
+ | 模块引用 | {EM-001, EM-002;只写引用,不复制完整卡片} |
350
+
351
+ 故事线关系:并行 / 交织 / 依赖
352
+
353
+ ### Stage 3 节奏.md(权威索引)
354
+
355
+ 输出 `剧情/节奏.md`:
356
+
357
+ ```markdown
358
+ # 节奏索引:{书名}
359
+
360
+ > 权威范围:关键信息推进、爽点循环、情绪触动点、爆发节奏。`拆文报告.md` 只引用本文件摘要。
361
+
362
+ ## 全书情绪节奏总览
363
+
364
+ - 情绪折线:{压抑/期待 → 紧张/加压 → 爽感/反转 → 余波/新危机;标注关键章节区间}
365
+ - 爽点频率:{每 N 章一次小爽点;每 M 章一次中高潮;大高潮位置}
366
+ - 高潮分布:小高潮:第 {X/Y/Z} 章;中高潮:第 {X/Y} 章;大高潮:第 {X} 章
367
+ - 冲突升级路径:{低级矛盾 → 中级矛盾 → 高级矛盾 → 终局矛盾;标注触发章节}
368
+ - 伏笔跨章地图:{伏笔内容 | 第X章埋入方式 → 第Y章回收效果;仅列跨度超过2章或影响主线的伏笔}
369
+
370
+ ## 循环单元
371
+
372
+ - 小循环(约 3 章):{缺口/误判 → 加压/试探 → 释放/新钩子;可变项是什么}
373
+ - 中循环(约 7 章):{阶段目标 → 多轮阻碍 → 中段反转 → 阶段爽点 → 更大问题}
374
+ - 大循环(约 15 章):{卷内目标 → 资源/关系/敌手升级 → 核心冲突爆发 → 余波与转场}
375
+
376
+ ## 关键信息推进表
377
+
378
+ | 章节/范围 | 关键信息 | 扩写方式 | 推进功能 | 节奏效果 | 关联剧情/模块 |
379
+ |---|---|---|---|---|---|
380
+ | 第{N}章 | {读者必须获得/误判/等待的信息} | {对话铺垫/事件验证/反应层/延迟揭示/多段回扣} | {立目标/加压/释放/转场/埋钩} | {加速/减速/蓄力/爆发/冷却} | {剧情标题 / EM-001} |
381
+
382
+ ## 爽点循环索引
383
+
384
+ | 循环ID | 章节范围 | 铺垫层 | 释放层 | 反应层 | 衔接层/新钩子 | 强度递进 |
385
+ |---|---|---|---|---|---|---|
386
+ | RH-001 | 第{X}-{Y}章 | {压抑/误判/期待缺口} | {打脸/掉马/目标达成/情感满足} | {谁震惊/后悔/重新评价} | {旧爽点后立起的新期待} | {比上一轮强/弱在哪里} |
387
+
388
+ ## 情绪触动点索引
389
+
390
+ | 触动点ID | 章节 | 触发事件 | 目标读者情绪 | 爆发点 | 余波/冷却 | 复现提示 |
391
+ |---|---|---|---|---|---|---|
392
+ | TR-001 | 第{N}章 | {触发读者情绪的具体情节} | {期待/心疼/愤怒/爽/甜/热血/恐惧} | {情绪最高句/段或事件} | {角色反应/关系变化/新悬念} | {保留情绪链,不搬运具体事件} |
393
+
394
+ ## 爆发节奏总结
395
+
396
+ - 爆发密度:{每N章一次 / 每N字一次 / 卷内峰值位置}
397
+ - 爆发形态:{递进 / 延迟满足 / W形 / 阶梯 / 单元循环}
398
+ - 长间隔风险:{哪些区间触动点过稀,作者如何用小钩子维持}
399
+ - 下游写作提醒:{新书复现时每章/每卷如何安排触动点}
400
+ ```
401
+
402
+ ### Stage 3 情绪模块.md(权威索引)
403
+
404
+ 输出 `剧情/情绪模块.md`:
405
+
406
+ ```markdown
407
+ # 情绪模块:{书名}
408
+
409
+ > 权威范围:读者需求 / 情绪引擎 / 套路框架运转 / 可复现模块。禁止把原文具体桥段当模板照搬。
410
+
411
+ ## 读者需求 / 情绪引擎
412
+
413
+ | 读者需求 | 本书满足方式 | 证据章节/情节点 | 持续追读机制 | 可迁移边界 |
414
+ |---|---|---|---|---|
415
+ | {优越感/安全感/被理解/替代性复仇/关系补偿/认知惊喜等} | {故事如何持续交付} | {第N章/Px} | {下一层期待如何被立起} | {可保留情绪逻辑;必须替换具体设定/人物/事件} |
416
+
417
+ ## 故事框架与套路运行图
418
+
419
+ | 框架/套路 | 在本书中的位置 | 运行方式 | 为什么有效 | 失效风险 |
420
+ |---|---|---|---|---|
421
+ | {退婚打脸/升级流/迟来追悔/掉马/以小搏大/修罗场/其他} | {章节/剧情单元} | {铺垫→延迟→释放→余波} | {对应读者需求} | {照搬会雷同/人设不适配/铺垫不足} |
422
+
423
+ ## 可复现模块卡
424
+
425
+ ### EM-001 {模块名}
426
+
427
+ | 字段 | 内容 |
428
+ |---|---|
429
+ | 读者想看什么 | {一句话抽象需求} |
430
+ | 情绪链 | {缺口 → 加压 → 触发 → 爆发 → 余波} |
431
+ | 戏剧单元 | {去素材后的结构,如“被轻视者在公开场合用结果反证”} |
432
+ | 关键触发物 | {可替换功能位:误判者/见证者/代价/证据/奖励} |
433
+ | 复现步骤 | {1. 建缺口 2. 加反应层 3. 控制爆发点 4. 立新钩子} |
434
+ | 可替换项 | {角色身份、场景、道具、对手类型、目标结果} |
435
+ | 不可照搬 | {原文专名、具体事件顺序、标志性台词、独特设定} |
436
+ | 关联节奏 | {`剧情/节奏.md` RH-001 / TR-001} |
437
+
438
+ ## 重组与复现指南
439
+
440
+ 1. 先选读者需求,再选模块卡,不要从原文桥段倒抄。
441
+ 2. 保留情绪链和功能位,替换人物、场景、动机、道具、事件素材。
442
+ 3. 复现到新书大纲时,至少改变:冲突对象、公开/私密场景、触发证据、余波方向中的三项。
443
+ 4. 若人设与模块冲突,以人设驱动重构模块;不要为了套套路扭曲角色。
444
+ ```
445
+
446
+ ### Stage 3 角色操作
447
+
448
+ **合并**:
449
+ 1. 收集所有章节的角色提及数据
450
+ 2. 别名匹配(仅 proper_name 和 nickname,置信度 ≥0.85)
451
+ 3. descriptor/title 永不触发合并
452
+ 4. 确认后保留首次正式名
453
+
454
+ **分级**:
455
+
456
+ | 等级 | 标准 | 提取深度 |
457
+ |------|------|----------|
458
+ | 主角 | 出现章节 ≥50% + 推动主线 + 完整成长轨迹 | 完整档案+弧线+动机链 |
459
+ | 反派 | 与主角对立 + 推动核心冲突 + 明确动机 | 完整档案+动机链 |
460
+ | 核心配角 | 出现章节 ≥20% 或推动重要支线 | 完整档案+关系 |
461
+ | 功能角色 | 出现章节 <20% + 作用有限 | 简化档案 |
462
+
463
+ 边界模糊优先归入更低等级。
464
+
465
+ ### Stage 3 散落情节兜底
466
+
467
+ 1. 计算孤立比例,<5% 直接跳过(少量散落写入散落情节.md)
468
+ 2. 列出未分配情节点
469
+ 3. 按角色重叠、地点重叠、因果关系计算相关性(三层置信度)
470
+ - 强相关(0.8-1.0):归入现有条,标`[孤立情节归入]`
471
+ - 中等相关(0.5-0.8):标`[低置信归入]`,待复核
472
+ - 弱相关(<0.5):不强行分配,宁可放入未分配
473
+ 4. <0.5 按主题聚类,标`[聚类生成]`(≥5个才建条)
474
+ 5. 无法归类写入`散落情节.md`,不要强行分配到不相关的剧情
475
+ 6. 覆盖率验证:目标阈值见 [material-decomposition.md 质量阈值体系](material-decomposition.md),不达标回到步骤3降低阈值重试
476
+
477
+ ### Stage 3 覆盖率
478
+
479
+ 覆盖率 = 已归类数 / 总数 x 100%,目标阈值见 [material-decomposition.md 质量阈值体系](material-decomposition.md)。
480
+
481
+ ## Stage 4 设定+关系
482
+
483
+ > **Stage 4 直接按主题拆分输出多个文件**(与当前导入、长篇写作项目结构对齐)。下游不再现场拆分扁平文件。
484
+ > **事实保真**:等级/数值/距离/属性/势力数等硬事实回原文核对,原文未给的写「原文未明确」、禁编造填空(见 material-decomposition.md「合成阶段事实保真」)。
485
+
486
+ `设定/世界观/力量体系.md`:
487
+ - 文本描述,含等级、晋升条件。长篇注意多层级力量体系
488
+ - 内容 < 200 字且不构成独立体系 → 合并到 `设定/世界观/背景设定.md`,本文件可省略
489
+
490
+ `设定/世界观/地理.md`:
491
+ - 分布、主要区域、关键地点(文本描述)
492
+ - 内容 < 200 字 → 合并到 `背景设定.md`,本文件可省略
493
+
494
+ `设定/世界观/背景设定.md`:
495
+ - 核心规则 + 特殊设定
496
+ - 内容不足独立成文件的「力量体系 / 地理 / 势力」也合并到这里
497
+ - 无特殊世界观时:本文件输出 "本书为现实题材,无特殊世界观设定"
498
+
499
+ `设定/世界观/金手指.md`:
500
+ - 类型{system/space/rebirth/transmigration/special_physique/artifact/bloodline/other} | 名称 | 描述(300-600字,含能力/获取/机制/进化史/多重能力演化)| 核心机制 | 当前能力
501
+ - 合并规则见 material-decomposition.md「金手指合并规则」。
502
+ - 无金手指时:输出空文件,注明"本书无明显金手指设定"
503
+
504
+ `设定/势力/{势力名}.md`(每个核心势力一个文件):
505
+ - 名称 / 类型(门派/组织/家族/国家)/ 核心人物 / 立场倾向 / 与其他势力关系 / 关键事件
506
+ - 内容 >= 200 字时独立;不足合并到 `设定/世界观/背景设定.md`(不丢失信息)
507
+
508
+ `角色/{角色名}.md`(每角色):
509
+ - 200-500字档案(身份背景→核心经历→性格特质→能力特长→人际关系→成长轨迹)
510
+ - archetype:protagonist/antagonist/supporting/minor
511
+ - 关键情节(3-5个转折点,按时序排列)
512
+ - 成长弧线(character_arc:如有明显变化则总结,如"从普通少年成长为觉醒血脉的强者")
513
+ - 别名列表(标注类型和置信度)
514
+
515
+ `角色/角色关系.md`(每5章批量,从情节点提取):A<->B:关系类型 | 情感 | 描述(50-200字)| 演变轨迹。同一对角色保留最新状态,历史变化写入演变轨迹。
516
+
517
+ ## Stage 5 汇总报告
518
+
519
+ 输出 `拆文报告.md`(`快速预览.md` 的超集,两节同名同结构,见「快速预览报告」节)。
520
+
521
+ 报告章节:
522
+
523
+ - **基本信息**:书名 | 题材 | 总章数 | 总字数 | 目标平台(与 `快速预览.md` 同结构)
524
+ - **黄金三章评分**:5 维评分表(开篇钩子/主角塑造/爽点设计/世界观铺设/章尾悬念,与 `快速预览.md` 同结构)
525
+ - **读者需求 / 情绪引擎**:摘要 `剧情/情绪模块.md` 的核心读者需求、情绪缺口、持续追读机制(报告只写摘要,详情以模块文件为准)
526
+ - **结构分析**:主线 / 副线 / 剧情单元 / 覆盖率
527
+ - **关键信息与扩写技法总览**:按章节/剧情单元汇总关键剧情信息如何被扩写(详情以 `章节/*_摘要.md` 与 `剧情/节奏.md` 为准)
528
+ - **全书情绪节奏总览**:摘要 `剧情/节奏.md` 的情绪折线、爽点频率、小/中/大高潮分布、循环单元
529
+ - **爽点密度**:{N}个循环/{M}章 | 完成率{X%} | 密度{高≥70%/中50-70%/低<50%}
530
+ - **节奏与情绪触动点**:摘要 `剧情/节奏.md` 的爆发密度、触动点分布、长间隔风险、爆发节奏
531
+ - **伏笔与冲突网络**:跨章伏笔地图(仅列跨度超过2章或影响主线的伏笔)+ 冲突升级路径(低级→中级→高级→终局)
532
+ - **核心机制**:爽点类型 | 节奏模式 | 更新策略
533
+ - **角色体系**:主角/反派/核心配角/功能角色分级概览
534
+ - **质量评估**:置信度 / 覆盖率 / 重叠率
535
+ - **可借鉴套路**:1.{套路+场景} 2.{...} 3.{...},必须标注对应 `EM-*` 模块ID
536
+ - **可复现模块**:列出 `剧情/情绪模块.md` Top 3 模块的读者需求、情绪链、替换项、不可照搬项
537
+ - **写法技巧**:1.{技巧名+用法} 2.{...}——覆盖一笔两用、延迟揭示、视角欺骗、对比锚点、行为循环、身体反应替代心理描写、**跨章回扣**(物品/意象在不同章节承担不同功能)
538
+ - **不建议模仿**:1.{问题+原因}
539
+
540
+ ## Stage 6 文风
541
+
542
+ 输出 `拆文库/{书名}/文风.md`。整书级写作技法视图,供 story-long-write 日更循环喂给 narrative-writer。
543
+
544
+ **字段速查**:
545
+
546
+ | 段落 | 内容 | 必标可信度 | 上限 |
547
+ |---|---|---|---|
548
+ | 生成记录 | 参考了哪些资料 + 抽样看了哪几章 + 文风是否可用 | 否 | <100 字 |
549
+ | 整体语感 | 句长分布 / 标点习惯 / 段落节奏 | 是(每子项一标) | ~500 字 |
550
+ | 对话技法 | 潜台词模式 / 对话标签 / 角色语气区分 | 是(潜台词必标) | ~400 字 |
551
+ | 情绪交替模式 | 章内基调切换 / 跨章基调周期 / 喜剧↔重击转场 | 是(章内切换必标) | ~400 字 |
552
+ | 可借鉴技巧 | 写法技巧 Top 5 + 可借鉴套路 Top 3(从拆文报告引用;情绪/节奏意图只引用 `剧情/情绪模块.md` / `剧情/节奏.md`,不在文风中重定义) | 否 | ~300 字 |
553
+ | 分层模仿建议 | 基础层 / 进阶层 / 适配层,各写可执行边界 | 否 | ~350 字 |
554
+ | **原文锚点片段** | **4-6 段 × 300-500 字**,按基调分类,标"出处 + 行号 + 示范点" | 否 | ~2400 字 |
555
+ | 不可模仿 | 对标书缺陷或不适合本项目的技法 | 否 | <100 字 |
556
+
557
+ **总上限 ~4000 字**。
558
+
559
+ 完整模板与生成方法见 [style-profile-protocol.md](style-profile-protocol.md) + [style-profile-generator.md](style-profile-generator.md)。
@@ -0,0 +1,80 @@
1
+ # 管道运维参考
2
+
3
+ story-long-analyze 拆解管道的运维工具文档:`_progress.md` 模板、错误处理、恢复机制操作步骤。
4
+
5
+ > 质量阈值(置信度 / 覆盖率 / 重叠率)见 [material-decomposition.md 质量阈值体系](material-decomposition.md)。
6
+
7
+ ---
8
+
9
+ ## _progress.md 模板
10
+
11
+ ```markdown
12
+ # 深度拆解进度:{书名}
13
+ - 小说:{标题} | 总章数:{N} | 输出目录:{路径} | 开始:{日期}
14
+ - 最终状态:{pending/paused_after_stage1/completed/completed_with_errors}
15
+ - schema_version: 2
16
+ ## 管道进度
17
+ | 阶段 | 状态 | 进度 | 备注 |
18
+ |------|------|------|------|
19
+ ## 章节边界(Stage 0 章节边界子步骤产物,唯一权威)
20
+ | 章号 | 标题 | 起始行 | 字数 |
21
+ |------|------|--------|------|
22
+ ## 分块进度
23
+ | 块 | 章节 | 状态 |
24
+ ## 失败记录
25
+ | 类型 | 章节/阶段 | 错误信息 | 重试状态 |
26
+ |------|----------|---------|---------|
27
+ ## 质量检查
28
+ | 检查项 | 阶段 | 结果 | 修正 |
29
+ ## 角色合并
30
+ | 合并前 | 合并后 | 依据 | 确认 |
31
+ ## 断点
32
+ - 最后处理:第{N}章 | 当前阶段 | 下一操作
33
+ ```
34
+
35
+ **schema_version 说明**:
36
+
37
+ | 版本 | 含义 |
38
+ |------|------|
39
+ | 2 | 当前契约:含「章节边界」表(Stage 0 章节边界子步骤产物)。Stage 1/2/6 全部以该表为切片真值,不再各自跑 regex |
40
+
41
+ 缺少 `schema_version: 2` 或「章节边界」表时不得续跑;从 Stage 0 章节边界子步骤重建 `_progress.md` 后再恢复。
42
+
43
+ **最终状态值说明**:
44
+
45
+ | 状态值 | 含义 |
46
+ |--------|------|
47
+ | `pending` | 管道进行中,尚未跑完 |
48
+ | `paused_after_stage1` | Stage 1 停靠点暂停——Stage 0/1 已完成,已产出 `快速预览.md`,等待用户决定是否继续 Stage 2-6。续跑时跳过 Stage 0/1,从 Stage 2 开始 |
49
+ | `completed` | 全管道 Stage 0-6 完成 |
50
+ | `completed_with_errors` | 全管道完成,但有单章/单阶段失败(详见「失败记录」表,拆文报告中注明) |
51
+
52
+ ---
53
+
54
+ ## 剧情单元清单补建(存量书)
55
+
56
+ 触发:用户说「补剧情单元清单」,或写作侧检索发现 `剧情/README.md` 无「剧情单元清单」表。
57
+
58
+ 动作:读存量 `拆文库/{书名}/剧情/*.md`(或 `对标/{书名}/剧情/*.md`)各剧情单元表头的 标题 / 类型 / 桥段标签 / 章节范围 字段,按 output-templates.md「剧情单元清单」表模板机械重建 `剧情/README.md` 的清单表;项目 `对标/{书名}/` 视图存在时同步一份。不读原文、不重跑任何 Stage、不改剧情单元内容、不动 `节奏.md` / `情绪模块.md`。旧剧情单元「章节范围」行没有字数信息时,体量列只写「共{N}章」、字数记「未知」,不得编造。
59
+
60
+ 写作侧消费点对无清单的书自动回退逐文件检索(见 story-long-write 的 outline-structure-theory.md「对标节奏迁移」步骤 1),补建只是加速,不是阻塞项。
61
+
62
+ ## 错误处理
63
+
64
+ | 场景 | 处理 |
65
+ |------|------|
66
+ | 章节识别失败 | 提示确认格式;支持自定义正则 |
67
+ | 分块中断 | 读 _progress.md 断点恢复 |
68
+ | 聚合质量不达标 | 孤立情节二次分类;阈值放宽至 0.5 |
69
+ | 角色合并冲突 | 记录待确认列表 |
70
+ | 输出目录冲突 | 追加不覆盖;冲突标 `[重新分析]` |
71
+
72
+ ---
73
+
74
+ ## 恢复机制操作步骤
75
+
76
+ 1. 管道启动时检查输出目录是否已有 `_progress.md`
77
+ 2. 校验 `schema_version: 2` 与「章节边界」表;任一缺失即停止,并提示从 Stage 0 章节边界子步骤重建进度文件
78
+ 3. 读取断点信息(最后处理章节 + 当前阶段 + 最终状态)
79
+ 4. **断点状态为 `paused_after_stage1`**(Stage 1 停靠点)→ 跳过 Stage 0/1,直接从 Stage 2 续跑逐章摘要,不重跑已完成的概要与黄金三章
80
+ 5. 其他断点状态 → 从断点所在块的起始章节恢复,覆盖该块已有输出