@oh-story/dsh 0.1.9 → 0.1.10

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 (197) hide show
  1. package/README.md +12 -12
  2. package/lib/client.js +204 -72
  3. package/lib/client.js.map +3 -3
  4. package/lib/drama/manifest.json +84 -74
  5. package/lib/drama/skills/short-drama/SKILL.md +2 -2
  6. package/lib/drama/skills/short-drama/scripts/creator_markdown_check.py +14 -0
  7. package/lib/drama/skills/short-drama-assets/references/character-and-look.md +10 -0
  8. package/lib/drama/skills/short-drama-assets/references/continuity-lock.md +6 -9
  9. package/lib/drama/skills/short-drama-assets/references/voice-direction.md +28 -0
  10. package/lib/drama/skills/short-drama-edit/SKILL.md +27 -29
  11. package/lib/drama/skills/short-drama-edit/assets//345/211/252/350/276/221/345/215/225.md +2 -2
  12. package/lib/drama/skills/short-drama-edit/references/cut-craft.md +24 -67
  13. package/lib/drama/skills/short-drama-edit/references/delivery-verify.md +27 -56
  14. package/lib/drama/skills/short-drama-edit/references/generated-footage.md +37 -79
  15. package/lib/drama/skills/short-drama-edit/references/sound-and-subtitles.md +39 -92
  16. package/lib/drama/skills/short-drama-edit/references/stage-contract.md +12 -16
  17. package/lib/drama/skills/short-drama-edit/scripts/edit_tool.py +126 -11
  18. package/lib/drama/skills/short-drama-edit/scripts/selftest.py +64 -0
  19. package/lib/drama/skills/short-drama-image-prompts/SKILL.md +2 -0
  20. package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +11 -0
  21. package/lib/drama/skills/short-drama-produce/SKILL.md +5 -1
  22. package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +14 -20
  23. package/lib/drama/skills/short-drama-produce/references/providers/minimax-h3-video.md +8 -26
  24. package/lib/drama/skills/short-drama-produce/references/providers/minimax-speech.md +41 -0
  25. package/lib/drama/skills/short-drama-produce/scripts/provider_adapters.py +142 -1
  26. package/lib/drama/skills/short-drama-review/SKILL.md +2 -3
  27. package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +6 -19
  28. package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +9 -35
  29. package/lib/drama/skills/short-drama-storyboard/SKILL.md +10 -6
  30. package/lib/drama/skills/short-drama-storyboard/references/lighting-craft.md +39 -0
  31. package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +58 -21
  32. package/lib/drama/skills/short-drama-storyboard/references/stage-contract.md +1 -1
  33. package/lib/drama/skills/short-drama-video-prompts/SKILL.md +10 -9
  34. package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +17 -0
  35. package/lib/drama/skills/short-drama-video-prompts/references/minimax-h3.md +12 -38
  36. package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +4 -7
  37. package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +8 -22
  38. package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +6 -19
  39. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.0.md +2 -3
  40. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.5.md +34 -9
  41. package/lib/drama/skills/short-drama-video-prompts/references/stage-contract.md +2 -2
  42. package/lib/drama/skills/short-drama-write/SKILL.md +2 -4
  43. package/lib/index.js +289 -91
  44. package/lib/index.js.map +4 -4
  45. package/lib/novel-to-game/README.md +299 -59
  46. package/lib/novel-to-game/README_ZH.md +299 -56
  47. package/lib/novel-to-game/VERSION +1 -1
  48. package/lib/novel-to-game/examples/jin-ping-mei/build/BUILD_BRIEF.md +3 -1
  49. package/lib/novel-to-game/examples/jin-ping-mei/build/app/RUN.md +11 -3
  50. package/lib/novel-to-game/examples/jin-ping-mei/build/app/css/new-guofeng.css +397 -8
  51. package/lib/novel-to-game/examples/jin-ping-mei/build/app/css/style.css +0 -31
  52. package/lib/novel-to-game/examples/jin-ping-mei/build/app/js/data.js +71 -73
  53. package/lib/novel-to-game/examples/jin-ping-mei/build/app/js/engine.js +78 -89
  54. package/lib/novel-to-game/examples/jin-ping-mei/build/app/js/main.js +37 -14
  55. package/lib/novel-to-game/examples/jin-ping-mei/build/app/js/text.js +5 -5
  56. package/lib/novel-to-game/examples/jin-ping-mei/build/app/package.json +2 -1
  57. package/lib/novel-to-game/examples/jin-ping-mei/qa/README.md +11 -16
  58. package/lib/novel-to-game/examples/jin-ping-mei/qa/verification.json +11 -11
  59. package/lib/novel-to-game/examples/jin-ping-mei/qa/verify_playable_model.mjs +23 -0
  60. package/lib/novel-to-game/manifest.json +77 -87
  61. package/lib/novel-to-game/skills/game-art-direction/SKILL.md +7 -12
  62. package/lib/novel-to-game/skills/game-art-direction/references/art-direction-method.md +27 -106
  63. package/lib/novel-to-game/skills/game-build/SKILL.md +13 -14
  64. package/lib/novel-to-game/skills/game-build/references/blender-asset-workflow.md +24 -0
  65. package/lib/novel-to-game/skills/game-build/references/build-brief-contract.md +45 -82
  66. package/lib/novel-to-game/skills/game-build/references/generative-media-pipeline.md +14 -45
  67. package/lib/novel-to-game/skills/game-build/references/playable-model-contract.md +30 -65
  68. package/lib/novel-to-game/skills/game-build/references/tts-production-contract.md +13 -27
  69. package/lib/novel-to-game/skills/game-concept/SKILL.md +13 -15
  70. package/lib/novel-to-game/skills/game-concept/references/concept-method.md +28 -75
  71. package/lib/novel-to-game/skills/game-qa/SKILL.md +6 -7
  72. package/lib/novel-to-game/skills/game-qa/references/test-design-method.md +9 -5
  73. package/lib/novel-to-game/skills/game-world-design/SKILL.md +12 -16
  74. package/lib/novel-to-game/skills/game-world-design/references/narrative-design-method.md +23 -72
  75. package/lib/novel-to-game/skills/game-world-design/references/numeric-design-method.md +14 -48
  76. package/lib/novel-to-game/skills/game-world-design/references/world-design-method.md +36 -103
  77. package/lib/novel-to-game/skills/novel-game-analyze/SKILL.md +4 -10
  78. package/lib/novel-to-game/skills/novel-game-analyze/references/gameability-protocol.md +4 -4
  79. package/lib/novel-to-game/skills/novel-to-game/SKILL.md +9 -21
  80. package/lib/novel-to-game/skills/novel-to-game/references/intake-method.md +5 -4
  81. package/lib/novel-to-game/skills/novel-to-game/references/pipeline-contract.md +5 -8
  82. package/lib/oh-story/manifest.json +230 -185
  83. package/lib/oh-story/roles/chapter-extractor.md +177 -237
  84. package/lib/oh-story/roles/consistency-checker.md +4 -4
  85. package/lib/oh-story/roles/narrative-writer.md +24 -25
  86. package/lib/oh-story/roles/story-architect.md +5 -5
  87. package/lib/oh-story/roles/story-explorer.md +11 -11
  88. package/lib/oh-story/skills/story/SKILL.md +13 -7
  89. package/lib/oh-story/skills/story/VERSION +1 -1
  90. package/lib/oh-story/skills/story/references/author-memory.md +54 -24
  91. package/lib/oh-story/skills/story/scripts/author_memory_commit.py +934 -170
  92. package/lib/oh-story/skills/story-cover/SKILL.md +10 -1
  93. package/lib/oh-story/skills/story-deslop/SKILL.md +40 -53
  94. package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +11 -10
  95. package/lib/oh-story/skills/story-deslop/references/author-memory.md +54 -24
  96. package/lib/oh-story/skills/story-deslop/references/deslop-gates.md +1 -1
  97. package/lib/oh-story/skills/story-deslop/scripts/author_memory_commit.py +934 -170
  98. package/lib/oh-story/skills/story-import/SKILL.md +77 -81
  99. package/lib/oh-story/skills/story-import/references/character-state-reverse.md +1 -1
  100. package/lib/oh-story/skills/story-import/references/state-tracking.md +4 -69
  101. package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +10 -8
  102. package/lib/oh-story/skills/story-import/references/tracking-transaction.md +8 -6
  103. package/lib/oh-story/skills/story-import/scripts/check-outline-contract.js +34 -16
  104. package/lib/oh-story/skills/story-import/scripts/tracking_commit.py +210 -2
  105. package/lib/oh-story/skills/story-import/scripts/wordcount_core.py +3 -0
  106. package/lib/oh-story/skills/story-long-analyze/SKILL.md +91 -258
  107. package/lib/oh-story/skills/story-long-analyze/references/author-facing.md +245 -0
  108. package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +2 -2
  109. package/lib/oh-story/skills/story-long-analyze/references/inspiration-library.md +105 -0
  110. package/lib/oh-story/skills/story-long-analyze/references/material-decomposition.md +113 -105
  111. package/lib/oh-story/skills/story-long-analyze/references/output-templates.md +169 -125
  112. package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +172 -64
  113. package/lib/oh-story/skills/story-long-analyze/references/semantic-acceptance-fixtures.md +84 -0
  114. package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +42 -132
  115. package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +5 -5
  116. package/lib/oh-story/skills/story-long-analyze/scripts/build_chapter_index.py +466 -0
  117. package/lib/oh-story/skills/story-long-analyze/scripts/inspect_existing_assets.py +702 -0
  118. package/lib/oh-story/skills/story-long-analyze/scripts/inspiration_index.py +864 -0
  119. package/lib/oh-story/skills/story-long-analyze/scripts/manage_analysis_run.py +1106 -0
  120. package/lib/oh-story/skills/story-long-analyze/scripts/render_relation_chart.py +425 -0
  121. package/lib/oh-story/skills/story-long-scan/SKILL.md +4 -1
  122. package/lib/oh-story/skills/story-long-write/SKILL.md +38 -29
  123. package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +11 -10
  124. package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +25 -20
  125. package/lib/oh-story/skills/story-long-write/references/author-memory.md +54 -24
  126. package/lib/oh-story/skills/story-long-write/references/benchmark-recall.md +3 -3
  127. package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +26 -0
  128. package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +4 -0
  129. package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +2 -2
  130. package/lib/oh-story/skills/story-long-write/references/long-chapter-quality.md +4 -13
  131. package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +1 -1
  132. package/lib/oh-story/skills/story-long-write/references/project-files.md +9 -7
  133. package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +12 -4
  134. package/lib/oh-story/skills/story-long-write/references/reference-index.md +1 -2
  135. package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +8 -6
  136. package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +86 -115
  137. package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +55 -120
  138. package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +15 -11
  139. package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +66 -68
  140. package/lib/oh-story/skills/story-long-write/references/writer-prompt-fallback.md +3 -3
  141. package/lib/oh-story/skills/story-long-write/references/writing-craft.md +4 -12
  142. package/lib/oh-story/skills/story-long-write/scripts/author_memory_commit.py +934 -170
  143. package/lib/oh-story/skills/story-long-write/scripts/build_writer_prompt.py +139 -18
  144. package/lib/oh-story/skills/story-long-write/scripts/check-outline-contract.js +34 -16
  145. package/lib/oh-story/skills/story-long-write/scripts/outline_view.py +5 -3
  146. package/lib/oh-story/skills/story-long-write/scripts/storyctl.py +58 -0
  147. package/lib/oh-story/skills/story-long-write/scripts/tracking_commit.py +210 -2
  148. package/lib/oh-story/skills/story-long-write/scripts/wordcount_core.py +3 -0
  149. package/lib/oh-story/skills/story-review/SKILL.md +68 -85
  150. package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +11 -10
  151. package/lib/oh-story/skills/story-review/references/author-memory.md +54 -24
  152. package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +4 -0
  153. package/lib/oh-story/skills/story-review/references/review-quality.md +4 -10
  154. package/lib/oh-story/skills/story-review/references/tracking-transaction.md +8 -6
  155. package/lib/oh-story/skills/story-review/scripts/author_memory_commit.py +934 -170
  156. package/lib/oh-story/skills/story-review/scripts/tracking_commit.py +210 -2
  157. package/lib/oh-story/skills/story-review/scripts/wordcount_core.py +3 -0
  158. package/lib/oh-story/skills/story-setup/SKILL.md +50 -42
  159. package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +11 -10
  160. package/lib/oh-story/skills/story-setup/references/agent-references/deslop-gates.md +1 -1
  161. package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +4 -0
  162. package/lib/oh-story/skills/story-setup/references/agent-references/long-emotional-methods.md +2 -2
  163. package/lib/oh-story/skills/story-setup/references/agent-references/long-quality.md +1 -1
  164. package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +4 -12
  165. package/lib/oh-story/skills/story-setup/references/diagnostics.md +1 -1
  166. package/lib/oh-story/skills/story-short-analyze/SKILL.md +22 -3
  167. package/lib/oh-story/skills/story-short-analyze/references/material-decomposition.md +5 -1
  168. package/lib/oh-story/skills/story-short-scan/SKILL.md +5 -1
  169. package/lib/oh-story/skills/story-short-write/SKILL.md +6 -147
  170. package/lib/oh-story/skills/story-short-write/references/author-memory.md +54 -24
  171. package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +4 -0
  172. package/lib/oh-story/skills/story-short-write/references/reference-index.md +2 -0
  173. package/lib/oh-story/skills/story-short-write/references/workflow-design.md +3 -2
  174. package/lib/oh-story/skills/story-short-write/references/workflow-draft.md +126 -0
  175. package/lib/oh-story/skills/story-short-write/references/workflow-revision.md +32 -0
  176. package/lib/oh-story/skills/story-short-write/scripts/author_memory_commit.py +934 -170
  177. package/lib/types/client/drama-production-view.d.ts.map +1 -1
  178. package/lib/types/client/file-activity.d.ts +19 -1
  179. package/lib/types/client/file-activity.d.ts.map +1 -1
  180. package/lib/types/client/index.d.ts.map +1 -1
  181. package/lib/types/client/production-prompts.d.ts +7 -0
  182. package/lib/types/client/production-prompts.d.ts.map +1 -1
  183. package/lib/types/client/production-runtime.d.ts +16 -0
  184. package/lib/types/client/production-runtime.d.ts.map +1 -1
  185. package/lib/types/drama-adapters.d.ts +5 -3
  186. package/lib/types/drama-adapters.d.ts.map +1 -1
  187. package/lib/types/native-hooks.d.ts +52 -0
  188. package/lib/types/native-hooks.d.ts.map +1 -1
  189. package/lib/types/role-identity.d.ts +17 -0
  190. package/lib/types/role-identity.d.ts.map +1 -0
  191. package/lib/types/role-tool.d.ts.map +1 -1
  192. package/lib/types/skill-provider.d.ts.map +1 -1
  193. package/package.json +45 -45
  194. package/lib/novel-to-game/skills/game-world-design/references/dialogue-design-method.md +0 -58
  195. package/lib/novel-to-game/skills/game-world-design/references/game-writing-craft.md +0 -53
  196. package/lib/novel-to-game/skills/novel-to-game/references/intake-benchmark-reference.md +0 -38
  197. package/lib/oh-story/skills/story-long-write/references/state-tracking.md +0 -108
