@oh-story/dsh 0.1.14 → 0.1.16

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 (533) hide show
  1. package/README.md +12 -10
  2. package/lib/drama/manifest.json +284 -364
  3. package/lib/drama/skills/short-drama/SKILL.md +13 -14
  4. package/lib/drama/skills/short-drama/agents/openai.yaml +1 -1
  5. package/lib/drama/skills/short-drama/references/audience-reveal.md +4 -4
  6. package/lib/drama/skills/short-drama/references/contract-and-ownership.md +2 -2
  7. package/lib/drama/skills/short-drama/references/creator-documents.md +12 -10
  8. package/lib/drama/skills/short-drama/references/creator-workflow.md +6 -5
  9. package/lib/drama/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +8 -8
  10. 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 +5 -5
  11. 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 +5 -6
  12. package/lib/drama/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +6 -7
  13. package/lib/drama/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +2 -3
  14. 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 +6 -7
  15. package/lib/drama/skills/short-drama/references/knowhow-index.md +6 -7
  16. package/lib/drama/skills/short-drama/references/look-development.md +5 -7
  17. package/lib/drama/skills/short-drama/references/pickup-and-alternate.md +6 -3
  18. package/lib/drama/skills/short-drama/references/production-form-profiles.md +14 -16
  19. package/lib/drama/skills/short-drama/references/reference-roles.md +5 -3
  20. package/lib/drama/skills/short-drama/references/runtime-preflight.md +2 -1
  21. package/lib/drama/skills/short-drama-assets/SKILL.md +8 -8
  22. package/lib/drama/skills/short-drama-assets/agents/openai.yaml +1 -1
  23. package/lib/drama/skills/short-drama-assets/references/asset-review-checklist.md +26 -27
  24. package/lib/drama/skills/short-drama-assets/references/character-and-look.md +22 -22
  25. package/lib/drama/skills/short-drama-assets/references/continuity-delta.md +4 -4
  26. package/lib/drama/skills/short-drama-assets/references/continuity-lock.md +4 -4
  27. package/lib/drama/skills/short-drama-assets/references/era-anchors.md +3 -3
  28. package/lib/drama/skills/short-drama-assets/references/identity-vs-variant.md +5 -5
  29. package/lib/drama/skills/short-drama-assets/references/location-and-view.md +6 -7
  30. package/lib/drama/skills/short-drama-assets/references/occurrence-extraction.md +8 -9
  31. package/lib/drama/skills/short-drama-assets/references/prop-and-state.md +8 -11
  32. package/lib/drama/skills/short-drama-assets/references/voice-direction.md +22 -22
  33. package/lib/drama/skills/short-drama-develop/SKILL.md +6 -6
  34. package/lib/drama/skills/short-drama-develop/agents/openai.yaml +1 -1
  35. package/lib/drama/skills/short-drama-develop/assets/creative-brief.md +2 -2
  36. package/lib/drama/skills/short-drama-develop/assets/story-engine.md +2 -2
  37. package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +13 -12
  38. package/lib/drama/skills/short-drama-develop/references/creative-reference-intake.md +7 -7
  39. package/lib/drama/skills/short-drama-develop/references/director-brief-craft.md +7 -8
  40. package/lib/drama/skills/short-drama-develop/references/episode-design.md +20 -24
  41. package/lib/drama/skills/short-drama-develop/references/genre-and-hook-playbook.md +7 -7
  42. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +4 -5
  43. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +2 -2
  44. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +1 -1
  45. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +2 -2
  46. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +1 -1
  47. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +1 -1
  48. package/lib/drama/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +1 -1
  49. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +1 -1
  50. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +4 -5
  51. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +1 -1
  52. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +1 -1
  53. package/lib/drama/skills/short-drama-develop/references/genre-cards//351/200/206/350/242/255.md +1 -1
  54. package/lib/drama/skills/short-drama-develop/references/genre-cards//351/207/215/347/224/237/347/251/277/350/266/212.md +2 -2
  55. package/lib/drama/skills/short-drama-develop/references/genre-cards.md +4 -4
  56. package/lib/drama/skills/short-drama-develop/references/mechanism-loop.md +6 -7
  57. package/lib/drama/skills/short-drama-develop/references/multi-episode-intake.md +19 -17
  58. package/lib/drama/skills/short-drama-develop/references/premise-devices.md +5 -5
  59. package/lib/drama/skills/short-drama-develop/references/reveal-reversal-payoff.md +6 -5
  60. package/lib/drama/skills/short-drama-develop/references/serial-character-and-memory.md +3 -4
  61. package/lib/drama/skills/short-drama-develop/references/stage-contract.md +7 -9
  62. package/lib/drama/skills/short-drama-develop/references/story-craft.md +8 -10
  63. package/lib/drama/skills/short-drama-edit/SKILL.md +11 -14
  64. package/lib/drama/skills/short-drama-edit/assets/remotion/README.md +12 -19
  65. package/lib/drama/skills/short-drama-edit/assets//345/211/252/350/276/221/345/215/225.md +2 -2
  66. package/lib/drama/skills/short-drama-edit/references/cut-craft.md +5 -4
  67. package/lib/drama/skills/short-drama-edit/references/generated-footage.md +1 -1
  68. package/lib/drama/skills/short-drama-edit/references/sound-and-subtitles.md +6 -4
  69. package/lib/drama/skills/short-drama-edit/references/stage-contract.md +5 -5
  70. package/lib/drama/skills/short-drama-edit/references/still-cuts.md +1 -1
  71. package/lib/drama/skills/short-drama-image-prompts/SKILL.md +7 -2
  72. package/lib/drama/skills/short-drama-image-prompts/agents/openai.yaml +1 -1
  73. package/lib/drama/skills/short-drama-image-prompts/references/character-and-look.md +4 -5
  74. package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +17 -17
  75. package/lib/drama/skills/short-drama-image-prompts/references/edit-and-revision.md +10 -9
  76. package/lib/drama/skills/short-drama-image-prompts/references/location-plate.md +11 -12
  77. package/lib/drama/skills/short-drama-image-prompts/references/look-and-state-variant.md +6 -5
  78. package/lib/drama/skills/short-drama-image-prompts/references/lookdev-frame.md +2 -2
  79. package/lib/drama/skills/short-drama-image-prompts/references/production-sheet-recipes.md +6 -6
  80. package/lib/drama/skills/short-drama-image-prompts/references/prop-plate.md +8 -8
  81. package/lib/drama/skills/short-drama-image-prompts/references/review-and-fixtures.md +5 -4
  82. package/lib/drama/skills/short-drama-novel-analyze/SKILL.md +17 -24
  83. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-triage.md +3 -4
  84. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-value.md +5 -10
  85. package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +4 -6
  86. package/lib/drama/skills/short-drama-novel-analyze/references/chapter-extraction.md +9 -13
  87. package/lib/drama/skills/short-drama-novel-analyze/references/stage-contract.md +3 -7
  88. package/lib/drama/skills/short-drama-produce/SKILL.md +43 -42
  89. package/lib/drama/skills/short-drama-produce/agents/openai.yaml +1 -1
  90. package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +31 -18
  91. package/lib/drama/skills/short-drama-produce/references/providers/gpt-image-2.md +1 -1
  92. package/lib/drama/skills/short-drama-produce/references/providers/minimax-h3-video.md +11 -6
  93. package/lib/drama/skills/short-drama-produce/references/providers/minimax-music.md +2 -2
  94. package/lib/drama/skills/short-drama-produce/references/providers/minimax-speech.md +7 -5
  95. package/lib/drama/skills/short-drama-produce/references/providers/seedance.md +14 -8
  96. package/lib/drama/skills/short-drama-review/SKILL.md +9 -9
  97. package/lib/drama/skills/short-drama-review/agents/openai.yaml +1 -1
  98. package/lib/drama/skills/short-drama-review/references/anti-template-repair.md +10 -11
  99. package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +24 -23
  100. package/lib/drama/skills/short-drama-review/references/project-calibration.md +17 -16
  101. package/lib/drama/skills/short-drama-review/references/review-method.md +8 -6
  102. package/lib/drama/skills/short-drama-review/references/rubric-assets-prompts.md +7 -6
  103. package/lib/drama/skills/short-drama-review/references/rubric-source-analysis.md +17 -10
  104. package/lib/drama/skills/short-drama-review/references/rubric-story-script.md +29 -25
  105. package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +11 -11
  106. package/lib/drama/skills/short-drama-review/references/stage-contract.md +3 -2
  107. package/lib/drama/skills/short-drama-storyboard/SKILL.md +8 -10
  108. package/lib/drama/skills/short-drama-storyboard/agents/openai.yaml +1 -1
  109. package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +8 -11
  110. package/lib/drama/skills/short-drama-storyboard/references/comic-keyframe-lexicon.md +11 -12
  111. package/lib/drama/skills/short-drama-storyboard/references/coverage-audition.md +4 -5
  112. package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +19 -24
  113. package/lib/drama/skills/short-drama-storyboard/references/lighting-craft.md +1 -1
  114. package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +26 -29
  115. package/lib/drama/skills/short-drama-storyboard/references/review-and-fixtures.md +6 -5
  116. package/lib/drama/skills/short-drama-storyboard/references/scene-visual-plan.md +2 -2
  117. package/lib/drama/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +4 -4
  118. package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +8 -8
  119. package/lib/drama/skills/short-drama-storyboard/references/shot-revision-identity.md +3 -3
  120. package/lib/drama/skills/short-drama-video-prompts/SKILL.md +10 -7
  121. package/lib/drama/skills/short-drama-video-prompts/agents/openai.yaml +1 -1
  122. package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +63 -61
  123. package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +20 -18
  124. package/lib/drama/skills/short-drama-video-prompts/references/generability.md +12 -12
  125. package/lib/drama/skills/short-drama-video-prompts/references/minimax-h3.md +4 -3
  126. package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +38 -40
  127. package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +36 -36
  128. package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +17 -21
  129. package/lib/drama/skills/short-drama-video-prompts/references/review-and-fixtures.md +10 -11
  130. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.0.md +1 -1
  131. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.5.md +2 -2
  132. package/lib/drama/skills/short-drama-video-prompts/references/target-model-profile.md +6 -12
  133. package/lib/drama/skills/short-drama-video-prompts/references/wan-3.0.md +2 -1
  134. package/lib/drama/skills/short-drama-write/SKILL.md +15 -15
  135. package/lib/drama/skills/short-drama-write/agents/openai.yaml +1 -1
  136. package/lib/drama/skills/short-drama-write/assets/screenplay.md +3 -4
  137. package/lib/drama/skills/short-drama-write/references/dialogue-craft.md +20 -22
  138. package/lib/drama/skills/short-drama-write/references/production-format-dialect.md +20 -22
  139. package/lib/drama/skills/short-drama-write/references/scene-handoff-capsule.md +10 -10
  140. package/lib/drama/skills/short-drama-write/references/scene-sound-dramaturgy.md +11 -9
  141. package/lib/drama/skills/short-drama-write/references/screenplay-format.md +11 -10
  142. package/lib/drama/skills/short-drama-write/references/script-craft.md +41 -47
  143. package/lib/drama/skills/short-drama-write/references/stage-contract.md +7 -5
  144. package/lib/drama/skills/short-drama-write/references/substitutable-realization.md +19 -25
  145. package/lib/index.js +80 -17
  146. package/lib/index.js.map +3 -3
  147. package/lib/novel-to-game/README.md +8 -9
  148. package/lib/novel-to-game/README_ZH.md +12 -13
  149. package/lib/novel-to-game/manifest.json +19 -19
  150. package/lib/novel-to-game/skills/game-art-direction/SKILL.md +2 -2
  151. package/lib/novel-to-game/skills/game-build/SKILL.md +2 -0
  152. package/lib/novel-to-game/skills/game-concept/SKILL.md +1 -1
  153. package/lib/novel-to-game/skills/game-qa/references/test-design-method.md +1 -1
  154. package/lib/novel-to-game/skills/game-world-design/SKILL.md +1 -1
  155. package/lib/novel-to-game/skills/game-world-design/agents/openai.yaml +1 -1
  156. package/lib/novel-to-game/skills/novel-to-game/references/intake-method.md +4 -4
  157. package/lib/oh-story/manifest.json +676 -676
  158. package/lib/oh-story/roles/chapter-extractor.md +10 -10
  159. package/lib/oh-story/roles/character-designer.md +8 -24
  160. package/lib/oh-story/roles/consistency-checker.md +3 -5
  161. package/lib/oh-story/roles/narrative-writer.md +16 -16
  162. package/lib/oh-story/roles/story-architect.md +8 -11
  163. package/lib/oh-story/roles/story-explorer.md +7 -9
  164. package/lib/oh-story/roles/story-researcher.md +8 -8
  165. package/lib/oh-story/skills/browser-cdp/SKILL.md +19 -18
  166. package/lib/oh-story/skills/story/SKILL.md +15 -20
  167. package/lib/oh-story/skills/story/VERSION +1 -1
  168. package/lib/oh-story/skills/story-cover/SKILL.md +17 -26
  169. package/lib/oh-story/skills/story-cover/references/cover-styles.md +12 -10
  170. package/lib/oh-story/skills/story-deslop/SKILL.md +69 -211
  171. package/lib/oh-story/skills/story-deslop/references/agent-calls.md +17 -3
  172. package/lib/oh-story/skills/story-deslop/references/banned-words.md +63 -151
  173. package/lib/oh-story/skills/story-deslop/references/deslop-gates.md +23 -160
  174. package/lib/oh-story/skills/story-deslop/references/expression.md +76 -0
  175. package/lib/oh-story/skills/story-deslop/references/narrative-focus.md +63 -0
  176. package/lib/oh-story/skills/story-deslop/references/story-logic.md +65 -0
  177. package/lib/oh-story/skills/story-deslop/references/style-resolution.md +5 -5
  178. package/lib/oh-story/skills/story-import/SKILL.md +8 -13
  179. package/lib/oh-story/skills/story-import/references/character-state-reverse.md +9 -8
  180. package/lib/oh-story/skills/story-import/references/deep-analysis.md +5 -5
  181. package/lib/oh-story/skills/story-import/references/format-and-structure.md +11 -11
  182. package/lib/oh-story/skills/story-import/references/import-report.md +5 -5
  183. package/lib/oh-story/skills/story-import/references/import-special-cases.md +4 -4
  184. package/lib/oh-story/skills/story-import/references/import-tracking.md +5 -5
  185. package/lib/oh-story/skills/story-import/references/length-routing.md +12 -20
  186. package/lib/oh-story/skills/story-import/references/outline-reverse-rules.md +3 -3
  187. package/lib/oh-story/skills/story-import/references/outline-reverse.md +2 -2
  188. package/lib/oh-story/skills/story-import/references/state-tracking.md +5 -3
  189. package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +13 -13
  190. package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +10 -14
  191. package/lib/oh-story/skills/story-import/references/tracking-initialization.md +2 -2
  192. package/lib/oh-story/skills/story-import/references/tracking-transaction.md +2 -2
  193. package/lib/oh-story/skills/story-long-analyze/SKILL.md +8 -8
  194. package/lib/oh-story/skills/story-long-analyze/references/author-facing.md +9 -9
  195. package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +22 -22
  196. package/lib/oh-story/skills/story-long-analyze/references/final-checks.md +5 -4
  197. package/lib/oh-story/skills/story-long-analyze/references/index-rebuild.md +9 -3
  198. package/lib/oh-story/skills/story-long-analyze/references/inspiration-library.md +7 -7
  199. package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +8 -9
  200. package/lib/oh-story/skills/story-long-analyze/references/semantic-acceptance-fixtures.md +2 -2
  201. package/lib/oh-story/skills/story-long-analyze/references/stage1-golden-chapters.md +8 -8
  202. package/lib/oh-story/skills/story-long-analyze/references/stage2-extraction.md +9 -9
  203. package/lib/oh-story/skills/story-long-analyze/references/stage3-plot-rhythm.md +15 -15
  204. package/lib/oh-story/skills/story-long-analyze/references/stage4-characters-settings.md +17 -15
  205. package/lib/oh-story/skills/story-long-analyze/references/stage5-report.md +8 -6
  206. package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +19 -16
  207. package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +8 -8
  208. package/lib/oh-story/skills/story-long-analyze/references/synthesis-inputs.md +6 -6
  209. package/lib/oh-story/skills/story-long-scan/SKILL.md +24 -34
  210. package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +30 -44
  211. package/lib/oh-story/skills/story-long-scan/references/platform-ciweimao.md +6 -4
  212. package/lib/oh-story/skills/story-long-scan/references/platform-fanqie.md +5 -5
  213. package/lib/oh-story/skills/story-long-scan/references/platform-jjwxc.md +7 -7
  214. package/lib/oh-story/skills/story-long-scan/references/platform-qidian.md +17 -7
  215. package/lib/oh-story/skills/story-long-scan/references/platform-qimao.md +16 -4
  216. package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +16 -29
  217. package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +26 -39
  218. package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +10 -11
  219. package/lib/oh-story/skills/story-long-write/SKILL.md +9 -10
  220. package/lib/oh-story/skills/story-long-write/references/agent-calls.md +3 -3
  221. package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +3 -3
  222. package/lib/oh-story/skills/story-long-write/references/author-memory-maintenance.md +11 -9
  223. package/lib/oh-story/skills/story-long-write/references/author-memory.md +8 -8
  224. package/lib/oh-story/skills/story-long-write/references/banned-words.md +63 -151
  225. package/lib/oh-story/skills/story-long-write/references/benchmark-recall.md +2 -2
  226. package/lib/oh-story/skills/story-long-write/references/character-basics.md +3 -3
  227. package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +4 -4
  228. package/lib/oh-story/skills/story-long-write/references/character-relations.md +4 -4
  229. package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +7 -6
  230. package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +1 -1
  231. package/lib/oh-story/skills/story-long-write/references/deslop-gates.md +23 -160
  232. package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +19 -22
  233. package/lib/oh-story/skills/story-long-write/references/emotion-on-page.md +2 -2
  234. package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +3 -3
  235. package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +28 -27
  236. package/lib/oh-story/skills/story-long-write/references/expression.md +76 -0
  237. package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +3 -4
  238. 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 +3 -3
  239. 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 +2 -2
  240. 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 +3 -3
  241. 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 +3 -3
  242. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +3 -3
  243. 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 +3 -3
  244. 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 +3 -3
  245. 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 +3 -3
  246. 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 +3 -3
  247. 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 +3 -3
  248. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +3 -3
  249. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +3 -3
  250. 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 +3 -3
  251. 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 +3 -3
  252. 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 +3 -3
  253. 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 +3 -3
  254. 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 +3 -3
  255. 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 +3 -3
  256. 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 +3 -3
  257. 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 +4 -4
  258. 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 +3 -3
  259. 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 +3 -3
  260. 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 +3 -3
  261. 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 +3 -3
  262. 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 +3 -3
  263. 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 +3 -3
  264. 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 +3 -3
  265. 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 +2 -2
  266. 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 +3 -3
  267. 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 +4 -4
  268. 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 +3 -3
  269. 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 +3 -3
  270. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards.md +7 -7
  271. package/lib/oh-story/skills/story-long-write/references/genre-readers.md +32 -39
  272. package/lib/oh-story/skills/story-long-write/references/long-chapter-hooks.md +1 -1
  273. package/lib/oh-story/skills/story-long-write/references/long-chapter-quality.md +2 -2
  274. package/lib/oh-story/skills/story-long-write/references/long-format.md +2 -2
  275. package/lib/oh-story/skills/story-long-write/references/long-genre-catalog.md +13 -13
  276. package/lib/oh-story/skills/story-long-write/references/long-genre-mechanics.md +2 -2
  277. package/lib/oh-story/skills/story-long-write/references/long-reversal.md +3 -3
  278. package/lib/oh-story/skills/story-long-write/references/long-suspense.md +3 -5
  279. package/lib/oh-story/skills/story-long-write/references/narrative-focus.md +63 -0
  280. package/lib/oh-story/skills/story-long-write/references/opening-design.md +4 -4
  281. package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +4 -4
  282. package/lib/oh-story/skills/story-long-write/references/outline-methods.md +4 -4
  283. package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +2 -2
  284. package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +10 -11
  285. package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +5 -5
  286. package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +8 -8
  287. package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +5 -6
  288. package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +7 -5
  289. package/lib/oh-story/skills/story-long-write/references/project-files.md +4 -4
  290. package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +1 -1
  291. package/lib/oh-story/skills/story-long-write/references/reference-index.md +3 -5
  292. package/lib/oh-story/skills/story-long-write/references/stop-and-fix.md +1 -1
  293. package/lib/oh-story/skills/story-long-write/references/story-logic.md +65 -0
  294. package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +3 -3
  295. package/lib/oh-story/skills/story-long-write/references/style-craft.md +8 -29
  296. package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +3 -3
  297. package/lib/oh-story/skills/story-long-write/references/style-resolution.md +5 -5
  298. package/lib/oh-story/skills/story-long-write/references/tracking-initialization.md +2 -2
  299. package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +2 -2
  300. package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +5 -4
  301. package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +3 -2
  302. package/lib/oh-story/skills/story-long-write/references/workflow-outline.md +3 -3
  303. package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +3 -3
  304. package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +1 -1
  305. package/lib/oh-story/skills/story-long-write/references/workflow-volume.md +3 -3
  306. package/lib/oh-story/skills/story-long-write/references/writer-prompt-fallback.md +2 -2
  307. package/lib/oh-story/skills/story-long-write/references/writing-craft.md +25 -24
  308. package/lib/oh-story/skills/story-long-write/scripts/author_memory_commit.py +61 -58
  309. package/lib/oh-story/skills/story-long-write/scripts/build_writer_prompt.py +87 -20
  310. package/lib/oh-story/skills/story-review/SKILL.md +16 -31
  311. package/lib/oh-story/skills/story-review/references/agent-prompts.md +10 -12
  312. package/lib/oh-story/skills/story-review/references/banned-words.md +63 -151
  313. package/lib/oh-story/skills/story-review/references/batch-review.md +4 -4
  314. package/lib/oh-story/skills/story-review/references/character-relations.md +4 -4
  315. package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +19 -22
  316. package/lib/oh-story/skills/story-review/references/expression.md +76 -0
  317. package/lib/oh-story/skills/story-review/references/narrative-focus.md +63 -0
  318. package/lib/oh-story/skills/story-review/references/plot-core-methods.md +5 -5
  319. package/lib/oh-story/skills/story-review/references/quality-rubric.md +5 -5
  320. package/lib/oh-story/skills/story-review/references/review-quality.md +16 -19
  321. package/lib/oh-story/skills/story-review/references/review-tracking.md +5 -5
  322. package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +6 -5
  323. package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +6 -5
  324. package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +7 -8
  325. package/lib/oh-story/skills/story-review/references/solo.md +5 -5
  326. package/lib/oh-story/skills/story-review/references/story-logic.md +65 -0
  327. package/lib/oh-story/skills/story-review/references/style-resolution.md +5 -5
  328. package/lib/oh-story/skills/story-review/references/tracking-initialization.md +2 -2
  329. package/lib/oh-story/skills/story-review/references/tracking-transaction.md +2 -2
  330. package/lib/oh-story/skills/story-setup/SKILL.md +18 -18
  331. package/lib/oh-story/skills/story-setup/references/agent-references/agent-quality.md +3 -3
  332. package/lib/oh-story/skills/story-setup/references/agent-references/agent-reference-profiles.md +3 -4
  333. package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +63 -151
  334. package/lib/oh-story/skills/story-setup/references/agent-references/benchmark-style-load.md +9 -9
  335. package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +3 -3
  336. package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +4 -4
  337. package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +4 -4
  338. package/lib/oh-story/skills/story-setup/references/agent-references/deslop-gates.md +23 -160
  339. package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +19 -22
  340. package/lib/oh-story/skills/story-setup/references/agent-references/emotion-on-page.md +2 -2
  341. package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +3 -3
  342. package/lib/oh-story/skills/story-setup/references/agent-references/expression.md +76 -0
  343. package/lib/oh-story/skills/story-setup/references/agent-references/format-and-structure.md +11 -11
  344. 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 +3 -3
  345. 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 +2 -2
  346. 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 +3 -3
  347. 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 +3 -3
  348. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +3 -3
  349. 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 +3 -3
  350. 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 +3 -3
  351. 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 +3 -3
  352. 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 +3 -3
  353. 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 +3 -3
  354. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +3 -3
  355. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +3 -3
  356. 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 +3 -3
  357. 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 +3 -3
  358. 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 +3 -3
  359. 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 +3 -3
  360. 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 +3 -3
  361. 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 +3 -3
  362. 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 +3 -3
  363. 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 +4 -4
  364. 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 +3 -3
  365. 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 +3 -3
  366. 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 +3 -3
  367. 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 +3 -3
  368. 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 +3 -3
  369. 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 +3 -3
  370. 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 +3 -3
  371. 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 +2 -2
  372. 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 +3 -3
  373. 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 +4 -4
  374. 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 +3 -3
  375. 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 +3 -3
  376. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards.md +7 -7
  377. package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +33 -41
  378. package/lib/oh-story/skills/story-setup/references/agent-references/long-chapter-hooks.md +1 -1
  379. package/lib/oh-story/skills/story-setup/references/agent-references/long-emotional-methods.md +28 -27
  380. package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-catalog.md +13 -13
  381. package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-mechanics.md +2 -2
  382. package/lib/oh-story/skills/story-setup/references/agent-references/long-quality.md +3 -3
  383. package/lib/oh-story/skills/story-setup/references/agent-references/long-reversal.md +3 -3
  384. package/lib/oh-story/skills/story-setup/references/agent-references/long-suspense.md +3 -5
  385. package/lib/oh-story/skills/story-setup/references/agent-references/narrative-focus.md +63 -0
  386. package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +4 -4
  387. package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +4 -4
  388. package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +4 -4
  389. package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +2 -2
  390. package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +5 -5
  391. package/lib/oh-story/skills/story-setup/references/agent-references/short-chapter-hooks.md +14 -34
  392. package/lib/oh-story/skills/story-setup/references/agent-references/short-emotional-methods.md +7 -9
  393. package/lib/oh-story/skills/story-setup/references/agent-references/short-genre-formulas.md +8 -10
  394. package/lib/oh-story/skills/story-setup/references/agent-references/short-paragraph-hooks.md +11 -12
  395. package/lib/oh-story/skills/story-setup/references/agent-references/short-quality.md +6 -4
  396. package/lib/oh-story/skills/story-setup/references/agent-references/short-reversal.md +11 -11
  397. package/lib/oh-story/skills/story-setup/references/agent-references/story-logic.md +65 -0
  398. package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +3 -3
  399. package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +3 -3
  400. package/lib/oh-story/skills/story-setup/references/agent-references/style-resolution.md +5 -5
  401. package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +25 -24
  402. package/lib/oh-story/skills/story-setup/references/diagnostics.md +4 -4
  403. package/lib/oh-story/skills/story-short-analyze/SKILL.md +5 -15
  404. package/lib/oh-story/skills/story-short-analyze/references/analysis-character-basics.md +91 -111
  405. package/lib/oh-story/skills/story-short-analyze/references/analysis-character-design.md +85 -97
  406. package/lib/oh-story/skills/story-short-analyze/references/analysis-character-relations.md +72 -83
  407. package/lib/oh-story/skills/story-short-analyze/references/analysis-method.md +7 -7
  408. package/lib/oh-story/skills/story-short-analyze/references/analysis-paragraph-hooks.md +28 -30
  409. package/lib/oh-story/skills/story-short-analyze/references/analysis-reader-profile.md +59 -66
  410. package/lib/oh-story/skills/story-short-analyze/references/analysis-report-style.md +1 -3
  411. package/lib/oh-story/skills/story-short-analyze/references/analysis-short-genres.md +2 -2
  412. package/lib/oh-story/skills/story-short-analyze/references/analysis-short-hooks.md +3 -3
  413. package/lib/oh-story/skills/story-short-analyze/references/analysis-short-mechanics.md +3 -3
  414. package/lib/oh-story/skills/story-short-analyze/references/analysis-short-patterns.md +2 -2
  415. package/lib/oh-story/skills/story-short-analyze/references/analysis-short-suspense.md +2 -2
  416. package/lib/oh-story/skills/story-short-analyze/references/analysis-writing-techniques.md +76 -89
  417. package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +5 -5
  418. package/lib/oh-story/skills/story-short-analyze/references/optional-modules.md +3 -3
  419. package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +13 -24
  420. package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +3 -3
  421. package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +24 -25
  422. package/lib/oh-story/skills/story-short-analyze/references/source-story-quality.md +44 -46
  423. package/lib/oh-story/skills/story-short-analyze/references/stage2-3-structure-emotion.md +14 -12
  424. package/lib/oh-story/skills/story-short-analyze/references/stage4-6-reversal-summary.md +17 -17
  425. package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +11 -11
  426. package/lib/oh-story/skills/story-short-scan/SKILL.md +22 -29
  427. package/lib/oh-story/skills/story-short-scan/references/manual-rank-input.md +3 -3
  428. package/lib/oh-story/skills/story-short-scan/references/platform-dianzhong.md +2 -2
  429. package/lib/oh-story/skills/story-short-scan/references/platform-heiyan.md +2 -2
  430. package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +24 -25
  431. package/lib/oh-story/skills/story-short-scan/references/topic-match.md +3 -3
  432. package/lib/oh-story/skills/story-short-write/SKILL.md +20 -23
  433. package/lib/oh-story/skills/story-short-write/references/agent-calls.md +4 -4
  434. package/lib/oh-story/skills/story-short-write/references/author-memory-maintenance.md +11 -9
  435. package/lib/oh-story/skills/story-short-write/references/author-memory.md +8 -8
  436. package/lib/oh-story/skills/story-short-write/references/banned-words.md +63 -151
  437. package/lib/oh-story/skills/story-short-write/references/benchmark-recall.md +8 -8
  438. package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +11 -11
  439. package/lib/oh-story/skills/story-short-write/references/deslop-gates.md +34 -0
  440. package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +19 -22
  441. package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +7 -9
  442. package/lib/oh-story/skills/story-short-write/references/expression.md +76 -0
  443. package/lib/oh-story/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +9 -9
  444. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +15 -15
  445. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +9 -9
  446. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +14 -14
  447. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +11 -11
  448. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +9 -9
  449. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +14 -13
  450. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +12 -12
  451. package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +8 -8
  452. 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 +12 -12
  453. package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +8 -10
  454. package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +14 -34
  455. package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +11 -12
  456. package/lib/oh-story/skills/story-short-write/references/narrative-focus.md +63 -0
  457. package/lib/oh-story/skills/story-short-write/references/output-contract.md +13 -24
  458. package/lib/oh-story/skills/story-short-write/references/reference-index.md +3 -4
  459. package/lib/oh-story/skills/story-short-write/references/scene-craft.md +8 -7
  460. package/lib/oh-story/skills/story-short-write/references/short-craft.md +16 -18
  461. package/lib/oh-story/skills/story-short-write/references/short-deslop.md +12 -125
  462. package/lib/oh-story/skills/story-short-write/references/short-format.md +9 -13
  463. package/lib/oh-story/skills/story-short-write/references/short-prose-quality.md +18 -35
  464. package/lib/oh-story/skills/story-short-write/references/short-reversal.md +11 -11
  465. package/lib/oh-story/skills/story-short-write/references/story-logic.md +65 -0
  466. package/lib/oh-story/skills/story-short-write/references/style-resolution.md +5 -5
  467. package/lib/oh-story/skills/story-short-write/references/submission-craft.md +8 -8
  468. package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +11 -13
  469. package/lib/oh-story/skills/story-short-write/references/workflow-design.md +11 -9
  470. package/lib/oh-story/skills/story-short-write/references/workflow-draft.md +10 -10
  471. package/lib/oh-story/skills/story-short-write/references/workflow-revision.md +10 -9
  472. package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +4 -4
  473. package/lib/oh-story/skills/story-short-write/scripts/author_memory_commit.py +61 -58
  474. package/lib/types/role-tool.d.ts +42 -2
  475. package/lib/types/role-tool.d.ts.map +1 -1
  476. package/lib/types/skill-provider.d.ts.map +1 -1
  477. package/lib/video-recap/CHANGELOG.md +8 -0
  478. package/lib/video-recap/README.en.md +8 -10
  479. package/lib/video-recap/README.md +8 -8
  480. package/lib/video-recap/manifest.json +48 -48
  481. package/lib/video-recap/skills/video-assemble/SKILL.md +5 -8
  482. package/lib/video-recap/skills/video-assemble/references/audio-modes.md +3 -3
  483. package/lib/video-recap/skills/video-assemble/references/jianying/SOURCE.md +1 -2
  484. package/lib/video-recap/skills/video-assemble/references/packaging.md +1 -2
  485. package/lib/video-recap/skills/video-assemble/references/source-score.md +5 -6
  486. package/lib/video-recap/skills/video-cut/SKILL.md +3 -7
  487. package/lib/video-recap/skills/video-cut/references/shot-review.md +1 -1
  488. package/lib/video-recap/skills/video-recap/SKILL.md +7 -11
  489. package/lib/video-recap/skills/video-recap/references/audio-routing.md +1 -2
  490. package/lib/video-recap/skills/video-recap/references/config-playbook.md +5 -7
  491. package/lib/video-recap/skills/video-recap/references/data-schema.md +8 -8
  492. package/lib/video-recap/skills/video-recap/references/resource-library.md +2 -2
  493. package/lib/video-recap/skills/video-reference/SKILL.md +4 -8
  494. package/lib/video-recap/skills/video-reference/references/reference-schema.md +1 -1
  495. package/lib/video-recap/skills/video-script/SKILL.md +4 -13
  496. package/lib/video-recap/skills/video-script/references/creative-editing-playbook.md +2 -2
  497. package/lib/video-recap/skills/video-understanding/SKILL.md +10 -6
  498. package/lib/video-recap/skills/video-understanding/references/data-schema.md +2 -2
  499. package/lib/video-recap/skills/video-voiceover/SKILL.md +3 -11
  500. package/lib/video-recap/skills/video-voiceover/references/index-tts.md +1 -2
  501. package/package.json +25 -24
  502. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +0 -187
  503. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompts.md +0 -42
  504. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +0 -128
  505. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-prompts.md +0 -34
  506. package/lib/drama/skills/short-drama-storyboard/assets/coverage-template.json +0 -49
  507. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-prompts.md +0 -36
  508. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-template.jsonl +0 -2
  509. package/lib/drama/skills/short-drama-storyboard/assets/shot-template.jsonl +0 -2
  510. package/lib/drama/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +0 -101
  511. package/lib/drama/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +0 -217
  512. package/lib/drama/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +0 -31
  513. package/lib/drama/skills/short-drama-video-prompts/assets/video-prompts.md +0 -67
  514. package/lib/drama/skills/short-drama-write/assets/beats.jsonl +0 -2
  515. package/lib/drama/skills/short-drama-write/assets/episode-card-standalone.json +0 -120
  516. package/lib/drama/skills/short-drama-write/assets/episode-card.json +0 -55
  517. package/lib/drama/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +0 -89
  518. package/lib/oh-story/skills/story/references/author-memory-maintenance.md +0 -75
  519. package/lib/oh-story/skills/story/references/author-memory.md +0 -117
  520. package/lib/oh-story/skills/story/scripts/author_memory_commit.py +0 -1635
  521. package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +0 -556
  522. package/lib/oh-story/skills/story-deslop/references/author-memory-maintenance.md +0 -75
  523. package/lib/oh-story/skills/story-deslop/references/author-memory.md +0 -117
  524. package/lib/oh-story/skills/story-deslop/scripts/author_memory_commit.py +0 -1635
  525. package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +0 -556
  526. package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +0 -556
  527. package/lib/oh-story/skills/story-review/references/author-memory-maintenance.md +0 -75
  528. package/lib/oh-story/skills/story-review/references/author-memory.md +0 -117
  529. package/lib/oh-story/skills/story-review/scripts/author_memory_commit.py +0 -1635
  530. package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +0 -556
  531. package/lib/oh-story/skills/story-setup/references/agent-references/short-suspense.md +0 -352
  532. package/lib/oh-story/skills/story-short-write/references/genre-writing-techniques.md +0 -490
  533. package/lib/oh-story/skills/story-short-write/references/short-suspense.md +0 -352
