@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,19 +1,19 @@
1
1
  # 短篇网文跨平台写作参考
2
2
 
3
- > 选平台/写简介/定题材时加载。先看决策路由选操作区域。
3
+ > 比较平台风格、简介与题材组合,或选择平台时查阅。
4
4
 
5
5
  ## 决策路由
6
6
 
7
7
  | 你需要什么 | 查看哪个部分 | 核心操作 |
8
8
  |------------|-------------|---------|
9
- | 对比各平台差异 | 跨平台差异对照表 | 按维度横向对比选平台 |
10
- | 写平台简介/导语 | 各平台简介写作公式 | 套对应平台公式 |
11
- | 找爆款题材组合 | 题材爆款公式 | 按题材找公式 + 目标平台 |
9
+ | 对比各平台差异 | 跨平台差异对照表 | 比较历史模式与当前样本,辅助选平台 |
10
+ | 分析简介/导语 | 各平台简介写作公式 | 识别简介中的冲突与悬念 |
11
+ | 找题材组合 | 题材爆款公式 | 对照组合、情绪与平台 |
12
12
  | 了解平台独特规则 | 平台独特特征 | 七猫/知乎/点众各有要点 |
13
13
 
14
14
  ---
15
15
 
16
- 基于四大平台(七猫、黑岩、知乎、点众)历史热门样本整理。使用前必须用当前 scan 结果校验;未校验时只作为候选规则,不作为当前市场事实。
16
+ 以下为七猫、黑岩、知乎、点众的历史样本笔记,未附采样时间、样本清单或统计口径,只保留定性模式。平台偏好、篇幅与收费规则须用当前 scan 结果或平台说明核实,不能由本表推定。
17
17
 
18
18
  ---
19
19
 
@@ -21,21 +21,21 @@
21
21
 
22
22
  | 维度 | 七猫 | 黑岩 | 点众 | 知乎 |
23
23
  |------|------|------|------|------|
24
- | 主力字数 | 1-2万字 | 8千-4万字 | 1-2万字(10章x1000字) | 5千-1.5万字(中位1.2万) |
25
- | 章节数 | 7-19 | 4-14段(或1章4万字) | 5-10(标准10章) | 6-10 |
26
- | 人称 | 第一人称95%+ | 第一人称85%(女)/50%(男) | 第一人称95%+ | 混合(古言用第三人称) |
27
- | 章节字数 | 1000-1500 | 2000-5000 | 800-1500 | 800-1500 |
28
- | 对话占比 | 20-38%(均值27.7%) | 30-50% | 9%平均(功能化) | 20-40%(金句多) |
29
- | 段落结构 | 1-3句/段 | 1-3句/段 | 1-2句/段(16-37字) | 1-3句/段(30-60字) |
30
- | 导语/简介 | 必须(100-200字) | 必须(100-363字) | 必须(150-300字) | 简介即作品(200-500字) |
24
+ | 主力字数 | 万字体量样本 | 篇幅跨度较大 | 万字体量样本 | 数千至万字体量样本 |
25
+ | 章节数 | 多节展开 | 分段或长章 | 短章推进 | 多节展开 |
26
+ | 人称 | 第一人称样本较多 | 第一、第三人称均有 | 第一人称样本较多 | 第一、第三人称均有 |
27
+ | 章节字数 | 短章 | 可有较长章节 | 短章 | 短章 |
28
+ | 对话占比 | 对话参与关系冲突 | 对话强化对抗 | 偏重功能性对白 | 对话兼顾人物表达 |
29
+ | 段落结构 | 短段较多 | 短段较多 | 短句短段较多 | 长短句结合 |
30
+ | 导语/简介 | 前置核心冲突 | 前置伤害或悬念 | 浓缩事件与反击 | 可形成独立微型故事 |
31
31
  | 开头模式 | 重生回溯/冲突前置 | 极端冲击/道德踩踏 | 标题即剧情/极端事件 | 一句话炸弹/金句开场 |
32
- | 结尾模式 | HE为主(50%+新恋情) | HE/BE各半 | HE为主(悔恨/打脸) | 多样化(开放式多) |
32
+ | 结尾模式 | 和解或新生活 | 圆满与悲剧均有 | 追悔或反击兑现 | 开放、反转等多种收束 |
33
33
  | 独特元素 | 重生、穿书、心声流 | 灵魂视角、虐恋极致 | 弹幕流、读心、系统流 | 专业细节、脑洞、BL |
34
34
  | 反转手法 | 态度反转(重生后180度转变) | 道德反转+恐怖反转 | 身份反转+死亡反转 | 信息差+情感深层揭露 |
35
- | 爽点节奏 | 虐30%->觉醒15%->爽35%->治愈20% | 女:300-500字小反转/男:1000-2000字大爆发 | 每3章小转折/第10章大爆发 | 层层揭露/慢节奏但后劲大 |
36
- | 情绪密度 | 中-高 | 最高(女频3.23次/千字) | 极高(短句占比33-66%) | 中(克制但有力) |
35
+ | 爽点节奏 | 受压、觉醒、反击与治愈 | 反转与情绪爆发交替 | 局部转折汇入终局 | 逐步揭示旧信息的新含义 |
36
+ | 情绪密度 | 连续情绪变化 | 强烈情绪对抗 | 情绪表达直接 | 克制表达与延后释放 |
37
37
  | 对话引号 | 「」或"" | 「」或"" | ""为主 | 「」为主 |
38
- | 核心定位 | 重生幻想 | 极致刺激 | 情绪快餐 | 情感精品 |
38
+ | 核心定位 | 重生与纠错幻想 | 强刺激与虐恋 | 快速情绪兑现 | 情感与认知变化 |
39
39
 
40
40
  ---
41
41
 
@@ -43,11 +43,11 @@
43
43
 
44
44
  | 平台 | 简介公式 | 字数 | 核心特征 |
45
45
  |------|---------|------|---------|
46
- | 七猫总裁 | 正常生活->伤害事件->最残忍对话->女主反转->悬念钩子 | 133-322字 | 70%含对话,对话选最伤人那句 |
47
- | 黑岩女频 | 递进式控诉/心声揭穿/绝症倒计时/重生对比/公开羞辱+底牌 | 103-363字 | 核心是"这一次我..." |
48
- | 黑岩男频 | 极简对白+信息炸弹/前世被害+重生/职场压榨+超自然 | 109-401字 | 第一段直接上最炸裂的场景或对白 |
49
- | 点众 | 场景设定+信任陷阱+致命真相+反击暗示 | 150-300字 | 简介浓缩前1/3精华 |
50
- | 知乎 | 人物关系+核心冲突+2-3转折+金句/留白 | 200-500字 | 简介即独立微小说,有金句收尾 |
46
+ | 七猫总裁 | 正常生活->伤害事件->最残忍对话->女主反转->悬念钩子 | 以目标平台要求为准 | 以冲突对白展示关系伤害 |
47
+ | 黑岩女频 | 递进式控诉/心声揭穿/绝症倒计时/重生对比/公开羞辱+底牌 | 同上 | 核心是"这一次我..." |
48
+ | 黑岩男频 | 极简对白+信息炸弹/前世被害+重生/职场压榨+超自然 | 同上 | 第一段前置冲突场景或对白 |
49
+ | 点众 | 场景设定+信任陷阱+致命真相+反击暗示 | 同上 | 简介浓缩前段冲突 |
50
+ | 知乎 | 人物关系+核心冲突+转折+金句/留白 | 同上 | 简介可形成独立微小说 |
51
51
 
52
52
  ---
53
53
 
@@ -72,16 +72,15 @@
72
72
 
73
73
  ### 七猫
74
74
 
75
- - 第一人称95%+,女性主角80%+
76
- - 每章1000-1500字,7-10章为主力区间
77
- - 几乎都有明确导语(前言概括全文核心冲突)
75
+ - 第一人称与女性主角的历史样本较多
76
+ - 常用短章推进,导语前置全文核心冲突
78
77
 
79
78
  ### 知乎
80
79
 
81
80
  - 专业细节丰富(医疗有医学知识,法律有法律细节)
82
81
  - 社会议题导向(婆媳、重男轻女、医疗纠纷)
83
82
  - 情绪更克制但后劲更大,对话更真实
