@oh-story/dsh 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +38 -0
  3. package/cordis.patch.yml +3 -0
  4. package/lib/client.js +1201 -0
  5. package/lib/client.js.map +7 -0
  6. package/lib/drama/LICENSE.upstream +21 -0
  7. package/lib/drama/manifest.json +1012 -0
  8. package/lib/drama/skills/short-drama/SKILL.md +153 -0
  9. package/lib/drama/skills/short-drama/agents/openai.yaml +4 -0
  10. package/lib/drama/skills/short-drama/assets/creator-decision.example.jsonl +4 -0
  11. package/lib/drama/skills/short-drama/assets/production-observation.example.jsonl +2 -0
  12. package/lib/drama/skills/short-drama/assets/project-template/short-drama.json +36 -0
  13. package/lib/drama/skills/short-drama/assets/reference-observation.example.jsonl +2 -0
  14. package/lib/drama/skills/short-drama/references/audience-reveal.md +74 -0
  15. package/lib/drama/skills/short-drama/references/contract-and-ownership.md +94 -0
  16. package/lib/drama/skills/short-drama/references/creator-workflow.md +82 -0
  17. package/lib/drama/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +73 -0
  18. package/lib/drama/skills/short-drama/references/form-cards//344/272/214/347/273/264/345/212/250/346/200/201/346/274/253.md +74 -0
  19. package/lib/drama/skills/short-drama/references/form-cards//345/233/275/346/274/253/344/272/214/346/254/241/345/205/203.md +79 -0
  20. package/lib/drama/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +75 -0
  21. package/lib/drama/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +85 -0
  22. package/lib/drama/skills/short-drama/references/form-cards//351/243/216/346/240/274/345/214/226/344/270/211/347/273/264.md +72 -0
  23. package/lib/drama/skills/short-drama/references/knowhow-index.md +80 -0
  24. package/lib/drama/skills/short-drama/references/lifecycle-commands.md +130 -0
  25. package/lib/drama/skills/short-drama/references/look-development.md +52 -0
  26. package/lib/drama/skills/short-drama/references/pickup-and-alternate.md +58 -0
  27. package/lib/drama/skills/short-drama/references/production-form-profiles.md +126 -0
  28. package/lib/drama/skills/short-drama/references/reference-roles.md +142 -0
  29. package/lib/drama/skills/short-drama/references/runtime-preflight.md +27 -0
  30. package/lib/drama/skills/short-drama/scripts/project_tool.py +1963 -0
  31. package/lib/drama/skills/short-drama/scripts/selftest.py +287 -0
  32. package/lib/drama/skills/short-drama-assets/SKILL.md +187 -0
  33. package/lib/drama/skills/short-drama-assets/agents/openai.yaml +4 -0
  34. package/lib/drama/skills/short-drama-assets/assets/character-look.example.jsonl +3 -0
  35. package/lib/drama/skills/short-drama-assets/assets/continuity.example.jsonl +4 -0
  36. package/lib/drama/skills/short-drama-assets/assets/decisions.example.jsonl +5 -0
  37. package/lib/drama/skills/short-drama-assets/assets/location-view.example.jsonl +3 -0
  38. package/lib/drama/skills/short-drama-assets/assets/occurrences.example.jsonl +5 -0
  39. package/lib/drama/skills/short-drama-assets/assets/prop-state.example.jsonl +3 -0
  40. package/lib/drama/skills/short-drama-assets/examples/minimal/characters.jsonl +2 -0
  41. package/lib/drama/skills/short-drama-assets/examples/minimal/looks.jsonl +2 -0
  42. package/lib/drama/skills/short-drama-assets/references/asset-review-checklist.md +89 -0
  43. package/lib/drama/skills/short-drama-assets/references/character-and-look.md +164 -0
  44. package/lib/drama/skills/short-drama-assets/references/continuity-delta.md +123 -0
  45. package/lib/drama/skills/short-drama-assets/references/identity-vs-variant.md +146 -0
  46. package/lib/drama/skills/short-drama-assets/references/location-and-view.md +84 -0
  47. package/lib/drama/skills/short-drama-assets/references/occurrence-extraction.md +111 -0
  48. package/lib/drama/skills/short-drama-assets/references/prop-and-state.md +107 -0
  49. package/lib/drama/skills/short-drama-assets/references/stage-contract.md +136 -0
  50. package/lib/drama/skills/short-drama-assets/references/voice-direction.md +171 -0
  51. package/lib/drama/skills/short-drama-assets/scripts/asset_check.py +267 -0
  52. package/lib/drama/skills/short-drama-assets/scripts/selftest.py +89 -0
  53. package/lib/drama/skills/short-drama-develop/SKILL.md +157 -0
  54. package/lib/drama/skills/short-drama-develop/agents/openai.yaml +4 -0
  55. package/lib/drama/skills/short-drama-develop/assets/adaptation-map.example.jsonl +1 -0
  56. package/lib/drama/skills/short-drama-develop/assets/creative-brief.md +120 -0
  57. package/lib/drama/skills/short-drama-develop/assets/episode-map.jsonl +1 -0
  58. package/lib/drama/skills/short-drama-develop/assets/story-engine.md +181 -0
  59. package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +219 -0
  60. package/lib/drama/skills/short-drama-develop/references/creative-reference-intake.md +57 -0
  61. package/lib/drama/skills/short-drama-develop/references/director-brief-craft.md +113 -0
  62. package/lib/drama/skills/short-drama-develop/references/episode-design.md +509 -0
  63. package/lib/drama/skills/short-drama-develop/references/genre-and-hook-playbook.md +240 -0
  64. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +112 -0
  65. package/lib/drama/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +51 -0
  66. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +51 -0
  67. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +51 -0
  68. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +51 -0
  69. package/lib/drama/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +51 -0
  70. package/lib/drama/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +51 -0
  71. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +51 -0
  72. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +109 -0
  73. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/201/214/345/234/272/345/226/234/345/211/247.md +51 -0
  74. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +51 -0
  75. package/lib/drama/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +51 -0
  76. package/lib/drama/skills/short-drama-develop/references/genre-cards.md +92 -0
  77. package/lib/drama/skills/short-drama-develop/references/mechanism-loop.md +282 -0
  78. package/lib/drama/skills/short-drama-develop/references/multi-episode-intake.md +128 -0
  79. package/lib/drama/skills/short-drama-develop/references/premise-devices.md +211 -0
  80. package/lib/drama/skills/short-drama-develop/references/reveal-reversal-payoff.md +99 -0
  81. package/lib/drama/skills/short-drama-develop/references/serial-character-and-memory.md +293 -0
  82. package/lib/drama/skills/short-drama-develop/references/stage-contract.md +88 -0
  83. package/lib/drama/skills/short-drama-develop/references/story-craft.md +359 -0
  84. package/lib/drama/skills/short-drama-develop/scripts/episode_intake.py +699 -0
  85. package/lib/drama/skills/short-drama-develop/scripts/selftest.py +47 -0
  86. package/lib/drama/skills/short-drama-image-prompts/SKILL.md +181 -0
  87. package/lib/drama/skills/short-drama-image-prompts/agents/openai.yaml +4 -0
  88. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +187 -0
  89. package/lib/drama/skills/short-drama-image-prompts/assets/image-prompts.md +37 -0
  90. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +128 -0
  91. package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-prompts.md +31 -0
  92. package/lib/drama/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +2 -0
  93. package/lib/drama/skills/short-drama-image-prompts/references/character-and-look.md +154 -0
  94. package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +231 -0
  95. package/lib/drama/skills/short-drama-image-prompts/references/edit-and-revision.md +122 -0
  96. package/lib/drama/skills/short-drama-image-prompts/references/location-plate.md +152 -0
  97. package/lib/drama/skills/short-drama-image-prompts/references/look-and-state-variant.md +96 -0
  98. package/lib/drama/skills/short-drama-image-prompts/references/lookdev-frame.md +38 -0
  99. package/lib/drama/skills/short-drama-image-prompts/references/production-sheet-recipes.md +177 -0
  100. package/lib/drama/skills/short-drama-image-prompts/references/prop-plate.md +140 -0
  101. package/lib/drama/skills/short-drama-image-prompts/references/review-and-fixtures.md +92 -0
  102. package/lib/drama/skills/short-drama-image-prompts/references/stage-contract.md +89 -0
  103. package/lib/drama/skills/short-drama-image-prompts/scripts/image_prompt_check.py +443 -0
  104. package/lib/drama/skills/short-drama-image-prompts/scripts/selftest.py +93 -0
  105. package/lib/drama/skills/short-drama-novel-analyze/SKILL.md +245 -0
  106. package/lib/drama/skills/short-drama-novel-analyze/agents/openai.yaml +4 -0
  107. package/lib/drama/skills/short-drama-novel-analyze/assets/episode-candidate.example.jsonl +3 -0
  108. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-triage.md +116 -0
  109. package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-value.md +124 -0
  110. package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +155 -0
  111. package/lib/drama/skills/short-drama-novel-analyze/references/chapter-extraction.md +141 -0
  112. package/lib/drama/skills/short-drama-novel-analyze/references/stage-contract.md +67 -0
  113. package/lib/drama/skills/short-drama-novel-analyze/scripts/novel_index.py +651 -0
  114. package/lib/drama/skills/short-drama-novel-analyze/scripts/selftest.py +51 -0
  115. package/lib/drama/skills/short-drama-produce/SKILL.md +103 -0
  116. package/lib/drama/skills/short-drama-produce/agents/openai.yaml +4 -0
  117. package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +140 -0
  118. package/lib/drama/skills/short-drama-produce/references/providers/gpt-image-2.md +24 -0
  119. package/lib/drama/skills/short-drama-produce/references/providers/minimax-music.md +25 -0
  120. package/lib/drama/skills/short-drama-produce/references/providers/seedance.md +40 -0
  121. package/lib/drama/skills/short-drama-produce/scripts/fixture_adapter.py +60 -0
  122. package/lib/drama/skills/short-drama-produce/scripts/production_tool.py +1635 -0
  123. package/lib/drama/skills/short-drama-produce/scripts/provider_adapters.py +964 -0
  124. package/lib/drama/skills/short-drama-produce/scripts/selftest.py +134 -0
  125. package/lib/drama/skills/short-drama-review/SKILL.md +178 -0
  126. package/lib/drama/skills/short-drama-review/agents/openai.yaml +4 -0
  127. package/lib/drama/skills/short-drama-review/assets/finding-template.jsonl +2 -0
  128. package/lib/drama/skills/short-drama-review/assets/supersession-decision.example.json +42 -0
  129. package/lib/drama/skills/short-drama-review/assets/verdict-template.json +32 -0
  130. package/lib/drama/skills/short-drama-review/examples/minimal-findings.jsonl +2 -0
  131. package/lib/drama/skills/short-drama-review/examples/minimal-verdict.json +34 -0
  132. package/lib/drama/skills/short-drama-review/references/anti-template-repair.md +114 -0
  133. package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +270 -0
  134. package/lib/drama/skills/short-drama-review/references/project-calibration.md +85 -0
  135. package/lib/drama/skills/short-drama-review/references/review-method.md +82 -0
  136. package/lib/drama/skills/short-drama-review/references/rubric-assets-prompts.md +115 -0
  137. package/lib/drama/skills/short-drama-review/references/rubric-source-analysis.md +108 -0
  138. package/lib/drama/skills/short-drama-review/references/rubric-story-script.md +164 -0
  139. package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +166 -0
  140. package/lib/drama/skills/short-drama-review/references/stage-contract.md +87 -0
  141. package/lib/drama/skills/short-drama-review/scripts/review_check.py +325 -0
  142. package/lib/drama/skills/short-drama-review/scripts/selftest.py +87 -0
  143. package/lib/drama/skills/short-drama-storyboard/SKILL.md +264 -0
  144. package/lib/drama/skills/short-drama-storyboard/agents/openai.yaml +4 -0
  145. package/lib/drama/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +2 -0
  146. package/lib/drama/skills/short-drama-storyboard/assets/coverage-template.json +49 -0
  147. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-prompts.md +32 -0
  148. package/lib/drama/skills/short-drama-storyboard/assets/keyframe-template.jsonl +2 -0
  149. package/lib/drama/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +12 -0
  150. package/lib/drama/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +2 -0
  151. package/lib/drama/skills/short-drama-storyboard/assets/shot-template.jsonl +2 -0
  152. package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +241 -0
  153. package/lib/drama/skills/short-drama-storyboard/references/coverage-audition.md +39 -0
  154. package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +169 -0
  155. package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +264 -0
  156. package/lib/drama/skills/short-drama-storyboard/references/review-and-fixtures.md +70 -0
  157. package/lib/drama/skills/short-drama-storyboard/references/scene-visual-plan.md +39 -0
  158. package/lib/drama/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +157 -0
  159. package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +192 -0
  160. package/lib/drama/skills/short-drama-storyboard/references/shot-revision-identity.md +29 -0
  161. package/lib/drama/skills/short-drama-storyboard/references/stage-contract.md +110 -0
  162. package/lib/drama/skills/short-drama-storyboard/scripts/selftest.py +191 -0
  163. package/lib/drama/skills/short-drama-storyboard/scripts/storyboard_check.py +824 -0
  164. package/lib/drama/skills/short-drama-video-prompts/SKILL.md +245 -0
  165. package/lib/drama/skills/short-drama-video-prompts/agents/openai.yaml +4 -0
  166. package/lib/drama/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +21 -0
  167. package/lib/drama/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +101 -0
  168. package/lib/drama/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +212 -0
  169. package/lib/drama/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +2 -0
  170. package/lib/drama/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +31 -0
  171. package/lib/drama/skills/short-drama-video-prompts/assets/performance.fragment.json +38 -0
  172. package/lib/drama/skills/short-drama-video-prompts/assets/video-prompts.md +46 -0
  173. package/lib/drama/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +2 -0
  174. package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +240 -0
  175. package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +255 -0
  176. package/lib/drama/skills/short-drama-video-prompts/references/generability.md +93 -0
  177. package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +304 -0
  178. package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +191 -0
  179. package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +312 -0
  180. package/lib/drama/skills/short-drama-video-prompts/references/review-and-fixtures.md +168 -0
  181. package/lib/drama/skills/short-drama-video-prompts/references/stage-contract.md +110 -0
  182. package/lib/drama/skills/short-drama-video-prompts/scripts/container_check.py +329 -0
  183. package/lib/drama/skills/short-drama-video-prompts/scripts/motion_timing_check.py +450 -0
  184. package/lib/drama/skills/short-drama-video-prompts/scripts/music_spec_check.py +327 -0
  185. package/lib/drama/skills/short-drama-video-prompts/scripts/selftest.py +82 -0
  186. package/lib/drama/skills/short-drama-write/SKILL.md +284 -0
  187. package/lib/drama/skills/short-drama-write/agents/openai.yaml +4 -0
  188. package/lib/drama/skills/short-drama-write/assets/beats.jsonl +2 -0
  189. package/lib/drama/skills/short-drama-write/assets/episode-card-standalone.json +120 -0
  190. package/lib/drama/skills/short-drama-write/assets/episode-card.json +55 -0
  191. package/lib/drama/skills/short-drama-write/assets/screenplay.md +36 -0
  192. package/lib/drama/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +89 -0
  193. package/lib/drama/skills/short-drama-write/references/dialogue-craft.md +519 -0
  194. package/lib/drama/skills/short-drama-write/references/production-format-dialect.md +273 -0
  195. package/lib/drama/skills/short-drama-write/references/scene-handoff-capsule.md +51 -0
  196. package/lib/drama/skills/short-drama-write/references/scene-sound-dramaturgy.md +43 -0
  197. package/lib/drama/skills/short-drama-write/references/screenplay-format.md +260 -0
  198. package/lib/drama/skills/short-drama-write/references/script-craft.md +558 -0
  199. package/lib/drama/skills/short-drama-write/references/stage-contract.md +94 -0
  200. package/lib/drama/skills/short-drama-write/references/substitutable-realization.md +107 -0
  201. package/lib/drama/skills/short-drama-write/scripts/duration_estimate.py +309 -0
  202. package/lib/drama/skills/short-drama-write/scripts/screenplay_index.py +1091 -0
  203. package/lib/drama/skills/short-drama-write/scripts/selftest.py +229 -0
  204. package/lib/drama/skills/short-drama-write/scripts/voice_sheet_check.py +416 -0
  205. package/lib/index.js +756 -0
  206. package/lib/index.js.map +7 -0
  207. package/lib/oh-story/LICENSE.upstream +21 -0
  208. package/lib/oh-story/manifest.json +1351 -0
  209. package/lib/oh-story/roles/chapter-extractor.md +314 -0
  210. package/lib/oh-story/roles/character-designer.md +169 -0
  211. package/lib/oh-story/roles/consistency-checker.md +190 -0
  212. package/lib/oh-story/roles/narrative-writer.md +294 -0
  213. package/lib/oh-story/roles/story-architect.md +195 -0
  214. package/lib/oh-story/roles/story-explorer.md +364 -0
  215. package/lib/oh-story/roles/story-researcher.md +304 -0
  216. package/lib/oh-story/skills/browser-cdp/SKILL.md +175 -0
  217. package/lib/oh-story/skills/story/SKILL.md +116 -0
  218. package/lib/oh-story/skills/story/VERSION +1 -0
  219. package/lib/oh-story/skills/story-cover/SKILL.md +327 -0
  220. package/lib/oh-story/skills/story-cover/references/cover-styles.md +210 -0
  221. package/lib/oh-story/skills/story-deslop/SKILL.md +445 -0
  222. package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +582 -0
  223. package/lib/oh-story/skills/story-deslop/references/banned-words.md +147 -0
  224. package/lib/oh-story/skills/story-deslop/scripts/check-ai-patterns.js +1371 -0
  225. package/lib/oh-story/skills/story-deslop/scripts/check-degeneration.js +330 -0
  226. package/lib/oh-story/skills/story-deslop/scripts/check-outline-copy.js +241 -0
  227. package/lib/oh-story/skills/story-deslop/scripts/normalize-punctuation.js +410 -0
  228. package/lib/oh-story/skills/story-import/SKILL.md +634 -0
  229. package/lib/oh-story/skills/story-import/references/character-state-reverse.md +82 -0
  230. package/lib/oh-story/skills/story-import/references/format-and-structure.md +169 -0
  231. package/lib/oh-story/skills/story-import/references/length-routing.md +134 -0
  232. package/lib/oh-story/skills/story-import/references/state-tracking.md +108 -0
  233. package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +442 -0
  234. package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +175 -0
  235. package/lib/oh-story/skills/story-import/references/tracking-transaction.md +161 -0
  236. package/lib/oh-story/skills/story-import/scripts/tracking_commit.py +1139 -0
  237. package/lib/oh-story/skills/story-long-analyze/SKILL.md +329 -0
  238. package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +270 -0
  239. package/lib/oh-story/skills/story-long-analyze/references/material-decomposition.md +530 -0
  240. package/lib/oh-story/skills/story-long-analyze/references/output-templates.md +559 -0
  241. package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +80 -0
  242. package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +149 -0
  243. package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +133 -0
  244. package/lib/oh-story/skills/story-long-scan/SKILL.md +342 -0
  245. package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +197 -0
  246. package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +114 -0
  247. package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +105 -0
  248. package/lib/oh-story/skills/story-long-scan/references/scan-output-format.md +207 -0
  249. package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +78 -0
  250. package/lib/oh-story/skills/story-long-write/SKILL.md +327 -0
  251. package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +582 -0
  252. package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +302 -0
  253. package/lib/oh-story/skills/story-long-write/references/banned-words.md +147 -0
  254. package/lib/oh-story/skills/story-long-write/references/character-basics.md +445 -0
  255. package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +428 -0
  256. package/lib/oh-story/skills/story-long-write/references/character-relations.md +385 -0
  257. package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +502 -0
  258. package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +62 -0
  259. package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +282 -0
  260. package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +426 -0
  261. package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +209 -0
  262. package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +188 -0
  263. package/lib/oh-story/skills/story-long-write/references/format-and-structure.md +169 -0
  264. package/lib/oh-story/skills/story-long-write/references/genre-catalog.md +480 -0
  265. package/lib/oh-story/skills/story-long-write/references/genre-core-mechanics.md +415 -0
  266. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
  267. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
  268. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
  269. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
  270. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
  271. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
  272. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
  273. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
  274. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
  275. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
  276. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
  277. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
  278. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
  279. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
  280. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
  281. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
  282. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
  283. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
  284. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
  285. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
  286. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
  287. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
  288. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
  289. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
  290. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
  291. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
  292. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
  293. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
  294. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
  295. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
  296. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
  297. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
  298. package/lib/oh-story/skills/story-long-write/references/genre-prose-cards.md +91 -0
  299. package/lib/oh-story/skills/story-long-write/references/genre-readers.md +235 -0
  300. package/lib/oh-story/skills/story-long-write/references/genre-writing-formulas.md +444 -0
  301. package/lib/oh-story/skills/story-long-write/references/hooks-chapter.md +225 -0
  302. package/lib/oh-story/skills/story-long-write/references/hooks-paragraph.md +146 -0
  303. package/lib/oh-story/skills/story-long-write/references/hooks-suspense.md +352 -0
  304. package/lib/oh-story/skills/story-long-write/references/opening-design.md +349 -0
  305. package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +457 -0
  306. package/lib/oh-story/skills/story-long-write/references/outline-methods.md +287 -0
  307. package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +389 -0
  308. package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +326 -0
  309. package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +522 -0
  310. package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +354 -0
  311. package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +711 -0
  312. package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +622 -0
  313. package/lib/oh-story/skills/story-long-write/references/quality-checklist.md +184 -0
  314. package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +109 -0
  315. package/lib/oh-story/skills/story-long-write/references/reversal-toolkit.md +349 -0
  316. package/lib/oh-story/skills/story-long-write/references/state-tracking.md +108 -0
  317. package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +409 -0
  318. package/lib/oh-story/skills/story-long-write/references/style-craft.md +347 -0
  319. package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +510 -0
  320. package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +161 -0
  321. package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +140 -0
  322. package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +171 -0
  323. package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +99 -0
  324. package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +284 -0
  325. package/lib/oh-story/skills/story-long-write/references/writing-craft.md +421 -0
  326. package/lib/oh-story/skills/story-long-write/scripts/check-ai-patterns.js +1371 -0
  327. package/lib/oh-story/skills/story-long-write/scripts/check-degeneration.js +330 -0
  328. package/lib/oh-story/skills/story-long-write/scripts/check-outline-copy.js +241 -0
  329. package/lib/oh-story/skills/story-long-write/scripts/normalize-punctuation.js +410 -0
  330. package/lib/oh-story/skills/story-long-write/scripts/tracking_commit.py +1139 -0
  331. package/lib/oh-story/skills/story-review/SKILL.md +483 -0
  332. package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +582 -0
  333. package/lib/oh-story/skills/story-review/references/banned-words.md +147 -0
  334. package/lib/oh-story/skills/story-review/references/character-relations.md +385 -0
  335. package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +282 -0
  336. package/lib/oh-story/skills/story-review/references/plot-core-methods.md +522 -0
  337. package/lib/oh-story/skills/story-review/references/quality-checklist.md +250 -0
  338. package/lib/oh-story/skills/story-review/references/quality-rubric.md +55 -0
  339. package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +18 -0
  340. package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +19 -0
  341. package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +20 -0
  342. package/lib/oh-story/skills/story-review/references/tracking-transaction.md +161 -0
  343. package/lib/oh-story/skills/story-review/scripts/check-ai-patterns.js +1371 -0
  344. package/lib/oh-story/skills/story-review/scripts/check-degeneration.js +330 -0
  345. package/lib/oh-story/skills/story-review/scripts/normalize-punctuation.js +410 -0
  346. package/lib/oh-story/skills/story-review/scripts/tracking_commit.py +1139 -0
  347. package/lib/oh-story/skills/story-setup/SKILL.md +495 -0
  348. package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +582 -0
  349. package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +147 -0
  350. package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +445 -0
  351. package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +428 -0
  352. package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +385 -0
  353. package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +282 -0
  354. package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +426 -0
  355. package/lib/oh-story/skills/story-setup/references/agent-references/emotional-methods.md +179 -0
  356. package/lib/oh-story/skills/story-setup/references/agent-references/format-and-structure.md +169 -0
  357. package/lib/oh-story/skills/story-setup/references/agent-references/genre-catalog.md +480 -0
  358. package/lib/oh-story/skills/story-setup/references/agent-references/genre-core-mechanics.md +415 -0
  359. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +51 -0
  360. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +51 -0
  361. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +51 -0
  362. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +51 -0
  363. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
  364. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +51 -0
  365. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +51 -0
  366. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +51 -0
  367. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +51 -0
  368. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +51 -0
  369. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
  370. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
  371. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +51 -0
  372. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +51 -0
  373. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +51 -0
  374. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +51 -0
  375. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +51 -0
  376. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +51 -0
  377. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +51 -0
  378. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +53 -0
  379. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +51 -0
  380. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +51 -0
  381. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +51 -0
  382. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +51 -0
  383. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +51 -0
  384. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +53 -0
  385. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +51 -0
  386. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +53 -0
  387. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +51 -0
  388. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +53 -0
  389. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +53 -0
  390. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +51 -0
  391. package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards.md +91 -0
  392. package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +235 -0
  393. package/lib/oh-story/skills/story-setup/references/agent-references/genre-writing-formulas.md +444 -0
  394. package/lib/oh-story/skills/story-setup/references/agent-references/hooks-chapter.md +225 -0
  395. package/lib/oh-story/skills/story-setup/references/agent-references/hooks-suspense.md +352 -0
  396. package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +349 -0
  397. package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +457 -0
  398. package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +287 -0
  399. package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +389 -0
  400. package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +522 -0
  401. package/lib/oh-story/skills/story-setup/references/agent-references/quality-checklist.md +247 -0
  402. package/lib/oh-story/skills/story-setup/references/agent-references/reversal-toolkit.md +349 -0
  403. package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +409 -0
  404. package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +510 -0
  405. package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +421 -0
  406. package/lib/oh-story/skills/story-short-analyze/SKILL.md +278 -0
  407. package/lib/oh-story/skills/story-short-analyze/references/anti-ai-writing.md +582 -0
  408. package/lib/oh-story/skills/story-short-analyze/references/banned-words.md +147 -0
  409. package/lib/oh-story/skills/story-short-analyze/references/character-basics.md +453 -0
  410. package/lib/oh-story/skills/story-short-analyze/references/character-design-methods.md +438 -0
  411. package/lib/oh-story/skills/story-short-analyze/references/character-relations.md +395 -0
  412. package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +79 -0
  413. package/lib/oh-story/skills/story-short-analyze/references/genre-catalog.md +490 -0
  414. package/lib/oh-story/skills/story-short-analyze/references/genre-core-mechanics.md +425 -0
  415. package/lib/oh-story/skills/story-short-analyze/references/genre-readers.md +245 -0
  416. package/lib/oh-story/skills/story-short-analyze/references/genre-writing-formulas.md +453 -0
  417. package/lib/oh-story/skills/story-short-analyze/references/genre-writing-techniques.md +475 -0
  418. package/lib/oh-story/skills/story-short-analyze/references/hooks-chapter.md +225 -0
  419. package/lib/oh-story/skills/story-short-analyze/references/hooks-paragraph.md +146 -0
  420. package/lib/oh-story/skills/story-short-analyze/references/hooks-suspense.md +352 -0
  421. package/lib/oh-story/skills/story-short-analyze/references/material-decomposition.md +685 -0
  422. package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +165 -0
  423. package/lib/oh-story/skills/story-short-analyze/references/output-templates.md +561 -0
  424. package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +242 -0
  425. package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +90 -0
  426. package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +54 -0
  427. package/lib/oh-story/skills/story-short-scan/SKILL.md +212 -0
  428. package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +90 -0
  429. package/lib/oh-story/skills/story-short-write/SKILL.md +433 -0
  430. package/lib/oh-story/skills/story-short-write/references/banned-words.md +147 -0
  431. package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +62 -0
  432. package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +282 -0
  433. package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +179 -0
  434. package/lib/oh-story/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +159 -0
  435. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +156 -0
  436. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +163 -0
  437. package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +167 -0
  438. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +178 -0
  439. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +166 -0
  440. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +159 -0
  441. package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +151 -0
  442. package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +153 -0
  443. package/lib/oh-story/skills/story-short-write/references/genre-styles//350/277/275/345/246/273/347/201/253/350/221/254/345/234/272.md +210 -0
  444. package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +444 -0
  445. package/lib/oh-story/skills/story-short-write/references/genre-writing-techniques.md +488 -0
  446. package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +225 -0
  447. package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +146 -0
  448. package/lib/oh-story/skills/story-short-write/references/hooks-suspense.md +352 -0
  449. package/lib/oh-story/skills/story-short-write/references/output-contract.md +165 -0
  450. package/lib/oh-story/skills/story-short-write/references/quality-checklist.md +222 -0
  451. package/lib/oh-story/skills/story-short-write/references/reversal-toolkit.md +349 -0
  452. package/lib/oh-story/skills/story-short-write/references/short-craft.md +185 -0
  453. package/lib/oh-story/skills/story-short-write/references/short-deslop.md +133 -0
  454. package/lib/oh-story/skills/story-short-write/references/short-format.md +167 -0
  455. package/lib/oh-story/skills/story-short-write/references/submission-craft.md +35 -0
  456. package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +158 -0
  457. package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +153 -0
  458. package/lib/oh-story/skills/story-short-write/scripts/check-ai-patterns.js +1371 -0
  459. package/lib/oh-story/skills/story-short-write/scripts/check-degeneration.js +330 -0
  460. package/lib/oh-story/skills/story-short-write/scripts/check-outline-copy.js +241 -0
  461. package/lib/oh-story/skills/story-short-write/scripts/normalize-punctuation.js +410 -0
  462. package/lib/types/client/file-activity.d.ts +30 -0
  463. package/lib/types/client/file-activity.d.ts.map +1 -0
  464. package/lib/types/client/file-tree.d.ts +20 -0
  465. package/lib/types/client/file-tree.d.ts.map +1 -0
  466. package/lib/types/client/index.d.ts +12 -0
  467. package/lib/types/client/index.d.ts.map +1 -0
  468. package/lib/types/client/jsonl-preview.d.ts +15 -0
  469. package/lib/types/client/jsonl-preview.d.ts.map +1 -0
  470. package/lib/types/client/markdown-preview.d.ts +38 -0
  471. package/lib/types/client/markdown-preview.d.ts.map +1 -0
  472. package/lib/types/index.d.ts +25 -0
  473. package/lib/types/index.d.ts.map +1 -0
  474. package/lib/types/native-hooks.d.ts +16 -0
  475. package/lib/types/native-hooks.d.ts.map +1 -0
  476. package/lib/types/role-provider.d.ts +6 -0
  477. package/lib/types/role-provider.d.ts.map +1 -0
  478. package/lib/types/role-tool.d.ts +10 -0
  479. package/lib/types/role-tool.d.ts.map +1 -0
  480. package/lib/types/skill-provider.d.ts +15 -0
  481. package/lib/types/skill-provider.d.ts.map +1 -0
  482. package/lib/types/workspace-request-trust.d.ts +13 -0
  483. package/lib/types/workspace-request-trust.d.ts.map +1 -0
  484. package/lib/types/workspace-route.d.ts +10 -0
  485. package/lib/types/workspace-route.d.ts.map +1 -0
  486. package/lib/types/workspace-security.d.ts +9 -0
  487. package/lib/types/workspace-security.d.ts.map +1 -0
  488. package/package.json +107 -0