@@ -1,10 +1,6 @@
1
1
  # workflow-setup.md:开书工作流(Phase 1-3)
2
2
 
3
- 本文件为"开书/建设定/搭大纲"场景的完整指引,从 SKILL.md 的 Phase 1-3 抽出。
4
- SKILL.md 只保留场景路由与停靠规则;进入任一 Phase 前读本文件对应小节,按其中步骤执行。
5
-
6
- > 这三个 Phase 每本书只跑一次(开新卷时回 Phase 2/3 增量补充)。日更续写与单章写作不需要本文件,
7
- > 走 SKILL.md 的 Phase 4 与 `workflow-daily.md`。
3
+ 本文件用于规划/开书/补纲。先按 SKILL.md「写作流程」确定交付范围;完整读取不等于执行所有 Phase。只讨论时取所需技法,不执行建档步骤;其余按范围补必要前置,不重做已有设定。
8
4
 
9
5
  ---
10
6
 
@@ -33,9 +29,9 @@ SKILL.md 只保留场景路由与停靠规则;进入任一 Phase 前读本文
33
29
  如果用户提到对标书或工作目录下已存在 `对标/` 目录:
34
30
 
35
31
  1. 先按上方「对标发现」第 1 条的同一口径识别当前作品,排除同名或来源指向当前正文的 `对标/{当前书}/`——老导入项目里可能留着历史误建的自对标目录。排除后没有外部对标书时不进入下面几步,按无对标继续。