84
- - 简介即作品:200-500字微小说,有金句收尾
83
+ - 部分简介采用微小说形式,以关键台词或留白收尾
85
84
 
86
85
  ### 点众标题公式
87
86
 
@@ -1,6 +1,6 @@
1
1
  # 短篇扫榜结论:落盘与交接
2
2
 
3
- 短篇扫榜的结论写进输出目录的 `短篇扫榜结论.md`:Phase 4 写文件头和「扫榜结论」,Phase 5 写「选题匹配」。`/story-short-write` 定目标情绪时会读它,所以作者不必记住上次聊了什么。
3
+ 结论写进本次输出目录的 `短篇扫榜结论.md`:Phase 4 写文件头和「扫榜结论」,Phase 5 写「选题匹配」。`/story-short-write` 定目标情绪时读取这份文件,接上选题结果。
4
4
 
5
5
  ## 短篇扫榜结论.md 模板
6
6
 
@@ -29,10 +29,10 @@
29
29
  ### 方向 2 ...
30
30
  ```
31
31
 
32
- 2-3 个方向为宜,按可行性排序(高的在前)。
32
+ 给出 2-3 个方向,按可行性从高到低排列。
33
33
 
34
34
  ## 规则
35
35
 
36
36
  - 可行性上限:聚合表标「少」、样本不到 10 篇或来自作者只给的故事名列表 ⇒ 不许给「高」;内置知识模式一律给「中」。
37
- - 重跑时整节替换,不追加第二份;「扫榜结论」和「选题匹配」都保留在同一个文件里。
37
+ - 重跑时分别替换「扫榜结论」和「选题匹配」,保留文件头,不追加重复小节。
38
38
  - 交付时告诉作者路径:「开写时把小说项目建在扫榜时的文件夹里或和它同级,`/story-short-write` 会自动找到;隔得远就把 `短篇扫榜结论.md` 复制到项目根。」
@@ -6,13 +6,13 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
6
6
  ---
7
7
  # story-short-write:短篇网文写作
8
8
 
9
- 你是短篇网文写作执行器。从构思到成稿,完成一篇完整的短篇小说。
9
+ 你负责从构思到成稿,完成一篇完整的短篇小说。
10
10
 
11
11
  **执行规则:短篇以情绪为目标,所有内容为情绪服务。**
12
12
 
13
13
  ## 写前必读(强制,先读后写)
14
14
 
15
- 短篇按作者时刻加载:每个时刻只读自己的文件,后一时刻只靠落盘文件接上前一时刻。创建或修改故事文件前,先判断当前时刻并完整读取它的必读项(分块直到 EOF;`rg` 检索或局部摘读不算读完)。**只读本 SKILL.md 不算完成门禁。**
15
+ 短篇按作者当前要做的事分阶段加载,阶段之间靠落盘文件交接。创建或修改故事文件前,先判断当前时刻,再完整读取该时刻的必读项;分块读取直到 EOF,`rg` 检索或局部摘读不算读完。**只读本 SKILL.md 不算完成门禁。**
16
16
 
17
17
  | 时刻 | 作者确认什么 | 读什么 | 落盘 |
18
18
  |---|---|---|---|
@@ -20,16 +20,16 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
20
20
  | 构思(Phase 2) | 故事核、人物、反转、付费点 | ① `references/workflow-design.md` + `references/writing-workflow.md`、`references/submission-craft.md`、`references/short-craft.md`、`references/short-reversal.md` ② 核心 10 题材读一个精确的 `references/genre-styles/{题材}.md`,冷门题材读 `references/genre-writing-formulas.md` ③ 有反派或真相揭露设计时读 `references/villain-and-reveal.md`,不适用时在设计校验区写明原因 | `设定.md`、`小节大纲.md` |
21
21
  | 写正文(Phase 3–4) | 成稿 | Phase 3 写正文前完整读取 `references/workflow-draft.md`,按其「写前加载」读写作手法;Phase 4 精修前完整读取 `references/workflow-revision.md` | `正文.md` |
22
22
 
23
- 构思必读项在第一次写入 `设定.md` / `小节大纲.md` 前读完。任一必需路径不存在、不可读或题材尚未解析到唯一 reference 时,立即停止,报告准确路径/待定项,**不得创建或修改故事产物**。不要把“已读 references”的回执写进故事文件;选出的题材招式、反转计算等应用证据写进正常设计字段。每个时刻按当前任务完整回读,不得用早先读过代替。
23
+ 构思必读项须在首次写入 `设定.md` / `小节大纲.md` 前读完。任一必需路径不存在、不可读,或题材尚未对应到唯一 reference 时,立即停止,报告准确路径或待定项,**不得创建或修改故事产物**。故事文件只记录选出的题材招式、反转计算等设计,不写“已读 references”的回执。进入每个时刻都按当前任务完整回读。
24
24
 
25
25
  **交接只靠落盘**:作者在对话里定下的字数、平台、人称、偏好、红线和否掉的方案,构思交付前写进 `设定.md`;写正文只读两份设计文件与本时刻的写作手法,不重读构思方法论,也不回翻对话。
26
- **换上下文**:构思读得最多。构思汇报末尾建议作者新开一个对话说「写正文」;作者要在本对话接着写也照做。新对话里两份设计文件已通过构思完成门禁时,直接进入写正文。
26
+ **换上下文**:构思阶段加载最多,汇报末尾建议作者新开对话说「写正文」;作者选择在本对话接着写时照常执行。新对话中,两份设计文件通过构思完成门禁即可进入写正文。
27
27
 
28
28
  ---
29
29
 
30
30
  > Agent 只查当前端 canonical 目录(Claude `.claude/agents`、OpenCode `.opencode/agents`、Codex `.codex/agents` TOML、Antigravity `.agents/agents`),不跨端误判。Claude 用 `subagent_type`,OpenCode 用 `subagent` 的 `agent`,Codex 用 `agent_type`,Antigravity 用 `invoke_subagent` + `TypeName`。主会话自己写正文、去味是常态,不报;作者明确要交给写作助手而能力/文件缺失、unknown agent 或 ZCode 3.3.4 时,由主会话接手并一句白话告诉作者(如「写作助手用不了,由我直接写」),`Fallback: project custom agents unavailable -> solo` 原文只写进汇报最后一行「技术备注:」。
31
31
  >
32
- > Spawn 版本提示(不阻断 spawn):先读取项目根 `.story-deployed` 的 `agents_version`。与本版 `agents_version: 34` 不一致时(标记缺失、字段缺失/非整数、小于或大于 34)**照常按文件存在性检查并 spawn**,同时用一句白话提示作者「写作助手是旧版,运行 /story-setup 后新开对话」,`Notice: agents bundle 版本不匹配(项目 {N},本版 34)` 原文写进技术备注行;大于 34 时额外提示先更新 oh-story-claudecode,不要用本地旧版 setup 降级覆盖。只有 agent 文件缺失、或运行时不暴露 custom agent 时才降级 solo/direct,`Fallback: ... -> solo` 同样只进技术备注行。
32
+ > Spawn 版本提示(不阻断 spawn):先读取项目根 `.story-deployed` 的 `agents_version`。与本版 `agents_version: 35` 不一致时(标记缺失、字段缺失/非整数、小于或大于 35)**照常按文件存在性检查并 spawn**,同时用一句白话提示作者「写作助手是旧版,运行 /story-setup 后新开对话」,`Notice: agents bundle 版本不匹配(项目 {N},本版 35)` 原文写进技术备注行;大于 35 时额外提示先更新 oh-story-claudecode,不要用本地旧版 setup 降级覆盖。只有 agent 文件缺失、或运行时不暴露 custom agent 时才降级 solo/direct,`Fallback: ... -> solo` 同样只进技术备注行。
33
33
 
34
34
  **文风裁决**:正文写作、改写或审稿前先读 [references/style-resolution.md](references/style-resolution.md),加载本书文风并形成 `style_resolution`;无作者记忆也执行。当前请求、本书文风和 active 偏好按维度覆盖通用 references;同一裁决交给后续执行者。
35
35
 
@@ -39,16 +39,18 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
39
39
  2. **一个核心支点撑一篇**。反转型围绕一次主揭示蓄力;无反转型围绕报应兑现或甜度递进积累期待。不多线、不铺世界观。
40
40
  3. **每句话必须有用**。不推动剧情、不铺垫反转、不推高情绪的句子 → 删。
41
41
  4. **开头 3 句定生死,结尾定传播**。开头必须包含钩子,结尾必须有余韵。
42
- 5. **默认第一人称**。短篇网文(盐言/七猫短篇等)绝大多数用第一人称,代入感最强。当前请求、本篇文风或题材需要第三人称时按其执行,不因默认值改回「我」。
42
+ 5. **默认第一人称**,用亲历视角建立代入感。当前请求、本篇文风或题材需要第三人称时按其执行。
43
43
 
44
44
  ---
45
45
 
46
- ## 核心方法
46
+ ## 作者记忆管理
47
+
48
+ 管理习惯读 `references/author-memory.md`(整理、超编、迁移按其中指路)。仅管理习惯时完成即停,不建书、不写正文。
47
49
 
48
- 除了上面的执行规则,构思和写作时遵循:
50
+ ## 核心方法
49
51
 
50
- - **定方向就换风格**:题材一旦确定,腔调、开篇、钩子、情绪烈度、金句、招式、收尾全部切到该题材包(追妻含时代变体与小三/死人文学分支);冷门题材用公式结构骨架兜底,腔调按 `short-craft.md`
51
- - **复用作者习惯**:有作者记忆时,正文前用 `scripts/author_memory_commit.py query --workspace {工作区} --book-root {项目目录} --kind prose_style --kind story_design [--genre {题材}] [--workflow 短篇]` 获取 active 条目(≤2KB),传给正文/改写 agent 作为自然倾向,不逐条展示或最大化命中,不牺牲连贯、节奏和字数;硬门禁、当前请求和本篇设定优先。长期声明在收尾用 `record` 写入并回传回执,细则见 [references/author-memory.md](references/author-memory.md)。
52
+ - **按题材选写法**:确定题材后,按文风裁决选用题材包的腔调、开篇、钩子、情绪烈度、金句、招式与收尾;追妻按时代变体及小三/死人文学分支选择。冷门题材用公式安排结构,腔调按 `short-craft.md`
53
+ - **复用作者习惯**:有作者记忆时,正文前用 `scripts/author_memory_commit.py query --workspace {工作区} --book-root {项目目录} --kind prose_style --kind story_design [--genre {题材}] [--workflow 短篇]` 把输出的 `lines` 原样交正文/改写 agent 作自然倾向,不逐条追求命中,不牺牲连贯、节奏和字数;硬门禁、当前请求和本篇设定优先;没装下的交稿时用原话告诉作者。长期声明在收尾按上方管理入口处理。
52
54
 
53
55
  ---
54
56
 
@@ -64,14 +66,14 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
64
66
 
65
67
  如果用户只有模糊想法 → 帮用户做情绪选择:
66
68
 
67
- | 情绪类型 | 适合场景 | 难度 | 市场热度 | 常配题材包 |
68
- |----------|----------|------|----------|------------|
69
- | 意难平 | 虐恋、遗憾、错过 | 中 | 🔥🔥🔥 | 追妻火葬场 / 甜宠(先虐后甜) |
70
- | 反转震撼 | 悬疑、身份错位 | 高 | 🔥🔥🔥 | 悬疑 / 沙雕脑洞(反套路) |
71
- | 爽感释放 | 打脸、逆袭 | 低 | 🔥🔥 | 世情打脸 / 复仇打脸 / 总裁豪门 / 宅斗宫斗(古代上位) |
72
- | 治愈温暖 | 成长、亲情、友情 | 中 | 🔥🔥 | 甜宠 / 双男主(救赎线) |
73
- | 细思极恐 | 悬疑、心理 | 高 | 🔥 | 悬疑 / 民俗怪谈 |
74
- | 共鸣感动 | 现实、职场、婚姻 | 中 | 🔥🔥🔥 | 世情打脸(共鸣模式) / 追妻火葬场(小三文学) |
69
+ | 情绪类型 | 适合场景 | 难度 | 常配题材包 |
70
+ |----------|----------|------|------------|
71
+ | 意难平 | 虐恋、遗憾、错过 | 中 | 追妻火葬场 / 甜宠(先虐后甜) |
72
+ | 反转震撼 | 悬疑、身份错位 | 高 | 悬疑 / 沙雕脑洞(反套路) |
73
+ | 爽感释放 | 打脸、逆袭 | 低 | 世情打脸 / 复仇打脸 / 总裁豪门 / 宅斗宫斗(古代上位) |
74
+ | 治愈温暖 | 成长、亲情、友情 | 中 | 甜宠 / 双男主(救赎线) |
75
+ | 细思极恐 | 悬疑、心理 | 高 | 悬疑 / 民俗怪谈 |
76
+ | 共鸣感动 | 现实、职场、婚姻 | 中 | 世情打脸(共鸣模式) / 追妻火葬场(小三文学) |
75
77
 
76
78
  ---
77
79
 
@@ -129,8 +131,3 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
129
131
  ## 参考资料
130
132
 
131
133
  阶段必读项按首屏「写前必读」执行;其他资料按 [参考索引](references/reference-index.md) 的加载条件选用。
132
-
133
- ## 语言
134
-
135
- - 跟随用户的语言回复,用户用什么语言就用什么语言回复
136
- - 中文回复遵循《中文文案排版指北》
@@ -1,13 +1,13 @@
1
1
  # agent-calls.md:短篇派写手的调用方式
2
2
 
3
- 只在要 spawn narrative-writer 时读;主会话自己写正文、自己去味时不读。何时派由 workflow-draft.md / workflow-revision.md 决定,这里只放 prompt 与必须附带的内容。Antigravity 用 `invoke_subagent` + 同名 `TypeName`。
3
+ 按 workflow-draft.md / workflow-revision.md 决定是否派 narrative-writer;派出时读本文件,主会话自行写作或去味时跳过。Antigravity 用 `invoke_subagent` + 同名 `TypeName`。
4
4
 
5
5
  ## 写正文
6
6
 
7
- spawn `Agent(subagent_type: "narrative-writer", prompt: ...)`,只传项目目录、输出文件、目标情绪、题材风格包、小节大纲、角色、主/副对标召回摘要、本书文风全文路径与 style_resolution、作者偏好 query 中的文风/故事设计项、格式硬约束和写作硬约束,并传入检查分工:本批只做内容覆盖与格式自检,完整语义去味由 Phase 4 负责,最终文件扫描由主会话负责。
7
+ spawn `Agent(subagent_type: "narrative-writer", prompt: ...)`,只传项目目录、输出文件、目标情绪、题材风格包、小节大纲、角色、主/副对标召回摘要、本书文风全文路径与 style_resolution、作者偏好 query 输出的 lines、格式硬约束和写作硬约束,并传入检查分工:本批只做内容覆盖与格式自检,完整语义去味由 Phase 4 负责,最终文件扫描由主会话负责。
8
8
 
9
- 不把本 skill 整段规则塞进 prompt;细节以 `short-format.md`、题材包、`short-craft.md` 与 `scene-craft.md` 为准。收回后按 workflow-draft.md 的格式规范重排再写入 `正文.md`。
9
+ 写手按 `short-format.md`、题材包、`short-craft.md` 与 `scene-craft.md` 执行,无需将 skill 全文复制进 prompt。主会话收到结果后,按 workflow-draft.md 的格式规范重排,再写入 `正文.md`。
10
10
 
11
11
  ## 精修去味
12
12
 
13
- spawn `Agent(subagent_type: "narrative-writer", prompt: "项目目录:{dir}\n任务描述:去AI味+格式检查\n检查分工:你负责本次语义去味及原定自检;最终文件扫描由主会话执行,不在子代理内重复\n检查范围:{正文文件}\nstyle_resolution:{与写作一致的本次文风裁决,含全文路径}\n作者偏好:{query 命中的 prose_style/story_design 项}\n篇幅:短篇\n卖点保留:第一人称审判句、火葬场预告、心死式章尾留,只删中立作者讲解与空洞升华\nAI味等级:{轻度/中度/重度;未分级按轻度}\n删除优先:每条 AI 味项先判能否删除——删后不丢伏笔/钩子/角色/情节/必要信息的直接删,会丢才润色(删除受比例上限与本次字数范围下沿约束,跌破改降AI重写)\n必须检查:检查是否连续使用头皮发紧/眼皮一跳/心口一沉/胃里翻涌等精致戏剧反应,能写普通动作/普通感觉就写普通动作/普通感觉;已有手机/聊天记录/公告/账单/病历/证据截图等信息,保留为角色看到或处理的场内载体,不改成叙述者解释;任务卡点只在角色本来有要办的事且能加重情绪/证据/关系/反转时使用,不为自然感补流程")`
13
+ spawn `Agent(subagent_type: "narrative-writer", prompt: "项目目录:{dir}\n任务描述:去AI味+格式检查\n检查分工:你负责本次精修清单与检测命中的定点语义修复;最终文件扫描由主会话执行\n检查范围:{正文文件与待修位置、问题类别}\n所选 Gate:{按命中类别选,类别不明写 A-G;仍只处理本次精修问题}\nstyle_resolution:{与写作一致的文风裁决,含全文路径}\n作者偏好:{query 输出的 lines}\n篇幅:短篇\n卖点保留:第一人称审判、火葬场预告、心死余韵按具体功能保留;压掉空泛与重复,不强制补反应\n执行边界:按读取表与 deslop-gates 的范围协议修复;不扩大为完整故事重写;需新增动机、证据、事件或改变选择、结果、揭露时机的给出具体设计建议,已授权的执行\n验收:复读完整场景及小节承接,说明原文问题、修改动作与保留理由;不用固定删减率,字数不足如实交回")`
@@ -1,8 +1,10 @@
1
1
  # 作者记忆维护
2
2
 
3
- [author-memory.md](author-memory.md) 的少见时刻补充:记一条、确认、替换、忘掉和优先级仍按那份协议,本文件只在下列情况读——作者说「整理作者记忆」,或回执 `warnings`/查询 `omitted_ids` 提示超编;写入因 `作者画像.md` 写满失败;书根就是工作区,或工具报 `state.book`、单书布局错误;要做存量迁移 `migrate`、多事件原子 `commit`、派生视图 `check`;冲突候选要落定;碰到升级前留下的旧条目。
3
+ 新增、确认、替换、忘掉偏好及优先级按 [author-memory.md](author-memory.md) 执行。遇到以下情况时读本文件:
4
4
 
5
- 作者记忆借鉴“原始证据 → 候选 → 已确认画像 → 变更记录”的记忆管道,但把决定权留给作者。
5
+ - 作者要整理记忆,或 `warnings` / `omitted_ids` 提示有偏好无法装入上下文。
6
+ - `作者画像.md` 写满,或工具报 `state.book`、单书布局错误。
7
+ - 需要迁移存量条目、多事件 `commit`、派生视图 `check`,或处理冲突候选、旧条目。
6
8
 
7
9
  ## 文件
8
10
 
@@ -15,26 +17,26 @@
15
17
  {书}/.story/作者记忆/ # 书级 store:只存这本书的 book 条目,编号 BP,同样四个文件
16
18
  ```