@@ -0,0 +1,488 @@
1
+ # 通用写作技法
2
+
3
+ > 跨题材通用写作时加载。先看决策路由选技法区域,再按操作执行。
4
+ > 题材公式见 genre-writing-formulas.md。
5
+
6
+ ---
7
+
8
+ ## 决策路由
9
+
10
+ | 你的写作场景是 | 用这些技法 | 见第 X 节 |
11
+ |---------------|-----------|----------|
12
+ | 设计核心梗/卖点 | 核心梗驱动法 + 升级感三步法 | 通用铁律 |
13
+ | 设计人设 | 三层标签反差法 + 人设拆解从缺点开始 | 通用铁律 / 底部 |
14
+ | 写开头 | 开头技法(7 种) | 通用铁律 |
15
+ | 写震惊/打脸场景 | 震惊场景九种写法 + 三翻四震 | 震惊场景 |
16
+ | 写比赛/对决 | 比赛场景写作前提 + 胜负设计 | 比赛场景 |
17
+ | 写感情线推进 | 感情线四阶段 + CP 行为八种类型 | 感情线 |
18
+ | 控制情绪节奏 | 情绪操控核心法则 + 信息差运用 | 情绪操控 |
19
+ | 排查毒点/闷点 | 毒点排查核心 + 情绪三层次 | 情绪操控 |
20
+ | 写女频相关 | 女频读者心理 + 沙雕风 | 女频技法 |
21
+ | 控制视角/人物 | 短篇视角控制法则 | 视角控制 |
22
+ | 写喜剧/flag | 喜剧 flag 机制 | 底部 |
23
+ | 排查是否像 AI | 短篇写作硬性规范 | 硬性规范 |
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
+ ### 事件驱动 vs 情感驱动
55
+
56
+ | 类型 | 驱动来源 | 读者关心 | 特点 |
57
+ |------|----------|----------|------|
58
+ | 事件驱动 | 外部冲突 | 能不能打赢? | 节奏快、爽点明确 |
59
+ | 情感驱动 | 内部冲突 | 为什么这么想? | 持续拉扯、人物悬念 |
60
+
61
+ 事件悬念是一次性的,人物悬念是持续性的。
62
+
63
+ ### 矛盾冲突抛出公式
64
+
65
+ 【反派人设】+【动机】+【行为】+【态度】+【主角受伤害程度】
66
+
67
+ 三种冲突类型:
68
+ 1. **利益掠夺型** — 反派需要资源,代价转给主角
69
+ 2. **祸害转移型** — 反派受罚,主角承受代价
70
+ 3. **针锋相对型**(矛盾最激烈)— 主角特质打破反派秩序
71
+
72
+ ### 叙事单元体系
73
+
74
+ | 情绪模块 | 核心 | 必备要素 | 爽点来源 |
75
+ |--------|------|----------|----------|
76
+ | 英雄救美 | 关系质变 | 危机→拯救→评价上升 | 被救者好感UP |
77
+ | 装逼 | 落差对比 | 展示能力→他人震惊 | 优越感 |
78
+ | 以小搏大 | 赌博赢利 | 小代价→搏的过程→大收获 | 占便宜心理 |
79
+ | 少年热血 | 明知不可为而为之 | 不公→善良人受苦→决心→成功 | 正义感 |
80
+ | 临危受命 | 超越众人 | 突发危机→众人无法→主角出手 | 孤胆英雄感 |
81
+ | 好人好报 | 善有善报 | 善举→暗示回报→兑现 | 因果报应 |
82
+
83
+ **核心原则**:同一情绪模块(如英雄救美)可重复用,但每次必须换场景/对象/代价。判断标准:连续两个爽点读者反应递减,就是磨损了,换触发点而非加大力度。
84
+
85
+ 组合规则:上升型可单独用;下行型后必须接上升型;组合效果>单独使用。
86
+
87
+ ### 升级感三步设计法
88
+
89
+ 1. **列出起点** — 主角当前身份、资源、处境
90
+ 2. **列出终点** — 场景结束后主角的收获
91
+ 3. **反向设置情绪缺口** — 针对终点收获,前文铺垫需求
92
+
93
+ | 获得什么 | 铺垫什么 |
94
+ |----------|----------|
95
+ | 关键证据 | 配角强调证据稀缺 |
96
+ | 地位提升 | 展示该地位的权力威势 |
97
+ | 人物帮助 | 展示该人物的价值 |
98
+ | 金手指觉醒 | 展示主角此前的无力 |
99
+
100
+ **多角度对比法**:伤害输出、社会地位、他人评价、自身感受——四维度体现升级前后差异。
101
+
102
+ ### 开头技法
103
+
104
+ | 技法 | 说明 | 范例 |
105
+ |------|------|------|
106
+ | 病中被逼 | 身体最脆弱时被逼最累的事 | "我刚做完脊椎手术...妈妈却攥着我的手腕:快点,祭祀要开始了。" |
107
+ | 异常物件 | 不该出现的物件引发全局 | "避孕套日期突然变了,连味道也变成了我过敏的芒果味。" |
108
+ | 旁观死亡 | 第一句灵魂飘起 | "我的魂魄慢慢飘起来,看着妈妈铁青的脸。" |
109
+ | 公开背叛 | 第一句被当众背刺 | "我亲手养大的妹妹,拿着百亿签字笔,越过了我。" |
110
+ | 假意顺从 | 重生后主动给出前世拼死保护的东西 | "你既然想要,就都给你吧。反正谁拿到谁就大祸临头。" |
111
+ | 死亡回溯 | 第一句交代死法和凶手 | "孕八月发现老公出轨,情绪崩溃导致早产。手术台上大出血。" |
112
+ | 冷发现 | 发现异常后冷笑而非哭闹 | "我笑着点头。当天就去月子中心记下预约单,转身给法务部写了封举报信。" |
113
+
114
+ ### 导语写法
115
+
116
+ 导语=短篇付费/过稿的第一道留人关(约 150-300 字)。三者别混:导语是**全篇引**,`hooks-paragraph` 是段钩,上面的开头技法是首句炸点。四要点:
117
+
118
+ 1. 信息密度拉满:只留身份 + 核心关系 + 核心矛盾 + 情绪落点,其余全删。
119
+ 2. 冲突前置:先给最炸的结果,再倒回去讲起因。
120
+ 3. 情绪可直给定调:导语以事件炸点为主,情绪可直接定调("我心如死灰""恨他入骨"),不要求藏;只避免空泛无处境的抒情堆砌。追妻类还可在结尾埋火葬场前瞻预告("可后来他后悔了")。
121
+ 4. 留缺口:只抛问题、给结果,不解答,逼读者往下翻。
122
+
123
+ 两个上手公式:
124
+
125
+ - 结果倒序式(追妻常用):先写最终走向,倒着排时序——"我把房产证还给他那天,他堵着门不让我走。可三年前我求他别签字时,他头都没回。"
126
+ - 悬念式(反转常用):反常行为 + 半句真相 + 故意不说完——"婆婆这半个月突然对我热络,每天变着花样炒菜。直到我整理她抽屉,翻到那份过户协议。"
127
+
128
+ ### 情绪操控高级技法
129
+
130
+ 1. **阶梯式背叛**:每一章揭露一个更大的背叛(道德→经济→生命)
131
+ 2. **冷热对比法**:主角越冷,对方越歇斯底里,反差越大越爽
132
+ 3. **双面人剥皮术**:先写表面好,再层层剥开真相(复制粘贴的关心模板)
133
+ 4. **前世记忆穿插法**:每章穿插一小段前世回忆,让读者理解"反常行为"
134
+ 5. **审判式对话**:主角永远在提问、永远在审判、永远居高临下
135
+
136
+ ### 结构创新技法
137
+
138
+ 1. **超短章节制**:每章500-1000字,每章一个小爆点,适合手机阅读
139
+ 2. **线索物贯穿法**:一个物件贯穿全文,承载情绪+剧情双重功能
140
+ 3. **时空对照法**:同一时间两个空间对比(哥哥被打vs渣男给小三挑飞机)
141
+ 4. **定时炸弹式证据**:主角生前设置的自动发送证据,关键时刻引爆
142
+
143
+ ### 回旋镖布局
144
+
145
+ 把"因果报应"落到写作上:写前期男主每件施害、每句狠话时,顺手在伏笔回查清单记一笔;后期逐条原样还回去——同场景、同台词、攻守对调。这是 `reversal-toolkit.md` 报应兑现型在写作端的做法,与伏笔回收合用;对得准比还得多更重要。
146
+
147
+ | 前期(埋) | 后期(还) |
148
+ |-----------|-----------|
149
+ | 女主做好饭等他到半夜,他一句"不回" | 他做好饭等女主,她连门都不让进 |
150
+ | 女主病危他说"自己处理" | 他病危住院,她只让助理送花圈 |
151
+ | 当众说女主是"家里的保姆" | 他想牵手被甩开,女主"这位不熟的先生" |
152
+
153
+ ### 结尾高级技法
154
+
155
+ 1. **重生暖心式**:投胎温暖家庭,温馨细节呼应前世缺失
156
+ 2. **余韵道具式**:用一个物件暗示未来,不说破
157
+ 3. **大长镜头式**:主角一步步走向大门,身后所有人震惊
158
+ 4. **反讽对位式**:用反派视角写最讽刺的结局——漠视比报复更有力
159
+
160
+ ### 对话密度与功能
161
+
162
+ | 平台 | 对话占比 | 功能分布 |
163
+ |------|----------|----------|
164
+ | 知乎盐言 | 50-60% | 情绪推动40%、信息揭露35%、人物塑造25% |
165
+
166
+ ### 核心金句模板
167
+
168
+ | 场景 | 金句 |
169
+ |------|------|
170
+ | 冷静审判 | "你的人情味不是用来原谅背叛和欺骗的。我的温情很贵,只给值得的人。" |
171
+ | 彻底决裂 | "血缘,原来并不可靠。" |
172
+ | 身份揭露 | "一派胡言!我沈家家主明明是简希。" |
173
+ | 旁观死亡 | "她不知道,我想要的,只是一句疼不疼。" |
174
+ | 最终漠视 | "那是他们的故事了,与我再无瓜葛。" |
175
+ | 讽刺审判 | "你三十三岁了,不是十三岁。一句被迷惑,就能把责任推干净?" |
176
+
177
+ ### 短篇写作硬性规范
178
+
179
+ | 规范 | 要求 | 违规示例 |
180
+ |------|------|----------|
181
+ | 开头100字内冲突 | 第一句就是信息炸弹 | "在一个阳光明媚的早晨..." |
182
+ | 对话占正文45-65% | 每个对话推进剧情或揭示性格 | 大段独白/旁白 |
183
+ | 每段不超过3句话 | 1句强调,2-3句正常,4句+拆分 | 超过4句的段落 |
184
+ | 情绪词后接具体动作 | 直写情绪成语,后面接一个场景里的具体动作或物件(见 short-craft 第2节),只删后面接不上具体东西的情绪总结句 | 《为给白月光出气,男友群发我私密照》我紧紧抿着嘴唇,直到尝到血腥味 |
185
+ | 每个场景两个功能 | 推进+揭示 / 铺垫+推高 / 呈现信息 | 单功能场景删除 |
186
+ | 结尾用动作/对话 | 不升华、不总结、不感慨 | "从此以后她明白了..." |
187
+ | 主角有标志性动作 | 复仇型端水杯;系统型吐槽面板 | 无辨识度 |
188
+ | 每章一个信息炸弹 | 改变读者认知的新信息 | 章尾无新信息 |
189
+
190
+ **结尾三种黄金模式**:A. 反派视角收尾;B. 开放式暗示;C. 仪式感收场。
191
+
192
+ **重生文核心**:第一件事做"前世绝不会做的事"。
193
+
194
+ **灵魂/鬼视角**:全知但无力改变——旁观者的残忍比直接参与更震撼。
195
+
196
+ ---
197
+
198
+ ## 情绪操控核心法则
199
+
200
+ 1. **情绪对等释放**:反派多恶劣,反击就多爽。投入多少负面情绪,释放时就有对应量级正面释放
201
+ 2. **情绪缺口制造**:先让读者渴望,再满足
202
+ 3. **该爽不爽比毒点还毒**:放底牌后反派必须受对应压制,金手指效果必须清清楚楚展示
203
+
204
+ ### 信息差运用法则
205
+ - 信息差是期待感的核心:读者知道但角色不知道
206
+ - 在信息差基础上,反派恰好被克制——期待叠加
207
+ - 信息差抹平时就是爽点爆发
208
+ - 传递信息差的重点是关系网角色前后情绪反转
209
+ - 震惊熟人比震惊陌生人更爽
210
+
211
+ ### 毒点排查核心
212
+ - 爽文不爽就是毒——金手指效果必须展示清楚
213
+ - 连续多次破坏读者期待引发信任危机
214
+ - 主角行为必须能理解、能共鸣、能接受
215
+ - 反派死亡太简单或与主角无关 = 完读率杀手
216
+ - 氛围感被突兀的梗破坏 = 除乐子文外都要避免
217
+
218
+ ---
219
+
220
+ ## 感情线写作法则
221
+
222
+ ### 爱情线阶段推进原则
223
+ - 推进 = 爱情阶段的推进(萍水相逢→怦然心动→暧昧→确认→深化)
224
+ - 好感度质变事件在细纲/章纲层面设计
225
+ - 日常文好感度:小事件串联缓慢增长,不要猛增大事件
226
+ - 开头前期不写太暧昧的内容,要符合当前阶段
227
+
228
+ ### 日常文/狗粮文核心
229
+ - 核心是男女主之间的**细节互动**
230
+ - 从人设入手构建关系进展
231
+ - 情绪变化 + 细节互动 = 读者想看的
232
+ - 新鲜舞台 + 稳定人设 + 重复亲密接触 = 有效循环
233
+
234
+ ### 好感度与事业线绑定法
235
+ - 帮助女主和事业线目标完全绑定,本质是同一件事
236
+ - 事业线推进自然带动好感度提升
237
+ - 主事业线的文:能忍受较长接触
238
+ - 主爱情线的文:尽快进入女主主动给予情绪价值的阶段
239
+
240
+ ---
241
+
242
+ ## 女频读者心理与写作技法
243
+
244
+ ### 读者心理特征
245
+
246
+ 1. **围观八卦视角为主**:重点在"围观八卦"产生共鸣,代入感居次
247
+ 2. **安全感需求极高**:文案/简介必须暗示成功或希望
248
+ 3. **主体性敏感**:女主缺乏主体性会提高吸引力和留存风险
249
+ 4. **情绪产品导向**:不论什么风格,本质都是情绪产品
250
+
251
+ ### 感情流"扮猪吃虎"写法
252
+ - 核心机制:通过能力反差打破强弱定位,制造性张力
253
+ - 扮猪理由必须合理——有明确动机
254
+ - 能力揭露时机精准——对方最需要保护时反转
255
+ - 反差越大越有张力
256
+ - 隐藏身份线索提前埋,不能突然冒出
257
+
258
+ ### 沙雕风写作(女频修真/古言)
259
+ - 人物互动、反应、玩梗是主要看点
260
+ - 轻松表面下主线可能严谨甚至带刀
261
+ - 角色被"调侃"不硬刚而是宠着让着→"团宠"
262
+ - 主角"不正经"但实力在线,反差是魅力
263
+ - 轻度沙雕也可火;对话造梗是核心技能
264
+
265
+ ### 女频平台写法定位
266
+
267
+ | 平台 | 定位 | 写作校准 |
268
+ |------|------|------|
269
+ | 晋江 | 高质量女频 | 文案安全感、主体性、人物细节要求高 |
270
+ | 起点女频 | 长线稳定型 | 慎用于强商业短篇,需验证目标读者 |
271
+ | 番茄 | 下沉吸量型 | 强钩子、强情绪、快反馈 |
272
+ | 七猫 | 强情绪女频 | 甜虐交替、极限推拉、沙雕/玄幻可用 |
273
+
274
+ ### 简介文案安全法则
275
+ - 缺少女主成功剧情→读者缺乏安全感→吸引力和留存风险升高
276
+ - 悬疑型文案叠加过多→读者理解不了
277
+ - 文案和文名货不对板→劝退
278
+ - 女主被虐过重→整体偏虐→吸引力和留存风险升高
279
+ - 事业线突出的文→文案必须体现事业成功暗示
280
+
281
+ ### 写作关键认知
282
+ - 参考优先级:对标书分析 > 理论框架
283
+ - 对标书至少三本才能总结核心特点
284
+ - 读者反馈分析:从目标平台最新读者评论或 scan/analyze 报告中提取高频需求关键词,作为写作校准依据
285
+ - 越远的剧情越模糊(粗纲),越近的越清晰(细纲)
286
+ - 文风服务于情绪,关键是精准满足目标读者情感需求
287
+
288
+ ---
289
+
290
+ ## 震惊场景九种写法
291
+
292
+ | 类型 | 手法 | 示例 |
293
+ |------|------|------|
294
+ | 普通震惊 | 事件+一人震惊 | 配角目睹主角实力直接反应 |
295
+ | 多人递进 | A震惊→B震惊(B身份高于A) | 小人物先惊,大佬更惊 |
296
+ | 解说式 | 旁白解说+角色震惊 | 先渲染一击精妙,再写观者反应 |
297
+ | 画面式 | 宏大画面+角色震惊 | 天地变色特效后接观者跪拜 |
298
+ | 对比式 | 角色与自身对比后震惊 | "这还是刚才那头魔猿?" |
299
+ | 问号式 | 自问自答后震惊 | "我扪心自问能做到吗?不可能!" |
300
+ | 变换地点 | 地点1→2→3依次震惊 | 消息扩散式多方势力被震撼 |
301
+ | 身心分层 | 身体反应+心理反应 | "浑身冰寒"+"心神俱震"分层 |
302
+ | 人设反差 | 先不屑后震惊 | "不过如此"→"我一定是在做梦" |
303
+
304
+ **核心**:震惊的爽感来自"落差"——先铺垫角色原有认知(轻蔑/自信),再打破它。
305
+
306
+ ### 三翻四震技法
307
+
308
+ ```
309
+ 翻1:主角宣布选择→众人反应
310
+ 翻2:具体选择内容(出人意料)→众人再反应
311
+ 翻3:追问原因/更深反转→更大反应
312
+ 震终:权威角色最高评价→落选者黯然退场(压一压情绪)
313
+ ```
314
+
315
+ 每一"翻"要比前一"翻"震惊层级更高,每次反转必须有新信息量。
316
+
317
+ ---
318
+
319
+ ## 比赛场景写作前提
320
+
321
+ 写比赛/对决前,必须向读者披露:
322
+
323
+ 1. **赌注/代价**:输赢的得失
324
+ 2. **双方实力对比**:至少暗示优劣势
325
+ 3. **主角获胜路径**:至少能看到一条可能的路径
326
+ 4. **对手特殊性**:这一战为什么值得写
327
+
328
+ ### 胜负设计
329
+
330
+ | 模式 | 难度 | 效果 | 要点 |
331
+ |------|------|------|------|
332
+ | 以强击弱 | 低 | 性价比最高 | 信息差制造落差,搭配装逼 |
333
+ | 势均力敌 | 中 | 紧张感强 | 一个中故事只写一次,用在大高潮 |
334
+ | 以弱胜强 | 高 | 爽感最强但风险大 | 必须有合理解释,不能降智 |
335
+
336
+ ---
337
+
338
+ ## 感情线四阶段推进法
339
+
340
+ ```
341
+ 熟悉阶段→试探阶段→暧昧阶段→确认关系
342
+ ```
343
+
344
+ | 阶段 | 状态 | 核心写法 | 禁忌 |
345
+ |------|------|----------|------|
346
+ | 熟悉 | 朋友/陌生人 | 展示人设,制造初印象 | 不能做恋人行为 |
347
+ | 试探 | 有好感不确定 | 试探行为,误会和甜蜜 | 不能直接表白 |
348
+ | 暧昧 | 朋友以上恋人以下 | 偶尔做恋人事,脸红心跳 | 女频此阶段必须拉长 |
349
+ | 确认 | 正式情侣 | 撒狗粮+最大阻力事件 | 不能再退回试探 |
350
+
351
+ **铁律**:必须什么阶段干什么事。跨越阶段做事只会显得油腻。
352
+
353
+ ### CP行为八种类型(好感度达标才出现)
354
+
355
+ | 行为类型 | 适用好感度 |
356
+ |----------|-----------|
357
+ | 亲密行为(肢体接触+) | 高好感 |
358
+ | 主权行为(争风吃醋、宣示主权) | 中高好感 |
359
+ | 信赖行为(无条件信任、分享秘密) | 中好感+ |
360
+ | 护短行为(对方犯错也优先维护) | 中好感+ |
361
+ | 特殊待遇(对待对方与别人完全不同) | 中好感 |
362
+ | 安抚行为(敏锐察觉不好情绪并安抚) | 中好感+ |
363
+ | 优先特权(做决定时对方是最重要因素) | 中高好感 |
364
+ | 默契行为(不约而同做同一件事) | 高好感 |
365
+
366
+ 好感度必须通过剧情积累,不能凭空跳级。
367
+
368
+ ---
369
+
370
+ ## 喜剧 flag 机制
371
+
372
+ | 角色 | flag 规则 |
373
+ |------|-----------|
374
+ | 主角 | 不收 flag,或搞笑地收(不搞笑就变毒点) |
375
+ | 反派 | 必收 flag(说了大话必须被打脸) |
376
+ | 其他 | 一般收 flag |
377
+
378
+ 反派的 flag 是爽点预告;主角的 flag 是喜剧张力——"我绝不会..."紧跟被打脸才好笑。
379
+
380
+ ---
381
+
382
+ ## 短篇视角控制法则
383
+
384
+ ### 出场人物控制
385
+ - 开篇主要人物一对一或一对二,场景用"小"不用"大"
386
+ - 一对多时按重要程度降低配角存在感
387
+ - 切忌一拥而上出场
388
+ - 配角目光和心理描写集中于主角身上
389
+
390
+ ### 视角数量控制
391
+ - 默认第一人称受害者亲历全程主导(番茄/七猫/黑岩短篇绝大多数如此);他人视角(渣男/白月光/反派)仅作追悔/得意的补刀短插,不平分篇幅
392
+ - 多视角悬疑等例外:至多 2-3 个视角,不超过3个
393
+ - 超过3个且各写各的无联系,大概率掉追读
394
+ - 敌人视角:让读者更清楚就写,让读者更多猜测就不写
395
+ - 敌人视角一般只写一个,占三个名额之一
396
+
397
+ ---
398
+
399
+ ## 情绪的三个层次与共鸣触发
400
+
401
+ ### 情绪的三层分离
402
+
403
+ | 层次 | 说明 |
404
+ |------|------|
405
+ | 角色情绪 | 角色自己感受到的 |
406
+ | 文本传递情绪 | 文本要传达给读者的 |
407
+ | 读者感受情绪 | 读者实际感受到的 |
408
+
409
+ 三者不能混为一谈。同一场景可以角色在哭、文本在撩、读者在爽。
410
+
411
+ ### 情绪锚点
412
+
413
+ **定义**:能引起读者内心共鸣的具体桥段。情绪通过锚点"触碰"读者内心,不能靠直接描写堆出来。
414
+
415
+ **特征**:发生在现实世界、大众经常经历或感受的;不需要细致描写,几个关键细节就够。
416
+
417
+ **示例**:
418
+
419
+ | 传递情绪 | 差的写法 | 好的锚点 |
420
+ |----------|----------|----------|
421
+ | 母爱伟大 | 母亲天天煮饭搞家务 | 母亲偷偷给每个同学鞠躬拜托善待失明的孩子 |
422
+ | 生存很难 | 主角挖草根吃树皮 | 众人争相压低价格,主角直接举手"我不要钱,只要一顿饭" |
423
+ | 师生情深 | 老师认真上课 | 老师把唯一棉袄给学生,自己穿单衣在雪地里走 |
424
+
425
+ ### 好钢用在刀刃上
426
+ 1. 先构思大剧情(最大矛盾→中→小)
427
+ 2. 在大剧情高潮处放置最精彩的锚点
428
+ 3. 其他部分可以稍平淡
429
+ 4. 情绪铺垫过程 = 剧情推进过程
430
+
431
+ **设计路径**:矛盾→情绪要求→人物/背景/设定→具体桥段
432
+
433
+ ---
434
+
435
+ ## 反派嘲讽新思路
436
+
437
+ | 类型 | 传统做法 | 新思路 |
438
+ |------|----------|--------|
439
+ | 目的 | 戳主角痛点,引发不爽 | 显露反派无知,引发看乐子 |
440
+ | 读者反应 | 替主角委屈 | 看笑话等反转 |
441
+ | 主角回应 | 绞尽脑汁想反击 | 放松、不在意即可 |
442
+
443
+ **操作**:确定主角优势,让反派极尽嘲讽主角的优势点。反派越嘲讽,读者越知道反派无知。
444
+ **保留戳痛点**:对象换为主角的亲朋好友——让反派攻击他们的弱点引发读者愤怒。
445
+
446
+ ---
447
+
448
+ ## 人设拆解从缺点开始
449
+
450
+ - 正面人物 = 优点掩盖了缺点
451
+ - 负面人物 = 缺点掩盖了优点
452
+ - 关键要素:角色有什么「不平之气」——必须能引起共鸣
453
+
454
+ **人设丰富法**:以杀伐果断为例——正向=干净利落;反向=没人情味。强化或弱化"人情味"区分主角/配角。角色有血有肉 = 优缺点共存。
455
+
456
+ ---
457
+
458
+ ## 以小搏大情绪模块四要素
459
+
460
+ 1. **主角独有手段**:为什么能以小搏大
461
+ 2. **搏的过程**:关键在过程不在结果
462
+ 3. **赚翻了的感觉**:收获远超预期
463
+ 4. **明确的搏的目标**:主角必须清楚自己要什么
464
+
465
+ ---
466
+
467
+ ## 爽点本质
468
+
469
+ **爽点本质** = 改变人际关系
470
+
471
+ 打脸的爽不在赢,在关系翻转——婆婆从颐指气使变成求你别走、渣男从甩你变成堵门挽留。设计爽点先问:这一下改变了谁对主角的态度?
472
+
473
+ ---
474
+
475
+ ## 质量检查
476
+
477
+ 写作时对照:
478
+
479
+ - [ ] 开头 100 字内有信息炸弹(不是风景/天气)?
480
+ - [ ] 每个场景至少两个功能(推进+揭示 / 铺垫+推高)?
481
+ - [ ] 情绪是否通过锚点触碰读者内心,而非直接描写出来?
482
+ - [ ] 震惊场景有落差铺垫(先建立角色原有认知再打破)?
483
+ - [ ] 感情线推进没跳阶段(熟悉→试探→暧昧→确认)?
484
+ - [ ] 反派 flag 必收、主角 flag 不收或搞笑收?
485
+ - [ ] 视角控制在 2-3 个(不超过 3)?
486
+ - [ ] 对话占正文 45-65%,每句对话推剧情或揭示性格?
487
+ - [ ] 结尾用动作/对话收(不升华、不总结、不感慨)?
488
+ - [ ] 没有"该爽不爽"的段落(金手指效果展示清楚)?