@lemoncat7/dsh-partner 2.5.0 → 2.7.1

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 (653) hide show
  1. package/README.md +4 -0
  2. package/docs/THIRD_PARTY_LICENSES.md +13 -0
  3. package/docs/attachment-storage.md +18 -0
  4. package/docs/director-skills.md +24 -0
  5. package/docs/long-task-continuation.md +1 -1
  6. package/docs/releases/2.6.0.md +11 -0
  7. package/docs/releases/2.7.1.md +10 -0
  8. package/lib/agent-runtime.d.ts +3 -1
  9. package/lib/agent-runtime.d.ts.map +1 -1
  10. package/lib/agent-runtime.js +35 -11
  11. package/lib/agent-runtime.js.map +1 -1
  12. package/lib/api/features/attachments-api.d.ts.map +1 -1
  13. package/lib/api/features/attachments-api.js +31 -1
  14. package/lib/api/features/attachments-api.js.map +1 -1
  15. package/lib/api.d.ts +1 -1
  16. package/lib/api.d.ts.map +1 -1
  17. package/lib/api.js +1 -1
  18. package/lib/api.js.map +1 -1
  19. package/lib/attachments/grouped-storage.d.ts +5 -0
  20. package/lib/attachments/grouped-storage.d.ts.map +1 -0
  21. package/lib/attachments/grouped-storage.js +47 -0
  22. package/lib/attachments/grouped-storage.js.map +1 -0
  23. package/lib/attachments/service.d.ts +17 -0
  24. package/lib/attachments/service.d.ts.map +1 -1
  25. package/lib/attachments/service.js +100 -8
  26. package/lib/attachments/service.js.map +1 -1
  27. package/lib/attachments/shared-storage.d.ts +7 -0
  28. package/lib/attachments/shared-storage.d.ts.map +1 -0
  29. package/lib/attachments/shared-storage.js +44 -0
  30. package/lib/attachments/shared-storage.js.map +1 -0
  31. package/lib/attachments/storage-admin.d.ts +6 -0
  32. package/lib/attachments/storage-admin.d.ts.map +1 -0
  33. package/lib/attachments/storage-admin.js +43 -0
  34. package/lib/attachments/storage-admin.js.map +1 -0
  35. package/lib/attachments/storage-types.d.ts +33 -0
  36. package/lib/attachments/storage-types.d.ts.map +1 -0
  37. package/lib/attachments/storage-types.js +2 -0
  38. package/lib/attachments/storage-types.js.map +1 -0
  39. package/lib/attachments/tool.d.ts.map +1 -1
  40. package/lib/attachments/tool.js +16 -5
  41. package/lib/attachments/tool.js.map +1 -1
  42. package/lib/channels/delivery-policy.d.ts.map +1 -1
  43. package/lib/channels/delivery-policy.js +6 -4
  44. package/lib/channels/delivery-policy.js.map +1 -1
  45. package/lib/channels/direct/message-format.js +294 -157
  46. package/lib/channels/direct/message-format.js.map +4 -4
  47. package/lib/channels/manager.d.ts +6 -3
  48. package/lib/channels/manager.d.ts.map +1 -1
  49. package/lib/channels/manager.js +64 -44
  50. package/lib/channels/manager.js.map +1 -1
  51. package/lib/channels/weixin/api.d.ts.map +1 -1
  52. package/lib/channels/weixin/api.js +7 -2
  53. package/lib/channels/weixin/api.js.map +1 -1
  54. package/lib/channels/weixin/errors.d.ts +14 -0
  55. package/lib/channels/weixin/errors.d.ts.map +1 -0
  56. package/lib/channels/weixin/errors.js +29 -0
  57. package/lib/channels/weixin/errors.js.map +1 -0
  58. package/lib/channels/weixin/poll.d.ts +14 -0
  59. package/lib/channels/weixin/poll.d.ts.map +1 -0
  60. package/lib/channels/weixin/poll.js +50 -0
  61. package/lib/channels/weixin/poll.js.map +1 -0
  62. package/lib/client-controller.d.ts.map +1 -1
  63. package/lib/client-controller.js +3 -3
  64. package/lib/client-controller.js.map +1 -1
  65. package/lib/client.d.ts.map +1 -1
  66. package/lib/client.js +983 -575
  67. package/lib/client.js.map +4 -4
  68. package/lib/collaboration/composition.d.ts.map +1 -1
  69. package/lib/collaboration/composition.js +16 -6
  70. package/lib/collaboration/composition.js.map +1 -1
  71. package/lib/collaboration/domain.d.ts +6 -0
  72. package/lib/collaboration/domain.d.ts.map +1 -1
  73. package/lib/collaboration/domain.js.map +1 -1
  74. package/lib/collaboration/service.d.ts.map +1 -1
  75. package/lib/collaboration/service.js +33 -3
  76. package/lib/collaboration/service.js.map +1 -1
  77. package/lib/concern-notification.d.ts.map +1 -1
  78. package/lib/concern-notification.js +2 -1
  79. package/lib/concern-notification.js.map +1 -1
  80. package/lib/concern-tool.js +1 -1
  81. package/lib/concern-tool.js.map +1 -1
  82. package/lib/execution/reply-progress.d.ts.map +1 -1
  83. package/lib/execution/reply-progress.js +4 -2
  84. package/lib/execution/reply-progress.js.map +1 -1
  85. package/lib/execution/service.d.ts +1 -1
  86. package/lib/execution/service.d.ts.map +1 -1
  87. package/lib/execution/service.js +4 -7
  88. package/lib/execution/service.js.map +1 -1
  89. package/lib/index.d.ts.map +1 -1
  90. package/lib/index.js +3 -1
  91. package/lib/index.js.map +1 -1
  92. package/lib/memory-reflection.js +2 -2
  93. package/lib/memory-reflection.js.map +1 -1
  94. package/lib/message-source.d.ts +25 -0
  95. package/lib/message-source.d.ts.map +1 -0
  96. package/lib/message-source.js +8 -0
  97. package/lib/message-source.js.map +1 -0
  98. package/lib/observation-loop.js +4 -4
  99. package/lib/observation-loop.js.map +1 -1
  100. package/lib/pendant/reader.js +1 -1
  101. package/lib/pendant/reader.js.map +1 -1
  102. package/lib/pendant/renderer.d.ts.map +1 -1
  103. package/lib/pendant/renderer.js +18 -2
  104. package/lib/pendant/renderer.js.map +1 -1
  105. package/lib/pendant/settings-panel.js +1 -1
  106. package/lib/pendant/settings-panel.js.map +1 -1
  107. package/lib/pendant/startup.d.ts +4 -0
  108. package/lib/pendant/startup.d.ts.map +1 -0
  109. package/lib/pendant/startup.js +64 -0
  110. package/lib/pendant/startup.js.map +1 -0
  111. package/lib/pendant/widget.d.ts.map +1 -1
  112. package/lib/pendant/widget.js +2 -1
  113. package/lib/pendant/widget.js.map +1 -1
  114. package/lib/pendant-renderer.js +169 -169
  115. package/lib/persona/service.js +1 -1
  116. package/lib/persona/service.js.map +1 -1
  117. package/lib/requirements/attachments.d.ts +7 -0
  118. package/lib/requirements/attachments.d.ts.map +1 -0
  119. package/lib/requirements/attachments.js +26 -0
  120. package/lib/requirements/attachments.js.map +1 -0
  121. package/lib/requirements/domain.d.ts +1 -1
  122. package/lib/requirements/domain.d.ts.map +1 -1
  123. package/lib/requirements/service.d.ts.map +1 -1
  124. package/lib/requirements/service.js +4 -1
  125. package/lib/requirements/service.js.map +1 -1
  126. package/lib/scheduler/channel-origin.d.ts +7 -0
  127. package/lib/scheduler/channel-origin.d.ts.map +1 -0
  128. package/lib/scheduler/channel-origin.js +27 -0
  129. package/lib/scheduler/channel-origin.js.map +1 -0
  130. package/lib/scheduler/continuations.d.ts +2 -2
  131. package/lib/scheduler/continuations.d.ts.map +1 -1
  132. package/lib/scheduler/continuations.js +28 -8
  133. package/lib/scheduler/continuations.js.map +1 -1
  134. package/lib/scheduler/domain.d.ts +13 -0
  135. package/lib/scheduler/domain.d.ts.map +1 -1
  136. package/lib/scheduler/final-reply.d.ts +13 -0
  137. package/lib/scheduler/final-reply.d.ts.map +1 -0
  138. package/lib/scheduler/final-reply.js +21 -0
  139. package/lib/scheduler/final-reply.js.map +1 -0
  140. package/lib/skills/builtin-resources.d.ts +6 -0
  141. package/lib/skills/builtin-resources.d.ts.map +1 -0
  142. package/lib/skills/builtin-resources.js +47 -0
  143. package/lib/skills/builtin-resources.js.map +1 -0
  144. package/lib/skills/builtin.d.ts +2 -5
  145. package/lib/skills/builtin.d.ts.map +1 -1
  146. package/lib/skills/builtin.js +6 -0
  147. package/lib/skills/builtin.js.map +1 -1
  148. package/lib/skills/director-builtins.d.ts +8 -0
  149. package/lib/skills/director-builtins.d.ts.map +1 -0
  150. package/lib/skills/director-builtins.js +65 -0
  151. package/lib/skills/director-builtins.js.map +1 -0
  152. package/lib/skills/drama-builtin.d.ts +3 -0
  153. package/lib/skills/drama-builtin.d.ts.map +1 -0
  154. package/lib/skills/drama-builtin.js +49 -0
  155. package/lib/skills/drama-builtin.js.map +1 -0
  156. package/lib/skills/long-task-continuation.d.ts +2 -2
  157. package/lib/skills/long-task-continuation.d.ts.map +1 -1
  158. package/lib/skills/long-task-continuation.js +2 -2
  159. package/lib/skills/service.d.ts.map +1 -1
  160. package/lib/skills/service.js +8 -3
  161. package/lib/skills/service.js.map +1 -1
  162. package/lib/skills/viora-canvas-builtin.d.ts +3 -0
  163. package/lib/skills/viora-canvas-builtin.d.ts.map +1 -0
  164. package/lib/skills/viora-canvas-builtin.js +19 -0
  165. package/lib/skills/viora-canvas-builtin.js.map +1 -0
  166. package/lib/storage/migrate-layout.d.ts.map +1 -1
  167. package/lib/storage/migrate-layout.js +13 -4
  168. package/lib/storage/migrate-layout.js.map +1 -1
  169. package/lib/tasks/context.js +1 -0
  170. package/lib/tasks/context.js.map +1 -1
  171. package/lib/tasks/continuation.d.ts.map +1 -1
  172. package/lib/tasks/continuation.js +3 -0
  173. package/lib/tasks/continuation.js.map +1 -1
  174. package/lib/tasks/domain.d.ts +2 -0
  175. package/lib/tasks/domain.d.ts.map +1 -1
  176. package/lib/tasks/service.d.ts +2 -1
  177. package/lib/tasks/service.d.ts.map +1 -1
  178. package/lib/tasks/service.js +15 -1
  179. package/lib/tasks/service.js.map +1 -1
  180. package/lib/ui/attachment-storage.d.ts +2 -0
  181. package/lib/ui/attachment-storage.d.ts.map +1 -0
  182. package/lib/ui/attachment-storage.js +59 -0
  183. package/lib/ui/attachment-storage.js.map +1 -0
  184. package/lib/ui/capability-editor.js +1 -1
  185. package/lib/ui/capability-editor.js.map +1 -1
  186. package/lib/ui/companion-access-panel.js +1 -1
  187. package/lib/ui/companion-access-panel.js.map +1 -1
  188. package/lib/ui/companion-create.js +1 -1
  189. package/lib/ui/companion-create.js.map +1 -1
  190. package/lib/ui/companion-picker.js +1 -1
  191. package/lib/ui/companion-picker.js.map +1 -1
  192. package/lib/ui/identity-editor.js +1 -1
  193. package/lib/ui/identity-editor.js.map +1 -1
  194. package/lib/ui/mcp-capabilities.js +1 -1
  195. package/lib/ui/mcp-capabilities.js.map +1 -1
  196. package/lib/ui/mcp-panel.js +1 -1
  197. package/lib/ui/mcp-panel.js.map +1 -1
  198. package/lib/ui/memory/concern-board.js +2 -2
  199. package/lib/ui/memory/concern-board.js.map +1 -1
  200. package/lib/ui/memory/concern-deletion.d.ts +1 -1
  201. package/lib/ui/memory/concern-deletion.d.ts.map +1 -1
  202. package/lib/ui/memory/concern-deletion.js +9 -4
  203. package/lib/ui/memory/concern-deletion.js.map +1 -1
  204. package/lib/ui/memory/concern-panel.js +1 -1
  205. package/lib/ui/memory/concern-panel.js.map +1 -1
  206. package/lib/ui/memory/memory-library.js +1 -1
  207. package/lib/ui/memory/memory-library.js.map +1 -1
  208. package/lib/ui/memory/memory-panel.js +1 -1
  209. package/lib/ui/memory/memory-panel.js.map +1 -1
  210. package/lib/ui/partner-components.js +1 -1
  211. package/lib/ui/partner-components.js.map +1 -1
  212. package/lib/ui/requirement-board.js +1 -1
  213. package/lib/ui/requirement-board.js.map +1 -1
  214. package/lib/ui/requirement-dialog.js +1 -1
  215. package/lib/ui/requirement-dialog.js.map +1 -1
  216. package/lib/ui/requirement-tasks-panel.js +1 -1
  217. package/lib/ui/requirement-tasks-panel.js.map +1 -1
  218. package/lib/ui/schedule-panel.js +1 -1
  219. package/lib/ui/schedule-panel.js.map +1 -1
  220. package/lib/ui/skills-panel.js +1 -1
  221. package/lib/ui/skills-panel.js.map +1 -1
  222. package/lib/ui/storage-settings.d.ts.map +1 -1
  223. package/lib/ui/storage-settings.js +2 -1
  224. package/lib/ui/storage-settings.js.map +1 -1
  225. package/lib/ui/task-board-stage.js +1 -1
  226. package/lib/ui/task-board-stage.js.map +1 -1
  227. package/lib/ui/workspace-components.js +1 -1
  228. package/lib/ui/workspace-components.js.map +1 -1
  229. package/lib/ui/workspace-navigation.d.ts +16 -16
  230. package/lib/ui/workspace-navigation.js +1 -1
  231. package/lib/ui/workspace-navigation.js.map +1 -1
  232. package/package.json +53 -41
  233. package/resources/skills/cinematic-director/manifest.json +205 -0
  234. package/resources/skills/cinematic-director/upstream/CHANGELOG.md +213 -0
  235. package/resources/skills/cinematic-director/upstream/CONTRIBUTING.md +316 -0
  236. package/resources/skills/cinematic-director/upstream/LICENSE +21 -0
  237. package/resources/skills/cinematic-director/upstream/README.md +507 -0
  238. package/resources/skills/cinematic-director/upstream/SKILL.md +420 -0
  239. package/resources/skills/cinematic-director/upstream/assets/beat-sheet-template.md +97 -0
  240. package/resources/skills/cinematic-director/upstream/assets/director-book-template.md +254 -0
  241. package/resources/skills/cinematic-director/upstream/assets/edit-timeline-template.md +147 -0
  242. package/resources/skills/cinematic-director/upstream/assets/keyframe-prompt-template.md +334 -0
  243. package/resources/skills/cinematic-director/upstream/assets/qc-checklist.md +153 -0
  244. package/resources/skills/cinematic-director/upstream/assets/shot-plan-template.md +95 -0
  245. package/resources/skills/cinematic-director/upstream/assets/sound-plan-template.md +181 -0
  246. package/resources/skills/cinematic-director/upstream/assets/video-prompt-template.md +305 -0
  247. package/resources/skills/cinematic-director/upstream/evals/run.md +69 -0
  248. package/resources/skills/cinematic-director/upstream/references/ai-video-tool-adapters.md +527 -0
  249. package/resources/skills/cinematic-director/upstream/references/blocking-and-staging.md +424 -0
  250. package/resources/skills/cinematic-director/upstream/references/cinematic-language.md +595 -0
  251. package/resources/skills/cinematic-director/upstream/references/continuity-bible.md +410 -0
  252. package/resources/skills/cinematic-director/upstream/references/director_styles/01_spielberg.md +192 -0
  253. package/resources/skills/cinematic-director/upstream/references/director_styles/02_hitchcock.md +193 -0
  254. package/resources/skills/cinematic-director/upstream/references/director_styles/03_kubrick.md +196 -0
  255. package/resources/skills/cinematic-director/upstream/references/director_styles/04_kurosawa.md +196 -0
  256. package/resources/skills/cinematic-director/upstream/references/director_styles/05_scorsese.md +195 -0
  257. package/resources/skills/cinematic-director/upstream/references/director_styles/06_fellini.md +197 -0
  258. package/resources/skills/cinematic-director/upstream/references/director_styles/07_bergman.md +197 -0
  259. package/resources/skills/cinematic-director/upstream/references/director_styles/08_tarkovsky.md +184 -0
  260. package/resources/skills/cinematic-director/upstream/references/director_styles/09_wong_kar_wai.md +189 -0
  261. package/resources/skills/cinematic-director/upstream/references/director_styles/10_nolan.md +185 -0
  262. package/resources/skills/cinematic-director/upstream/references/director_styles/11_villeneuve.md +188 -0
  263. package/resources/skills/cinematic-director/upstream/references/director_styles/12_fincher.md +185 -0
  264. package/resources/skills/cinematic-director/upstream/references/director_styles/13_refn.md +186 -0
  265. package/resources/skills/cinematic-director/upstream/references/director_styles/14_bi_gan.md +188 -0
  266. package/resources/skills/cinematic-director/upstream/references/director_styles/15_zhang_yimou.md +192 -0
  267. package/resources/skills/cinematic-director/upstream/references/director_styles/16_hou_hsiao_hsien.md +192 -0
  268. package/resources/skills/cinematic-director/upstream/references/director_styles/17_park_chan_wook.md +192 -0
  269. package/resources/skills/cinematic-director/upstream/references/director_styles/18_malick.md +191 -0
  270. package/resources/skills/cinematic-director/upstream/references/director_styles/19_michael_mann.md +192 -0
  271. package/resources/skills/cinematic-director/upstream/references/director_styles/20_coen_brothers.md +194 -0
  272. package/resources/skills/cinematic-director/upstream/references/director_styles/README.md +89 -0
  273. package/resources/skills/cinematic-director/upstream/references/director_styles/example_comparisons.md +140 -0
  274. package/resources/skills/cinematic-director/upstream/references/editing-and-assembly.md +263 -0
  275. package/resources/skills/cinematic-director/upstream/references/failure-modes.md +594 -0
  276. package/resources/skills/cinematic-director/upstream/references/genre-playbooks.md +407 -0
  277. package/resources/skills/cinematic-director/upstream/references/image-model-adapters.md +290 -0
  278. package/resources/skills/cinematic-director/upstream/references/lighting-and-color.md +349 -0
  279. package/resources/skills/cinematic-director/upstream/references/product-and-macro.md +207 -0
  280. package/resources/skills/cinematic-director/upstream/references/production-workflow.md +238 -0
  281. package/resources/skills/cinematic-director/upstream/references/prompt-lexicon.md +602 -0
  282. package/resources/skills/cinematic-director/upstream/references/sound-and-dialogue.md +364 -0
  283. package/resources/skills/director-skills/manifest.json +541 -0
  284. package/resources/skills/director-skills/upstream/CHANGELOG.md +32 -0
  285. package/resources/skills/director-skills/upstream/LICENSE +21 -0
  286. package/resources/skills/director-skills/upstream/MANIFEST.md +366 -0
  287. package/resources/skills/director-skills/upstream/README.md +251 -0
  288. package/resources/skills/director-skills/upstream/RESEARCH_PROVENANCE.md +37 -0
  289. package/resources/skills/director-skills/upstream/SKILL.md +114 -0
  290. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/SKILL.md +81 -0
  291. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/checklists/continuity_checklist.md +8 -0
  292. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/examples/character_continuity_update.md +9 -0
  293. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/examples/location_continuity_update.md +9 -0
  294. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/continuity_system.md +21 -0
  295. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/golden_image_workflow.md +29 -0
  296. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/identity_anchors.md +14 -0
  297. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/visual_bible_system.md +15 -0
  298. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/character_profile.md +15 -0
  299. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/continuity_checklist.md +11 -0
  300. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/costume_profile.md +12 -0
  301. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/location_profile.md +14 -0
  302. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/prop_profile.md +13 -0
  303. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/visual_style_bible.md +15 -0
  304. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/tests/continuity_tests.md +6 -0
  305. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/SKILL.md +80 -0
  306. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/checklists/image_prompt_quality_checklist.md +10 -0
  307. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/examples/shot_list_to_image_prompts.md +4 -0
  308. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/image_prompt_components.md +22 -0
  309. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/lighting_and_photorealism.md +19 -0
  310. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/negative_prompt_patterns.md +18 -0
  311. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/prompt_anatomy.md +18 -0
  312. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/character_reference_sheet_prompt.md +5 -0
  313. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/cinematic_still_prompt.md +3 -0
  314. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/keyframe_prompt.md +6 -0
  315. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/location_reference_prompt.md +3 -0
  316. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/prop_prompt.md +3 -0
  317. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/tests/image_prompt_completeness_tests.md +5 -0
  318. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/SKILL.md +84 -0
  319. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/checklists/video_prompt_quality_checklist.md +9 -0
  320. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/examples/image_prompt_to_video_prompt.md +3 -0
  321. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/ai_film_production_pipeline.md +21 -0
  322. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/audio_motion_timing.md +16 -0
  323. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/camera_lens_movement.md +26 -0
  324. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/negative_prompt_patterns.md +18 -0
  325. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/prompt_anatomy.md +18 -0
  326. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/video_prompt_components.md +25 -0
  327. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/image_to_video_prompt.md +5 -0
  328. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/text_to_video_prompt.md +5 -0
  329. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/video_beat_prompt.md +9 -0
  330. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/tests/video_prompt_completeness_tests.md +5 -0
  331. package/resources/skills/director-skills/upstream/skills/model-adaptation/SKILL.md +82 -0
  332. package/resources/skills/director-skills/upstream/skills/model-adaptation/checklists/model_export_checklist.md +9 -0
  333. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/failed_model_transfer_diagnosis.md +5 -0
  334. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/image_prompt_translation.md +10 -0
  335. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/same_scene_across_models.md +9 -0
  336. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/universal_prompt_to_model_specific_exports.md +14 -0
  337. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/video_prompt_translation.md +9 -0
  338. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/failure_modes_by_model.md +13 -0
  339. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/image_model_profiles.md +226 -0
  340. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/model_capability_matrix.md +24 -0
  341. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/model_update_protocol.md +10 -0
  342. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/parameter_compatibility.md +20 -0
  343. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/prompt_translation_rules.md +18 -0
  344. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/video_model_profiles.md +251 -0
  345. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/model_comparison_table.md +4 -0
  346. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/model_specific_prompt_export.md +21 -0
  347. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/multi_model_export_package.md +18 -0
  348. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/prompt_translation_report.md +13 -0
  349. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/universal_prompt_brief.md +25 -0
  350. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/model_routing_tests.md +8 -0
  351. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/prompt_translation_tests.md +7 -0
  352. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/research_provenance_tests.md +6 -0
  353. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/unknown_capability_tests.md +7 -0
  354. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/SKILL.md +82 -0
  355. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/checklists/diagnostic_checklist.md +8 -0
  356. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/checklists/release_quality_checklist.md +9 -0
  357. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/examples/failed_output_to_revised_prompt.md +10 -0
  358. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/examples/final_prompt_package_export.md +10 -0
  359. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/failure_modes.md +13 -0
  360. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/iteration_diagnostics.md +17 -0
  361. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/revision_loops.md +17 -0
  362. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/story_voice_release_qc.md +30 -0
  363. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/failed_output_intake.md +13 -0
  364. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/final_production_package.md +11 -0
  365. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/prompt_revision_report.md +17 -0
  366. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/tests/prompt_quality_checklist_tests.md +6 -0
  367. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/SKILL.md +81 -0
  368. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/checklists/scene_quality_checklist.md +8 -0
  369. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/examples/scene_to_screenplay_excerpt.md +18 -0
  370. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/dialogue_and_subtext.md +15 -0
  371. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/fountain_workflow.md +29 -0
  372. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/scene_construction.md +20 -0
  373. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/screenplay_format.md +18 -0
  374. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/beat_sheet.md +6 -0
  375. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/dialogue_pass.md +9 -0
  376. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/fountain_scene.md +25 -0
  377. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/screenplay_scene.md +19 -0
  378. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/tests/screenplay_scene_tests.md +6 -0
  379. package/resources/skills/director-skills/upstream/skills/short-film-development/SKILL.md +83 -0
  380. package/resources/skills/director-skills/upstream/skills/short-film-development/checklists/concept_quality_checklist.md +8 -0
  381. package/resources/skills/director-skills/upstream/skills/short-film-development/examples/idea_to_logline.md +13 -0
  382. package/resources/skills/director-skills/upstream/skills/short-film-development/examples/logline_to_outline.md +10 -0
  383. package/resources/skills/director-skills/upstream/skills/short-film-development/references/ai_storytelling_workflow.md +46 -0
  384. package/resources/skills/director-skills/upstream/skills/short-film-development/references/continuity_handoff.md +8 -0
  385. package/resources/skills/director-skills/upstream/skills/short-film-development/references/screenplay_structure.md +19 -0
  386. package/resources/skills/director-skills/upstream/skills/short-film-development/references/story_development_workflow.md +23 -0
  387. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/beat_sheet.md +7 -0
  388. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/idea_intake.md +16 -0
  389. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/logline.md +10 -0
  390. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/short_film_treatment.md +23 -0
  391. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/short_story_plan.md +22 -0
  392. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/story_premise.md +19 -0
  393. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/story_revision_audit.md +22 -0
  394. package/resources/skills/director-skills/upstream/skills/short-film-development/tests/output_format_tests.md +3 -0
  395. package/resources/skills/director-skills/upstream/skills/short-film-development/tests/routing_tests.md +7 -0
  396. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/SKILL.md +77 -0
  397. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/checklists/shotlist_quality_checklist.md +8 -0
  398. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/examples/screenplay_scene_to_shot_list.md +8 -0
  399. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/camera_plan.md +11 -0
  400. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/production_breakdown.md +11 -0
  401. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/shotlist_schema.md +21 -0
  402. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/asset_list.md +7 -0
  403. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/camera_plan.md +10 -0
  404. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/scene_breakdown.md +16 -0
  405. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/shot_list.md +5 -0
  406. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/tests/screenplay_to_shotlist_tests.md +5 -0
  407. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/SKILL.md +77 -0
  408. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/checklists/style_quality_checklist.md +8 -0
  409. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/examples/genre_to_visual_direction.md +15 -0
  410. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/camera_lens_movement.md +26 -0
  411. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/cinematic_language.md +32 -0
  412. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/genre_style_tone.md +17 -0
  413. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/lighting_and_photorealism.md +19 -0
  414. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/templates/visual_style_bible.md +33 -0
  415. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/tests/style_translation_tests.md +5 -0
  416. package/resources/skills/director-skills/upstream/tests/master_router_tests.md +80 -0
  417. package/resources/skills/drama-production/manifest.json +933 -0
  418. package/resources/skills/drama-production/upstream/LICENSE +21 -0
  419. package/resources/skills/drama-production/upstream/skills/short-drama/SKILL.md +153 -0
  420. package/resources/skills/drama-production/upstream/skills/short-drama/agents/openai.yaml +4 -0
  421. package/resources/skills/drama-production/upstream/skills/short-drama/assets/creator-decision.example.jsonl +4 -0
  422. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/app.js +1263 -0
  423. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/index.html +114 -0
  424. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/styles.css +297 -0
  425. package/resources/skills/drama-production/upstream/skills/short-drama/assets/production-observation.example.jsonl +2 -0
  426. package/resources/skills/drama-production/upstream/skills/short-drama/assets/project-template/short-drama.json +36 -0
  427. package/resources/skills/drama-production/upstream/skills/short-drama/assets/reference-observation.example.jsonl +2 -0
  428. package/resources/skills/drama-production/upstream/skills/short-drama/references/audience-reveal.md +21 -0
  429. package/resources/skills/drama-production/upstream/skills/short-drama/references/contract-and-ownership.md +45 -0
  430. package/resources/skills/drama-production/upstream/skills/short-drama/references/creator-documents.md +230 -0
  431. package/resources/skills/drama-production/upstream/skills/short-drama/references/creator-workflow.md +98 -0
  432. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +73 -0
  433. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//344/272/214/347/273/264/345/212/250/346/200/201/346/274/253.md +74 -0
  434. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//345/233/275/346/274/253/344/272/214/346/254/241/345/205/203.md +79 -0
  435. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +75 -0
  436. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +85 -0
  437. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//351/243/216/346/240/274/345/214/226/344/270/211/347/273/264.md +72 -0
  438. package/resources/skills/drama-production/upstream/skills/short-drama/references/knowhow-index.md +85 -0
  439. package/resources/skills/drama-production/upstream/skills/short-drama/references/look-development.md +51 -0
  440. package/resources/skills/drama-production/upstream/skills/short-drama/references/pickup-and-alternate.md +24 -0
  441. package/resources/skills/drama-production/upstream/skills/short-drama/references/production-form-profiles.md +126 -0
  442. package/resources/skills/drama-production/upstream/skills/short-drama/references/reference-roles.md +53 -0
  443. package/resources/skills/drama-production/upstream/skills/short-drama/references/runtime-preflight.md +24 -0
  444. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/creator_markdown_check.py +1413 -0
  445. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/dashboard_server.py +1798 -0
  446. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/project_tool.py +2454 -0
  447. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/selftest.py +287 -0
  448. package/resources/skills/drama-production/upstream/skills/short-drama-assets/SKILL.md +76 -0
  449. package/resources/skills/drama-production/upstream/skills/short-drama-assets/agents/openai.yaml +4 -0
  450. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/character-look.example.jsonl +3 -0
  451. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/continuity.example.jsonl +4 -0
  452. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/decisions.example.jsonl +5 -0
  453. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/location-view.example.jsonl +3 -0
  454. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/occurrences.example.jsonl +5 -0
  455. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/prop-state.example.jsonl +3 -0
  456. package/resources/skills/drama-production/upstream/skills/short-drama-assets/examples/minimal/characters.jsonl +2 -0
  457. package/resources/skills/drama-production/upstream/skills/short-drama-assets/examples/minimal/looks.jsonl +2 -0
  458. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/asset-review-checklist.md +82 -0
  459. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/character-and-look.md +190 -0
  460. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/continuity-delta.md +120 -0
  461. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/continuity-lock.md +122 -0
  462. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/identity-vs-variant.md +140 -0
  463. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/location-and-view.md +84 -0
  464. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/occurrence-extraction.md +108 -0
  465. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/prop-and-state.md +126 -0
  466. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/stage-contract.md +43 -0
  467. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/voice-direction.md +179 -0
  468. package/resources/skills/drama-production/upstream/skills/short-drama-assets/scripts/asset_check.py +267 -0
  469. package/resources/skills/drama-production/upstream/skills/short-drama-assets/scripts/selftest.py +89 -0
  470. package/resources/skills/drama-production/upstream/skills/short-drama-develop/SKILL.md +157 -0
  471. package/resources/skills/drama-production/upstream/skills/short-drama-develop/agents/openai.yaml +4 -0
  472. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/adaptation-map.example.jsonl +1 -0
  473. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/creative-brief.md +120 -0
  474. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/episode-map.jsonl +1 -0
  475. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/story-engine.md +181 -0
  476. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/adaptation-craft.md +219 -0
  477. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/creative-reference-intake.md +57 -0
  478. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/director-brief-craft.md +113 -0
  479. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/episode-design.md +509 -0
  480. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-and-hook-playbook.md +240 -0
  481. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +112 -0
  482. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +51 -0
  483. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +51 -0
  484. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +51 -0
  485. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +51 -0
  486. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +51 -0
  487. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +51 -0
  488. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +51 -0
  489. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +109 -0
  490. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//350/201/214/345/234/272/345/226/234/345/211/247.md +51 -0
  491. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +51 -0
  492. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +51 -0
  493. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards.md +92 -0
  494. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/mechanism-loop.md +282 -0
  495. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/multi-episode-intake.md +128 -0
  496. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/premise-devices.md +211 -0
  497. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/reveal-reversal-payoff.md +99 -0
  498. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/serial-character-and-memory.md +293 -0
  499. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/stage-contract.md +88 -0
  500. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/story-craft.md +359 -0
  501. package/resources/skills/drama-production/upstream/skills/short-drama-develop/scripts/episode_intake.py +699 -0
  502. package/resources/skills/drama-production/upstream/skills/short-drama-develop/scripts/selftest.py +47 -0
  503. package/resources/skills/drama-production/upstream/skills/short-drama-edit/SKILL.md +146 -0
  504. package/resources/skills/drama-production/upstream/skills/short-drama-edit/agents/openai.yaml +4 -0
  505. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/README.md +60 -0
  506. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/package.json +15 -0
  507. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/remotion.config.ts +6 -0
  508. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/Root.tsx +26 -0
  509. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/Subtitles.tsx +88 -0
  510. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/font.ts +46 -0
  511. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/index.ts +4 -0
  512. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/schema.ts +32 -0
  513. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/tsconfig.json +13 -0
  514. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets//345/211/252/350/276/221/345/215/225.md +43 -0
  515. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/cut-craft.md +38 -0
  516. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/delivery-verify.md +29 -0
  517. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/generated-footage.md +54 -0
  518. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/sound-and-subtitles.md +60 -0
  519. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/stage-contract.md +51 -0
  520. package/resources/skills/drama-production/upstream/skills/short-drama-edit/scripts/edit_tool.py +1156 -0
  521. package/resources/skills/drama-production/upstream/skills/short-drama-edit/scripts/selftest.py +520 -0
  522. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/SKILL.md +73 -0
  523. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/agents/openai.yaml +4 -0
  524. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +187 -0
  525. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/image-prompts.md +42 -0
  526. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +128 -0
  527. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/lookdev-prompts.md +34 -0
  528. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +2 -0
  529. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/character-and-look.md +153 -0
  530. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/common-recipe.md +241 -0
  531. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/edit-and-revision.md +110 -0
  532. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/location-plate.md +151 -0
  533. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/look-and-state-variant.md +97 -0
  534. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/lookdev-frame.md +34 -0
  535. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/production-sheet-recipes.md +177 -0
  536. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/prop-plate.md +137 -0
  537. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/review-and-fixtures.md +92 -0
  538. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/stage-contract.md +32 -0
  539. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/scripts/image_prompt_check.py +443 -0
  540. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/scripts/selftest.py +95 -0
  541. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/SKILL.md +245 -0
  542. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/agents/openai.yaml +4 -0
  543. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/assets/episode-candidate.example.jsonl +3 -0
  544. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/adaptation-triage.md +116 -0
  545. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/adaptation-value.md +124 -0
  546. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +155 -0
  547. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/chapter-extraction.md +144 -0
  548. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/stage-contract.md +67 -0
  549. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/scripts/novel_index.py +651 -0
  550. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/scripts/selftest.py +51 -0
  551. package/resources/skills/drama-production/upstream/skills/short-drama-produce/SKILL.md +183 -0
  552. package/resources/skills/drama-production/upstream/skills/short-drama-produce/agents/openai.yaml +4 -0
  553. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/adapter-contract.md +219 -0
  554. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/gpt-image-2.md +24 -0
  555. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-h3-video.md +86 -0
  556. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-music.md +25 -0
  557. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-speech.md +41 -0
  558. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/seedance.md +64 -0
  559. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/fixture_adapter.py +77 -0
  560. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/production_tool.py +2205 -0
  561. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/provider_adapters.py +1747 -0
  562. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/selftest.py +135 -0
  563. package/resources/skills/drama-production/upstream/skills/short-drama-review/SKILL.md +118 -0
  564. package/resources/skills/drama-production/upstream/skills/short-drama-review/agents/openai.yaml +4 -0
  565. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/finding-template.jsonl +2 -0
  566. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/supersession-decision.example.json +42 -0
  567. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/verdict-template.json +32 -0
  568. package/resources/skills/drama-production/upstream/skills/short-drama-review/examples/minimal-findings.jsonl +2 -0
  569. package/resources/skills/drama-production/upstream/skills/short-drama-review/examples/minimal-verdict.json +34 -0
  570. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/anti-template-repair.md +109 -0
  571. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/production-quality-gates.md +276 -0
  572. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/project-calibration.md +83 -0
  573. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/review-method.md +81 -0
  574. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-assets-prompts.md +111 -0
  575. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-source-analysis.md +108 -0
  576. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-story-script.md +264 -0
  577. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-visual-motion.md +184 -0
  578. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/stage-contract.md +28 -0
  579. package/resources/skills/drama-production/upstream/skills/short-drama-review/scripts/review_check.py +325 -0
  580. package/resources/skills/drama-production/upstream/skills/short-drama-review/scripts/selftest.py +87 -0
  581. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/SKILL.md +175 -0
  582. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/agents/openai.yaml +4 -0
  583. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +2 -0
  584. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/coverage-template.json +49 -0
  585. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/keyframe-prompts.md +36 -0
  586. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/keyframe-template.jsonl +2 -0
  587. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +12 -0
  588. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +2 -0
  589. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/shot-template.jsonl +2 -0
  590. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/blocking-playbooks.md +216 -0
  591. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/comic-keyframe-lexicon.md +156 -0
  592. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/coverage-audition.md +34 -0
  593. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/keyframe-craft.md +174 -0
  594. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/lighting-craft.md +39 -0
  595. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/production-shot-grammar.md +279 -0
  596. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/review-and-fixtures.md +36 -0
  597. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/scene-visual-plan.md +30 -0
  598. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +155 -0
  599. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/shot-craft.md +266 -0
  600. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/shot-revision-identity.md +25 -0
  601. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/stage-contract.md +57 -0
  602. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/scripts/selftest.py +191 -0
  603. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/scripts/storyboard_check.py +824 -0
  604. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/SKILL.md +154 -0
  605. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/agents/openai.yaml +4 -0
  606. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +21 -0
  607. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +101 -0
  608. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +217 -0
  609. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +2 -0
  610. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +31 -0
  611. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/performance.fragment.json +38 -0
  612. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/video-prompts.md +67 -0
  613. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +2 -0
  614. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/camera-audio-continuity.md +259 -0
  615. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/delivery-profile.md +273 -0
  616. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/generability.md +93 -0
  617. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/minimax-h3.md +253 -0
  618. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/motion-recipe.md +315 -0
  619. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/performance-action-timing.md +209 -0
  620. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/production-prompt-grammar.md +304 -0
  621. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/review-and-fixtures.md +139 -0
  622. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/seedance-2.0.md +50 -0
  623. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/seedance-2.5.md +122 -0
  624. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/stage-contract.md +60 -0
  625. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/target-model-profile.md +116 -0
  626. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/container_check.py +329 -0
  627. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/motion_timing_check.py +450 -0
  628. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/music_spec_check.py +327 -0
  629. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/selftest.py +82 -0
  630. package/resources/skills/drama-production/upstream/skills/short-drama-write/SKILL.md +99 -0
  631. package/resources/skills/drama-production/upstream/skills/short-drama-write/agents/openai.yaml +4 -0
  632. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/beats.jsonl +2 -0
  633. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/episode-card-standalone.json +120 -0
  634. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/episode-card.json +55 -0
  635. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/screenplay.md +36 -0
  636. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +89 -0
  637. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/dialogue-craft.md +526 -0
  638. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/production-format-dialect.md +273 -0
  639. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/scene-handoff-capsule.md +25 -0
  640. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/scene-sound-dramaturgy.md +43 -0
  641. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/screenplay-format.md +266 -0
  642. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/script-craft.md +745 -0
  643. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/stage-contract.md +36 -0
  644. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/substitutable-realization.md +107 -0
  645. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/duration_estimate.py +309 -0
  646. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/screenplay_index.py +1091 -0
  647. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/selftest.py +229 -0
  648. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/voice_sheet_check.py +416 -0
  649. package/resources/skills/viora-canvas-production/manifest.json +23 -0
  650. package/resources/skills/viora-canvas-production/references/canvas-contract.md +50 -0
  651. package/resources/skills/viora-canvas-production/references/creative-production.md +50 -0
  652. package/resources/skills/viora-canvas-production/references/generation-delivery.md +36 -0
  653. package/resources/skills/viora-canvas-production/references/production-ledger.md +25 -0