17
19
 
18
- 三个 Markdown 文件都从 state 确定性生成,禁止手改;完整历史保留在 state,变更记录只展示最近 100 次。`作者画像.md` 是人类管理视图,普通写作 agent 不整份注入,而是调用 `query` 取得本次相关的紧凑上下文。
20
+ 三个 Markdown 文件均由 state 生成,禁止手改。state 保留完整历史,`变更记录.md` 只展示最近 100 次。作者通过 `作者画像.md` 管理条目;创作时调用 `query`,只传本次相关的偏好。
19
21
 
20
22
  ## 任务映射表
21
23
 
22
- 各 skill 入口的 `query` 命令按此表选 kind;写入时的预算提醒也按这四类任务组合估算。
24
+ 写作流程的 `query` 按此表选 kind,后续去味与审稿使用写作调用方传入的结果,不独立查询或记录。写入时的预算提醒仍按这四类任务组合估算。
23
25
 
24
26
  | 任务 | query kinds | 注入位置 |
25
27
  |---|---|---|
26
28
  | 正文初稿 / 续写 | `prose_style` + `story_design` | 主会话与实际正文 agent |
27
- | 去 AI 味 / 改写 | `prose_style` | 主会话与实际改写 agent |
29
+ | 写作中的去 AI 味 / 改写 | `prose_style` | 主会话与实际改写 agent |
28
30
  | 设定 / 大纲 | `story_design` + `workflow` + `interaction` | 主会话,不传正文 agent |