36
- 2. 按对标书路径查找规则检查 `剧情/情绪模块.md` 与 `剧情/节奏.md`。
37
- 3. 任一主产物缺失时必须停止,设置 `missing_primary_contract: true`,并给出 `repair_action`:重跑 `/story-long-analyze` Stage 3+ 或重新 `/story-import`;不得以 `拆文报告.md`、章节摘要或故事线代替。
38
- 4. 两个主产物都存在时,先读 `剧情/情绪模块.md` 的读者需求 / 情绪引擎与可复现模块,再读 `剧情/节奏.md` 的关键信息推进、情绪触动点和爆发节奏;`拆文报告.md` 只用作人类可读概览。
32
+ 2. 按 [project-files.md](project-files.md) 的缺失处理识别资料代际,再检查 `剧情/情绪模块.md` 与 `剧情/节奏.md`。
33
+ 3. `剧情/情绪模块.md` 或 `剧情/节奏.md` 缺失时停止并返回 `missing_primary_contract` + `repair_action`,对作者只说「对标书《X》还缺情绪/节奏分析,建议先用 /story-long-analyze 补拆一次」;不得以摘要或报告伪造。两份老权威产物都存在时正常召回,新增字段缺失不阻断。
34
+ 4. 两个主产物都存在时按权威顺序读取;`拆文报告.md` 只作概览。
39
35
  5. 如果角色、普通剧情单元或设定子目录存在,写作时按需召回相关模块。
40
36
 
41
37
  根据回答做匹配:
@@ -48,13 +44,13 @@ SKILL.md 只保留场景路由与停靠规则;进入任一 Phase 前读本文
48
44
 
49
45
  story-architect 属于高层级结构设计 agent。轻量题材定位优先由主会话完成;只有涉及复杂世界观、多线结构、强反转工程或用户明确要求时,才调用 story-architect。确认选题方向后,如果项目已部署 story-architect agent(检查 `.claude/agents/story-architect.md` 是否存在),可 spawn `Agent(subagent_type: "story-architect", prompt: "项目目录:{dir}\n任务类型:题材定位\n查询参数:{用户选择的方向+对标信息}")` 辅助题材分析和核心梗设计。如 agent 不可用,由主线程直接执行。
50
46
 
47
+ > **公共灵感召回(可选)**:有 `灵感库/` 时按 `references/cross-book-recall.md`「公共灵感标签召回」以「适用阶段=设定」查 Top 8 active CBA,辅助核心梗与金手指选型;零命中不阻塞。
48
+
51
49
  > **story-architect 契约摘要(spawn 时必须原样附带)**:部署的 story-architect agent 不认识本 skill 的 `references/reader-contract-and-progression.md`,只能靠 spawn prompt 里带的这段摘要对齐 schema,否则主线程和委托产出会用不同的推进规则。摘要内容:
52
50
  > - **终局储备边界**:终局底牌(头号宿敌/终极真相/金手指上限/身份终点/核心情感终点)是一次性资源,逐卷解锁,不得提前打光;升级台阶(境界/等级/地图/势力层级)按剩余档数逐级解锁,不得越级。
53
- > - **透支两问**(任一为"是"即需回退或改纲):①是否动用了本阶段还不该解锁的终局底牌?②是否让某条升级线逼近天花板、后面没台阶接?
54
51
  > - **剧情单元**:卷纲内写剧情单元卡,含单元ID、主推线(1条)+ 战果线(若干,一战多得允许)、章级推进下限(快节奏保留可见事件/爽点下限)。
55
52
  > - **细纲层字段**:每章细纲必须带 单元ID/位置、主角目标/关键选择;「行动成本(可无)/收益归属」替代旧字段「代价兑现」——行动成本可无,不硬造代价,收益归属必须可见。
56
- > - **读者契约与主角代理权**:主角不可替代看因果权(决策/布局/授权/关键信息决定事情如何发生转向)+ 结算权(核心收益/认可按承诺回到应得者),不要求主角事事亲自动手;配角可执行局部动作,但不得无声夺走已承诺的高光/收益。
57
- > - **关键节点四问**(设计关键节点时统一问):①谁决定事情为什么发生/如何进入?②谁作出不可替代的关键选择?③谁承担或选择关键后果?④核心收益/认可/权力最终结算给谁?
53
+ > - **契约四问**:①主角是不是靠自己的选择挣到结果(不要求事事亲自动手,但决定事情为什么发生、作出关键选择、拿到收益的是主角或本卷已承诺的所有者)?②核心收益或高光有没有被配角、机构或巧合无交换地拿走?③有没有动用本阶段不该解锁的终局底牌、或把升级线顶到天花板?④旧期待付了利息没,又留下什么期待?四问都过=契约安全,能补=需补强,补不上=契约破坏。
58
54
  > - 完整规则以主会话已加载的 `references/reader-contract-and-progression.md` 为准,此处只是给 story-architect 的压缩版;agent 本身不部署该文件,不能自己读取。
59
55
 
60
56
  ---
@@ -100,7 +96,7 @@ story-architect 属于高层级结构设计 agent。轻量题材定位优先由
100
96
  - 终极 Boss/终极阻碍:{}