@@ -1,128 +0,0 @@
1
- # `lookdev-frame` 填写模板
2
-
3
- 只在 `purpose: lookdev_frame` 时读取。首行是 `sources` 声明记录,之后每行一个候选风格帧规格;它投影已接受视觉方向,
4
- 不替普通人物、地点、道具规格增加字段。删除当前测试轴不需要的可选项。
5
-
6
- ## 首行:`sources` 声明
7
-
8
- 本文件用到的每个上游快照在这里声明一次,键取产物文件名,在本文件内唯一且稳定。视觉方向与
9
- 制作形态同出于 `short-drama.json`,共用一个键:
10
-
11
- ```json
12
- {
13
- "record_type": "sources",
14
- "schema_version": "1.0.0",
15
- "sources": {
16
- "short-drama": {
17
- "owner": "creator",
18
- "artifact": "short-drama.json"
19
- },
20
- "<identity-owner>": {
21
- "owner": "short-drama-assets",
22
- "artifact": "设定集/<identity-owner-file>.jsonl"
23
- },
24
- "<variant-owner>": {
25
- "owner": "short-drama-assets",
26
- "artifact": "设定集/<variant-owner-file>.jsonl"
27
- },
28
- "screenplay-index": {
29
- "owner": "short-drama-write",
30
- "artifact": "剧集/<EP>/screenplay-index.jsonl"
31
- },
32
- "<reference>": {
33
- "owner": "<reference-owner>",
34
- "artifact": "<project-relative-reference-record>"
35
- }
36
- }
37
- }
38
- ```
39
-
40
- 引用用 `src` 指向声明键,再写本条引用自己的 `record_id` 和 `field`。
41
-
42
- ## 规格行
43
-
44
- ```json
45
- {
46
- "spec_id": "LOOKDEV-<stable-id>",
47
- "status": "candidate",
48
- "purpose": "lookdev_frame",
49
- "lookdev_axis": "character_expression | core_location | high_pressure_scene",
50
- "direction_ref": {
51
- "src": "short-drama",
52
- "field": "/creator_authority/visual_direction/choices/look_development"
53
- },
54
- "production_profile_ref": {
55
- "src": "short-drama",
56
- "field": "/creator_authority/production_profile"
57
- },
58
- "subject_bindings": [
59
- {
60
- "identity_ref": {
61
- "src": "<identity-owner>",
62
- "record_id": "CHAR/LOC/PROP-<id>"
63
- },
64
- "variant_ref": {
65
- "src": "<variant-owner>",
66
- "record_id": "LOOK/VIEW/PSTATE-<id>"
67
- },
68
- "role": "expression_subject | location | pressure_actor | evidence"
69
- }
70
- ],
71
- "story_context_refs": [
72
- {
73
- "src": "screenplay-index",
74
- "record_id": "BLK-<EP>-<SC>-<kind><nn>",
75
- "field": "/<exact-source-field-if-needed>",
76
- "role": "scene_heading | action | dialogue | information_permission | story_state"
77
- }
78
- ],
79
- "reference_bindings": [
80
- {
81
- "slot_id": "REF-<stable-slot>",
82
- "order": 1,
83
- "artifact_ref": {
84
- "src": "<reference>",
85
- "record_id": "<stable-record-id>"
86
- },
87
- "role": "style",
88
- "may_control": [
89
- "<色彩层级/材质处理/阴影边缘/景深倾向/画面密度>"
90
- ],
91
- "must_not_control": [
92
- "<角色身份/固定地理/剧情状态/人数/持物/道具文字>"
93
- ],
94
- "admission_status": "unverified | creator_described | visually_inspected",
95
- "reference_observation_ref": null,
96
- "unresolved_risks": []
97
- }
98
- ],
99
- "test_question": "<本帧要暴露哪一种视觉方向风险>",
100
- "stable_visual_rules": [
101
- "<跨测试轴必须保留的可观察规则>"
102
- ],
103
- "allowed_variation": [
104
- "<本场允许变化的光比/冷暖/留白/密度>"
105
- ],
106
- "composition_and_state": "<只写当前代表帧需要的构图、空间与剧情状态>",
107
- "appearance": {
108
- "materials": [
109
- "<材质处理>"
110
- ],
111
- "palette": "<色彩层级>",
112
- "lighting": "<光源逻辑与阴影边缘>",
113
- "depth_or_density": "<景深/画面密度>"
114
- },
115
- "constraints": [
116
- "<必须保持的身份、地理、文字与信息权限>"
117
- ],
118
- "generic_prompt": "<只含可被画出的自然表述,语言按 #/format/prompt_language,不含字段名/hash/审查话术>",
119
- "derivation": {
120
- "renderer": "generic-markdown"
121
- },
122
- "provenance": "creator_project"
123
- }
124
- ```
125
-
126
- 人物与地点测试没有剧情职责时删除 `story_context_refs` 及其 `sources` 键;高压力场景必须保留真实 `BLK-…`
127
- 来源。单主体也使用一项 `subject_bindings[]`,不再与 `asset_binding` 二选一。无参考媒体时
128
- `reference_bindings` 为空;多参考的 `slot_id` 稳定、`order` 唯一。
@@ -1,34 +0,0 @@
1
- # `lookdev-prompts.md` 可复制输出模板
2
-
3
- 此文件由已接受 Look Development 规格派生。它展示视觉方向怎样跨测试轴保持,
4
- 只复制引用块内的自然语言提示词;本文件不触发图片或媒体服务,实际生产交
5
- `$short-drama-produce` 并单独确认。
6
-
7
- **这是项目级文件,不是某一集的创作文档。** 它不参与 `creator_markdown_check.py` 的
8
- 五文档校验;某一集要用的资产提示词写进该集的《图片提示词.md》,骨架以 `SKILL.md` 为准。
9
-
10
- ```markdown
11
- # 项目 Look Development 提示词
12
-
13
- > 来源:`lookdev-image-prompt-specs.jsonl` 的已接受记录
14
- > 视觉方向:`short-drama.json#/creator_authority/visual_direction/choices/look_development`
15
- > 范围:仅代表帧提示词,不拥有角色身份、地点地理或剧情状态
16
-
17
- ## `LOOKDEV-<id>` · `<人物表现 | 核心地点 | 高压力场景>`
18
-
19
- - **测试问题**:<本帧要暴露的视觉方向风险>
20
- - **绑定事实**:<准确身份/变体;高压力帧再列 scene/block refs>
21
- - **跨轴稳定**:<形状、材质、色彩、阴影、景深或密度中的共同规则>
22
- - **本帧可变**:<当前场景允许变化的部分>
23
- - **风格参考权限**:`<slot_id / order / reference>` 只决定 `<may_control>`,不得导入 `<must_not_control>`
24
- - **仍未知**:<只能由授权生产观察回答的风险;无则写“无”>
25
-
26
- ### 可复制通用提示词
27
-
28
- > <只写可被画出的主体、空间、构图、材质、光色和状态;不含字段名、hash、审查话术、供应商参数或生成历史。>
29
-
30
- ---
31
- ```
32
-
33
- 三类测试帧不要求固定数量或宫格。人物/地点帧没有剧情职责时不列 scene/block refs;高压力帧必须
34
- 显示其准确来源。规格或视觉方向改了就重新派生本文件,不直接手改缓存。
@@ -1,49 +0,0 @@
1
- {
2
- "sources": {
3
- "shots": {
4
- "owner": "short-drama-storyboard",
5
- "artifact": "剧集/EP001/storyboard/shots.jsonl"
6
- },
7
- "screenplay-index": {
8
- "owner": "short-drama-write",
9
- "artifact": "剧集/EP001/screenplay-index.jsonl"
10
- },
11
- "short-drama": {
12
- "owner": "short-drama",
13
- "artifact": "short-drama.json"
14
- }
15
- },
16
- "episode_id": "EP001",
17
- "dispositions": [
18
- {
19
- "block_id": "BLK-EXAMPLE",
20
- "status": "covered",
21
- "reason": "Primary action and reaction remain continuous.",
22
- "shot_refs": [
23
- {
24
- "src": "shots",
25
- "record_id": "SHOT-EXAMPLE",
26
- "authority": "candidate"
27
- }
28
- ]
29
- }
30
- ],
31
- "episode_duration": {
32
- "shot_seconds_total": null,
33
- "counted_shot_ids": [
34
- "SHOT-EXAMPLE"
35
- ],
36
- "unresolved_durations": [],
37
- "target_ref": {
38
- "src": "short-drama",
39
- "field": "/format/target_seconds_per_episode"
40
- },
41
- "target_seconds": null,
42
- "delta_seconds": null,
43
- "disposition": "no_target_declared | within_creator_tolerance | creator_accepted_overrun | to_revise"
44
- },
45
- "screenplay_ref": {
46
- "src": "screenplay-index"
47
- },
48
- "status": "candidate"
49
- }
@@ -1,36 +0,0 @@
1
- # `keyframe-prompts.md` 可复制输出模板
2
-
3
- 这是由已接受的 `keyframes.jsonl` 生成的文本,不是镜头边界或资产事实来源。
4
- 每次导出都记下配方版本;文本被手改时,先预览恢复、
5
- 采用或合并的结果。
6
-
7
- **这份模板属于结构化管线**(`keyframes.jsonl` 一路)。creator-first 项目的《分镜.md》骨架
8
- 以 `SKILL.md` 为准:`## SHOT-... · 中文名`,关键帧正文标题是 `### 冻结关键帧提示词`。
9
- 不要把这里的加粗字段名、`KEY-...` 或 `### 可复制通用提示词` 搬进 creator-first 文档。
10
-
11
- ```markdown
12
- # EP<编号> · 冻结关键帧提示词
13
-
14
- > 来源:`keyframes.jsonl` 的已接受记录
15
- > 配方:`keyframe-generic@<version>`
16
- > 范围:单一静止瞬间;不生成图片,不写时间动作
17
-
18
- ## `SHOT-<id>` · `KEY-<id>`
19
-
20
- - **镜头目的**:<观众此刻必须看见什么>
21
- - **观众可见性**:逐项列出 `<来源 · 展示或暂缓 · 声画载体 · 揭示条件 · 保护方法>`
22
- - **边界来源**:`SHOT-<id>/start_boundary`
23
- - **资产绑定**:`<准确人物与造型 · 地点与观察视角 · 道具与状态>`
24
- - **文字处理**:`<已接受的来源文字政策 -> 本帧呈现方法>`
25
-
26
- ### 可复制通用提示词
27
-
28
- > <焦点主体与识别锚点>。<构图层级、人物/道具/空间锚点关系>。摄影机<景别、角度、镜头意图>。
29
- > <一个可冻结的身体朝向、姿态、目光、双手、持物与可见表演状态>。<继承的光向、时段、天气与必要气氛>。
30
- > <文字处理>。保持<边界与身份事实>;排除<本帧高风险漂移>。
31
-
32
- ---
33
- ```
34
-
35
- 若一句话必须靠“先、再、随后、最终”才能成立,就交给运动提示词环节;若要改变镜头
36
- 开始边界,先向分镜负责人提出修订请求,不要在派生文本中偷偷改。
@@ -1,2 +0,0 @@
1
- {"record_type":"sources","schema_version":"1.0.0","sources":{"<identity-owner-file>":{"owner":"short-drama-assets","artifact":"设定集/<identity-owner-file>.jsonl"},"<variant-owner-file>":{"owner":"short-drama-assets","artifact":"设定集/<variant-owner-file>.jsonl"},"location-views":{"owner":"short-drama-assets","artifact":"设定集/location-views.jsonl"},"props":{"owner":"short-drama-assets","artifact":"设定集/props.jsonl"},"short-drama":{"owner":"short-drama","artifact":"short-drama.json"},"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"}}}
2
- {"keyframe_id":"KEY-EXAMPLE","status":"candidate","shot_ref":{"src":"shots","record_id":"SHOT-EXAMPLE","authority":"candidate"},"boundary_role":"start | end","boundary_ref":{"src":"shots","record_id":"SHOT-EXAMPLE","field":"/start_boundary | /end_boundary","authority":"candidate"},"purpose":"<frozen viewing purpose>","asset_bindings":[{"identity_ref":{"src":"<identity-owner-file>","record_id":"CHAR/LOC/PROP-<id>"},"variant_ref":{"src":"<variant-owner-file>","record_id":"LOOK/VIEW/PSTATE-<id>"}}],"focal_subjects":[],"composition":{"hierarchy":[],"spatial_relations":[],"foreground":[],"background":[]},"delivery_surface_ref":{"src":"short-drama","field":"/creator_authority/delivery_surface"},"camera":{"framing":"<shot-owned projection>","angle":"<shot-owned projection>","camera_height":"<shot-owned projection>","lens_intent":"<广/标准/长 — frame-only choice; the compression wanted, not a focal length>"},"boundary_projection":{"positions":[],"facing":[],"pose_balance":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"light_projection":{"source_ref":{"src":"location-views","record_id":"VIEW-<id>","field":"/state_differences/light"},"direction":"<direction>","frame_relevant_detail":"<minimal>"},"text_treatment_refs":[{"src":"props","record_id":"PROP-<id>","field":"/text_policy"}],"exclusions":[],"generic_prompt":"<这一瞬间要拍出来的画面:谁在哪、彼此距离、前中后景、视线落点、构图与景别、机位side/俯仰/焦段意图、光从哪来什么质感、每个在场者的姿态朝向手部持物、与上一镜相同的部分写一句「与上一镜相同」、排除项;不写镜头/记录 ID、规则 ID、状态词与成段否定罗列;写满的样子见 references/keyframe-craft.md>","derivation":{"recipe_version":"<version>"}}
@@ -1,2 +0,0 @@
1
- {"record_type":"sources","schema_version":"1.0.0","sources":{"<characters-or-props>":{"owner":"short-drama-assets","artifact":"设定集/<characters-or-props>.jsonl"},"<looks-or-prop-states>":{"owner":"short-drama-assets","artifact":"设定集/<looks-or-prop-states>.jsonl"},"location-views":{"owner":"short-drama-assets","artifact":"设定集/location-views.jsonl"},"locations":{"owner":"short-drama-assets","artifact":"设定集/locations.jsonl"},"props":{"owner":"short-drama-assets","artifact":"设定集/props.jsonl"},"screenplay-index":{"owner":"short-drama-write","artifact":"剧集/<EP>/screenplay-index.jsonl"},"short-drama":{"owner":"short-drama","artifact":"short-drama.json"}}}
2
- {"shot_id":"SHOT-EXAMPLE","status":"candidate","source_refs":[{"src":"screenplay-index","record_id":"BLK-EXAMPLE"}],"coverage_role":"primary | intentional_repeat","purpose":"<what the audience must notice and why this is a new shot>","information_change":"<before -> after for audience/character>","audience_visibility":[{"source_ref":{"src":"screenplay-index","record_id":"BLK-<id>"},"fact":"<本镜必须展示或暂缓的一个事实>","permission":"show_now | withhold_now","carrier":"<可见/可听载体;暂未出现则写 none>","reveal_trigger":"<允许释放的动作/台词/cut;不在本镜则写 future>","protection_method":"<framing/crop/occlusion/offscreen/focus/timing/none,可组合说明>","rationale":"<与 source 信息权限和本镜职责的关系>"}],"location_binding":{"identity_ref":{"src":"locations","record_id":"LOC-<id>"},"variant_ref":{"src":"location-views","record_id":"VIEW-<id>"}},"asset_bindings":[{"identity_ref":{"src":"<characters-or-props>","record_id":"CHAR/PROP-<id>"},"variant_ref":{"src":"<looks-or-prop-states>","record_id":"LOOK/PSTATE-<id>"},"role":"<subject/evidence/background>"}],"duration_seconds":null,"start_boundary":{"positions":["<每条都写成不读上一镜也能理解的绝对事实:谁在哪个锚点的哪一侧;『同上』『位置不变』『同前』要往回翻才解释得通,不算已写>"],"facing":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"primary_transition":{"trigger":"<什么可见或可听事件让动作开始>","action":"<从起点到终点的唯一主要动作;交接时写清接触者、接触方式与落点>","result":"<逐项落到 end_boundary,不在镜外补转换>"},"end_boundary":{"positions":["<同样是绝对事实:本镜结束时人在哪、朝哪,不写成与开始状态的差异>"],"facing":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"framing":{"size":"<extreme_wide 远景/wide 全景/medium 中景/medium_close 中近景/close 近景/close_up 特写/extreme_close_up 大特写/detail 细节镜头 or creator vocabulary>","angle":"<horizontal: 正面/斜侧/正侧/后斜侧/背面 or creator vocabulary; say which side of the axis>","camera_height":"<地平/低(仰)/平视/高(俯)/顶视; 平视 is a choice, not an unset field>","aspect_notes":"<composition constraint>"},"delivery_surface_ref":{"src":"short-drama","field":"/creator_authority/delivery_surface"},"blocking":{"axis":"<working side/bridge/deliberate break>","screen_direction":"<direction>","paths":[],"fixed_anchors":[]},"camera_plan":{"behavior":"locked | pan | tilt | push | pull | track | follow | orbit | crane | handheld | transition","motivation":"<attention/pressure/alignment/reveal/rhythm>","intervals":[]},"dialogue_audio_refs":[],"text_treatment_refs":[{"src":"props","record_id":"PROP-<id>","field":"/text_policy"}],"transition_intent":null,"creator_overrides":[]}
@@ -1,101 +0,0 @@
1
- # `delivery-containers.jsonl` 填写模板
2
-
3
- 每行一个交付容器对象。容器只是**已接受镜头的排布方式**:它记录哪些镜头按什么顺序装进
4
- 同一个交付单位,以及由此得出的容器时长。它不拥有镜头边界、目的、起止状态或时长——
5
- 这些仍属分镜;容器只引用它们并做加法。
6
-
7
- 只有创作者声明了分段或多镜打包的交付方式时才需要本文件;单镜交付不必创建容器记录,
8
- `VID-13` 在那种情形下由运动规格自身的镜头时长满足。
9
-
10
- 文件第一行是 `sources` 声明:每个上游快照在这里写一次 `owner`、`artifact` 和已接受的
11
- `artifact`,后面的记录用它的 key 引用。key 用产物文件名派生的短小写名字,在本文件内稳定且唯一。
12
-
13
- ```jsonl
14
- {"record_type":"sources","schema_version":"1.0.0","sources":{"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"},"motion-specs":{"owner":"short-drama-video-prompts","artifact":"剧集/<EP>/storyboard/motion-specs.jsonl"},"short-drama":{"owner":"creator","artifact":"short-drama.json"}}}
15
- ```
16
-
17
- 其后每行一个容器记录,引用写 `src` 加它指向的记录 `record_id` 或字段 `field`:
18
-
19
- ```json
20
- {
21
- "container_id": "CONT-<stable-id>",
22
- "status": "candidate",
23
- "production_profile_ref": {
24
- "src": "short-drama",
25
- "field": "/creator_authority/production_profile"
26
- },
27
- "members": [
28
- {
29
- "order": 1,
30
- "shot_ref": {
31
- "src": "shots",
32
- "record_id": "SHOT-<id>"
33
- },
34
- "motion_ref": {
35
- "src": "motion-specs",
36
- "record_id": "MOTION-<stable-id>"
37
- },
38
- "accepted_duration_ref": {
39
- "src": "shots",
40
- "record_id": "SHOT-<id>",
41
- "field": "/duration_seconds"
42
- },
43
- "accepted_duration": "<从 accepted_duration_ref 读到的值,投影不改写>",
44
- "location_binding_ref": {
45
- "src": "shots",
46
- "record_id": "SHOT-<id>",
47
- "field": "/location_binding"
48
- },
49
- "asset_bindings_ref": {
50
- "src": "shots",
51
- "record_id": "SHOT-<id>",
52
- "field": "/asset_bindings"
53
- }
54
- }
55
- ],
56
- "container_duration": "<各成员 accepted_duration 之和>",
57
- "membership_basis": {
58
- "source_order_contiguous": "<true | 说明为什么不连续及去向>",
59
- "binding_chain_equal": "<true | 说明哪一位成员的绑定不同、以及为什么仍同容器>",
60
- "scene_boundary_not_crossed": "<true | 说明跨越原因与已接受依据>"
61
- },
62
- "unresolved": [],
63
- "provenance": "creator_project"
64
- }
65
- ```
66
-
67
- ## 结构校验点
68
-
69
- `VID-13` 靠这条记录本地可证,不依赖阅读渲染文本。带 ✓ 的由 [container_check.py](../scripts/container_check.py) 判定,其余由审查者判定——此前这份清单整体写成「本地可证」,而脚本只实现了其中两项:
70
-
71
- 1. ✓ `members[]` 非空,`order` 唯一、连续、升序;
72
- 2. 每条引用的 `src` 在本文件 `sources` 声明里找得到对应条目;
73
- 3. ✓ 每个成员的 `accepted_duration` 等于其 `accepted_duration_ref` 解析后指向的分镜值;
74
- 4. ✓ `container_duration` 等于各成员 `accepted_duration` 之和;
75
- 5. 每个成员的 `motion_ref` 指向的运动规格,其 `shot_ref` 与该成员 `shot_ref` 解析到同一镜头记录;
76
- 6. **逐成员**解析 `location_binding_ref` 与 `asset_bindings_ref`,各成员解析结果相同时
77
- `binding_chain_equal` 才能为 `true`;只引用其中一条成员记录不构成证明。
78
- 7. ✓ `membership_basis` 三项都有结论,未成立的写进 `unresolved`,不留空。
79
-
80
- 任何一项不成立即为结构缺陷,按主技能的 `stale` 与恢复流程处理,不在渲染文本里补救。
81
-
82
- ## 依赖方向是单向的
83
-
84
- 容器 → 运动规格 → 镜头,**不存在反向的文件引用**。运动规格不带 `container_ref`:
85
- 两端在各自 `sources` 里互相声明对方会形成环:依赖方向必须单向,否则谁都不能先落盘。
86
- 文字上写“只读”不能消除这个环。
87
-
88
- 要从一个镜头反查它属于哪个容器,扫描容器记录的 `members[]`,不在运动规格里存副本。
89
-
90
- ## 与其他记录的关系
91
-
92
- - **运动规格**:每条运动规格仍然只绑定一个 `shot_ref`,且不感知容器的存在。
93
- - **渲染文本**:`video-prompts.md` 的容器一节由本记录派生,是缓存,不是权威;文本与本
94
- 记录不一致时以本记录为准。
95
- - **成员时长**:一律是分镜的只读投影。要改时长就改分镜,然后重算 `container_duration`;
96
- 不得在容器里直接改数。
97
- - **成员资格判据**:语义部分见 `references/delivery-profile.md` 的多镜容器成员资格;
98
- 本文件只负责让判据的结论可被引用与核对。
99
-
100
- 复制后删除不适用的可选字段。容器不跨越已接受的场次或时间跳跃;省略、闪回分支与声明过的
101
- 蒙太奇各自单独成容器。
@@ -1,217 +0,0 @@
1
- # `motion-specs.jsonl` 填写模板
2
-
3
- 文件第一行是 `sources` 声明:每个上游快照在这里写一次 `owner`、`artifact` 和已接受的
4
- `artifact`,后面的记录用它的 key 引用。key 用产物文件名派生的短小写名字,在本文件内稳定且唯一。
5
- 本阶段插入的片段([`performance.fragment.json`](performance.fragment.json)、
6
- [`coverage-scope.fragment.json`](coverage-scope.fragment.json))落进同一个文件,它们用到的 key
7
- 也在这里声明。
8
-
9
- ```jsonl
10
- {"record_type":"sources","schema_version":"1.0.0","sources":{"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"},"keyframes":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/keyframes.jsonl"},"screenplay-index":{"owner":"short-drama-write","artifact":"剧集/<EP>/screenplay-index.jsonl"},"characters":{"owner":"short-drama-assets","artifact":"设定集/characters.jsonl"},"short-drama":{"owner":"creator","artifact":"short-drama.json"}}}
11
- ```
12
-
13
- 其后每行一个候选运动规格对象。引用写 `src` 加它指向的记录 `record_id` 或字段 `field`;
14
- `boundary_refs` 只读,候选状态属于本运动规格,不向已经接受的上游引用传播。不要加入
15
- `duration_override`、`end_override` 或 `next_shot_write`。以下字符串只说明怎样填写,
16
- 不是固定答案。
17
-
18
- ```json
19
- {
20
- "motion_id": "MOTION-<stable-id>",
21
- "status": "candidate",
22
- "shot_ref": {
23
- "src": "shots",
24
- "record_id": "SHOT-<id>"
25
- },
26
- "keyframe_ref": {
27
- "src": "keyframes",
28
- "record_id": "KEY-<id>"
29
- },
30
- "production_profile_ref": {
31
- "src": "short-drama",
32
- "field": "/creator_authority/production_profile"
33
- },
34
- "boundary_refs": {
35
- "duration": {
36
- "src": "shots",
37
- "record_id": "SHOT-<id>",
38
- "field": "/duration_seconds",
39
- "value_seconds": 0.0
40
- },
41
- "start": {
42
- "src": "shots",
43
- "record_id": "SHOT-<id>",
44
- "field": "/start_boundary"
45
- },
46
- "primary_transition": {
47
- "src": "shots",
48
- "record_id": "SHOT-<id>",
49
- "field": "/primary_transition"
50
- },
51
- "end": {
52
- "src": "shots",
53
- "record_id": "SHOT-<id>",
54
- "field": "/end_boundary"
55
- },
56
- "next_start": {
57
- "src": "shots",
58
- "record_id": "SHOT-<next-id>",
59
- "field": "/start_boundary",
60
- "access": "comparison_only"
61
- }
62
- },
63
- "reference_bindings": [
64
- {
65
- "slot_id": "REF-<stable-slot>",
66
- "order": 1,
67
- "artifact_ref": {
68
- "src": "keyframes",
69
- "record_id": "KEY-<id>"
70
- },
71
- "role": "start_frame | continuity_video | actual_tail_frame",
72
- "may_control": [
73
- "<本镜 accepted 起始构图与可见状态>"
74
- ],
75
- "must_not_control": [
76
- "<尚未发生的动作/终态/无权威文字>"
77
- ],
78
- "admission_status": "unverified | creator_described | visually_inspected",
79
- "reference_observation_ref": null,
80
- "unresolved_risks": [
81
- "<没有观察证据时保留的文字/水印/裁切风险>"
82
- ]
83
- }
84
- ],
85
- "start_anchor": {
86
- "pose_balance": "<仅运动必需>",
87
- "gaze": "<目标>",
88
- "hands": {
89
- "left": "<状态>",
90
- "right": "<状态>"
91
- },
92
- "held_props": [
93
- "<exact binding + hand>"
94
- ],
95
- "spatial_relations": [
96
- "<与行动对象的关系>"
97
- ]
98
- },
99
- "ordered_subject_motion": [
100
- {
101
- "order": 1,
102
- "actor": "<asset binding>",
103
- "trigger": "<accepted cue>",
104
- "action": "<可见动作>",
105
- "direction_or_path": "<方向/路径>",
106
- "object_or_contact": "<对象/接触>",
107
- "result": "<阶段结果>",
108
- "timing": {
109
- "mode": "relative | explicit",
110
- "value": "<顺序词或秒区间>"
111
- }
112
- }
113
- ],
114
- "camera": {
115
- "behavior": "locked | move | transition",
116
- "motivation": "reveal | pressure | alignment | relationship | transition | deliberate_stillness",
117
- "intervals": [
118
- {
119
- "range": "<相对阶段或秒区间>",
120
- "mode": "<lock/pan/tilt/dolly/handheld/follow>",
121
- "path_tempo": "<方向/节奏>",
122
- "endpoint": "<在 accepted framing/boundary 内>"
123
- }
124
- ]
125
- },
126
- "environment_motion": [
127
- {
128
- "element": "<已有环境元素>",
129
- "motion": "<有剧情意义的变化>",
130
- "cause": "<连续性/主体动作>"
131
- }
132
- ],
133
- "audio": [
134
- {
135
- "source_ref": {
136
- "src": "screenplay-index",
137
- "record_id": "BLK-<EP>-<SC>-D<nn>"
138
- },
139
- "speaker_ref": {
140
- "src": "characters",
141
- "record_id": "CHAR-<id>"
142
- },
143
- "voice_direction_ref": {
144
- "src": "characters",
145
- "record_id": "CHAR-<id>",
146
- "field": "/voice_direction"
147
- },
148
- "kind": "dialogue | VO | OS | SFX | ambience | music",
149
- "exact_text": "<仅 source 有文本时逐字引用>",
150
- "delivery_or_spatial_intent": "<不改文本的表演/声源/层级>",
151
- "timing": "<相对阶段或秒区间>"
152
- }
153
- ],
154
- "timing_plan": {
155
- "mode": "relative | explicit",
156
- "phases": [
157
- "<阶段、overlap 与 landing 空间>"
158
- ],
159
- "declares_overlap": false,
160
- "declared_total_or_endpoint_seconds": 0.0
161
- },
162
- "end_report": {
163
- "projection": {
164
- "pose": "<reported>",
165
- "position": "<reported>",
166
- "gaze": "<reported>",
167
- "hands": "<reported>",
168
- "held_props": "<reported>",
169
- "visible_state": "<reported>"
170
- },
171
- "comparison": "match | mismatch | unrealized",
172
- "differences": []
173
- },
174
- "reference_frame_economy": {
175
- "frame_carries": [
176
- "appearance",
177
- "composition",
178
- "base lighting"
179
- ],
180
- "repeated_for_motion_only": [
181
- "<hand/prop/path 等必要局部>"
182
- ]
183
- },
184
- "creator_overrides": [
185
- {
186
- "rule_id": "<VID-*>",
187
- "choice": "<覆盖>",
188
- "rationale": "<理由>"
189
- }
190
- ],
191
- "generic_prompt": "<把本规格渲染成一段只含要拍出来的画面的交付文本:从已接受起点的姿态与持物说起,逐条写动作、接触、摄影机行为与终点状态;不写镜头/记录 ID、规则 ID、状态词、工艺备注与成段否定罗列;写满的样子见 references/production-prompt-grammar.md>",
192
- "derivation": {
193
- "recipe_version": "<version>"
194
- },
195
- "provenance": "creator_project"
196
- }
197
- ```
198
-
199
-
200
- 运动规格**不带指回交付容器的引用**。依赖方向只有一条:容器 → 运动规格 → 镜头。两端在各自
201
- `sources` 里互相声明对方会形成环——依赖方向必须单向,
202
- 永远得不到可发布的稳定快照。要找某个镜头属于哪个容器,从容器记录的 `members[]` 反查,不在本文件里
203
- 存副本。容器记录见 [delivery-container.jsonl.md](delivery-container.jsonl.md)。
204
-
205
- 默认 master 不重复 `purpose_ref` 或 `coverage_scope`:镜头目的、场次计划与原文覆盖从准确
206
- `shot_ref` 及其上游读取。只有 pickup/alternate 才按
207
- [motion-recipe.md](../references/motion-recipe.md) 增加 `coverage_scope`,记录相对母版的补充、保留与去向。
208
- `boundary_refs` 只保留结构校验需要的 duration/start/end/next-start 精确字段投影,不再重复镜头目的、
209
- 场次计划或原文职责;删除它前必须先让 timing 与 continuity 校验器能从 `shot_ref` 安全解析同一快照。
210
-
211
- 普通记录省略 `performance_arcs[]` 与 `attention_handoffs[]`;存在可见表演变化或注意交接时,按
212
- [`performance.fragment.json`](performance.fragment.json) 插入完整字段。空镜、道具细节、纯空间
213
- 转场和只有物理动作的镜头不编造 arc。多参考的 `slot_id` 稳定且 `order` 唯一。
214
- `reported_end` 只作比较;末镜没有真实下一镜时改用
215
- `next_start_locator`。附加参考为空时使用空数组;对白说话者与声音方向只有在已接受引用存在时才填写。
216
- 母版、补拍和替代关系保留在同一规格文件内,替代决定由审查结论拥有。具体取舍按
217
- `references/motion-recipe.md` 与 `references/review-and-fixtures.md` 判断。
@@ -1,31 +0,0 @@
1
- # Timeline Music Spec
2
-
3
- Music is a timeline layer, not a default bed baked into every generated shot.
4
- Create a record only when accepted story or directing material gives music a
5
- specific dramatic job.
6
-
7
- The file opens with a `sources` header that declares each upstream snapshot
8
- once. A source key is short, lowercase and derived from the artifact basename;
9
- it stays stable and unique within the file.
10
-
11
- ```jsonl
12
- {"record_type":"sources","schema_version":"1.0.0","sources":{"screenplay":{"owner":"short-drama-write","artifact":"剧集/EP001/screenplay.md"}}}
13
- ```
14
-
15
- Every record after the header names the snapshot through its key:
16
-
17
- ```json
18
- {"music_id":"MUS-EP001-01","scope":{"episode_id":"EP001","start_seconds":0,"end_seconds":12},"source_refs":[{"src":"screenplay","record_id":"EP001-SC001"}],"narrative_function":"<what changes for the audience, and why picture/performance alone is insufficient>","prompt":"<provider-neutral style, mood, instrumentation, energy and scene description>","mode":"instrumental | song","lyrics":null,"mix_intent":{"entry":"<relative entry against picture or dialogue>","exit":"<relative exit or transition>","duck_under_dialogue":true,"loop":false},"status":"candidate"}
19
- ```
20
-
21
- - `source_refs` carry `src` plus the record or field they point at; the
22
- artifact's `owner` and `artifact` live in the header entry that `src`
23
- names.
24
- - `scope` is the accepted timeline interval; it does not promise a supplier can
25
- generate that exact duration.
26
- - `prompt` contains musical intent only, never model names, API fields, artist
27
- imitation, remote task identifiers or credentials.
28
- - `song` requires creator-owned or licensed `lyrics`; `instrumental` carries no
29
- lyrics. Do not ask a provider to silently rewrite accepted lyrics.
30
- - `mix_intent` is an editorial handoff. Production generates a source track;
31
- editing still owns exact fades, ducking and placement.