29
- | 审稿 | `delivery` + `interaction` + 必要的 `prose_style` | 主会话,不降低 rubric |
31
+ | 写作中的审稿准备 | `delivery` + `interaction` + 必要的 `prose_style` | 主会话,不降低 rubric |
30
32
 
31
33
  审稿匹配项只用于交付格式、协作方式和“作者有意采用的表达选择”说明;问题严重度和 PASS/FAIL 仍由 rubric 决定。
32
34
 
33
35
  ## 注入预算与容量
34
36
 
35
- - **写入不因注入预算失败**:`record` / `commit` 照常成功、给回执;工具按上表四类任务组合估算最坏查询情形(全局条目+各 scope 维度最重的单一切片,切片按大小写无关归并、轻重按写作时真正读到的字段算,与真实查询同一把尺),装不进 2048 字节的组合在返回的 `warnings` 里点名将被略过的条目及其断言首句。
37
+ - **写入不因注入预算失败**:`record` / `commit` 照常成功、给回执;工具按上表四类任务组合估算最坏查询情形(全局条目+各 scope 维度最重的单一切片,切片按大小写无关归并、轻重按执行者真正读到的行算,与真实查询同一把尺),装不进 2048 字节的组合在返回的 `warnings` 里点名将被略过的条目及其断言首句。2048 字节量的是交给执行者的 `lines`(每条一行「- 断言(编号)」,含换行),不是 JSON 外壳:`items` 里的编号、类型、范围只给主会话和脚本判断用,不进执行者 prompt。
36
38
  - 写入落盘后另一级 store 读不出来(书目录不存在、`--book` 与书级记录不符等)也照常给回执,`warnings` 注明本次提醒没算上它。写书级条目时「本书+全局」按实际条目精确计算;写项目级条目时只看得到项目级 store,顺手传 `--book-root` 就把当前这本书也算进提醒。
37
- - 查询按 **重要度 → 本书例外 → 最近更新** 排序装填(同一范围的条目必在同一 store,「最近」按该 store 的修订号比,不跨 store 比较),先丢的恒是重要度较低的条目——`importance` 决定超编时谁留在 prompt 里。装不下的条目跳过而不中断(一条长的不挡后面的短条),漏下的 ID 按同一优先级报进 `omitted_ids`(最多列 20 条,`omitted` 是真实总数)。
39
+ - 查询按 **重要度 → 本书例外 → 最近更新** 排序装填(同一范围的条目必在同一 store,「最近」按该 store 的修订号比,不跨 store 比较),先丢的恒是重要度较低的条目——`importance` 决定超编时谁留在 prompt 里。装不下的条目跳过而不中断(一条长的不挡后面的短条),漏下的 ID 按同一优先级全数报进 `omitted_ids`,断言首句报进 `omitted_summaries`、重要度报进 `omitted_importance`,供主会话用原话告诉作者哪几条没带上;长篇写章由组装脚本把这句话拼好写进核对报告,章末汇报照模板原样说。
38
40
  - 注入预算之外还有一道硬上限:`作者画像.md` 超过 12288 字节时写入会直接失败并要求先整理。active 条目攒到几十上百条才会碰到(远在注入预算之后),碰到就走「整理作者记忆」;`forget` 这类减量操作在满编时照常可用。
39
41
 
40
42
  ## 整理作者记忆
@@ -60,7 +62,7 @@
60
62
 
61
63
  ## 其他命令
62
64
 
63
- 先依次尝试 `python3`、`python`、`py -3` 找到 Python 3,再从当前 skill 根运行本地副本(`record` / `query` 见 author-memory.md):
65
+ 先依次尝试 `python3`、`python`、`py -3` 找到 Python 3,再从当前写作 skill 根运行本地副本(`record` / `query` 见 author-memory.md):
64
66
 