101
97
  ```
102
98
 
103
- 完成核心设定后,创建以下 artifact(加载 [references/artifact-protocols.md](artifact-protocols.md) 中对应模板):
99
+ 完整开书时创建以下 artifact;仅规划时只落与所请求结构有关的已定设定,不强制补全角色档案或题材正文提示卡(模板见 [references/artifact-protocols.md](artifact-protocols.md)):
104
100
  - **设定/关系.md**:角色关系映射(参考 character-relations.md「四种关系类型」)
105
101
  - **设定/题材定位.md**:题材核心梗三分法+对标分析(参考 long-genre-mechanics.md「核心梗解析」)。对标分析表保留 2-3 行摘要,详细数据见 `对标/` 目录
106
102
  - **设定/题材正文提示卡.md**:从 `设定/题材定位.md` + `references/genre-prose-cards.md`(索引)+ `references/genre-prose-cards/`(单题材正文卡目录,按题材分类优先)+ `references/style-genre-modules.md`(通用流派补充)抽取本书正文层题材卡,只写题材边界、核心逻辑、读者期待、核心爽点/情绪、正文落点、前中后期打法、节奏密度、场景颗粒、禁止漂移;不写通用格式规则,不覆盖 `设定/文风.md`
@@ -173,26 +169,28 @@ story-architect 属于高层级结构设计 agent。轻量题材定位优先由
173
169
 
174
170
  > **多对标书时**:参 `references/cross-book-recall.md`,副对标 `章节/*_摘要.md` + `剧情/*.md` 召回卷级节奏
175
171
 
176
- > **对标节奏回流(有主对标书时,卷纲定稿前做一次)**:读主对标 `对标/{书}/剧情/节奏.md`;缺失时设置 `missing_primary_contract: true` 并停止,提示重跑 `/story-long-analyze` Stage 3+ 或重新 `/story-import`,不得用章节摘要、故事线或拆文报告代替。文件存在时,按 references/outline-structure-theory.md「对标节奏迁移」把对标的一级结构关键点(1/4·中点·3/4)换素材排进本卷卷纲「对标结构坐标」——选段以主对标剧情单元为单位,按「类型/桥段标签」圈同类(详见该节步骤 1),选中的剧情单元写入剧情单元卡「对标剧情参照」。**「对标剧情参照」可填「自创:{理由}」**,内容形态不必照搬对标,仍过安全七检与批末结构复核。若尚未登记主对标书但 `拆文库/` 有同题材候选,先回 Phase 1「对标发现」登记再排节奏;确无对标书则按八节点占比自排。
177
-
178
- #### 细纲(全书每章)
172
+ > **对标节奏回流(有主对标书时,卷纲定稿前做一次)**:读主对标 `对标/{书}/剧情/节奏.md`;资料缺失时设置 `missing_primary_contract` 并停止,不得以摘要、故事线或报告代替。文件存在时,按 references/outline-structure-theory.md「对标节奏迁移」将 1/4·中点·3/4 换素材排入卷纲「对标结构坐标」,选中单元写入「对标剧情参照」(也可填「自创:{理由}」),并过排纲自查。未登记主对标但有同题材候选时先回 Phase 1;确无对标则按八节点自排。有 `灵感库/` 时可另按「适用阶段=卷纲」召回 Top 8 active CBA 辅助结构选型,零命中不阻塞。
179
173
 
180
- ⚠️ **大纲安全七检(批次级必答:每卷/每批细纲设计前答一遍全量;逐章设计时只复答⑥⑦并把风险等级写入该章细纲「契约风险」行,不逐章重答全表;中途追加剧情单元时,⑦的关键情节锚定按单元内 1/4·中点·3/4 口径执行,不改已锁定的卷尺度坐标表)**:① 本卷交付什么情绪?什么剧情模式能可靠交付?② 本卷核心冲突是什么?③ 卷节奏(起承转合)哪段加速哪段减速?④ 本卷需要新埋设的伏笔有哪些?上一卷待回收的伏笔如何处理?⑤ 章节定位分布是否有高低层次(不是全程高压)、低压+过场是否克制(合计不超约 15%)?⑥ 本卷/本章处在全书哪个阶段,可释放什么,必须压住什么?⑦ 读者契约、主角代理权、期待债、终局储备(终局底牌/升级台阶)是否按 reader-contract-and-progression.md 评为 契约安全 / 需补强 / 契约破坏?有对标书时,1/4·中点·3/4 是否各锚定一个关键情节(见 references/outline-structure-theory.md「章节定位与张弛 / 对标节奏迁移」)?
174
+ #### 排纲自查与细纲
181
175
 
182
- **大纲安全审查(顺序不可倒置;批次级执行一次,覆盖本批全部剧情单元与章)**:先按 `references/emotional-methods.md` 设计正向情绪发动机与题材核心兑现,再用权威文件的主角代理权/所有权/成长负向风险护栏诊断。后者按因果权 + 结算权、关键节点四问与期待所有权,检查每个剧情单元的主角目标、关键选择、兑现归属、核心资产交换、机构/势力边界、换书债和推进线;不要求主角亲自完成每个动作。契约破坏 必须修纲,需补强 必须补交换/铺垫/成本。再做两个可证伪降级检查:① 删除题材核心的对象/关系/问题后,是否退化为通用职业升级或换皮情节?② 删除主角后,情绪兑现是否仍基本不变?任一为“是”就先修引擎。
176
+ **排纲自查**(每卷、每批细纲设计前答一遍;逐章不重答):
177
+ 1. **情绪引擎**:本卷交付什么情绪、靠什么剧情模式可靠交付、核心冲突是什么?先按 `references/emotional-methods.md` 设计正向发动机,再做两个删除检验——删掉题材核心的对象/关系/问题,或删掉主角,情绪兑现还基本成立吗?成立就说明引擎没立住,先修。
178
+ 2. **节奏与定位**:哪段加速哪段减速;章节定位有高低、不是全程高压,低压加过场合计不超约 15%;有对标书时 1/4、中点、3/4 各锚一个关键情节(中途追加单元按单元内的 1/4·中点·3/4,不改已锁定的卷尺度坐标表;见 references/outline-structure-theory.md「章节定位与张弛 / 对标节奏迁移」)。
179
+ 3. **伏笔与阶段边界**:本卷新埋哪些伏笔、上一卷待收的怎么处理;本卷在全书哪个阶段,可释放什么、必须压住什么(压住的写进细纲「本章禁止提前释放」)。
180
+ 4. **契约四问**:按 `references/reader-contract-and-progression.md` 逐剧情单元过一遍,把 契约安全 / 需补强 / 契约破坏 写进单元卡「风险等级」;契约破坏 先修纲,需补强 补交换、铺垫或成本。不要求主角亲自完成每个动作。
181
+ 5. **供给**:进入细纲层时按下方批次步骤 3 做供给自查。
183
182
 
184
- **每章必须有一个细纲文件**(`大纲/细纲_第XXX章.md`),不允许跳章。
183
+ 只交付大纲/卷纲时,完成排纲自查 1–4 和本节末对应纲文件后停止,不执行下方细纲与设定补全。进入细纲层后,所请求范围内每章必须有 `大纲/细纲_第XXX章.md`,不跳章。
185
184
 
186
- 默认分批建纲:先建前 10 章细纲后**停靠**,报告"已可开始写第1章/日更";只有用户明确要求写正文时才进入 Phase 4。滚动补纲按编号规则执行(见 references/outline-structure-theory.md「按剧情批出细纲」):
187
- 1. **批次边界**:一批 ≈ 一个剧情单元(5-15 章);>10 章的剧情单元拆两批。**首批 = 前 10 章封顶、可跨单元**:跨入的剧情单元在建卡时召回一次,余章由后续滚动批共享该剧情单元卡结论。写到单元末段(剩余未建细纲 ≤2 章)即滚动补下一单元整批;用户显式给出章数/范围时按用户要求执行,单批仍建议 ≤10 章、分批连续交付。
185
+ 细纲按剧情批构建(见 references/outline-structure-theory.md「按剧情批出细纲」);仅未限定范围的完整开书默认前 10 章,其他按 SKILL.md 的范围与停点交付:
186
+ 1. **批次边界**:未指定章数时,一批 ≈ 一个剧情单元(5-15 章);>10 章拆两批。开书首批前 10 章封顶、可跨单元;每单元建卡时召回一次,后续批共享结论。用户指定章数/范围时,只建范围内细纲,不因单元未完或剩余 ≤2 章而扩批;单批仍建议 ≤10 章。日更缺纲按 workflow-daily 的补建流程处理。
188
187
  2. **批次定位与阶段约束**(每批补纲前先写):当前章节区间属于哪个阶段与哪个剧情单元(单元ID)、本批推进目标、本批可释放信息、本批严禁提前释放信息、章尾钩子不能越过的边界。
189
- 3. **供给自查**:每批出细纲前检查六项:①对手戏由谁承接?具名对手间隔超过 2 章是复核提示;对手可为盟友或亲人,环境、关系章不为凑间隔新增反派。②未来 3 章出场角色的设定卡是否齐全?③能力增量与既有库存是否接得上?④本批引用的数字、制度、规矩、距离与脚程是否确实存在?引用前 grep 核对文件里的具体条目,不能只猜文件存在。⑤本批使用的地点空间属性先落档;仅提名不强补底图。是否与上一单元同场景、同对手、同胜负手连排,需要调整?⑥本批有哪些故事线推进,是否有可调存量?结果以「供给自查」小节落在本单元卡:B 级登记新增内容与设定路径,C 级列候选及影响面交作者裁定;无缺口写「无缺口」。并检查上一批「本章没写成的」与「建纲追加」里的未解决缺口。
188
+ 3. **供给自查**(排纲自查第 5 项):每批出细纲前检查六项:①对手戏由谁承接?具名对手间隔超过 2 章是复核提示;对手可为盟友或亲人,环境、关系章不为凑间隔新增反派。②未来 3 章出场角色的设定卡是否齐全?③能力增量与既有库存是否接得上?④本批引用的数字、制度、规矩、距离与脚程是否确实存在?引用前 grep 核对文件里的具体条目,不能只猜文件存在。⑤本批使用的地点空间属性先落档;仅提名不强补底图。是否与上一单元同场景、同对手、同胜负手连排,需要调整?⑥本批有哪些故事线推进,是否有可调存量?结果以「供给自查」小节写进 `大纲/排纲底稿_{单元ID}.md`(不写进卷纲):「写了要报」登记新增内容与设定路径,「先问作者」列候选及影响面交作者裁定;无缺口写「无缺口」。并检查上一批「本章没写成的」与「建纲追加」里的未解决缺口。
190
189
  4. **剧情单元消费**:建卡批读本批剧情单元卡「对标剧情参照」指向的剧情单元(≤3 个文件,含结构分布/情节点索引),按节拍→章映射铺章、情节点换素材;同一剧情单元的后续批共享剧情单元卡固化结论,不重读剧情单元。当前卷纲缺少必需剧情单元字段时先补齐卷纲,不带缺失字段进入日更。
191
- 5. **建纲当场缺口**:按下方 A/B/C 分级;A 级直接写,B 级先落档再引用,C 级挂起受影响内容交作者,其余部分继续。批末把 B/C 项汇入供给自查下的「建纲追加」:章号、缺口、分级、设定路径或提案;无追加写「无」。不重复记录 A 级现场材料。
192
- 6. **批末结构复核**(每批建完必做):按现有大纲流程确认章级目标与 `visible_chars_v1` 口径、核心字段、禁止提前释放和可执行情节点齐全。不得用“每个情节点固定等于多少字”预测容量或自动补事件;每章细纲落盘后必须跑 `node scripts/check-outline-contract.js --json --project {书目录} --chapter {N}`:exit 1 只按 `repair_scope` 补点名字段再复验,最多两轮;advisory 项逐条人工判断,不强制归零。批末另跑一次 `node scripts/check-outline-contract.js --json --supply {卷纲路径} {单元ID}` 验证本批《供给单》已落卷纲(含「无缺口」情形);脚本仅验供给小节存在,内容仍需人工判断。**旧章细纲缺字段是常态,不要照抄同目录既有文件的字段集**,以本节模板为准。语义仍不设 checker。
190
+ 5. **建纲当场缺口**:按下方三级处置——直接写的写进细纲,写了要报的先落档再引用,先问作者的挂起受影响内容,其余部分继续。批末把后两级汇入同一份排纲底稿的「建纲追加」小节:章号、缺口、级别、设定路径或提案;无追加写「无」。不重复记录直接写的现场材料。
191
+ 6. **批末结构复核**(每批建完必做):按现有大纲流程确认章级目标与 `visible_chars_v1` 口径、核心字段、禁止提前释放和可执行情节点齐全。不得用“每个情节点固定等于多少字”预测容量或自动补事件;每章细纲落盘后必须跑 `node scripts/check-outline-contract.js --json --project {书目录} --chapter {N}`:exit 1 只按 `repair_scope` 补点名字段再复验,最多两轮;advisory 项逐条人工判断,不强制归零。批末另跑一次 `node scripts/check-outline-contract.js --json --supply {卷纲路径} {单元ID}` 验证本批供给自查已写进排纲底稿(含「无缺口」情形);脚本仅验供给小节存在,内容仍需人工判断。**旧章细纲缺字段是常态,不要照抄同目录既有文件的字段集**,以本节模板为准。语义仍不设 checker。
193
192
 
194
- 不要在单次对话里强行产出 30 章完整细纲。
195
- 如果全书章数较少(≤30 章),可以在 Phase 3 一次全部建完。
193
+ 不强行一次产出 30 章细纲;全书 ≤30 章且用户明确要全书细纲时,可分批连续交付。
196
194
 
197
195
  ```
198
196
  ## 细纲(第 N 章)
@@ -201,19 +199,12 @@ story-architect 属于高层级结构设计 agent。轻量题材定位优先由
201
199
  - 核心事件:{一句话;供日更与导入统一消费}
202
200
  - 字数目标:{X} 字
203
201
  - 字数口径:visible_chars_v1
204
- - 阶段位置:{开篇期/发展期/高潮期/收尾期;第X阶段第Y章;本章在阶段内承担什么}
205
202
  - 单元ID/位置:{卷纲剧情单元ID;单元内第几拍/承担功能}
206
203
  - 目标情绪:{具体情绪前状态→后状态;本章推进单元情绪引擎的哪一环;不得只写“热血/悲伤”等标签}
207
204
  - 主角目标/关键选择:{主角本章要什么;必须做出的判断或选择}
208
- - 章节定位:{高压/推进/修炼试错/关系回收/低压生活/信息整理;可留空,留空按推进章。见 references/outline-structure-theory.md「章节定位与张弛」}
209
- - 本章结构公式:{节点1(目的) + 节点2(目的) + 节点3(目的) + 节点4(目的)}
210
205
  - 章首钩子:{从章首7式中选择} — {具体内容;低压/过场章可写“弱钩子/仅情绪钩子,功能是…”}
211
206
  - 爽点:{本章爽点;低压/修炼/过场章可写“无显性爽点,功能是…”,但仍须给读者一个往下看的理由}
212
- - 本章标价:{本章的得失折算成读者已知的什么——某样已花过的钱、某人花过的时间、主角现在缺的那一样;尺子在第几点之前立好(至少两把)。确实无可标价的章写“无”}
213
- - 闭环状态:{本章走完 获得 / 使用 / 见效 / 估值 的哪几拍;扣住哪一拍、第几章兑付。本章不闭环写清断点,如“下注在点7,第N+1章开奖”。闭环允许跨 2-3 章,也允许估值为负(收益缺口)}
214
207
  - 本章禁止提前释放:{**只写本章特有的三五条**;卷级常任禁忌已在卷纲「本卷禁碰的终局底牌」,不逐章复读;没有就写“无”}
215
- - 写手自由区:{本章写手可自行发明的内容类型——这场戏怎么打、谁失态到什么程度、对话内容、比喻域等,至少列一类;写成授权不写成禁令,把本章最值得放开的几处点名交给写手}
216
- - 契约风险:{契约安全/需补强/契约破坏;逐章只按七检⑥⑦复核后填写,批次级已答全表}
217
208
 
218
209
  #### 内容概括(五段式)
219
210
  - 起因:{本章事件为什么发生}
@@ -225,53 +216,49 @@ story-architect 属于高层级结构设计 agent。轻量题材定位优先由
225
216
  #### 情节安排(多线)
226
217
  - 主线推进:{本章对主目标的推进}
227
218
  - 辅线推进:{指向卷纲「本卷故事线」的 L 编号,写“L0X 从哪一步推到哪一步”;本章确无非主线在动时写“无”,不凭空制造。一批细纲不许每章都是“无”}
228
- - 事件线 / 任务线:{外部事件链}
229
- - 任务卡点(如适用):{角色要办什么事 → 卡在哪里 → 卡出什么变化 → 删掉后损失 → 收束动作;没有就写“无”,不强补}
219
+ - 事件线 / 任务线:{外部事件链;有“办事被卡住”时写清卡出什么变化,删掉无损的卡点不进细纲}
230
220
  - 感情线 / 关系线:{无显性感情线时写“无显性,但关系变化为…”}
231
221
  - 逻辑线:原因 → 行动 → 结果 → 后果/新问题
232
222
 
233
223
  #### 人物关系和出场顺序
234
224
  - 出场顺序:{角色/势力/关键物件按实际出现顺序列出}
235
- - 镜头准入:{台词位写清人物此刻在争什么,一场通常 3-4 人;多人各有独有信息或行动时可增加。动作位以有意义的行动参与,背景位可合并描写;按本场功能分配,可兼档,不平均派发台词或小动作}
236
225
  - 人物关系变化:{本章前 → 本章后}
237
- - 视角/信息差:{谁知道什么;读者知道什么;主角误判什么。信息差取自 `追踪/时间线/读者已知.md`,不另起一套}
238
- - 信息差触发点:{读者握着场内人不知道的牌时,在第几点、用什么把这件事**提醒**读者一次——某人当众猜错、主角刻意收力不亮底、旁人用错误前提做决定。本章无信息差写“无”}
226
+ - 视角/信息差:{谁知道什么;读者知道什么;主角误判什么。取自 `追踪/时间线/读者已知.md`,不另起一套}
239
227
 
240
228
  #### 情节细化
241
- - 情节点序列(逐行填下表;写清动作与叙事功能,不填写逐点字数):
242
-
243
- | # | 情节点(谁做了什么) | 功能标签 | 分辨率 | 执行边界 |
244
- |---|---|---|---|---|
245
- | 1 | {主角在账单上发现4800元转出} | {信息揭示} | {密} | {禁:不揭露幕后者。放:他当场算出这笔钱等于几个月房租,允许写出来} |
246
-
247
- 功能标签=目的词:铺垫/高潮/爽点/打脸/人物塑造/设定,用于判断该点承担什么义务。点数由语义需要决定,不用 `目标字数 / beat 数`、固定字数档位或历史偏差系数反推。结构预检只判输入是否可安全执行,不宣称细纲一定能撑到目标字数。
229
+ | # | 情节点(谁做了什么) | 功能标签 | 执行边界(禁+放) |
230
+ |---|---|---|---|
231
+ | 1 | {主角在账单上发现4800元转出} | {信息揭示} | {禁:不揭露幕后者。放:他当场算出这笔钱等于几个月房租,允许写出来} |
248
232
 
249
- **分辨率表示展开程度,不是字数配额**:密(慢镜头逐拍展开)/ 中 / 疏(一句带过)。**全章不许全填「中」**;同类并列的点递减、不平均。留空按「中」处理。
250
-
251
- **执行边界写成「禁 + 放」两半**:
252
- - **禁**:本点不能提前释放或新增什么(原有口径不变)。
253
- - **放**:本点允许什么落地、到什么量级——谁可以出声、谁可以失态、允不允许有人当场给这件事标价、允不允许把后果外推一句。**每章至少有一个点写了「放」**。放行不是必须落地的义务,是解除限制。
254
- - 任务卡点说明:如果某情节点是“办事被卡住”,功能标签必须写清它服务的是信息揭示、关系变化、代价兑现、伏笔推进、选择压力、节奏喘息或钩子承接;删掉无损的卡点不进细纲
233
+ - 功能标签=目的词:铺垫/高潮/爽点/打脸/人物塑造/设定。点数由语义需要决定,不填写逐点字数,不用 `目标字数 / beat 数` 反推。
234
+ - **执行边界写「禁+放」两半**:禁=本点不能提前释放或新增什么;放=本点允许什么落地、到什么量级(谁可以出声、谁可以失态、允不允许当场标价)。**每章至少一个点写了「放」**;放行是解除限制,不是义务。
255
235
  - 复沓锚句:{须一字不差进正文的原话(誓言、面板、旧案原话),一行一条并注明落点,如"点3:立此为凭…";没有写"无"}
256
- - 行动成本(可无)/收益归属:{可无行动成本;若有则写谁付出什么成本;收益归谁、如何可见、是否留下后续账}
236
+ - 行动成本(可无)/收益归属:{可无行动成本;收益归谁、如何可见、是否留下后续账}
257
237
 
258
238
  #### 结尾设定和钩子
259
239
  - 结尾设定:{收束落到什么具体动作或画面(不写"就这样……""他终于明白……"式状态判词);未解决问题;下一章推动力}
260
240
  - 章尾钩子:{从章尾13式中选择} — {具体内容,期待度:强/中/弱;低压/过场章可弱钩子或留阶段目标;与下一章如何承接}
241
+
242
+ #### 可选:需要时再写(写了写手照样消费,不写不拦)
243
+ - 阶段位置、章节定位(高压/推进/修炼试错/关系回收/低压生活/信息整理)、本章结构公式
244
+ - 本章标价(得失折算成读者已知的什么)、闭环状态(获得/使用/见效/估值走到哪一拍)
245
+ - 写手自由区(本章最值得放开、由写手发明的几处)、镜头准入(一场给谁台词位)、信息差触发点(在第几点提醒读者手里的牌)
246
+ - 情节点表加「分辨率」列(密/中/疏,同类并列递减)
247
+ - 契约风险:只在本章让单元卡「风险等级」变化时写
261
248
  ```
262
249
 
263
250
  **大纲锁定**:已进入正文写作的前 10 章细纲锁定,未经用户确认不得修改;后续滚动细纲可随正文反馈微调。**卷纲锁定的定义**:某卷一旦已有正文章节,该卷已写区间对应的既有剧情单元卡与对标结构坐标即视为锁定——未经用户确认不改既有内容,但允许在卷尾**追加**新剧情单元卡(只增不改)。追加同样只发生在用户明确要求补纲/扩纲时;日更/写正文流程不自动追加剧情单元卡。workflow-daily 各处「锁定卷纲绝不自动修改」均按此定义执行。
264
251
 
265
- **中途补纲/扩纲小流程**(项目已有大纲,用户要求"出细纲/补细纲/规划下一段剧情"时走这里):
266
- 1. 定位当前卷、已写进度与既有剧情单元卡:读 `大纲/大纲.md`;卷纲**走取段器不整读**(见 SKILL.md「卷纲不整读」)——先 `outline_view.py --toc {卷纲路径}` 看一屏目录定位当前单元,再 `--unit {单元ID}` 取闭包,新单元尚未建卡时先用 `--contract` 取卷级契约;另读 `追踪/上下文.md`(续写状态卡,待回收伏笔取 `## 活跃伏笔`、主角当前状态取 `## 核心角色状态`),以及 `设定/题材定位.md`(终局底牌与升级台阶)——续写状态卡缺项按 workflow-daily「旧信息查找步骤」按需查询,不读全部逐章增量;
267
- 2. 按 references/outline-structure-theory.md「对标节奏迁移」步骤 1 选同类剧情单元,设计新剧情单元卡(含「对标剧情参照」),**追加**到当前卷卷纲卷尾,并随卡在卷纲「情绪弧线」表、「本卷故事线」表与「本卷伏笔」表**只增不改**地追加对应规划;尚未实际埋设的伏笔留在大纲,不提前登记为时间线/追踪事实——用户主动要求补纲即视为已授权追加,锁定的既有剧情单元卡不动;新剧情单元体量超出本卷规划时,先与用户确认扩卷还是开新卷;
268
- 3. 批次级答一遍上方「大纲安全七检」并执行「大纲安全审查」(追加剧情单元时⑦按单元内 1/4·中点·3/4 口径);随后按「按剧情批出细纲」步骤 3 做**供给自查**、产出《供给单》;
269
- 4. 按「按剧情批出细纲」以新剧情单元为批次滚动补细纲(一批 ≈ 一个剧情单元,>10 章拆两批共享召回),每批建完执行「细纲后设定补全」与批末合计核对;
270
- 5. 新剧情单元和未来揭示边界已经在卷纲/细纲落盘,不复制进追踪续写状态卡;只有下一章必须履行的承诺才在下一次逐章事务里进入 `next_chapter_commitments`。
252
+ **中途补纲/扩纲小流程**(项目已有大纲;只改细纲不进入正文大修):
253
+ 1. 定位请求范围、已写进度和所属单元:读 `大纲/大纲.md`;卷纲先用 `outline_view.py --toc {卷纲路径}` 定位,再 `--unit {单元ID}` 取闭包,尚无单元用 `--contract` 取契约,不整读。另读 `设定/题材定位.md` 和已有 `追踪/上下文.md`;有正文却缺追踪时停止补纲,提示按 workflow-daily 修复/迁移,不猜进度;无正文也无追踪时以现有纲/设定规划,不为读取状态先初始化。
254
+ 2. 请求章已属于既有单元时复用单元卡,只补/改点名细纲,不另建单元;沿用上方锁定规则。确需新单元才按 references/outline-structure-theory.md「对标节奏迁移」选同类单元,向卷尾**追加**卡及情绪弧线、故事线、伏笔规划,已锁定内容不动。用户补纲不等于授权修改其他章;超出本卷体量时先确认扩卷或开新卷。
255
+ 3. 答上方「排纲自查」1–4(追加单元时按单元内 1/4·中点·3/4 口径);进入细纲层时再做第 5 项供给自查。
256
+ 4. 按本次交付层级停止:只要大纲/卷纲则不展开细纲;需要细纲时按上述批次边界只做请求范围,完成「细纲后设定补全」与批末核对。
257
+ 5. 规划事件和未来揭示只落卷纲/细纲,不提前成为追踪事实。已有正文项目补纲不写 `追踪/`,不执行 init/commit;下一章必须履行的承诺在下一次正文事务里进入 `next_chapter_commitments`。
271
258
 
272
- **细纲质量要求**:每章细纲都要按当前章节蓝图直接指导正文(阶段位置、结构公式、禁止提前释放、内容概括、情节安排、人物关系/出场顺序、情节细化、结尾设定齐备),但**强度按章节定位分配、不是每章顶满**:高压/推进章配齐钩子+爽点+悬念;低压/关系/修炼/信息整理章允许无显性爽点、弱钩子或仅情绪钩子,重点是把功能(喘息、关系、铺垫、转场)写到位。底线是每章都给读者一个往下看的理由、相邻章不情绪趋同(见 references/outline-structure-theory.md「章节定位与张弛」)。字段不完整时先补齐;无法从材料确定的关系或副线写 `[待补充]`,不得杜撰。
259
+ **细纲质量要求**:每章细纲都要按当前章节蓝图直接指导正文(核心事件、字数目标、字数口径、单元ID/位置、目标情绪、主角目标/关键选择、章首钩子、爽点、本章禁止提前释放九个必填字段齐备),但**强度按章节定位分配、不是每章顶满**:高压/推进章配齐钩子+爽点+悬念;低压/关系/修炼/信息整理章允许无显性爽点、弱钩子或仅情绪钩子,重点是把功能(喘息、关系、铺垫、转场)写到位。底线是每章都给读者一个往下看的理由、相邻章不情绪趋同(见 references/outline-structure-theory.md「章节定位与张弛」)。字段不完整时先补齐;无法从材料确定的关系或副线写 `[待补充]`,不得杜撰。
273
260
 
274
- > **细纲钩子来源**:优先沿本批剧情单元卡「对标剧情参照」剧情单元的节拍与兑现方式设计钩子链;多对标书时参 `references/cross-book-recall.md`,副对标同基调 `章节/*_摘要.md` 仍可作单章钩子灵感(可选)
261
+ > **细纲钩子来源**:优先沿本批剧情单元卡「对标剧情参照」剧情单元的节拍与兑现方式设计钩子链;多对标书时参 `references/cross-book-recall.md`,副对标同基调 `章节/*_摘要.md` 仍可作单章钩子灵感(可选);有 `灵感库/` 时可按「适用阶段=细纲」召回 active CBA 辅助钩子设计,零命中不阻塞
275
262
 
276
263
  **章节标题规则**:只做轻量去重;发现同名或明显重复标题时,按本章核心事件改名,并保持细纲标题与正文文件名一致。
277
264
 
@@ -281,29 +268,40 @@ story-architect 属于高层级结构设计 agent。轻量题材定位优先由
281
268
  - 影响多章的世界观规则 → 建/补 `设定/世界观/{主题}.md`(规则、适用范围)。
282
269
  - **刻度与名目** → 建/补 `设定/世界观/{主题}.md` 里的对照表。凡是正文要拿来**比大小、算价钱、报名次、定档位**的东西都算:资质/评级档位、职级与待遇、货币与物价、等级与进度格、名次与席位、赏罚名目、时限与期限。写成**可数的序列**(几档、哪一档在哪、相邻两档差多少),不要只写一个孤立的值。
283
270
 
284
- **缺什么按创作自主权分级处置——不许硬写,也不许一律停摆。** 排纲或写正文时需要一样东西(角色、能力、物价、规矩、刻度、场景)而设定里查不到时,先查再分级:
271
+ **缺什么按新增物三级处置——不许硬写,也不许一律停摆。** 与写手写正文同一套三级。 排纲或写正文时需要一样东西(角色、能力、物价、规矩、刻度、场景)而设定里查不到时,先查再分级:
285
272
 
286
273
  0. **先查**:`设定/世界观/`、`设定/势力/`、`设定/题材定位.md`(升级台阶)里是不是已经有(同一件事在不同文件里可能叫不同名字,换个说法登记的也算)。查不到的按下面三级处置。
287
- 1. **A 级·自由发明**(场景陈设、路人、地名细部、一次性对话、习俗细节):直接写进细纲,不落档、不上报。
288
- 2. **B 级·发明+落档**:既有框架内的具名配角、复用地点的空间属性、能力形态、物价内插、规矩细则、刻度序列,可直接补充,不与既有裁定冲突。先增量落设定,再供细纲引用,并在《供给单》登记。项目引用用书目录相对路径(如 `设定/角色/张三.md`);`./`、`../` 相对细纲目录,裸文件名不校验。地点只补本批用到的分区、进出口、相对位置或脚程。补纲授权下的新故事线先在卷纲故事线表分配 L 编号并写清主线对接口,再供细纲引用;日更不自动扩纲。
289
- 3. **C 级·提案裁定**:牵连全书的金手指规则、真相、伏笔、主线、力量档位、经济锚点、读者契约及马甲归因,不自行决定。《供给单》列具体缺口、1-2 个候选及关联设定影响,批末交作者;裁定先落设定再引用,不以占位或临时编数代替。推翻既有裁定、两个设定文件互相冲突也归 C 级,列出出处供作者判断。
274
+ 1. **直接写**(场景陈设、路人、地名细部、一次性对话、习俗细节):直接写进细纲,不落档、不上报。
275
+ 2. **写了要报**(发明+落档):既有框架内的具名配角、复用地点的空间属性、能力形态、物价内插、规矩细则、刻度序列,可直接补充,不与既有裁定冲突。先增量落设定,再供细纲引用,并在排纲底稿的供给自查里登记。项目引用用书目录相对路径(如 `设定/角色/张三.md`);`./`、`../` 相对细纲目录,裸文件名不校验。地点只补本批用到的分区、进出口、相对位置或脚程。补纲授权下的新故事线先在卷纲故事线表分配 L 编号并写清主线对接口,再供细纲引用;日更不自动扩纲。
276
+ 3. **先问作者**(提案裁定):牵连全书的金手指规则、真相、伏笔、主线、力量档位、经济锚点、读者契约及马甲归因,不自行决定。在排纲底稿的供给自查里列具体缺口、1-2 个候选及关联设定影响,批末按下方汇报模板用故事话问作者;裁定先落设定再引用,不以占位或临时编数代替。推翻既有裁定、两个设定文件互相冲突也归这一级,列出出处供作者判断。
290
277
 
291
278
  已存在的设定文件按细纲新信息**增量补充、不覆盖**。一次性路人、后文无戏份的配角不建静态档案或动态快照。建档只填细纲已确定的信息,未定字段留占位符,不提前杜撰。
292
279
 
293
- 大纲完成后,创建以下 artifact(加载 [references/artifact-protocols.md](artifact-protocols.md) 中对应模板):
280
+ 按本次交付范围创建以下 artifact(模板见 [references/artifact-protocols.md](artifact-protocols.md)):
294
281
  - **大纲/大纲.md**:全书卷级鸟瞰(卷名+字数+章数+核心事件+状态变化,一段式汇总)
295
282
  - **大纲/卷纲_第X卷.md**:每卷的故事线(L 编号)+剧情单元+情绪弧线(含章节定位)+人物弧线+伏笔+反转+对标结构坐标+**刻度台阶/打脸债/压力线轮转**三表(按需填写,不适用时省略或写「无」;参考 outline-methods.md「大纲三层结构法」 + outline-structure-theory.md「章节定位与张弛 / 对标节奏迁移」 + emotional-arc-design.md「六种弧线速查」 + long-reversal.md「反转类型」;三表模板见 artifact-protocols.md)
296
- - **追踪事务初始状态**:先完整读取 [tracking-initialization.md](tracking-initialization.md),按其构造第 0 章初始化 JSON,执行 `scripts/tracking_commit.py init`,生成检查点、续写状态卡(固定 7 栏)、空的伏笔/时间线视图与目录;紧接着运行 `check`,通过后删除初始化事务 JSON;核心角色动态快照可在第一次正文事务中创建
283
+ - **追踪不在规划阶段初始化**:开书、大纲、细纲、补纲都不建 `追踪/`;首次进入正文时由 workflow-chapter 处理缺 state(无正文初始化第 0 章,事务 JSON 放书目录 `.story/work/`)。核心角色动态快照在首次正文事务中创建。
284
+
285
+ **规划交付后向作者汇报**(开书、大纲、卷纲、细纲、补纲、改细纲都用;按 SKILL.md「面向作者的汇报」):排纲自查、结构验收是内部核对,只把结论翻成故事话;「先问作者」的缺口和两个设定互相冲突都作为「要你定的事」问。
286
+
287
+ <!-- author-report -->
288
+ ```md
289
+ {做了什么,如「第二卷卷纲定好了」「补好了第22-26章细纲」「按你说的改了第23章细纲」}:
290
+ - {故事层要点,一行一件:这卷/这几章主要发生什么,主角得到或失去什么,停在哪个悬念上}
291
+ - {改细纲时:原来是什么,现在改成什么,会不会牵动别的章}
292
+ {要你定的事:一句问题+白话选项+推荐,如「沈栀的金手指每天能用几次?1. 一次(推荐,后面好加码)2. 不限次」;没有就删掉此行}
293
+ 下一步:{如「要接着写第22章正文吗?」「要继续出第27-31章细纲吗?」}
294
+ ```
297
295
 
298
296
  前 3 章细纲额外加载 [references/opening-design.md](opening-design.md)(黄金三章法则+六大标准)。
299
297
 
300
298
  #### Agent 调用:story-architect
301
299
 
302
- 大纲搭建阶段优先由主会话产出卷纲+首批细纲;只有结构复杂、反转链多或主会话方案不稳时,才调用 story-architect agent。
300
+ 规划优先由主会话按请求范围交付;只有结构复杂、反转链多或方案不稳时才调用 story-architect。
303
301
 
304
302
  当前端已部署 story-architect 时可让它辅助;Antigravity 调用规则同上:
305
- - 任务:卷级结构、首批细纲、钩子/反转/情绪弧线。
306
- - 章节定位:每章标高压/推进/修炼试错/关系回收/低压生活/信息整理;低压章可弱爽点,但仍要有往下看的理由。
303
+ - 任务:传入本次交付层级、章/卷范围与停点;只做卷纲时不让 agent 附带细纲或正文。
304
+ - 章节定位(可选):需要时标高压/推进/修炼试错/关系回收/低压生活/信息整理;低压章可弱爽点,但仍要有往下看的理由。
307
305
  - 目标字数:只填写章级 `字数目标` 与 `visible_chars_v1` 口径;情节点不分配精确字数,也不让模型心算容量。
308
306
  - 主会话校验:按既有细纲流程复核目标、核心字段、可执行情节点和 `[待补充]`;本阶段不把语义判断复制进多端 Hook。
309
307
  - **契约摘要必须原样附带**:本阶段的卷纲要直接产出终局储备(本卷主推线/战果、本卷解锁的终局里程碑、禁碰的未解锁底牌)和剧情单元(单元ID等字段),spawn prompt 必须带上 Phase 1「Agent 调用:story-architect」中的「story-architect 契约摘要」,让主线程与委托产出共用同一 schema。
@@ -13,10 +13,10 @@
13
13
  - `genre_prose_card`(题材正文提示卡摘要,只含本章相关条目)。
14
14
  - 文风全文路径、按 `style-resolution.md` 形成的 `style_resolution`、原文锚点;同一裁决原样交后续去味与审稿。
15
15
  - `author_preferences`:作者记忆 `query` 结果中匹配本章的 `prose_style` / `story_design` 项;无则不传,禁止把完整画像或待确认项塞进 prompt;作为低优先级倾向自然吸收,不逐条展示或最大化命中,不牺牲连贯、节奏和字数。
16
- - 阶段位置、本章结构公式、本章可释放信息、本章禁止提前释放信息。
16
+ - 本章禁止提前释放信息与各点「放」;细纲写了阶段位置、结构公式时一并传。
17
17
  - 字数目标、`visible_chars_v1` 口径、格式硬约束;默认两组交付并由主会话测一次 checkpoint;用户明确要求一次成文时才写全章。字数目标按整章分量刻度使用,疏密自行分配,不填写逐情节点配额。
18
- - **agent 定义里已有的不重述**,只留一行指针:细纲优先边界=铁律 1、正文形状=铁律 2、新增物三档=铁律 3、阅读体验字段(本章标价/闭环状态/信息差触发点/镜头准入档位/情节点分辨率列/执行边界「放」半边)=铁律 4、交付三附件(时空表/新增申报表含末行「本章没写成的」/参考文件读取清单)=被调用协议。申报表与「没写成的」行的去向见步骤 12 与 workflow-setup「按剧情批出细纲」步骤 3。
18
+ - **agent 定义里已有的不重述**,只留一行指针:细纲优先边界=铁律 1、正文形状=铁律 2、新增物三级=铁律 3、阅读体验字段(本章标价/闭环状态/信息差触发点/镜头准入档位/情节点分辨率列/执行边界「放」半边)=铁律 4、交付三附件(情节点落点/新增申报表含末行「本章没写成的」/参考文件读取清单)=被调用协议。申报表与「没写成的」行的去向见步骤 12 与 workflow-setup「排纲自查与细纲」步骤 3。
19
19
 
20
20
  ## 检查分工
21
21
 
22
- 手动组装同样传入:写手负责编排、内容覆盖与格式自检;父流程质量阶段负责语义去味和最终文件扫描。写手不提前重复整轮去味或相同检查链,时空表、新增申报与原定交付保留。
22
+ 手动组装同样传入:写手负责编排、内容覆盖与格式自检;父流程质量阶段负责语义去味和最终文件扫描。写手不提前重复整轮去味或相同检查链,情节点落点、新增申报与原定交付保留。
@@ -44,7 +44,7 @@
44
44
  | 紧张妨碍正在做的事 | 可以写笔尖划坏签名、钥匙插错锁孔等具体后果 |
45
45
  | 身体细节只是在句尾标注情绪 | 删除;不要换一套部位或同义动作 |
46
46
 
47
- ### 反套话四问
47
+ ### 套式反应删除测试
48
48
 
49
49
  逐章检查重点情绪段,并指出对应原句;不是要求每段补一种反应:
50
50
 
@@ -265,9 +265,7 @@ IF 主事件是一连串动作 → 加「递进」:动作引发的连锁反应
265
265
  - 同一约束如果在「核心事件 / 内容概括 / 情节安排 / 情节点」里重复出现,生成前只合并成**一个语义点**;重复字段不是强调,更不是四次复述额度。正文不得沿用提纲里反复出现的同一措辞逐项交代。
266
266
  - 五段式(起因/发展/转折/高潮/结尾)是给细纲作者的功能拆解,不是正文的五个自然段;正文不必逐段顺叙,也不必一段对一格。
267
267
  - "谁做了什么"的概括句、"A→B→C"箭头链、"收束到什么状态"是规划口径,不要原样搬进叙述。
268
- - **同一时空内(时间连续、地点相同)的情节点默认合并、穿插、重排**——不局限于相邻的点,合理范围内块内任何点都可以彼此打断——织进同一段连续的戏;把它们排成一前一后的串行**才是需要理由的那一侧**——只有因果依赖(B 必须在 A 之后才成立)或刻意的节拍分隔才串行。跨时空的点本来就串行,不在此列。密点展开成慢镜头,疏点带过(见「疏密分配」)。
269
- - **判据(逐对自问,不限相邻)**:把乙点的一句插进甲点中间,剧情坏不坏?**不坏,就说明这两个点可以互相打断**;因果被打乱、该压的信息提前泄露、正在攒的节拍被冲散,就不插。
270
- - 例:一场饭局里「主角当众被驳了一次」「邻座起哄」「同伴趁空要回垫付的钱」「同伴顺口说出一个关键消息」四个点,全落在同一顿饭的那段时间里——该让它们互相打断(要钱插在两次举筷之间、消息垫在被驳之后),而不是吃完了再让人开口;「消息」也不必非等在「要钱」后面,被驳那阵就可以先露半句头,散场再说全。
268
+ - 同一场戏里的几个点可以合并、互相打断,不必排成逐点清单;因果依赖或刻意的节拍分隔才串行。只改顺序不会让正文变好看(交错与否的对照实验测不出差别),密点展开、疏点带过更要紧(见「疏密分配」)。
271
269
  - 章尾落在最后一个具体的动作、画面、台词或悬念上;细纲「结尾设定/收束状态」是规划口径,不要在正文里写成"就这样……""他终于明白……"式的状态总结句(结尾去升华见 anti-ai-writing.md)。
272
270
 
273
271
  ### 视角姿态:深度限知(贴地沉浸)
@@ -327,15 +325,9 @@ IF 主事件是一连串动作 → 加「递进」:动作引发的连锁反应
327
325
 
328
326
  ### 自检方法
329
327
 
330
- **(一)三维遮盖法(逐段)**
328
+ **写法抽查(质检侧用)**
331
329
 
332
- 对详写的关键场景用“三维遮盖法”:分别遮住发生、感知、反应,判断现有内容是否各自提供了不同信息。某维缺失不等于要补;只有读者因此看不懂现场、因果或角色下一步时,才把缺失信息织回同一镜头。若遮住一处身体/语气细节后什么也没损失,删掉它。逐章再做第 1 节“反套话四问”,指出原句处理,不用“已遵守”代替检查。
333
-
334
- **(二)质检八问(按本次检查范围选用)**
335
-
336
- 以下供质检侧定位已有问题,不要求写手另交八项验收说明。只报告实际删改与保留理由;没有相应问题时跳过。
337
-
338
- ⚠ **八问是删除测试,不是补写清单。** 只许指出正文里**已有**的那一处;没有就答"无"并说明本章为什么不需要,**不许为了让某一问有答案回头补内容**。答"无"不扣分。
330
+ 只许指出正文里**已有**的那一处,没有就答「无」,**不许为了让某一问有答案回头补内容**;只报告实际删改与保留理由,写手不另交验收说明。详写的关键场景里,遮住一处发生、感知或反应后读者什么也没损失,就删掉它;套式反应按第 1 节「套式反应删除测试」逐处过。
339
331
 
340
332
  | # | 自问 | 不合格的样子 | 见 |
341
333
  |---|---|---|---|