@@ -0,0 +1,364 @@
1
+ # Sound and Dialogue
2
+
3
+ Load this file when the deliverable includes a sound plan, generated or lip-synced dialogue, voice-over, a music brief, or when separately generated clips need audio to hold them together (Step 11, Mode H). Fillable template: [sound-plan-template.md](../assets/sound-plan-template.md). Cut logic, handles and timeline mechanics live in [editing-and-assembly.md](editing-and-assembly.md).
4
+
5
+ Frame-rate assumption throughout: 24 fps. Times written `m:ss.d`. A time written `@t` is measured from that shot's first frame; a bare timecode is program time.
6
+
7
+ ## Sound is a directing decision
8
+
9
+ Sound gets decided at shot-design time or it does not get decided at all. What a character hears determines where they look; the look determines the eyeline; the eyeline determines the next shot and its screen direction. Write sound after the shot list and you are decorating, not directing.
10
+
11
+ Three decisions belong in the director's book, before any generation:
12
+
13
+ 1. What the audience hears that the character does not (suspense), or what the character hears that the audience does not (dread).
14
+ 2. Which of the five layers carries this scene, and which layer is deliberately absent.
15
+ 3. Where the scene's one silence lands.
16
+
17
+ Worked, on the doorway scene used throughout this file: the audience hears a television behind the closed door; she never reacts to it, so we never learn whether she heard it. One sound decision, taken before a single shot existed, is what gives the scene its question.
18
+
19
+ ### The continuity-glue rule
20
+
21
+ In AI film, sound is the cheapest continuity tool available, by an order of magnitude. Lay **one unbroken ambience region under the whole sequence** — a single audio region spanning every clip, not one per clip, never re-triggered at a cut. The ear then reports "one place, one continuous time," and that buys real tolerance for the mismatches generation produces at the seam: wall texture that shifted, a key half a stop off, a grade that drifted.
22
+
23
+ It buys nothing for state errors. A changed costume, a prop that swapped hands, a different face — the audience reads those as story, and no bed hides them. Those are tracked in [continuity-bible.md](continuity-bible.md) and checked as item 4 of the hard-cut checklist in [editing-and-assembly.md](editing-and-assembly.md). Know which of the two problems you have before you reach for audio.
24
+
25
+ Test it on your own cut: mute the bed and replay the same two shots. Muted, the cut reads as two different rooms. With the bed, it reads as one room from two angles. That is a free fix. Regenerating the shot is not.
26
+
27
+ Corollary — **strip model-generated audio**. Many video models emit their own ambience. It restarts at every clip boundary, which is precisely the seam you are trying to hide. Treat model audio as a scratch guide, keep only sync-critical elements (a lip-synced line), mute everything else, and run your own continuous bed underneath.
28
+
29
+ ## The five-layer sound brief
30
+
31
+ | Layer | Code | Definition | Cut to picture? | Typical level, dB relative to dialogue at 0 |
32
+ |---|---|---|---|---|
33
+ | Room tone(房间底噪) | RT | The signature of the enclosing space with nothing happening in it: HVAC, refrigerator, lift shaft, hard-surface hiss | No — continuous under everything | −40 to −30 |
34
+ | Ambience(环境声) | AMB | The world outside the frame that is doing something: rain, traffic, birds, crowd, machinery, wind | No — continuous, crossfaded only at a location change | −28 to −18 |
35
+ | Foley(拟音) | FOL | Body-and-object sounds the on-screen subject makes: footsteps, cloth, breath, sitting, handling | Yes — synced to the visible movement | −22 to −14 |
36
+ | Spot effects(效果音) | SFX | Discrete events with a story job: a lock, a phone, a glass, a door, an impact | Yes — synced to the frame | −16 to −6 |
37
+ | Music(音乐) | MUS | Score, or source placed physically in the room | No — to named beats on its own bar grid, never to a picture cut | −20 under dialogue, −8 in the clear |
38
+
39
+ **One scale, and this file owns it.** Every level in the skill is dB relative to dialogue at 0, and dialogue sits at 0 by definition. None of them is dBFS: the programme is anchored once, at delivery, and a per-layer absolute figure is meaningless before that anchor exists. Where a scene has no dialogue, the 0 reference is notional — the level dialogue would have occupied — and the ranges above are unchanged. Do not re-anchor to the loudest element in the scene; that shifts every number in the plan and the mixer has no way to know it happened. The ranges are starting points, not gates: a deliberately suppressed element sits under its band on purpose, and saying so in the plan is the whole point of writing a level down.
40
+
41
+ [sound-plan-template.md](../assets/sound-plan-template.md) carries the worksheet that records the per-shot decision, and links here rather than restating these ranges. Programme loudness is declared once, in the export block of [edit-timeline-template.md](../assets/edit-timeline-template.md) — web delivery typically lands between −16 and −14 LUFS integrated, so name the figure per project and check your destination platform's current spec rather than assuming one.
42
+
43
+ ### Sound perspective
44
+
45
+ The layer table bands a level per layer; perspective is what moves an element inside its band. Every source carries the level, filter and reverb of the distance and the barrier between it and the camera, and a plan that reuses one bed unchanged across an extreme wide and a close-up is the single most audible giveaway of assembled-not-recorded sound. Offsets below are relative to the same element heard in the open, in the camera's own room, on the same dB-relative-to-dialogue scale.
46
+
47
+ | Where the source is | Level | Filter | Reverb |
48
+ |---|---|---|---|
49
+ | Same room as camera | 0, the reference | Full band | The room's own tail, early reflections audible |
50
+ | Through a partition — closed door, wall | −12 to −18 | LPF 600–900 Hz, 12 dB/oct or steeper | Far room's tail only, no near-room early reflections |
51
+ | Outside heard from inside — window, street below | −10 to −16 | LPF 1.5–2.5 kHz, thin below 120 Hz unless the source is traffic | Near-room tail added on top: it enters, then reverberates where the camera is |
52
+ | Off-screen versus on-screen, same room | −3 to −6 | Unchanged | Roughly half again as much tail; that wet/dry ratio is what places it out of frame |
53
+
54
+ Shot size moves perspective with it. Hold the widest size as the reference; on a closer size of the same action bring foley up 3–6 dB and dry it, and reverse the move going wide. Leave room tone and ambience where they are — the bed is the one thing a cut must not move, per the continuity-glue rule above.
55
+
56
+ ### Per-shot notation
57
+
58
+ Compact one-line form, for shot-list and QC rows:
59
+
60
+ ```text
61
+ SND S02 | SPACE MCU, stairwell; TV through the closed door -15, LPF 800 Hz, far-room tail only | RT stairwell, cold, faint lift hum | AMB rain on skylight, steady | FOL coat rustle @0.6, parcel paper crush @2.9 | SFX none | MUS M1 in @1.4 | SIL none
62
+ ```
63
+
64
+ The Mode H table itself — its columns, the dialogue sheet, the handoff checklist — is owned by [sound-plan-template.md](../assets/sound-plan-template.md). Four notation rules that make either form auditable: every shot gets a room-tone entry even when the entry is "bed continues"; every shot gets a `SPACE` entry naming the shot size and any source not in the camera's room, written `same room` when there is none; a cell you left blank is a decision you did not take, so write `none`; and deliberate silence is written in as an entry, never as an empty cell.
65
+
66
+ ### Which layer carries which genre
67
+
68
+ Per-genre sound defaults — the carrying layer, the ASL, the key ratio — are owned by [genre-playbooks.md](genre-playbooks.md), whose one-row-per-genre table carries a `Sound lead` column and whose per-genre blocks each carry a `Sound:` line. Load the genre first, then use this file to execute it. Two decisions that table cannot make for you: which layer you are deliberately **suppressing** — naming the absent layer is the choice, and "no score under this beat" is a stronger instruction than any adjective about the score you do want — and where the scene's one silence lands, which is per-scene, never per-genre.
69
+
70
+ ## Diegetic, non-diegetic, meta-diegetic
71
+
72
+ - **Diegetic**: exists in the world; the characters can hear it. A radio, a doorbell, footsteps.
73
+ - **Non-diegetic**: only the audience hears it. Score, narration from outside the story.
74
+ - **Meta-diegetic**: sourced inside a character's head — their memory, their imagining, their distorted perception. The audience is loaned the character's interior.
75
+
76
+ Moving a sound across a boundary costs zero generations and lives entirely in the audio timeline, which is why it is worth reaching for before any picture fix.
77
+
78
+ | Move | Effect | Execution |
79
+ |---|---|---|
80
+ | Non-diegetic → diegetic (score turns out to be a radio in the room) | Deflates the moment, grounds the scene, often comic or cruel | Same stem. At the crossing point, band-pass to roughly 300 Hz–4 kHz, add the room's reverb, narrow to mono, drop 6 dB |
81
+ | Diegetic → non-diegetic (a source sound continues over a cut to another place) | Abstracts the sound into a theme; links two places or two times | Same stem. Remove the band-pass, go full-band, dry and wide, hold the level |
82
+ | Diegetic → meta-diegetic (the world ducks away to a heartbeat, tinnitus, or one breath) | The audience becomes subjective; interiority without a line of dialogue | Duck AMB and FOL by 18–24 dB over 8–16 frames, bring one close, dry element up, hold 1.5–3 s, restore over 12 frames |
83
+
84
+ Worked, on the doorway scene below. Cue M1 is non-diegetic and stops dead on a frame. Had it instead resolved into the television behind the door — same stem, band-passed to roughly 300 Hz–4 kHz, the door's reverb added, narrowed to mono, dropped 6 dB — the cue would turn out to have been in the room all along, and her hesitation would read as small rather than as felt. That is the deflation move, and naming it is how you decide the scene does not want it.
85
+
86
+ Discipline: cross a boundary at most once per scene. Twice and the audience stops trusting the sound.
87
+
88
+ ## Sound as pacing
89
+
90
+ All six devices below live above the picture and cost nothing to generate. Every one of them needs audio handle at the head and tail of each clip; the handle budget and the trim rule are owned by [editing-and-assembly.md](editing-and-assembly.md).
91
+
92
+ | Device | Definition from the sound side | Numbers | Execution on a stack of separately generated clips |
93
+ |---|---|---|---|
94
+ | Pre-lap | Shot B's audio arrives before shot B's picture | Lead 0.3–1.0 s; 0.5 s is the safe default | Slide B's audio region left so it starts under A's tail. Nothing about the clips changes |
95
+ | Sound bridge | One sound continues across the cut, welding two spaces | Spans the cut by at least 1 s either side | Place the bridging element on its own track, ignore the clip boundary entirely |
96
+ | J-cut | Sound leads picture (generalized pre-lap) | 8–24 f of lead | Trim B's audio in-point earlier than B's video in-point |
97
+ | L-cut | Picture leads, A's sound continues under B | A's audio runs 0.5–2 s past A's picture | Split A's audio from A's video, extend the audio tail. Requires the audio to have been separated at import |
98
+ | Ambience change as a location cut | Swapping the bed at the cut tells the audience they are somewhere new — no establishing shot required | Crossfade 12–24 f (0.5–1.0 s) for a hard place change, matching the bed rule in [sound-plan-template.md](../assets/sound-plan-template.md); 24–48 f for a drift or a time shift | Removes one generated establishing clip per location, which is the largest saving audio makes on the shot count |
99
+ | Hard silence as a cut | Everything drops for a few frames at the cut point | 4–12 f | The ear registers the discontinuity even when the eye does not. Useful precisely where the visual match is weak |
100
+
101
+ ## Silence engineering
102
+
103
+ Silence and quiet are different tools. **Quiet** thins the layers: kill SFX and score, keep RT and one AMB element. **Silence** removes everything including room tone, which is a violent, unnatural event and reads as an authored decision.
104
+
105
+ Duration limits, measured from the last audible element:
106
+
107
+ | Held for | Reads as |
108
+ |---|---|
109
+ | 4–12 f | A punctuation mark; the audience does not consciously notice |
110
+ | 0.5–1.0 s | Impact, shock, or the floor dropping out. Safe |
111
+ | 1.0–2.0 s | Deliberate and heavy. Works only if the picture is doing something |
112
+ | Over 2.0 s of true digital silence | A technical fault. The audience checks their speakers |
113
+
114
+ Rule: past 1.0 s, do not hold at true zero. Fall to a room-tone floor roughly 15 dB under the bed's working level instead — with room tone running at −30, that floor is −45 on the same relative-to-dialogue scale as every other number here, not an absolute dBFS figure. The audience still experiences silence; the playback system still sounds alive.
115
+
116
+ Placement: put silence **before** the line that matters, not after it. Put it **on the reaction**, not on the action. Worked, on the doorway scene: her last footfall lands at `@4.5`, she breathes out at `@5.8`, and then the bed holds alone for 1.2 s while she does nothing but stand at the door. The silence is the decision; the picture only shows the pause. After an impact, one held beat of quiet is what makes the impact memorable — see the breath pattern in [editing-and-assembly.md](editing-and-assembly.md).
117
+
118
+ ## Dialogue for AI video
119
+
120
+ ### Duration budgeting
121
+
122
+ | Delivery | EN words/s | EN syllables/s | 中文 字/s (characters ≈ syllables) |
123
+ |---|---|---|---|
124
+ | Weighted, held, thinking between words | 1.6–2.0 | 3.0–3.5 | 3.0–3.5 |
125
+ | Neutral film delivery | 2.3–2.7 | 4.0–4.5 | 4.0–5.0 |
126
+ | Brisk, argument, comedy | 3.0–3.5 | 5.0–6.0 | 5.5–6.5 |
127
+
128
+ Working rule of thumb: **2.5 English words per second, 4.5 Chinese characters per second**, matching the planning rates in [sound-plan-template.md](../assets/sound-plan-template.md). Then budget the clip:
129
+
130
+ ```text
131
+ clip_length = 0.6 s pre-roll + (words / 2.5) + 0.8 s hold after the last word
132
+ generate = clip_length + 2.5 s of handle
133
+ ```
134
+
135
+ A dialogue take is character performance, so it pays the full 2.5 s rate rather than the 1.5 s minimum. The handle budget and its single first/last-frame exception are owned by [editing-and-assembly.md](editing-and-assembly.md); a lip-synced take is never that exception, because the performance happens between the two pinned frames and is exactly what drifts.
136
+
137
+ | Cut length (generate 2.5 s more) | Words that physically fit | 中文字数 |
138
+ |---|---|---|
139
+ | 5 s | 9 | 16 |
140
+ | 6 s | 11 | 20 |
141
+ | 8 s | 16 | 30 |
142
+ | 10 s | 21 | 40 |
143
+
144
+ Two different ceilings apply, and confusing them is the most common planning error in this step:
145
+
146
+ - **Duration ceiling** — the table above. Whether the words physically fit inside a clip of that length. It is never the binding constraint.
147
+ - **Reliability ceiling** — much lower, and it is what actually breaks. An **on-camera lip-synced line: 6 words or fewer, MCU or tighter, and keep the generated clip short, around 4 s** (F15 in [failure-modes.md](failure-modes.md)). Any spoken line laid over picture in the edit — off-screen, VO, over a listening shot — **one sentence, 12 words or fewer per clip**.
148
+
149
+ So a 10 s clip has room for 21 words, must not carry more than 12, and must not carry more than 6 if the speaker's mouth is visible and in sync. Past those, split the line across shots. You cannot trim your way out, because the line needs its whole duration.
150
+
151
+ ### Lines that lip-sync well, and lines that do not
152
+
153
+ Write toward:
154
+
155
+ - Bilabials and open vowels — p, b, m plus "ah / oh / oo". Large, distinct mouth shapes that survive a low-resolution sync model.
156
+ - Stressed first syllables. "Stop. I said stop." beats "Well, actually, I did ask you to stop."
157
+ - Short declaratives with one idea each.
158
+
159
+ Write away from:
160
+
161
+ - Consonant clusters and sibilant strings ("strengths," "she sees six ships"). They smear into a single mouth shape.
162
+ - Lines whose meaning hinges on one unstressed monosyllable — "I can't do that" versus "I can do that." Sync smear can flip the sense of the scene.
163
+ - Whisper and shout. Both extremes desync in practice; sync holds best on mid-register modal delivery.
164
+ - Overlaps, interruptions, and trailing-off. There is no way to specify them inside one generation.
165
+ - Numbers and proper nouns, if the model is also generating the voice.
166
+
167
+ ### The one-speaker-per-clip rule
168
+
169
+ One speaking face per generated clip, wherever the surface does not expose synchronized multi-speaker speech — check your target's `Dialogue + lip-sync` cell in the capability matrix of [ai-video-tool-adapters.md](ai-video-tool-adapters.md), which owns that reading, before you assume either way. Absent a confirmed multi-speaker feature, treat the rule as absolute.
170
+
171
+ Reasons, in order of how often they bite: sync systems bind one voice track to one detected face, so two faces produce either the wrong mouth moving or both mouths moving; a two-hander inside one clip has no cut point, because you cannot control where a cut falls inside a generation; and a second face doubles the identity-drift surface for no gain.
172
+
173
+ ### Building shot-reverse-shot from single-speaker generations
174
+
175
+ Generate four assets per two-hander setup, then assemble any exchange of any length from them:
176
+
177
+ 1. **A-speaking** — MCU, eyeline camera-right, clean single.
178
+ 2. **A-listening** — same size, same lens, same light, eyeline held camera-right, no mouth movement.
179
+ 3. **B-speaking** — mirrored setup, eyeline camera-left.
180
+ 4. **B-listening** — mirrored, eyeline camera-left.
181
+
182
+ Screen direction, the 180° line and the 30° rule are owned by [cinematic-language.md](cinematic-language.md); hold to whatever side that file's geometry assigns before you generate anything.
183
+
184
+ Two economics notes. Generate the **listening** clips at the longest duration the tool offers — they are your flex material, trimmed to fit whatever the lines turn out to be, and a listening clip has no lip-sync risk, so its first-pass success rate is high. And once the four assets exist, a six-line exchange costs zero further generations.
185
+
186
+ ### Speaker labeling that stops identity swaps
187
+
188
+ Weak prompt:
189
+
190
+ ```text
191
+ Two people argue in a kitchen. The man says "You promised."
192
+ ```
193
+
194
+ Strong prompt:
195
+
196
+ ```text
197
+ MARA — woman, 34, short black hair, grey wool coat — stands camera-left, facing camera-right, and speaks one line: "You promised." She is the only person in frame. No other character, no other voice, no off-screen speech.
198
+ ```
199
+
200
+ Rules: a label is NAME plus three fixed physical anchors plus a screen position; reuse the identical anchor string in every prompt for that character (the canonical string is owned by [continuity-bible.md](continuity-bible.md)); name exactly one speaker per prompt; and state the negative explicitly — "only one person speaks" and "no other character in frame" — because silence about a second person is not the same as excluding one.
201
+
202
+ ### When to abandon on-screen dialogue
203
+
204
+ Work down this ladder and stop at the first line that fits:
205
+
206
+ 1. Can the line be a look instead? Cut it. This is the correct answer more often than directors admit.
207
+ 2. Necessary and 6 words or fewer? On-screen, one speaker per clip, MCU or tighter, generated clip around 4 s.
208
+ 3. Longer than 6 words, technical, or an exchange? Convert to an **off-screen line** played over a listening shot. No lip-sync required, which removes the biggest single failure mode in the pipeline.
209
+ 4. Exposition? **Voice-over** over inserts and detail shots.
210
+ 5. Emotional peak with hard-to-sync delivery — crying, shouting, breaking off? **Reaction only**: hold on the face, play the delivery off-camera.
211
+
212
+ ### Rewrite example: an ungeneratable exchange made generatable
213
+
214
+ Before — four lines, an overlap, an interruption, two speakers, 20-word sentences:
215
+
216
+ ```text
217
+ INT. KITCHEN — NIGHT
218
+ MARA: You said you'd tell them. You promised me, in this room, three weeks ago —
219
+ DAVID: (overlapping) Don't. Don't do the "in this room" thing.
220
+ MARA: — and you looked at me and said it was handled.
221
+ DAVID: It is handled. It's just not handled the way you wanted it handled.
222
+ ```
223
+
224
+ After — four single-speaker clips, every on-camera line at or under the 6-word sync ceiling:
225
+
226
+ ```text
227
+ C1 4.5 s MARA MCU, speaking: "You promised. In this room." (5 w, on camera)
228
+ Trim her post-line hold to 0.3 s so the cut lands near her last word.
229
+ C2 4.0 s DAVID MCU. Generated as 1.0 s of listening, then "Don't do that." (3 w)
230
+ That listening second is designed lead, not the trim handle: it is
231
+ there to be cut into. Trim it off and start C2 0.4 s into his line,
232
+ so the picture cut arrives with the line already running. The take
233
+ still pays its 2.5 s of handle on top of the 4.0 s.
234
+ C3 8.0 s MARA MCU listening, no line, generated long on purpose.
235
+ Trimmed to 4.4 s. DAVID's next line plays OFF-SCREEN over her face:
236
+ "It's handled. Just not your way." (6 w, no lip-sync)
237
+ C4 5.0 s DAVID MCU, one held look, no line. No sync risk, so length is free.
238
+ ```
239
+
240
+ What survives: the accusation, the deflection, the fact that "handled" is a lie, and who ends the scene holding the power. What no single generation can hold: the overlap.
241
+
242
+ How the overlap comes back — start David's audio 0.4 s before the picture cut, so his first word lands on the tail of Mara's last word while her face is still on screen. That is a J-cut of about 10 f, and it is the whole reason C2 was generated with a listening head you intend to throw away. **The overlap is created in the edit, not in the generation.** That is the general principle for this section: anything that requires two performances to collide belongs to the timeline, not to the prompt.
243
+
244
+ ## Voice-over
245
+
246
+ VO is a crutch when it states what the image already shows, explains a feeling the performance should carry, or patches a scene that does not work. VO is structure when it comes from a different time or person than the picture — a later self, another character, a letter, an institutional voice — or when the picture is fragmentary by design.
247
+
248
+ The reliable device is **VO that contradicts the image**. The words say one thing, the picture quietly shows another, and the gap is the meaning. Construct it by writing a flatly factual VO line, then designing the shot so it contradicts exactly one word in that line. VO: "We were fine that year." Picture: an unmade bed, two coats by the door, one of them dusty.
249
+
250
+ Writing VO that leaves room for the picture:
251
+
252
+ - Density ceiling: **1.3 words per second of picture**, roughly half of dialogue density. VO that runs at dialogue density turns the film into an illustrated podcast.
253
+ - Enter 0.8–1.5 s after the cut, never on the first frame. The audience needs to see the shot before they are told about it.
254
+ - Exit at least 1.0 s before the shot ends. Never land the last word on the last frame.
255
+ - One idea per shot. If a VO sentence needs two shots, split the sentence.
256
+
257
+ ## Music brief
258
+
259
+ Brief the **function**, not the genre. "Sad piano" is unbuildable; "hold the audience inside her indecision and refuse to resolve" is buildable by any composer or search.
260
+
261
+ Function vocabulary: PRESSURE, WITHHOLD, RELEASE, IRONY (contradicts the picture), GLUE (spans a visual discontinuity), CLOCK (drives the cut rhythm), PERMISSION (tells the audience the scene is over and they may now feel).
262
+
263
+ The keys below are the ones [sound-plan-template.md](../assets/sound-plan-template.md) uses, so a filled brief drops straight into the Mode H deliverable. This is cue M1 of the worked example at the end of this file:
264
+
265
+ ```yaml
266
+ cue_id: M1
267
+ scene: DW_SC01
268
+ function: WITHHOLD — hold her indecision, never resolve, no cadence
269
+ in_point: "0:10.2"
270
+ out_point: "0:23.5"
271
+ tempo: 72 BPM, 4/4, bar = 3.33 s
272
+ bar_lines: ["0:10.2", "0:13.5", "0:16.9", "0:20.2", "0:23.5"]
273
+ instrumentation: solo cello, one sustained synth pad beneath, no percussion, no piano
274
+ shape: enter at -30, rise 6 dB across 8 s, stop dead on the frame
275
+ level_rel_dialogue: -30 rising to -24, deliberately under the music band
276
+ must_not: no hummable melody, no cadence, no swell at the exit, no hit on the bag set-down
277
+ ```
278
+
279
+ The `must_not` line does more work than the rest of the brief. Fill it every time, including when the answer is "no score in this scene" — the template keeps that block too, so nobody adds a cue in the mix.
280
+
281
+ ### BPM to cut length (4/4)
282
+
283
+ Use this to let tempo drive shot durations rather than fighting it. Cutting on a bar line is invisible; cutting a fraction off a beat is audible as a stumble.
284
+
285
+ | BPM | Beat | 1 bar (4 beats) | 2 bars | 4 bars | Natural cut unit |
286
+ |---|---|---|---|---|---|
287
+ | 60 | 1.00 s | 4.00 s | 8.00 s | 16.0 s | 1–2 bars — slow drama |
288
+ | 72 | 0.83 s | 3.33 s | 6.67 s | 13.3 s | 2 bars — drama |
289
+ | 80 | 0.75 s | 3.00 s | 6.00 s | 12.0 s | 2 bars — drama |
290
+ | 90 | 0.67 s | 2.67 s | 5.33 s | 10.7 s | 1–2 bars |
291
+ | 100 | 0.60 s | 2.40 s | 4.80 s | 9.60 s | 1 bar — commercial |
292
+ | 120 | 0.50 s | 2.00 s | 4.00 s | 8.00 s | 1 bar — montage |
293
+ | 128 | 0.47 s | 1.88 s | 3.75 s | 7.50 s | 1 bar — social vertical |
294
+ | 140 | 0.43 s | 1.71 s | 3.43 s | 6.86 s | 1 bar — trailer mid-section |
295
+ | 160 | 0.38 s | 1.50 s | 3.00 s | 6.00 s | 1 bar — action |
296
+ | 174 | 0.34 s | 1.38 s | 2.76 s | 5.52 s | 1–2 bars |
297
+
298
+ Read it in both directions. If you want 3-second shots, you want 80 BPM at one bar per shot, or 160 BPM at two. If the track is fixed at 128 BPM, your shot lengths are multiples of the 0.47 s beat — 0.94 / 1.41 / 1.88 / 2.81 / 3.75 / 7.50 s — and where you land inside that grid is itself a choice: a bar line is invisible, beats 2, 3 and 4 are audible but musical, and anything off the grid reads as an error.
299
+
300
+ ### Temp track discipline
301
+
302
+ Choose a temp by tempo, arrangement density and dynamic shape — never because you like the song. The moment four shots are cut to a hook, the hook owns the edit and every replacement fails against it. If you must temp with a real track, use its first eight bars looped and never cut to its chorus. In the plan, log the **BPM and the shape**, not the track title, so the brief stays executable by someone who has never heard your temp.
303
+
304
+ ### When music should be absent
305
+
306
+ - Any beat where the question is "what will they do." Score answers it before the character does.
307
+ - Under a comic pause. The score fills the hole the laugh was going to occupy.
308
+ - The first 15–20 seconds, if the world's own sound needs to establish it. Music has exactly one entrance; spending it on frame one wastes it.
309
+ - Under dialogue that is already carrying subtext. Score there becomes an instruction to the audience.
310
+ - When the picture already has a pulse — rain, machinery, a treadmill, footsteps, breathing. Two clocks fight.
311
+
312
+ ## Worked example: 25-second, three-shot scene
313
+
314
+ Scene: a person stands at a closed apartment door holding something they intend to give away, hesitates, and leaves without knocking. Register: drama. Carrying layers: room tone plus foley, with one cue late.
315
+
316
+ Below is a filled Mode H plan in the column shape of [sound-plan-template.md](../assets/sound-plan-template.md); the template owns the blank form and the handoff checklist.
317
+
318
+ ```markdown
319
+ ## Sound Plan — "Doorway" (DW_SC01, 0:00–0:25.0, 3 shots, 24 fps)
320
+
321
+ Picture, for reference only:
322
+ S01 0:00.0–0:09.8 WS landing; she climbs into frame and stops at the door
323
+ S02 0:09.8–0:18.6 MCU her hands on the parcel, then her face at the door
324
+ S03 0:18.6–0:25.0 WS from behind; she turns, sets the parcel down, descends
325
+
326
+ Bed — one region per layer, 0:00–0:25 plus 1 s handles, never re-triggered at a cut:
327
+ Room tone interior stairwell, cold concrete, faint lift-motor hum .... -30
328
+ Ambience rain on the skylight two floors up, steady, no gusts ....... -26
329
+
330
+ | Shot | In-Out | Dur | Room tone | Ambience | Foley | Spot FX | Music |
331
+ |---|---|---|---|---|---|---|---|
332
+ | SH01 | 0:00.0-0:09.8 | 9.8 s | bed | bed | Shoe on concrete x6 at @0.0 / 0.7 / 1.5 / 2.4 / 3.4 / 4.5, gaps lengthening as she slows; coat rustle @5.0; breath out @5.8; one scuff @7.6 as her weight shifts. Deliberate: nothing between @5.8 and @7.0 but the bed | none | none - no score yet |
333
+ | SH02 | 0:09.8-0:18.6 | 8.8 s | bed continues | bed, 2 dB down - she is closer to the wall | Parcel paper crush @0.4 and @2.1; fabric shift @3.8 | Television behind the door: muffled, no intelligible word, LPF ~800 Hz, -30, in at 0:09.4 (10 f before the picture cut), holds to the end of the shot | M1 in at 0:10.2 |
334
+ | SH03 | 0:18.6-0:25.0 | 6.4 s | bed continues; tail runs 1 s past picture | bed returns to level, +2 dB as she moves back into the stairwell | Parcel set down @1.0, soft, no thud; 5 descending steps from @2.2, accelerating and thinning, last one at @4.7 | Television falls 12 dB from @2.2 to @4.9 as she descends out of earshot; gone by 0:23.5 | M1 out at 0:23.5, cut dead on the frame |
335
+
336
+ ### Music
337
+ M1 exactly as briefed in the music-brief block above. No second cue.
338
+
339
+ ### Dialogue / VO
340
+ None. The television is the only voice and it is deliberately unintelligible - the
341
+ audience must not learn whether anyone is home. No lip-sync anywhere in this scene,
342
+ so F15 cannot occur in it.
343
+
344
+ ### Silence map
345
+ 0:05.8-0:07.0 quiet, 1.2 s - bed only. Sits in the 1.0-2.0 s band, which is legal
346
+ only because the picture is doing something: she has stopped moving
347
+ and has not yet decided.
348
+ 0:23.5-0:25.0 quiet, 1.5 s - score cut dead, television out of earshot, bed only.
349
+ No true digital silence anywhere. The bed never falls below -45 relative to dialogue,
350
+ 15 dB under its working level.
351
+
352
+ ### Assembly notes
353
+ - One room-tone region and one ambience region across all three clips. Mute every
354
+ clip's model-generated audio at import.
355
+ - The television enters at 0:09.4, 10 f before the picture cut to S02, so the cut is
356
+ motivated by sound. Written as J-cut 10f in the timeline.
357
+ - S02 to S03 is the same location, so the bed does not change; the +2 dB is a level
358
+ move, not a new region.
359
+ - The descending steps thin out and stop at @4.7 (0:23.3), before the quiet begins.
360
+ She is still on the stairs when the sound leaves her, so the scene ends on the
361
+ room rather than on her.
362
+ ```
363
+
364
+ Cross-checks before this plan is finished: every shot has a room-tone entry; the bed is one region per layer; each silence is placed and inside the duration limits; the cue has a `must_not` line; no on-camera line exceeds 6 words and no laid-in line exceeds 12. Failures in generated audio and lip-sync are diagnosed as F15 and F18 in [failure-modes.md](failure-modes.md); per-tool audio control surfaces are in [ai-video-tool-adapters.md](ai-video-tool-adapters.md).