65
67
  ```text
66
68
  {PYTHON} {当前 skill 根}/scripts/author_memory_commit.py init --workspace {工作区} [--book-root {书目录}]
@@ -1,6 +1,6 @@
1
1
  # 作者记忆协议
2
2
 
3
- 作者记忆保存跨会话复用的创作偏好,不保存小说世界里的事实,决定权留给作者。本文件管最常见的时刻:作者说出一条偏好,或要确认、替换、忘掉某条。少见情况读 [author-memory-maintenance.md](author-memory-maintenance.md):整理作者记忆与超编、画像写满、单书布局与 `state.book` 报错、存量迁移、多事件 `commit`、`check`、冲突候选落定、升级前的旧条目。
3
+ 作者记忆由长短篇写作 skill 管理,保存作者明确表达、可跨会话复用的创作偏好。新增、确认、替换和忘掉偏好按本文件执行;整理、容量、冲突、迁移与单书布局问题见 [author-memory-maintenance.md](author-memory-maintenance.md)。小说事实仍写进本书设定与追踪。
4
4
 
5
5
  ## 边界与优先级
6
6
 
@@ -15,22 +15,22 @@
15
15
 
16
16
  按表达维度取最窄适用要求:低优先级只补缺项,不与高优先级要求并列执行。通用 references 自称“必须/禁用”不改变此顺序;审稿不因作者有意采用的表达本身扣分,真实可读性与因果问题仍照常评价。
17
17
 
18
- 作者记忆不能把本书事实写进 `.story/作者记忆/`,不能覆盖当前请求,不能降低审稿 rubric,也不能让去 AI 味改动剧情意图。小说事实继续由各书的 `追踪/` 和 `设定/` 管理。
18
+ 作者记忆不能把本书事实写进 `.story/作者记忆/`,不能降低审稿 rubric,也不能让去 AI 味改动剧情意图。小说事实继续由各书的 `追踪/` 和 `设定/` 管理。
19
19
 
20
20
  ## 存放与路由
21
21
 
22
- 两级 store,记忆随书走:`{工作区}/.story/作者记忆/` 存 global / genre / workflow 条目(编号 `AP`),`{书}/.story/作者记忆/` 只存本书的 book 条目(编号 `BP`)。每级各有 `作者画像.md`(生效条目)和 `待确认.md`(候选,不参与约束),都从 state 生成,禁止手改;不存在时写作、审稿、去味照常继续,首次 `record` 自动创建。
22
+ 记忆分两级存放:`{工作区}/.story/作者记忆/` 存 global / genre / workflow 条目,编号 `AP`;`{书}/.story/作者记忆/` 只存本书的 book 条目,编号 `BP`。每级的 `作者画像.md` 展示生效条目,`待确认.md` 展示不参与约束的候选,都从 state 生成,禁止手改。记忆不存在时照常创作,首次 `record` 自动创建。
23
23
 
24
24
  - `--workspace` 必须显式传,指创作工作区根——承载多本书、`.active-book`、`长篇/`、`短篇/` 或 `拆文库/` 的那一层;已有记忆时,是项目级 state(不带 `book` 字段)所在的最近祖先。`长篇/`、`短篇/` 下的书目录永远不当 `--workspace`,也不要把用户主目录当默认工作区。
25
- - `--book-root` 是当前书的项目目录(`.active-book` 指向、或含 `设定/`、`正文/` 的那一层,如 `{工作区}/长篇/{书名}/`);书名默认取书级 state 记的名字,首次取目录名,`--book` 可覆盖。书根就是工作区时读维护文件「单书布局」。
25
+ - `--book-root` 是当前书的项目目录:长篇含 `设定/`、`正文/`,短篇含 `设定.md`、`正文.md`,也可由 `.active-book` 指定。书名默认取书级 state 记的名字,首次取目录名,`--book` 可覆盖。书根就是工作区时读维护文件「单书布局」。
26
26
  - ID 前缀就是 store:`decide` / `forget` 看 `item_id`(`AP` 项目级,`BP` 书级),`remember` / `replace` 看 `scope.level`(`book` 书级,其余项目级)。书级操作必须传 `--book-root`,没传直接报错,不会退而写进项目级。
27
27
  - `replace` 与 `conflicts_with` 不能跨 store:本书例外按优先级覆盖全局规则,不算冲突,直接 `remember` 为 book 条目;要把全局规则改成本书规则,拆成 `forget` + `remember` 两个事件。
28
28
 
29
29
  ## 查询
30
30
 
31
- 各 skill 入口已写好本任务的 `query` 命令(长篇正文由组装脚本代查);没写命令的长篇设定、大纲等任务查 `story_design` + `workflow` + `interaction`,结果只给主会话、不传正文 agent。四类任务的映射表见维护文件。state 存在才查(两级都不存在时返回空结果、零写入);结果合并项目级与 `--book-root` 所指书级(不传就拿不到本书条目),`--kind` 必传,输出不超过 2048 字节。
31
+ 写作入口提供 `query` 命令(长篇正文由组装脚本代查);没写命令的长篇设定、大纲等任务查 `story_design` + `workflow` + `interaction`,结果只给主会话、不传正文 agent。写作流程查询后把相关偏好与文风裁决交给去味、审稿;这些后续任务不自行查询或记录。映射表见维护文件。state 存在才查(两级都不存在时返回空结果、零写入);结果合并项目级与 `--book-root` 所指书级(不传就拿不到本书条目),`--kind` 必传;交给执行者的只有 `lines`(每条一行原话+编号,单次查询 ≤2048 字节)。
32
32
 
33
- 普通创作只做一次本地 `query`,完整画像、证据、候选和 journal 不进 prompt。查询项是低优先级倾向,不是逐条打卡清单:自然吸收,不复述画像、不刻意提高词面命中率,不为命中牺牲连贯、节奏、字数或本书既定笔调。**`omitted_ids` 非空=记忆超编**,不是「没有更多了」:转告作者并建议「整理作者记忆」,不得改读完整画像规避预算。待确认项不进 prompt,也不为确认它们中断任务;只在作者主动查看、候选积累到适合回顾的节点,或新偏好与 active 条目冲突时集中呈现。
33
+ 普通创作只做一次本地 `query`,只把返回的 `lines` 交给执行者,完整画像、证据、候选和变更记录不进上下文。查询项作为低优先级倾向自然吸收,不为逐条命中牺牲连贯、节奏、字数或本书笔调。**`omitted_ids` 非空表示有偏好未装入本次上下文**:照 `omitted_summaries` 转告作者并建议「整理作者记忆」,不改读完整画像规避预算。待确认项不参与创作约束;作者主动查看、集中回顾候选或新偏好与 active 条目冲突时再呈现。
34
34
 
35
35
  ## 记不记、记成什么
36
36
 
@@ -66,11 +66,11 @@
66
66
  回复就两行纯文本,不加代码块或引用格式:第一行用一句人话说记住了什么、管哪本书或哪类场合,如「记住了:《{书名}》的对话一律用「」,以后写这本书都照这个来;想改随时说。」;第二行是机器回执作凭证,如「技术备注:Author Memory Receipt: r1 · BP001」。
67
67
 
68
68
  - 确认、替换、忘掉同理:「好,这条生效了:……」「换成了:……,原来的「……」不再用」「忘掉了:……」。只进待确认时说「这条先记在待确认里,你说"确认"才生效」;有冲突时用原话说明跟哪条旧习惯冲突。
69
- - `warnings` / `omitted_ids` 不原样贴:说「你的习惯攒得有点多,写正文时这几条可能顾不上:「……」」,并建议说「整理作者记忆」。不提字节、prompt、kind、scope;编号只能跟着原话出现。
69
+ - `warnings` / `omitted_ids` 不原样贴:说「你的习惯攒得有点多,写正文时这几条会带不上:「……」」(`warnings` 是最坏估算,改说「可能带不上」),并建议说「整理作者记忆」。不提字节、prompt、kind、scope;编号只能跟着原话出现。
70
70
 
71
71
  ## 运行工具
72
72
 
73
- 依次尝试 `python3`、`python`、`py -3` 找到 Python 3,从当前 skill 根运行本地副本:
73
+ 依次尝试 `python3`、`python`、`py -3` 找到 Python 3,从当前写作 skill 根运行本地副本:
74
74
 
75
75
  ```text
76
76
  {PYTHON} {当前 skill 根}/scripts/author_memory_commit.py record --workspace {工作区} [--book-root {书目录}] --input {工作区}/.story/work/作者记忆-事件.json
