@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,96 @@
1
+ # Look、View 与道具状态变体提示词
2
+
3
+ ## 目录
4
+
5
+ 1. 什么时候需要变体
6
+ 2. Base—delta—validity
7
+ 3. 三类变体的写法
8
+ 4. 变体 plate 与 edit 的区别
9
+ 5. 输出、失败与审查
10
+
11
+ ## 1. 什么时候需要变体
12
+
13
+ 变体的目标是在不改变持久身份的前提下,把有因果、可复用、在一定范围内持续的视觉状态明确出来。它不是为了给每个表情、角度或手势建一张新资产图。
14
+
15
+ 先用 assets 的接受决定区分:
16
+
17
+ - **reuse**:身份/地理/功能和需要保持的 state 都没变,直接复用;
18
+ - **variant**:同一身份上出现可逆或时间有界的 Look/View/道具状态差异;
19
+ - **new asset**:持久身份、固定地理或基本功能已改变;
20
+ - **unresolved**:无法确定,停止编译并让创作者选择。
21
+
22
+ 图片提示词不能自行做这项身份决定,只把 accepted variant 编译为可见参考。
23
+
24
+ ## 2. Base—delta—validity
25
+
26
+ 一条变体规格必须能回答:
27
+
28
+ 1. **Base**:它从哪个 exact accepted asset/variant 派生?
29
+ 2. **Preserved anchors**:哪些 Character/Location/Prop 身份事实不变?
30
+ 3. **Delta**:哪里发生了什么可观察变化,范围和强度如何?
31
+ 4. **Cause/source**:变化来自哪个 screenplay/continuity 事实或 creator 决定?
32
+ 5. **Validity**:从哪里开始、持续到哪里、何时恢复/再变化?
33
+ 6. **Affected bindings**:哪些 prompts/shots/keyframes 需要此 variant?
34
+
35
+ - **`structural_invariant`**:绑定 exact base + variant ID,source refs 与 validity 可解析;不得同时绑定不相容 variants。
36
+ - **`reviewed_invariant`**:delta 与持久锚点没有混层,也没有超过 source 支持的范围。
37
+ - **`craft_default`**:正文先短述保持的身份,再把注意力放在 delta;不要重写全部 base。
38
+ - **`taste_option`**:单独 variant plate、同版对照或局部细节板由复用目的决定;默认单独 plate 更少歧义。
39
+
40
+ ## 3. 三类变体的写法
41
+
42
+ ### Character / Look
43
+
44
+ 常见 delta:衣服/穿法、发型整理、妆面、临时配饰、污湿、血迹、新伤、包扎、年龄化阶段。写清身体/衣物位置、覆盖范围、材料反应和未变区域。
45
+
46
+ 示例机制(合成):同一维修员夜班 Look 经雨后,只有外套右肩至肘部明显湿深,头发末端微湿;脸型、断眉、服装剪裁、左胸布贴和右袖旧焊痕保持。不要把“雨后”扩成新伤、换装或全身滴水。
47
+
48
+ 瞬时目光、一次抬手、单镜头表情通常属于 shot/keyframe,不建 Look。
49
+
50
+ ### Location / View-state
51
+
52
+ 常见 delta:特定观察方向、临时 dressing、营业/停业状态、时间、天气和光线。固定入口、主要分区、建筑结构及关键锚点保持;写清从 base View 哪些可见条件改变。
53
+
54
+ 夜景不是把门窗重新布局。临时堆放物不要升级为固定地理。若洪水、坍塌等永久改变动线,应由 assets 判断是否仍是 variant。
55
+
56
+ ### 道具状态(Prop/State)
57
+
58
+ 常见 delta:开/关、内容物、损坏、污渍、文字、持有者与功能状态。写清铰链/缺口/裂纹位置、内容可见程度、承载面文字政策和未变轮廓材料。
59
+
60
+ 换手不一定需要新的 plate;只有下游识别/连续性确需一个持续状态时才做。道具完全断成两件且功能改变,可能需要 owner 决定新 State 或新 asset,prompt 不代判。
61
+
62
+ ## 4. 变体 plate 与 edit 的区别
63
+
64
+ - **Variant plate** 描述一个已接受、可被多个镜头复用的完整当前状态;它可以从零编写 generic prompt,不依赖某张待编辑图片。
65
+ - **Edit-delta** 针对 `target_ref` 指名的精确快照、记录与 region,说明 change/preserve/continuity impact;用于“从现有参考改成 accepted variant”的提示词。
66
+
67
+ 若创作者说“把袖子改湿”:
68
+
69
+ 1. 已有 accepted wet Look,且目标是复用状态 → 可以写 variant plate 或 scoped edit;
70
+ 2. wet Look 尚未接受 → 先向 assets 提 variant proposal;
71
+ 3. 只发生在单镜头动作末端、没有持续复用 → 可能应由 storyboard continuity 拥有,不自动创建资产 prompt。
72
+
73
+ 不要把 before/after 两个互斥人物叠在一张身份板,除非用途明确是比较板,且两个区域/标签不会造成身份融合;这属于可覆盖的 craft choice,不是默认。
74
+
75
+ ## 5. 输出、失败与审查
76
+
77
+ ### 失败征兆
78
+
79
+ - 只有“更脏、更老、更阴森”,没有位置、范围和可观察 delta;
80
+ - delta 覆盖整个人/地点/物件,实际已改变持久身份却仍叫 variant;
81
+ - prompt 复制 base 全文后,把真正变化藏在末尾;
82
+ - 有状态但无 cause/validity,导致后续镜头不知道何时复用;
83
+ - 把 pose、机位或一次 reaction 当成资产变体;
84
+ - 同一 plate 同时画完好/损坏、白天/夜晚或两套 Look,未声明比较用途。
85
+
86
+ ### 检查
87
+
88
+ | 检查 | 分类 |
89
+ |---|---|
90
+ | exact base/variant、source、validity 解析 | `structural_invariant` |
91
+ | delta 是否保持 identity/geography/function | `reviewed_invariant` |
92
+ | 是否误把瞬时 shot 状态升级为 asset variant | `reviewed_invariant` |
93
+ | delta 是否比 base boilerplate 更醒目 | `craft_default` |
94
+ | 单图或对照板、变化强度与呈现媒介 | `taste_option` |
95
+
96
+ 输出包含 base、delta、preserve、validity 与 affected bindings 的 spec,以及一段聚焦当前状态的 generic prompt。不得生成图片,也不得声称变体画面已经验证成功。
@@ -0,0 +1,38 @@
1
+ # Lookdev 风格帧提示词
2
+
3
+ `lookdev_frame` 使用 [独立结构模板](../assets/lookdev-frame-spec.jsonl.md),把项目层已经接受的
4
+ 视觉方向投影成可比较的通用图片提示词。它不选择画风,
5
+ 不生成图片,也不从一张参考图推断整部作品的规则。
6
+
7
+ ## 三类测试轴
8
+
9
+ - `character_expression`:绑定准确 CHAR/LOOK,检查身份锚点、材质/线条和表演可读性;
10
+ - `core_location`:绑定准确 LOC/VIEW,检查地理、材质、色彩层级与光源逻辑;
11
+ - `high_pressure_scene`:绑定准确场景、人物状态与来源块,检查冲突中的注意中心、遮挡和密度。
12
+
13
+ 不要求三类都固定生成若干张。选择本项目最能暴露方向失效的代表帧,并在规格中写清测试问题。
14
+
15
+ ## 写规格
16
+
17
+ `purpose` 写 `lookdev_frame`,`lookdev_axis` 选择本次测试轴,`direction_ref` 用文件头 `sources` 中
18
+ `short-drama.json` 的快照键,`field` 写
19
+ `/creator_authority/visual_direction/choices/look_development`,并用同一个快照键的
20
+ `production_profile_ref` 绑定本项目已接受制作配置。高压力场景还要用 `story_context_refs` 绑定
21
+ 真实 screenplay-index `BLK-…` 场次/动作/信息权限记录,不能从提示词发明剧情状态。再写:稳定项、
22
+ 允许变化项、要保护的身份/地理/剧情事实,以及删除风格标签后真正改变的材质、光、色、边缘、
23
+ 景深或空间表达。
24
+
25
+ 风格参考使用 `role: style`:
26
+
27
+ - `may_control` 只列色彩层级、材质处理、阴影边缘、景深倾向、画面密度等本次准许内容;
28
+ - `must_not_control` 保护角色身份、固定场景地理、剧情状态、人数、持物与道具文字;
29
+ - 每张参考有稳定 `slot_id` 和显式 `order`,换版或数组重排不改变槽位语义。
30
+
31
+ 角色、地点或压力场景的事实仍来自它们各自 owner。高压力测试帧不得为了“更有冲击力”提前
32
+ 泄露身份、发明动作结果或改变文字政策。
33
+
34
+ ## 比较与修订
35
+
36
+ 比较人物、地点和压力场景是否共享可辨认语言,同时记录哪一部分允许逐场变化。没有授权生成结果
37
+ 观察时,只能指出文字层风险。若收到绑定准确 prompt/spec/reference/config 的项目观察,局部修订写
38
+ `changes` 与 `preserve`,一次只改诊断所需变量;不把一次结果推广为其他项目或制作配置的规律。
@@ -0,0 +1,177 @@
1
+ # 生产参考板决策:角色、场景与道具
2
+
3
+ ## 目录
4
+
5
+ - [角色参考板](#一角色参考板)
6
+ - [场景方位板](#二场景方位板)
7
+ - [道具参考板](#三道具参考板)
8
+ - [合成与修改](#四首帧合成与定点修改指令)
9
+ - [资产范围](#五资产范围决策craft_default)
10
+ - [质量判据](#六质量判据与反模式)
11
+
12
+ 来自对角色、场景、物品资产如何进入后续镜头的定性案例阅读,示例均为合成改写。
13
+ 通用方法见 [common-recipe.md](common-recipe.md);本文档提供可按项目调整的生产版式。
14
+ 核心原则:**先明确资产负责的稳定身份与当前版本,再让分镜负责本镜呈现**。纯白底、
15
+ 无情绪、三视图只是便于识别的一种项目选择;带环境的背景、单视图或带状态的参考板
16
+ 只要更符合复用目的且不混淆身份与临时状态,也可以由创作者选择(IMG-03/IMG-04)。
17
+
18
+ ## 一、角色参考板
19
+
20
+ 先写 `reuse_job`:下游需要保持身份识别、当前造型、某种状态,还是某个可操作部位?然后
21
+ 选择最少但足够比较的视图、背景和光线。头肩、全身、侧背、单视图、上下文参考或中性
22
+ 板式都可以;背景和视图数量不是角色身份的一部分。
23
+
24
+ 以下是可选记录方式;与 `reuse_job` 无关的行可以省略:
25
+
26
+ ```text
27
+ 用途:<这张板要让下游保持什么>。
28
+ 身份识别特征:<少量稳定、可见、彼此不重复的脸型/发型/体态/识别标记>。
29
+ 当前造型或状态:<只写已接受版本的可见变化和有效范围>。
30
+ 版式:<为复用职责选择的视图、占画关系、背景与比较方式;多视图并排时写明画面内不出现视图标签、引线箭头、尺寸标注与图注>。
31
+ 光线与文字:<帮助识别材质/结构的光线;已接受的文字方案与显示位置>。
32
+ 排除:<当前最可能越权导入或漂移的事实>。
33
+ ```
34
+
35
+ 若项目已验证特殊分隔、权重或引子,可在最后交付时采用;通用资产说明不保存这些
36
+ 供应商写法,也不把分辨率、质量词或固定收尾当成资产质量。
37
+
38
+ ### 决策规则
39
+
40
+ - **布光服务识别职责**:先问哪些脸部结构、材质、轮廓或状态必须可比较,再选择光源
41
+ 方向、面积和反差。光型不自动编码性别、阶级、善恶或权力;同一造型的识别锚点与
42
+ 参考图用途必须保持稳定。
43
+ - **社会处境要有已接受依据**:磨损、整洁、改制、借用、制服纪律或刻意伪装都可能
44
+ 承载人物处境,但不能从贫富、性别、年龄或题材标签自动推出服装和布光。先引用角色
45
+ 行动、职业条件、当前选择或已接受设定,再决定哪些可见细节值得复用。
46
+ - **视觉细节要有职责**(IMG-02 的强化):它应服务身份识别、当前状态、结构功能或
47
+ 下游复用。写不出职责或与其他锚点竞争的装饰优先删除。
48
+ - **状态何时建立新版本由复用决定**:被俘或重伤等状态若跨镜复用、影响识别或连续性,
49
+ 固化为新的造型或状态版本;只在一镜发生且已完整写入镜头边界时不必扩张资产表。
50
+ - **风格标签按项目添加**:按项目风格前置 `【真人风格,写实风格】` /
51
+ `【国漫风,二次元画风】` 等,设计稿本体不带标签。
52
+
53
+ ### 布光词汇:按“要比较什么”选,不按身份标签映射
54
+
55
+ 先确定这张板必须让下游比较什么——骨骼体积、表面材质、外轮廓与体量、服装层次,还是状态
56
+ 痕迹——再从下列词汇里选。每种光型的条目只说明它让什么结构变得可比较、又压掉什么。
57
+
58
+ | 光型 | 让什么可比较 | 压掉什么 |
59
+ |---|---|---|
60
+ | 均匀正面光(平光) | 五官相对位置、妆面、服色与图案 | 颧骨、鼻梁、下颌等体积起伏 |
61
+ | 侧光 / 高位斜侧光 | 明暗交界线两侧的骨骼体积与轮廓起伏 | 暗侧细节;同时放大不对称 |
62
+ | 顶光 | 眼窝、鼻下、颌下的纵向结构关系 | 暗区中的识别细节与服装层次 |
63
+ | 底光 | (反转日常明暗方向)非常规体积读法 | 常规结构读法,做识别板时不可用 |
64
+ | 大面积柔光 | 材质纹理、肤质、布料表面状态 | 形状边界与轮廓锐度 |
65
+ | 小面积硬光 | 反射差异、磨损、镜面高光与工艺痕迹 | 过渡信息;放大瑕疵与形变 |
66
+ | 轮廓光 / 逆光边缘光 | 外轮廓、发型剪影、服装廓形与前后分离 | 面部识别信息,不单独承担身份板 |
67
+ | 场景内实际光源 | 状态板与环境内参考板的光向可核对性 | 中性比较条件,需与场景已接受光向一致 |
68
+
69
+ **解耦声明**:以上词汇只按“本板必须让人比较什么”选择,**不按性别、年龄、贫富或题材标签
70
+ 映射**。同一光型可用于任何角色;项目里若出现“女性一律柔光、男性一律侧光”这类默认,那是
71
+ 未经证据的模板化,先删除再按 `reuse_job` 重选。社会处境仍按上一条规则从已接受依据取证。
72
+
73
+ 绘制形态里“光”由上色关系与阴影形状承担,这张表的选择依据不变——变的只是它落到哪一层的
74
+ 阴影形状与边缘处理,由已接受的制作形态决定。
75
+
76
+ ### 合成判断例:同一角色的伪装期
77
+
78
+ - `identity`:窄长脸、左眉旧缺口、略前倾但稳定的走路重心;这些跨造型保持。
79
+ - `look_state`:本段穿借来的制服,袖长不合身,胸牌按上游要求设为 `graphic-only`;
80
+ 这些只在伪装有效范围内保持。
81
+ - `reuse_job`:近景靠眉缺口识别,全身调度靠重心和制服轮廓识别。
82
+ - `layout`:选择一个能看清面部锚点的视图和一个能比较制服轮廓的视图;背景只需不
83
+ 干扰识别,不要求白底或固定占比。两视图并排等高,写「画面内无视图标签、无引线箭头、
84
+ 无尺寸标注、无图注」。
85
+ - `exclusion`:不从“伪装者”标签追加阴影脸、可疑眼神或无来源武器。
86
+
87
+ ## 二、场景方位板
88
+
89
+ 只有摄影方向会改变入口、可见地理、光源、遮挡或叙事功能时才建立观察视角。方向可以用
90
+ 罗盘、门内/外、主桌侧/证人侧等项目语汇;不为“完整”做齐所有方向。
91
+
92
+ 以下是可选记录方式;只写当前观察面需要核对的内容:
93
+
94
+ ```text
95
+ 观察视角:<摄影机在哪一侧、朝向哪里、为何需要这个观察面>。
96
+ 固定地理:<入口、路径、区域、遮挡、可操作部位及其相对关系>。
97
+ 本版本:<有依据的时间、光线、损坏、占用或天气状态>。
98
+ 可见边界:<此观察视角能看到和看不到什么;哪些事实暂缓揭示>。
99
+ 文字/人物政策:<空场、允许的人物类别、标牌与已接受的文字方案>。
100
+ ```
101
+
102
+ - 清点顺序以当前空间最容易混淆的关系为起点,不要求中心、地面、四向和头顶全部出现。
103
+ - 光源只写其固定来源和当前版本;反打能否咬合靠相同地理与光向核对,不靠“背后
104
+ 来光”公式。
105
+ - 观察视角不自动携带情绪。时间、光线和戏剧状态若变化,明确它属于场景的固定事实、
106
+ 观察面的可见差异还是本场版本,避免为每个方向发明一套气氛真相。
107
+
108
+ ## 三、道具参考板
109
+
110
+ 道具板优先让轮廓、可操作部位、尺度关系、当前状态和文字政策可比较。白底产品照只是一种
111
+ 适合孤立结构的版式;道具依赖佩戴、安装或环境尺度时,可选择有控制的上下文背景。
112
+
113
+ 以下是可选记录方式;字段由道具功能和复用风险决定:
114
+
115
+ ```text
116
+ 用途与归属:<谁如何识别、握持、佩戴、安装、转交或损坏它>。
117
+ 稳定形制:<轮廓、材质、结构、可操作部位及可比较尺度>。
118
+ 当前状态:<有依据的磨损、开启、缺失、污染或修复>。
119
+ 版式与光线:<让上述职责可读的视图、背景和材质照明>。
120
+ 文字:<`exact-readable` / `graphic-only` / `no-readable-text` 及受控显示位置>。
121
+ ```
122
+
123
+ 颜色、材质和工艺只是常见识别重点;对钥匙可能是齿形,对药瓶可能是封口与文字政策,
124
+ 对可穿戴物则可能是佩戴关系。字段由功能和复用风险决定(IMG-05)。
125
+
126
+ ## 四、首帧合成与定点修改指令
127
+
128
+ 资产参考进入关键帧提示词时,先声明每张参考的用途 `role` 和可以参考的内容,不能让整张图
129
+ 同时决定身份、构图、状态和文字(仍只产出提示词文本,不涉及调用):
130
+
131
+ ```text
132
+ 参考 A:`role=identity`;`may_control=<脸型/识别标记>`;`must_not_control=<姿势/背景/文字>`。
133
+ 参考 B:`role=geography`;`may_control=<入口/路径/固定锚点>`;`must_not_control=<临时人物/故事状态>`。
134
+ 本镜:从已接受起点写出人物相对站位、朝向、遮挡与可见状态;构图和景别服从本镜目的
135
+ 与观众应看到的信息;文字服从上游的逐字保留要求。
136
+ ```
137
+
138
+ 只写当前执行需要的站位、朝向、尺度和文字风险。若创作者提供的项目观察证明某类
139
+ 漂移反复发生,针对该风险补局部约束;不把“人物过大/字幕”预设为所有镜头缺陷。
140
+
141
+ 局部修改要同时写清**修改项与保持项**(IMG-06 的实际写法)。可以分句解释复杂区域,
142
+ 但每项变化都要能指向精确 `target_ref`,未受影响的事实明确保持:
143
+
144
+ ```text
145
+ 画面中右侧的甲去掉,画面中不要出现甲,其他角色站位动作保持不变,其他内容保持不变。
146
+ ```
147
+
148
+ 多张参考图即使使用位置编号,也要逐条写清用途 `role`、`may_control`、`must_not_control` 与检查
149
+ 结论;“五官参考若干图、其他全照图一”这类让整图顺带决定多类内容的指令,应先拆成
150
+ 可审查的参考绑定。
151
+
152
+ ## 五、资产范围决策(`craft_default`)
153
+
154
+ | 决策 | 判断方式 |
155
+ |---|---|
156
+ | 是否建角色资产 | 后续需要重复识别、绑定造型、配音或保持连续时才建立。 |
157
+ | 是否拆地点与观察视角 | 摄影方向会改变可见地理、入口、光源或叙事功能时拆分。 |
158
+ | 是否建物品资产 | 物品会被识别、持有、转手、损坏、读字或承担回扣时建立。 |
159
+ | 描述写多长 | 写到能稳定识别与执行即可;删除不能归因身份、结构、状态或用途的装饰。 |
160
+ | 一次覆盖多少集 | 先抽取完整已接受范围,再按创作者停靠点接受;不从固定资产数量倒推剧情。 |
161
+
162
+ ## 六、质量判据与反模式
163
+
164
+ 判据:每个细节是否服务身份、当前版本、功能、地理或下游复用;背景、光线和视图是否
165
+ 适合 `reuse_job`;角色、道具和场景的参考权限有没有互相越界;场景 `View` 是否能核对
166
+ 入口、路径与光向;文字政策、角色名和资产绑定是否一致。带环境的背景或状态光线不是
167
+ 天然失败,但必须明确属于哪一层,并避免污染稳定身份。
168
+
169
+ 反模式(定性案例中的返工机制):
170
+
171
+ 1. 声称做中性身份板,却让一次性场景光、动作或背景成为身份识别特征;反之,项目选择
172
+ 上下文状态板却被机械清空,丢失其复用职责。
173
+ 2. 表单字段直贴描述("身份:女配\n年龄身高:20岁")。
174
+ 3. 描述没有提供足以识别、操作或核对状态的事实,不论文字长短。
175
+ 4. 无语义命名(资产名叫 '1'、'站位'、'参考'——下游无法按名索引)。
176
+ 5. 收到生产反馈后不诊断身份、构图、文字或状态风险,只重复同一描述。
177
+ 6. 描述内角色名与资产登记名不一致(写 A 名生成 B 人)。
@@ -0,0 +1,140 @@
1
+ # 道具 Plate:尺度、功能、状态与文字
2
+
3
+ ## 识别测试 (`IMG-05`)
4
+
5
+ 道具 Plate 保持尺度、形状、材质、磨损、功能/活动部件与 accepted text policy。
6
+ 它应展示当前 State,但不能悄悄重新设计底层 prop identity。
7
+
8
+ ## 目录
9
+
10
+ 1. 目的与输入
11
+ 2. 身份与 State
12
+ 3. 可复用 plate 配方
13
+ 4. 文字政策
14
+ 5. 输出与审查
15
+ 6. 制作形态投影
16
+
17
+ ## 1. 目的与输入
18
+
19
+ 道具 plate 要让后续画面保持同一件物体的轮廓、尺度、材料、功能和当前状态。输入是精确 道具身份与状态、来源指针、用途、尺度参照、视角、功能件、磨损/损坏、主人关联、文字政策、背景与光线。
20
+
21
+ 道具身份不等于“谁在拿”。换手、打开、装入内容、沾水、裂损或贴上标签通常是 State;永久形制改变才可能需要重新做资产决策。
22
+
23
+ ## 2. 身份与 State
24
+
25
+ ### 持久身份
26
+
27
+ - 整体轮廓与主要比例;
28
+ - 尺寸或与中性参照的比例;
29
+ - 主材质、表面工艺和固有色;
30
+ - 接缝、扣件、开口、把手、铰链等功能结构;
31
+ - 有识别价值的长期磨损或制造特征。
32
+
33
+ ### 当前 State
34
+
35
+ - 开/关、折叠/展开、完整/损坏;
36
+ - 当前内容物和是否可见;
37
+ - 污渍、水、烧灼、血、灰尘等有因果的表面变化;
38
+ - 所有权/持有关系以及状态有效范围;
39
+ - 文字内容与承载面状态。
40
+
41
+ **`reviewed_invariant`**:提示词必须能让形状、材料、功能彼此成立。例如“透明玻璃密封瓶”不能同时写成“无开口的实心石块”。
42
+
43
+ ## 3. 可复用 plate 配方
44
+
45
+ 顺序建议:
46
+
47
+ 1. **类型、用途、主体**:道具全貌参考、结构细节或状态 plate。
48
+ 2. **尺度与轮廓**:真实尺寸范围或中性参照,长宽厚关系,主轮廓。
49
+ 3. **材料与色彩**:主材、次材、反射/粗糙/透明关系。
50
+ 4. **功能结构**:活动件、开启方向、握持区域、接口;展示到足以理解功能,不自动演示剧情动作。
51
+ 5. **道具状态**:损伤、内容、表面状态、owner relevance 的可见部分。
52
+ 6. **视图与背景**:主体占比、正/侧/必要局部,干净背景与易读光线。
53
+ 7. **文字政策**:精确选择并说明承载面。
54
+ 8. **保持/排除**:防止变形、错材、错状态或多出复制品。
55
+
56
+ - **`craft_default`**:若尺度容易误判,加入不带身份的参照或给出功能性尺寸关系;不要用剧情角色的手当默认参照。
57
+ - **`craft_default`**:对可动部件,选择一个接受状态;如确需开/关两态,分为两个 道具状态/spec。
58
+ - **`taste_option`**:产品式悬浮、台面陈列、正交视图或环境内静物由复用目的决定。
59
+
60
+ ## 4. 文字政策
61
+
62
+ 文字是一项资产状态和制作决策,不是随手加的装饰。
63
+
64
+ 不要改写 assets owner 的 `exact_readable | graphic_only | no_readable_text |
65
+ pending_creator_text`。本 skill 只为当前 plate 选择下列 render treatment,并在
66
+ spec 中保留 source pointer 和映射理由。完整映射表见
67
+ [common-recipe.md](common-recipe.md)。
68
+
69
+ ### `readable`
70
+
71
+ 逐字使用已接受文本,说明位置、方向、行数/层级和承载面。正文不要改写或自动纠错关键文书。若需要保密/后期合成,可改为 `postproduction`,不能一边要求可读一边写“画面中不要任何文字”。
72
+
73
+ ### `symbolic`
74
+
75
+ 保留标签/刻痕的视觉存在和布局,但明确为不可辨识符号,不得偶然形成新名字、号码或 URL。
76
+
77
+ ### `blank`
78
+
79
+ 指定承载面保持干净空白,同时保留其材料、透视和光照。不等于抹掉道具其他结构。
80
+
81
+ ### `postproduction`
82
+
83
+ 预留清楚、无遮挡、透视可跟踪的区域;描述面积、位置、方向、材质和光线,实际字后期添加。可在 creator note 记录精确文字,但 generic image prompt 不要求生成它。
84
+
85
+ **`structural_invariant`**:单个文字承载面不能同时选择互斥政策;`readable` 与全局 no-text 冲突时必须先解决。
86
+
87
+ ## 5. 输出与审查
88
+
89
+ ### 失败征兆
90
+
91
+ - 只说“古老钥匙、精致盒子”,没有比例、形制和材料;
92
+ - 打开/关闭、完好/断裂、空/装满同时存在;
93
+ - 可动件不知如何连接,功能靠抽象标签;
94
+ - 文字内容由 prompt 作者临时编造,或 `readable` 被 no-text 否定;
95
+ - 道具主人被画成 plate 主体,或不同视图中尺寸/损伤位置漂移。
96
+
97
+ ### 检查
98
+
99
+ | 问题 | 分类 |
100
+ |---|---|
101
+ | 道具身份与状态、source refs、text policy 可解析且不冲突 | `structural_invariant` |
102
+ | 尺度/形状/材料/功能/current State 足以识别 | `reviewed_invariant` |
103
+ | 磨损与状态是否有因果、没有污染永久身份 | `reviewed_invariant` |
104
+ | 中性参照、视图数量、背景方式 | `craft_default` |
105
+ | 产品感、写实度、陈列审美 | `taste_option` |
106
+
107
+ 输出精确绑定的 spec 和 generic prompt;不承诺文字最终生成准确,也不生成任何媒体。
108
+
109
+ ## 6. 制作形态投影
110
+
111
+ 已接受的 `short-drama.json#/creator_authority/{visual_direction,production_profile}` 决定这件
112
+ 道具用什么词汇被画出来,不决定它是什么东西。形态词表见
113
+ 本阶段需要从制作形态取得哪些输入,见 [阶段契约](stage-contract.md) 的“制作形态需要什么”。
114
+
115
+ ### 从形态取什么
116
+
117
+ - **轮廓简化程度**:该形态允许省略到哪一级仍能与同类物区分;
118
+ - **功能件的表达通道**:铰链、开口、握持面、接缝是靠线条、靠材质明暗,还是靠真实结构;
119
+ - **材质对光的响应**:金属、玻璃、木、布在该形态里怎样出现反射、透明与粗糙差异;
120
+ - **尺度参照的成立方式**:绘制形态常靠对比物与透视线索,实拍形态可用真实景深与已知尺寸;
121
+ - **磨损与损坏的通道**:笔触、色块边界、表面纹理还是实拍痕迹。
122
+
123
+ ### 形态不得改写什么
124
+
125
+ - 形制、主要比例与功能结构的连接关系;
126
+ - 当前 State(开合、内容物、损伤、污染)及其有效范围;
127
+ - 文字政策与承载面;
128
+ - 所有权/持有关系与 owner relevance。
129
+
130
+ **`craft_default`**:形态越简化,越要先保住“能区别这一件与同类物”的一两处结构。Q 版、
131
+ 水墨或强笔触形态可以省略次要装饰,但钥匙的齿形、药瓶的封口、箱扣的咬合方式属于识别通道,
132
+ 省掉之后 plate 就不再是这件道具的参考。
133
+
134
+ **`structural_invariant`**:形态不能修改文字政策。若 `readable` 在高度笔触化或极简形态下
135
+ 无法逐字承载,改为 `postproduction` 并写明理由与预留区域;不得降级为 `symbolic` 而把已接受
136
+ 文本悄悄丢掉,也不得为了画面整洁抹去承载面本身。
137
+
138
+ 合成例:角色甲交给角色乙的旧钥匙,形态选择为强笔触绘制。齿形与柄部缺口仍逐项写出,
139
+ 柄上刻字按上游政策保持 `graphic_only` → `symbolic`;笔触只影响边缘与表面质感的写法,
140
+ 不影响“同一把钥匙、当前带有那道缺口”的判定。
@@ -0,0 +1,92 @@
1
+ # 图片提示词审查量表与合成案例
2
+
3
+ ## 目录
4
+
5
+ 1. 审查方式
6
+ 2. 证据量表
7
+ 3. 诊断目录
8
+ 4. 合成正例
9
+ 5. 合成反例
10
+
11
+ ## 1. 审查方式
12
+
13
+ 先做可确定检查,再由与作者分离的 reviewer 判断语义和 craft。Reviewer 不改 spec;它写 finding,包含产物与记录 ID、精确证据、影响、所需修复、owner、severity 与状态。不要以固定长度、词数、形容词比例或“像 AI”判质量。
14
+
15
+ ## 2. 证据量表
16
+
17
+ 对每条 prompt,逐项给出 `PASS | REVISE | NOTE` 和引用:
18
+
19
+ | 维度 | 要问的问题 | 合格证据 |
20
+ |---|---|---|
21
+ | 绑定 | 是哪个 identity + exact variant? | spec source ref 与 accepted snapshot |
22
+ | 区分度 | 不看 display name,能否认出/区分? | prompt 中对应 stable anchors 与 delta |
23
+ | 单一目的 | 是否把多种互斥参考需求混在一起? | purpose、构图与状态一致 |
24
+ | 空间/尺度 | 关系能否同时成立并复用? | geography/scale 原字段与 prompt 句子 |
25
+ | 文字 | 政策、内容、承载面、排除是否相容? | text policy 与 constraints |
26
+ | 经济性 | 参考已承载的内容是否被无意义重复? | 可删句与未受影响事实 |
27
+ | 越权 | 是否新造资产、故事或连续性事实? | source fact 与冲突句 |
28
+ | 可复制 | 去掉内部元数据后正文是否自足? | generic prompt 本身 |
29
+
30
+ Finding 的“修复”必须可执行,例如“补回 View 中安全门相对检修台的位置”,不能只写“加强细节”。审美替代方案属于 NOTE,除非违反已接受约束。
31
+
32
+ ## 3. 诊断目录
33
+
34
+ | code | classification | enforcer | 默认 severity | owner | 含义 |
35
+ |---|---|---|---|---|---|
36
+ | IMG_BINDING_UNRESOLVED | structural_invariant | validator | error | image-prompts | asset/variant 或 source ref 未解析 |
37
+ | IMG_TEXT_POLICY_CONFLICT | structural_invariant | validator | error | image-prompts | readable 与 no-text 等显式冲突 |
38
+ | IMG_EDIT_SCOPE_MISSING | structural_invariant | validator | error | image-prompts | edit 缺 target/change/preserve/impact |
39
+ | IMG_VARIANT_INCOHERENT | reviewed_invariant | reviewer | error | image-prompts | 一个规格混入不相容 Look/State |
40
+ | IMG_GEOGRAPHY_LOSS | reviewed_invariant | reviewer | error | image-prompts | 场景固定地理/方向被丢失或改写 |
41
+ | IMG_PROP_UNRECOGNIZABLE | reviewed_invariant | reviewer | error | image-prompts | 尺度、形制、材料、功能不足以辨认 |
42
+ | IMG_BOILERPLATE_DOMINANT | craft_default | reviewer | warning | image-prompts | 已有锚点但泛化词压过它们 |
43
+ | IMG_STYLE_ALTERNATIVE | taste_option | reviewer | note | image-prompts | 可选审美方案,不单独阻断 |
44
+
45
+ 只有 validator 可证明的 `structural_invariant` 直接阻断。语义问题由 reviewer 引用源字段和 prompt 文句后给 `REVISE`;默认与选项可覆盖。
46
+
47
+ ## 4. 合成正例
48
+
49
+ 以下人物、地点、物件与文字均为虚构合成材料。
50
+
51
+ ### 输入摘要
52
+
53
+ - `CHAR-LUOJING`:三十岁上下,窄长脸,右眉尾有自然断点,黑色短卷发,瘦高;
54
+ - `LOOK-RADIO-NIGHT`:墨绿工装衬衣、米白旧 T 恤、左胸圆形台标布贴,右袖口有一处旧焊痕;
55
+ - 用途:后续镜头识别同一人物和夜班 Look。
56
+
57
+ ### 合格 generic prompt
58
+
59
+ > 人物全身设定参考图:瘦高的三十岁上下女性,窄长脸,右眉尾有一处自然断点,黑色短卷发,保持克制而警觉的低强度表情。只呈现夜班造型:墨绿工装衬衣敞开一颗领扣,内搭米白旧 T 恤,左胸缝圆形无文字台标布贴,右袖口保留拇指宽的浅褐旧焊痕,深色直筒长裤与耐磨短靴。自然站立的全身正面为主,附同一造型的头肩侧面小视图;比例真实,无夸张透视。中性浅灰背景,均匀柔光,清楚呈现面部轮廓、服装层次和布料磨损。保持同一张脸、同一发长、同一套衣服;不增加首饰、伤口、手持工具或第二套造型,不出现可读文字。
60
+
61
+ 为何有效:身份锚点与 Look 分层;构图服务识别;“无文字”不否定无文字台标;没有借设定图演一场戏。
62
+
63
+ ### 合格 Location 摘要
64
+
65
+ > 社区广播站维修间空场参考:从朝南的窄门向内看,长形房间右墙是一列齐腰高木质检修台,台尽头连接后墙唯一的灰色金属安全门;左墙两扇高窗与检修台相对,窗下固定一排浅柜,房间中央保留一条从入口直通安全门的走道……空场,不出现演员或剧情动作。
66
+
67
+ 关键不是装饰多,而是入口、检修台、安全门、窗和走道的关系可复用。
68
+
69
+ ## 5. 合成反例
70
+
71
+ ### 反例 A:泛化且混 Look
72
+
73
+ > 顶级电影质感的绝美女主,时而穿墨绿工装,时而穿红色礼服,头发既短又飘逸及腰,浑身湿透但衣服保持完全干燥,8K,大师杰作,无任何瑕疵。
74
+
75
+ Finding:
76
+
77
+ - evidence:同一规格同时出现两套服装、两种发长和互斥干湿状态;
78
+ - impact:无法成为一个 accepted Look 的复用参考,并抹去断眉/脸型等锚点;
79
+ - required fix:绑定一个 Look,仅保留该状态的可观察 delta,把其他 Look 拆为独立规格;
80
+ - classification:`reviewed_invariant`,owner `image-prompts`,severity `error`。
81
+
82
+ ### 反例 B:文字矛盾
83
+
84
+ > 桌面上的值班登记簿,封面必须清楚写“设备复核记录”,画面中不要任何文字、字母或符号。
85
+
86
+ `readable` 与全局 no-text 可由本地检查证明冲突。修复不是祈求“正确生成”,而是在 `readable` 与 `postproduction` 中选择一种并调整正文。
87
+
88
+ ### 反例 C:越权 edit
89
+
90
+ > 保持所有东西不变,把维修间改造成豪华酒店大堂,再把后门移到左侧。
91
+
92
+ 目标、View 和 preserve 边界不清;同时改写 Location 身份与固定地理。先路由 assets 形成新 Location/View 决定,不能在 edit prompt 内偷改。
@@ -0,0 +1,89 @@
1
+ # 图片提示词阶段契约
2
+
3
+ ## 目录
4
+
5
+ - [独立运行与项目集成](#独立运行与项目集成)
6
+ - [所有权边界](#所有权边界)
7
+ - [制作形态需要什么](#制作形态需要什么)
8
+ - [参考媒体与补拍](#参考媒体与补拍)
9
+ - [本阶段规则](#本阶段规则)
10
+
11
+ 本文件是本技能的自包含契约:预检、所有权、形态输入与规则表都在这里,
12
+ 不需要读取其他技能的文件。
13
+
14
+ ## 独立运行与项目集成
15
+
16
+ 本技能可以单独安装并运行;下面几条说明项目工具存在时怎样集成。
17
+
18
+ 1. **读取直接输入**:只读取用户明确提供或当前任务实际需要的文件,不批量加载整个项目。
19
+ 2. **可选项目集成**:若存在 `short-drama.json` 且 core 项目工具可用,可以运行
20
+ `python3 <core>/scripts/project_tool.py status <project>`,使用返回的目录布局和语言设置;
21
+ core 不可用时,直接基于已提供输入产出本阶段文件。
22
+ 3. **可选发布生命周期**:项目工具可用时,用 `publish` 原子发布并用 `--input <path>`
23
+ 声明直接输入;`accept`、`review` 与 `package` 继续承担确认、复核与交付。
24
+ 4. **保持职责分离**:创作者确认、内容修订和复核是不同动作;reviewer 提修改要求,负责人改文件。
25
+
26
+ ## 所有权边界
27
+
28
+ - **本阶段拥有**:项目级 lookdev 风格帧、资产图片的构图与定点修改选择;渲染出的提示词文本是缓存。
29
+ - **本阶段继承**:已接受的视觉方向与制作配置、资产身份与变体、当前用途、文字政策;高压力
30
+ lookdev frame 还继承准确剧本 block 的场次事实与信息权限。
31
+ - **本阶段不越权**:不承载有先后顺序的剧情动作,不改写资产身份、地理或故事状态,不决定
32
+ 镜头边界。
33
+
34
+ ## 制作形态需要什么
35
+
36
+ 视觉风格不是贴在提示词前面的标签。创作者已接受的视觉方向与制作形态由项目层决定并传入,
37
+ **本技能不加载形态卡,也不自行选择形态**;本节只说明本阶段需要形态回答什么、以及拿到
38
+ 答案后投影成哪些字段。
39
+
40
+ 形态决定属于 `craft_default`:创作者说明理由即可覆盖。形态不能创造新的
41
+ `structural_invariant`,也不能改写身份、地理、持物归属与可读文字政策。审查者不得单凭
42
+ 形态偏好阻断交付。
43
+
44
+ 不要用“加一句风格前缀”处理形态差异。前缀只改变检索标签;形态改变的是**必须出现和
45
+ 可以省略的字段**,只有后者会被执行,也只有后者能被审查。
46
+
47
+ 本阶段要向形态决定问:单帧上**形、材质、层次、光色**各自怎么表达身份与状态。
48
+
49
+ 身份段的载体随形态改变写法:实拍写造型状态而不是长相;二维写剪影与色块;三维写比例与
50
+ 姿态边界;水墨写不可散的边缘;Q 版写头身比与放大记号;强精修画风必须**对比着写**同剧
51
+ 其他角色的结构差异,否则角色会被拉平。
52
+
53
+ 本阶段新增:单帧可见的形/材质/层次/光色投影。
54
+
55
+ ## 参考媒体与补拍
56
+
57
+ - **参考图能决定什么要逐张写明**:每张参考的用途、可以照搬什么、不可以照搬什么。身份参考
58
+ 不自动决定构图;构图、尺度或效果参考不自动带入图中人物、服装、文字、道具与故事状态。
59
+ - **像素主张需要证据**:关于参考图上可见内容(尤其文字、水印、标牌、界面)的断言,必须
60
+ 来自创作者/参考图权利人的可核对说明,或运行环境获授权后形成的输入参考观察记录,并绑定
61
+ 被检查的字节。两者都没有时保持 `unverified`,负面提示词不能代替证据。
62
+ - **观众揭示时机**:某一事实何时可被观众看到,由已接受的可见性决定绑定其来源、载体、
63
+ 权限、触发与保护方式。构图既不能提前泄露该事实,也不能遮掉本环节必须传达的载体。
64
+ - **母版、补拍与替代**:补拍默认只补充、不替代母版。普通母版不增加版本范围字段;只有
65
+ 补拍/替代版才声明 `pickup | alternate`,用同一文件内稳定的记录 ID 说明母版与补充关系,并把每项原文要求对应到当前字段或说明
66
+ 去向。只有下游审查结论才能批准替代,不得回写形成循环引用。
67
+
68
+ ## 本阶段规则
69
+
70
+ ### `IMG`
71
+
72
+ | ID | Class | Knowledge |
73
+ |---|---|---|
74
+ | IMG-01 | structural_invariant | Prompt specs bind exact accepted asset and variant IDs. |
75
+ | IMG-02 | craft_default | Put distinguishing identity, geometry, scale, or state before generic quality language. |
76
+ | IMG-03 | reviewed_invariant | Character sheets preserve identity while depicting one coherent Look. |
77
+ | IMG-04 | reviewed_invariant | Location plates preserve geography, orientation, anchors, material, and light, normally without cast. |
78
+ | IMG-05 | reviewed_invariant | Prop plates preserve scale, shape, material, wear, function, and text policy. |
79
+ | IMG-06 | structural_invariant | Edit prompts declare exact target, changes, preserve set, and expected continuity impact. |
80
+ | IMG-07 | structural_invariant | Readable text cannot coexist with a global no-text constraint. |
81
+ | IMG-08 | reviewed_invariant | A claim about reference pixels requires a creator/reference-owner description or authorized input-reference observation bound to the inspected bytes; otherwise admission stays unresolved, and a negative prompt cannot stand in for evidence. |
82
+ | IMG-09 | reviewed_invariant | Each reference states its purpose, what may be copied, and what must not be copied; a composition-, scale-, or effect-only reference cannot redefine identity, content, text, or story state. |
83
+ | IMG-10 | reviewed_invariant | Views of one Location in the same time/weather state share key-light source, colour-temperature relation, and contrast direction; any difference cites a recorded cause and its delta. |
84
+ | IMG-11 | reviewed_invariant | A lookdev frame binds accepted visual direction and production profile across a declared character-expression, core-location, or high-pressure test axis; a high-pressure frame also binds exact screenplay blocks for story state and information permission, while style references may control only declared surface treatment and never identity, fixed geography, story state, cast count, or prop text. |
85
+ | IMG-12 | reviewed_invariant | Every multi-reference binding carries a stable `slot_id` and explicit unique `order`, so array reordering or insertion cannot silently change a reference's role; until a project validator owns this check, the reviewer cites conflicting slots/orders rather than claiming mechanical enforcement. |
86
+
87
+ 规则分级由高到低:`structural_invariant`(结构缺陷,阻断)、
88
+ `reviewed_invariant`(需证据判断)、`craft_default`(常用做法,可覆盖)、
89
+ `taste_option`(创作者选择,不作缺陷)。创作者已接受的事实优先于本表。