@@ -1,151 +1,63 @@
1
- # AI味禁用词与句式表
2
-
3
- > 表达默认值服从 [style-resolution.md](style-resolution.md);文件结构与事实约束不豁免。
4
-
5
- <!-- 同名副本×6 字节同步,改动后跑 scripts/check-shared-files.sh -->
6
-
7
- ## 默认优先检查的句式(先对照本书文风)
8
-
9
- 写网文最毒的 AI 句式,作者一旦养成就会反复出现。以下是优先检查的句式:
10
-
11
- | 毒级 | 句式 | 错误例 | 修法 |
12
- |------|------|--------|------|
13
- | ★★★★★ | "不是A,(而)是B" / "不是A,不是B,(而)是C"("而"可省略,省掉也算命中)| "他不是冷漠,而是绝望" | 直接写 B 或用更自然的表达 |
14
- | ★★★☆☆ | 跨段「不是A。/也不是B。/只是C。」 | 「不是嚎啕大哭。/也不是扯着嗓子喊不舍。/只是一个人走远了……」 | 语义复核;重复提纲或拖慢画面时压成 C,有辩解/悬念排除功能可保留 |
15
- | ★★★★ | ",带着……" 万能状语 | "他笑了一下,带着一丝不易察觉的嘲讽" | 删掉状语留主句,或换具体动作 |
16
- | ★★★★ | 无情绪声线:"声音不大,却带着……" / "语气毫无波澜" / "平静无波" / "声音平直/平平/听不出情绪" | "她声音不大,却带着不容置疑的力量" | 直接写台词内容、声音特征或动作 |
17
- | ★★★★ | "他/她知道……" | "他知道这一切都来不及了" | 用行为展示认知 |
18
- | ★★★ | "仿佛/犹如/宛若……一般" | "仿佛能穿透一切一般" | 删掉或白描 |
19
- | ★★★ | "眼中闪过一丝……" / "嘴角勾起一抹……" | "眼中闪过一丝悲伤" | 删掉;写他当场说的话或做出的决定 |
20
- | ★★★ | "心中涌起一股……" / "心头一震" | "心中涌起一股暖流" | 写它改变了什么:选择、台词、物件或后果 |
21
- | ★★★ | 抽象命运/开端收束:"命运……棋局/獠牙" / "这一刻终于明白" / "反击才刚刚开始" | "命运终于露出獠牙;属于他的反击才刚刚开始" | 回到角色当下可见的文件、动作、对话或物理后果 |
22
- | ★★ | 章末预告 "他不知道的是……" | "他不知道的是,更大的风暴即将来临" | 用具体钩子物件/事件收束,避免空泛预告 |
23
-
24
- > ★★★★★ 命中一处就要改;轻/中/重分档只按去 AI 味诊断的密度指标定。
25
-
26
- `check-ai-patterns.js` 的 `formulaic-parallelism` 还会提示「至于X不X,怎么X」和同动词「不V A,不V B」。这两类可能是功能性口语,因此只做 advisory;Gate B 必须连同台词读语境复核,若只是复述细纲/前文就压成一次判断,不能因 hook 豁免台词而跳过。
27
-
28
- **标点**:正文(含叙述和对话)禁用破折号 `——`/`—`、双连字符 `--` 和省略号停顿,改用句号、逗号、短句或动作断句;不设置对话破折号例外。盐言「」引号不在此列。
29
-
30
- ---
31
-
32
- ## 一级禁用词(出现即替换)
33
-
34
- > 什么词进一级:只收真人语料里几乎不出现、AI 特有的词。真人高频使用的自然副词和虚词不进一级,走二级密度控制。
35
-
36
- ### 情态类
37
- 仿佛、犹如、宛若、如同、一丝、一抹、些许、几分、隐约、毫无征兆、几不可闻、微不可察
38
-
39
- ### 动作类
40
- 深吸一口气、不禁
41
-
42
- ### 表情类
43
- 眼中闪过、嘴角勾起、眉头微皱、眉眼低垂、瞳孔微缩、瞳孔收缩、瞳孔一缩、指节泛白、眼神锐利、目光锐利
44
-
45
- ### 心理类
46
- 心中一动、心头一震、心下了然、心中暗道、心底泛起、不由得、心中一凛
47
-
48
- ### 判断类
49
- 不容置疑、不容置喙、不易察觉、显而易见、毫无疑问、不可否认、前所未有
50
-
51
- ### 形容类
52
- 坚定、闪烁着光芒、狡黠、深邃、凛冽、冰冷
53
-
54
- ### 过渡类
55
- 不由自主、情不自禁、自然而然、话锋一转
56
-
57
- ## 二级禁用词(高频出现时替换)
58
-
59
- ### 语境敏感词(仅高频或偷懒时处理)
60
- 突然、陡然、骤然、猛然、好像、似乎、瞬间、猛地、死死地(角色口语、真实突发、时间压缩、视角不确定时可保留;用同义变体轮换规避重复不算豁免,按同一个词计密度)
61
-
62
- ### 弱化副词(密度控制)
63
- 缓缓、微微、轻轻、淡淡(每千字合计 ≤3;这四个词同时计入 `cliche-density-tic` 的套词密度统计;孤立自然使用可保留,成串出现或每个动作都垫一个时才替换)
64
-
65
- ### 书面腔 → 口语化
66
-
67
- | 书面腔 | 口语化替换 |
68
- |--------|-----------|
69
- | 瓦解 | 消失 / 散了 / 没了 |
70
- | 无名火 | 烦躁 |
71
- | 往我心上捅刀子 | 心烦意乱 |
72
-
73
- ### 总结句式
74
- - "他/她终于明白..."
75
- - "他/她这才意识到..."
76
- - "这一刻,他/她终于明白/意识到..."
77
- - "从这一刻开始..."
78
- - "属于X的反击/复仇/故事,才刚刚开始"
79
- - "命运/宿命 + 齿轮/棋局/獠牙/改写/安排"
80
- - "此刻,他/她..."
81
- - "一切...都..."
82
- - "原来..."
83
-
84
- ### 排比句式
85
- - 连续3句以上相同结构的排比
86
- - "有的...有的...有的..."
87
- - "一边...一边...一边..."
88
-
89
- ### 升华句式
90
- - "这一刻..."
91
- - "他知道..."
92
- - "她明白..."
93
- - "这就是..."
94
-
95
- ## 禁用句式模板
96
-
97
- | 句式 | 示例 | 问题 |
98
- |------|------|------|
99
- | "不是A,而是B" | "他不是冷漠,而是绝望" | 最毒;直接写 B |
100
- | "...,带着..." | "他说,带着一丝无奈" | 万能状语 |
101
- | "声音不大,却带着……" | "她声音不大,却带着不容置疑的力量" | AI 最爱声音描写 |
102
- | "仿佛能...一般" | "仿佛能穿透一切一般" | 文言腔 |
103
- | 对话标签密度过高/公式化标签 | "好的,他说道" | 普通"说"可保留;高频或公式化时处理 |
104
- | "他/她感到..." | "她感到一丝失落" | 告诉而非展示 |
105
- | "他/她意识到..." | "他意识到事情不对" | 直接告知 |
106
- | "眼中闪过一丝XX" | "眼中闪过一丝悲伤" | 模板化 |
107
- | "嘴角勾起一抹XX" | "嘴角勾起一抹冷笑" | 模板化 |
108
- | "心中涌起一股XX" | "心中涌起一股暖流" | 模板化 |
109
- | "取而代之的是" | "笑容消失,取而代之的是冰冷" | AI 过渡模板;直接写新状态 |
110
- | "淬了/淬着X" | "眼里淬了毒" | AI 通感套路;写动作或台词 |
111
- | "显得(有些)X" | "他显得有些兴奋" | 告诉而非展示 |
112
- | "心底/心里某个地方+软" | "心里某个地方软得一塌糊涂" | 言情套句;写动作 |
113
- | "(浑身)散发着一股X气息/气场" | "浑身散发着一股生人勿近的气息" | 万能气场描写;写旁人的反应 |
114
- | "命运/宿命 + 齿轮/棋局/獠牙/改写/安排" | "命运终于露出獠牙" / "早已布好的棋局" | 抽象作者总结;改成角色当下撞见的文件、动作、对话、物理后果 |
115
- | "这一刻终于明白/从这一刻开始/才刚刚开始" | "这一刻,他终于明白" / "反击才刚刚开始" | AI 收束腔;删总结,用动作或未解决问题收尾 |
116
-
117
- ## 比喻分类(默认复核,不默认全删)
118
-
119
- 带"像/如/仿佛/犹如/宛若"的比喻不是一律 AI。真正高风险的是:成片堆叠、套用万能文学比喻、用精致比喻替代剧情推进,或在段尾替读者总结意义。本表用于识别需要复核的比喻类型:
120
-
121
- | 比喻类别 | 例 | 处理 |
122
- |---------|----|------|
123
- | 生活/角色化 | "像一头被抛弃的野狗" | 若贴角色视角、能传递信息或情绪,可保留 |
124
- | 物品/现象类 | "像一把刀" "脸色惨白得像这漫天的雪" | 普通功能性比喻可留;模板化或重复时改白描 |
125
- | 状态类(陈词滥调) | "梨花带雨" "如沐春风" | 优先删或改成具体动作/表情 |
126
- | 抽象类 | "像命运的齿轮" "像上辈子的尘埃" | 高风险,优先落回动作、物件、声音、后果 |
127
- | 假设类 | "力道大得像是要把骨头捏碎" | 若是角色身体感知可留;夸张堆叠时改事实后果 |
128
-
129
- 处理原则:先看功能,再看密度。保留最能传递信息或情绪的一两个,其余改为直接描述、动词、名词、作用、结果或事实;不要把删掉的比喻替换成另一批新比喻。例 "脸色惨白得像这漫天的雪" 若只是套话 → "脸色惨白";若雪景正在压迫角色,可保留或改成角色当下看到的具体画面。
130
-
131
- > `metaphor-density-tic` 是 advisory:提示通读复核,不是 blocking;生活化、角色化、单个有功能的比喻可以保留。
132
-
133
- ## 替换策略速查
134
-
135
- | 原文类型 | 替换方法 | 示例 |
136
- |----------|----------|------|
137
- | 抽象情绪词 | 先看上下文是否已成立;再选选择、台词、物件、后果或一句直写 | “紧张”若不影响下一步可直写或删;若导致签名作废,就写作废的结果 |
138
- | "感到XX" | 删除“感到”后按场景决定是否还要情绪句 | “他感到愤怒”可写“他火了”,也可直接写他撤回报价;不要默认换成攥拳 |
139
- | 形容词堆砌 | 白描手法 | "美丽动人的笑容" → "她笑了" |
140
- | 书面表达 | 口语化 | "不容置疑" → "就是" |
141
- | 解释性描写 | 留白 | "他因为害怕而..." → "他退后一步" |
142
- | 连续排比 | 保留最强一条 | 3 句排比留 1 句 |
143
- | 总结升华句 | 直接删除 | "这一刻,她终于明白了..." → 删 |
144
- | "不是A,而是B" | 直接写 B 或更自然的表达 | "他不是冷漠,而是绝望" → 直接写 B |
145
- | 多余修饰(形容词/定语/量词/指示代词) | 删 | "白色的药片" → "药片";"手里那截链子" → "链子";"飞驰的汽车" → "车" |
146
-
147
- **替换不复用**:右列是方向示例,不是标准答案。同一禁用词在一章内多次命中时,各处给不同的具体化写法;同一个替换写法反复出现(每次都「垂下眼」、每个动作都补「了一下」),替换产物本身就成为新的模板指纹。
148
-
149
- **套词密度优先处理**:`check-ai-patterns.js` 报 `cliche-density-tic` 时,说明禁用词不是零星误用,而是聚成了模板腔。处理顺序不是同义词替换,而是先删抽象总结,再把情绪/判断落到角色当下可见的动作、物件、对话和具体后果。
150
-
151
- **套式反应逐处删除测试**:`stock-reaction-tic` 报警时,不代表禁止身体描写。逐处问:删掉后信息、选择、关系、物件或动作结果是否受损?无损就删,不把“指尖轻叩”换成“目光微沉”。伤势、动作失败、人物习惯或情节后果明确时可以保留。
1
+ # AI 味词句信号索引
2
+
3
+ > 保留 `banned-words.md` 文件名供调用方检索。这里列的是需回到上下文判断的信号,不是出现即错的禁词。表达服从 [style-resolution.md](style-resolution.md);不据词频判断作者身份,不以清零为目标。具体修法由调用方加载的方法文件承担。
4
+
5
+ <!-- 共享副本由 scripts/shared-references.json 管理,改动后同步并跑 scripts/check-shared-files.sh -->
6
+
7
+ ## 句式与组织信号
8
+
9
+ | 信号 | 可检索形式 | 需确认的语义问题 |
10
+ |---|---|---|
11
+ | 否定翻转 | 不是 A,(而)是 B;不是 A,不是 B,(而)是 C/只是 C;没有 X,没有 Y,只有 Z | 是否先否定无人在意的靶子,再宣布结论?纠错、辩解和排除猜测也可能需要对比 |
12
+ | 工整并列 | 跨段“不是/也不是/只是”;有的……有的……;一边……一边……;至于 X 不 X,怎么 X;不 V A,不 V B | 是否重复同一意思或照抄提纲字段?排比也可承担递进与人物声线 |
13
+ | 万能状语、声线 | ,带着……/带着一丝……;声音不大,却带着……;语气毫无波澜;平静无波;声音平直/平平/听不出情绪;平静得像在念…… | 是否只贴抽象态度,没有可辨的说话内容或声音信息? |
14
+ | 引号强调 | “机会”“答案”“蜕变”等普通词反复加引号 | 是否虚造术语或替读者划重点?引用、代号、场内消息与反讽另判 |
15
+ | 解释结论链 | 这意味着;真正重要的是;之所以……是因为;正是因为;由此可见;他/她终于明白;他/她这才意识到;此刻,他/她……;这是最好的选择;所有人都会记住这一刻 | 是否重复读者已得到的意思,或把必要过程概括掉? |
16
+ | 意义膨胀、万能结论 | 意义深远;可谓;未来可期;前途无量;充满希望;一切……都……;这就是…… | 是否只扩大分量、宣布前景,没有具体影响或下一步? |
17
+ | 抽象收束、预告 | 命运/宿命/注定+齿轮/棋局/獠牙/改写/安排;这一刻终于明白;从这一刻开始;属于 X 的反击/复仇/故事才刚刚开始;他/她不知道的是;殊不知;多年以后;冥冥之中;仿佛预示着 | 是否只宣告分量,或越过本次揭露边界?回顾、全知与题材承诺按文风判断 |
18
+ | 隐性盖章、点破潜台词 | 关切得恰到好处;笑得恰如其分;不多不少;那点笑她看得分明;谁都看得出他在撒谎;演得真好;这出戏她看过一遍;他就是这样薄情的人;像在宣判一件早已定好的事;像看一件死物 | 是否替读者把伪装、潜台词或人物性质提前判定?区分角色带偏见的认识与叙述者断言 |
19
+ | 告知与气场模板 | 他/她知道……;他/她感到……;他/她意识到……;显得(有些)X;淬了/淬着 X;心底/心里某个地方+软;(浑身)散发着一股 X 气息/气场 | 是否只贴感受与人物标签?准确直写、有来源的认知和角色特有感受可留 |
20
+ | 电报体、动作清单 | 连续孤立短句;抬手、取过、放下、转身;动作后反复“了下/了一下” | 是否丢失动作方向、对象和连接,或把无关步骤全部拍出? |
21
+ | 论述腔、公文腔 | 不难看出、事实上、综上所述、于是乎、与此同时、因而、然而、此刻、机制、结构、逻辑、体系、基于、当前、进一步、深入、推进、落实、从而、诚然、不得、须、未、已然 | 是否与人物、年代和载体语域不合,或每段都先总结再解释?公告、规则和职业表达可有意采用 |
22
+
23
+ ## 套词与套式反应信号
24
+
25
+ 以下组合在跨场景机械复现、成片堆叠或只替情绪贴标签时优先复核;孤立出现不判错。
26
+
27
+ | 类别 | 检索词例 |
28
+ |---|---|
29
+ | 弱化与装饰 | 微微、淡淡、缓缓、轻轻、一丝、一抹、些许、几分、隐约、微不可察、几不可闻、毫无征兆 |
30
+ | 通用反应 | 深吸一口气、不禁、眼中闪过、嘴角勾起、嘴角微扬、脸色一变、眉头微皱、眉眼低垂、瞳孔微缩、瞳孔收缩、瞳孔一缩、指节泛白、指尖轻叩、攥紧袖口、袖口里攥紧、目光移开、眼神锐利、目光锐利、目光如炬、头皮发紧、眼皮一跳、心口一沉、胃里翻涌 |
31
+ | 通用心理 | 心头一震、心中一动、心下了然、心中暗道、心底泛起、心中一凛、不由得、心中涌起一股暖流、心中涌起一股难以名状的情感、心里某个地方软得一塌糊涂 |
32
+ | 空泛定性 | 不容置疑、不容置喙、不易察觉、显而易见、毫无疑问、不可否认、前所未有、坚定、闪烁着光芒、狡黠、深邃、凛冽、冰冷、散发着一股生人勿近的气息 |
33
+ | 模板比喻 | 仿佛/犹如/宛若……一般;仿佛、犹如、宛若、宛如、如同、如潮水般、像潮水般、如闪电般、仿佛春风、犹如疾风骤雨、仿佛能穿透一切一般、像命运的齿轮、像上辈子的尘埃、像在宣判、眼里淬了毒、梨花带雨、如沐春风 |
34
+ | 自动过渡与书面表达 | 映入眼帘、只见、此时此刻、不由自主、情不自禁、自然而然、话锋一转、取而代之的是、瓦解、无名火、往我心上捅刀子 |
35
+ | 语境敏感词 | 突然、陡然、骤然、猛然、瞬间、猛地、死死地、好像、似乎;沉声道、淡淡地说;扯了下、停了一下、拍了两下、松了半圈 |
36
+
37
+ “她感到”“意识到”“知道”“原来”可以准确表达感受、判断和发现;“仿佛/好像/似乎”可以限定视角置信度;“坚定/冰冷/深邃”可以是准确描述。“突然/瞬间/猛地”也可能承担真实突发或时间压缩。只凭这些词不能认定告知式心理、模板比喻或偷懒。
38
+
39
+ ## 历史句式与复合样本
40
+
41
+ 以下保留旧词表及完整指南中的识别语料。例句展示组合风险,不是合格与不合格的标准答案;判断及改法仍按三层方法,不能照旧示范新增动作、改变人物态度或一律拆短。
42
+
43
+ | 观察对象 | 旧例句或模板 | 回到语境核对 |
44
+ |---|---|---|
45
+ | 否定、状语与声线 | “他不是冷漠,而是绝望”“他笑了一下,带着一丝不易察觉的嘲讽”“他说,带着一丝无奈”“她声音不大,却带着不容置疑的力量”“好的,他说道” | 对比是否有纠错对象,状语与标签是否机械复现;普通“说”不用替换成动作 |
46
+ | 跨段铺排与预告 | “不是嚎啕大哭。/也不是扯着嗓子喊不舍。/只是一个人走远了……”“他不知道的是,更大的风暴即将来临”“命运终于露出獠牙;属于他的反击才刚刚开始”“早已布好的棋局” | 是否反复铺垫同一意思、空泛宣告或越过揭露边界;排除猜测与题材承诺另判 |
47
+ | 告知、反应与过渡 | “他知道这一切都来不及了”“她感到一丝失落”“他感到愤怒”“他意识到事情不对”“眼中闪过一丝悲伤”“嘴角勾起一抹冷笑”“他显得有些兴奋”“浑身散发着一股生人勿近的气息”“笑容消失,取而代之的是冰冷” | 判断是否需要直写,反应与新状态是否已经由上下文表达 |
48
+ | 反复呈现同一瞬间 | “林父低着头,左手把文书压住,右手拿笔,往纸上落。”/“手从肘到腕都在抖。”/“笔尖在纸上停了停,写了一横,又停。那个"林"字的撇写歪了。” | 多段是否反复重拍同一动作;手抖、落笔失败也可能是必要体验,不能只留动作梗概 |
49
+ | 场景氛围 | “阳光透过窗帘的缝隙洒进来,在地板上投下斑驳的光影。空气中弥漫着淡淡的花香,仿佛整个世界都沉浸在一片宁静祥和的氛围中。” | 景物是否与此刻行动、视角或情绪有关,还是可移到任意场景 |
50
+ | 天气套写 | “天空阴沉沉的,乌云密布,仿佛随时都会下起倾盆大雨。凛冽的寒风呼啸而过,带着一丝刺骨的寒意。” | 是否叠加同一寒冷、阴沉信息;天气也可能改变行动条件 |
51
+ | 打斗套写 | “他的拳头犹如疾风骤雨般猛烈,每一击都蕴含着不容置疑的力量。对手的瞳孔微微收缩,显然没有预料到如此凌厉的攻势。” | 力量与反应是否只被定性,攻防过程、失误与后果是否缺失 |
52
+ | 哲理、翻页与感慨收尾 | “他站在窗前,望着远方的天际线,终于明白了生活的真谛:有时候,放手才是最好的选择。”“这一刻,一切都变了。她知道,从今以后,她的人生将翻开崭新的一页。”“这一夜,注定无人入眠”“人生就是这样……”“岁月如流水般悄然流逝……” | 是否重复总结,或确实呈现本书允许的新认识、时间变化与余韵 |
53
+ | 修饰、排比与意义尾巴 | “他看着她的眼睛,看着她的嘴唇,看着她微微颤动的睫毛,心中涌起一股难以名状的情感。”“当他终于推开那扇沉重的木门时,映入眼帘的是一间昏暗的房间,空气中弥漫着陈旧的气息,墙角堆满了落满灰尘的箱子。”“她喜欢春天的花朵,喜欢夏天的阳光,喜欢秋天的落叶,喜欢冬天的白雪。每一个季节都有它独特的美。” | 信息是否重复,末句是否替读者点题;不要因长句、修饰或排比形式本身删掉有效感受 |
54
+ | 温和请求、完整解释与笼统反应 | “我觉得你这样做不太合适,能不能考虑一下我的感受?”“其实我这样做是有原因的,因为当时的情况非常复杂……”“所有人都震惊了,不敢相信自己的耳朵。”“她很害怕,不知道该怎么办,只能等着事情过去。” | 是否所有人都用同一套说法,关键交锋或选择是否被概括;不能把请求改辱骂、解释改挑衅,或凭空补锁门、录音与群体动作 |
55
+ | 比喻的功能边界 | “像一头被抛弃的野狗”“像一把刀”“脸色惨白得像这漫天的雪”“力道大得像是要把骨头捏碎” | 生活化、物品、环境与身体感知比喻均可能有效;看是否传递角色特有信息,不按类别全删 |
56
+ | 二修伪自然 | “手里拿着刀,他冲了上去”;连续“伸手拿起、取过、挑开、放下、转身”;强加口误、脏话、每句换行或对话占比 | 一次伴随动作前置不等于油腻;检查是否机械套用另一种句法、流程或格式 |
57
+ | 旧替换的误改风险 | “美丽动人的笑容”“白色的药片”“手里那截链子”“飞驰的汽车”“他因为害怕而……”;垂下眼、目光微沉、攥拳 | 修饰、指示与原因可能承担区分、承接或动作条件;不能仅为去词删成信息残缺,也不能把每个情绪词换成同一微动作 |
58
+
59
+ ## 提示名称索引
60
+
61
+ 脚本提示供定位,不能替代语义结论。`formulaic-parallelism` 对应对比与并列,`quote-emphasis-tic` 对应引号强调;`cliche-density-tic`、`metaphor-density-tic` 对应套词与比喻聚集;`stock-reaction-tic`、`micro-action-tic`、`action-list-tic` 对应反应与动作;`abstract-summary-tic`、`reasoning-chain-tic` 对应总结解释;`overcompressed-prose-tic`、`low-connective-density-tic` 对应过度压缩;`system-notice-formality-tic` 对应载体语域。是否构成问题、如何修复及获准保留,由本次方法与文风裁决确定。
62
+
63
+ 标点、句长、段落疏密和对话占比均不在此设置统一指标。不通过同义词轮换、错误用字、英文点省略号或机械补动作规避提示。