@lemoncat7/dsh-partner 2.4.2 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (671) hide show
  1. package/README.md +8 -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 +51 -0
  6. package/docs/releases/2.5.0.md +13 -0
  7. package/docs/releases/2.6.0.md +11 -0
  8. package/docs/releases/2.7.0.md +21 -0
  9. package/lib/agent-runtime.d.ts +9 -1
  10. package/lib/agent-runtime.d.ts.map +1 -1
  11. package/lib/agent-runtime.js +117 -17
  12. package/lib/agent-runtime.js.map +1 -1
  13. package/lib/api/features/attachments-api.d.ts.map +1 -1
  14. package/lib/api/features/attachments-api.js +31 -1
  15. package/lib/api/features/attachments-api.js.map +1 -1
  16. package/lib/api.d.ts +1 -1
  17. package/lib/api.d.ts.map +1 -1
  18. package/lib/api.js +1 -1
  19. package/lib/api.js.map +1 -1
  20. package/lib/attachments/grouped-storage.d.ts +5 -0
  21. package/lib/attachments/grouped-storage.d.ts.map +1 -0
  22. package/lib/attachments/grouped-storage.js +47 -0
  23. package/lib/attachments/grouped-storage.js.map +1 -0
  24. package/lib/attachments/service.d.ts +17 -0
  25. package/lib/attachments/service.d.ts.map +1 -1
  26. package/lib/attachments/service.js +100 -8
  27. package/lib/attachments/service.js.map +1 -1
  28. package/lib/attachments/shared-storage.d.ts +7 -0
  29. package/lib/attachments/shared-storage.d.ts.map +1 -0
  30. package/lib/attachments/shared-storage.js +44 -0
  31. package/lib/attachments/shared-storage.js.map +1 -0
  32. package/lib/attachments/storage-admin.d.ts +6 -0
  33. package/lib/attachments/storage-admin.d.ts.map +1 -0
  34. package/lib/attachments/storage-admin.js +43 -0
  35. package/lib/attachments/storage-admin.js.map +1 -0
  36. package/lib/attachments/storage-types.d.ts +33 -0
  37. package/lib/attachments/storage-types.d.ts.map +1 -0
  38. package/lib/attachments/storage-types.js +2 -0
  39. package/lib/attachments/storage-types.js.map +1 -0
  40. package/lib/attachments/tool.d.ts.map +1 -1
  41. package/lib/attachments/tool.js +16 -5
  42. package/lib/attachments/tool.js.map +1 -1
  43. package/lib/channels/delivery-policy.d.ts.map +1 -1
  44. package/lib/channels/delivery-policy.js +7 -4
  45. package/lib/channels/delivery-policy.js.map +1 -1
  46. package/lib/channels/direct/message-format.js +418 -281
  47. package/lib/channels/direct/message-format.js.map +4 -4
  48. package/lib/channels/manager.d.ts +7 -3
  49. package/lib/channels/manager.d.ts.map +1 -1
  50. package/lib/channels/manager.js +73 -38
  51. package/lib/channels/manager.js.map +1 -1
  52. package/lib/channels/weixin/api.d.ts.map +1 -1
  53. package/lib/channels/weixin/api.js +7 -2
  54. package/lib/channels/weixin/api.js.map +1 -1
  55. package/lib/channels/weixin/errors.d.ts +14 -0
  56. package/lib/channels/weixin/errors.d.ts.map +1 -0
  57. package/lib/channels/weixin/errors.js +29 -0
  58. package/lib/channels/weixin/errors.js.map +1 -0
  59. package/lib/channels/weixin/poll.d.ts +14 -0
  60. package/lib/channels/weixin/poll.d.ts.map +1 -0
  61. package/lib/channels/weixin/poll.js +50 -0
  62. package/lib/channels/weixin/poll.js.map +1 -0
  63. package/lib/client-api.d.ts +1 -23
  64. package/lib/client-api.d.ts.map +1 -1
  65. package/lib/client-api.js.map +1 -1
  66. package/lib/client-controller.d.ts.map +1 -1
  67. package/lib/client-controller.js +3 -3
  68. package/lib/client-controller.js.map +1 -1
  69. package/lib/client.d.ts.map +1 -1
  70. package/lib/client.js +1078 -679
  71. package/lib/client.js.map +4 -4
  72. package/lib/collaboration/composition.d.ts.map +1 -1
  73. package/lib/collaboration/composition.js +32 -8
  74. package/lib/collaboration/composition.js.map +1 -1
  75. package/lib/collaboration/domain.d.ts +8 -0
  76. package/lib/collaboration/domain.d.ts.map +1 -1
  77. package/lib/collaboration/domain.js.map +1 -1
  78. package/lib/collaboration/service.d.ts.map +1 -1
  79. package/lib/collaboration/service.js +38 -5
  80. package/lib/collaboration/service.js.map +1 -1
  81. package/lib/concern-notification.d.ts.map +1 -1
  82. package/lib/concern-notification.js +2 -1
  83. package/lib/concern-notification.js.map +1 -1
  84. package/lib/concern-tool.js +1 -1
  85. package/lib/concern-tool.js.map +1 -1
  86. package/lib/execution/reply-progress.d.ts.map +1 -1
  87. package/lib/execution/reply-progress.js +4 -2
  88. package/lib/execution/reply-progress.js.map +1 -1
  89. package/lib/execution/service.d.ts +1 -1
  90. package/lib/execution/service.d.ts.map +1 -1
  91. package/lib/execution/service.js +4 -7
  92. package/lib/execution/service.js.map +1 -1
  93. package/lib/index.d.ts.map +1 -1
  94. package/lib/index.js +7 -1
  95. package/lib/index.js.map +1 -1
  96. package/lib/memory-reflection.js +2 -2
  97. package/lib/memory-reflection.js.map +1 -1
  98. package/lib/message-source.d.ts +25 -0
  99. package/lib/message-source.d.ts.map +1 -0
  100. package/lib/message-source.js +8 -0
  101. package/lib/message-source.js.map +1 -0
  102. package/lib/observation-loop.js +4 -4
  103. package/lib/observation-loop.js.map +1 -1
  104. package/lib/pendant/reader.js +1 -1
  105. package/lib/pendant/reader.js.map +1 -1
  106. package/lib/pendant/settings-panel.js +1 -1
  107. package/lib/pendant/settings-panel.js.map +1 -1
  108. package/lib/persona/service.js +1 -1
  109. package/lib/persona/service.js.map +1 -1
  110. package/lib/requirements/attachments.d.ts +7 -0
  111. package/lib/requirements/attachments.d.ts.map +1 -0
  112. package/lib/requirements/attachments.js +26 -0
  113. package/lib/requirements/attachments.js.map +1 -0
  114. package/lib/requirements/domain.d.ts +1 -1
  115. package/lib/requirements/domain.d.ts.map +1 -1
  116. package/lib/requirements/service.d.ts.map +1 -1
  117. package/lib/requirements/service.js +4 -1
  118. package/lib/requirements/service.js.map +1 -1
  119. package/lib/scheduler/channel-origin.d.ts +7 -0
  120. package/lib/scheduler/channel-origin.d.ts.map +1 -0
  121. package/lib/scheduler/channel-origin.js +27 -0
  122. package/lib/scheduler/channel-origin.js.map +1 -0
  123. package/lib/scheduler/continuations.d.ts +29 -0
  124. package/lib/scheduler/continuations.d.ts.map +1 -0
  125. package/lib/scheduler/continuations.js +286 -0
  126. package/lib/scheduler/continuations.js.map +1 -0
  127. package/lib/scheduler/domain.d.ts +40 -0
  128. package/lib/scheduler/domain.d.ts.map +1 -1
  129. package/lib/scheduler/final-reply.d.ts +13 -0
  130. package/lib/scheduler/final-reply.d.ts.map +1 -0
  131. package/lib/scheduler/final-reply.js +21 -0
  132. package/lib/scheduler/final-reply.js.map +1 -0
  133. package/lib/scheduler/service.d.ts +2 -0
  134. package/lib/scheduler/service.d.ts.map +1 -1
  135. package/lib/scheduler/service.js +30 -1
  136. package/lib/scheduler/service.js.map +1 -1
  137. package/lib/scheduler/wakeup-context.d.ts +7 -0
  138. package/lib/scheduler/wakeup-context.d.ts.map +1 -0
  139. package/lib/scheduler/wakeup-context.js +14 -0
  140. package/lib/scheduler/wakeup-context.js.map +1 -0
  141. package/lib/scheduler/wakeup.d.ts +11 -0
  142. package/lib/scheduler/wakeup.d.ts.map +1 -0
  143. package/lib/scheduler/wakeup.js +52 -0
  144. package/lib/scheduler/wakeup.js.map +1 -0
  145. package/lib/skills/builtin-resources.d.ts +6 -0
  146. package/lib/skills/builtin-resources.d.ts.map +1 -0
  147. package/lib/skills/builtin-resources.js +47 -0
  148. package/lib/skills/builtin-resources.js.map +1 -0
  149. package/lib/skills/builtin.d.ts +2 -5
  150. package/lib/skills/builtin.d.ts.map +1 -1
  151. package/lib/skills/builtin.js +11 -0
  152. package/lib/skills/builtin.js.map +1 -1
  153. package/lib/skills/director-builtins.d.ts +8 -0
  154. package/lib/skills/director-builtins.d.ts.map +1 -0
  155. package/lib/skills/director-builtins.js +65 -0
  156. package/lib/skills/director-builtins.js.map +1 -0
  157. package/lib/skills/drama-builtin.d.ts +3 -0
  158. package/lib/skills/drama-builtin.d.ts.map +1 -0
  159. package/lib/skills/drama-builtin.js +49 -0
  160. package/lib/skills/drama-builtin.js.map +1 -0
  161. package/lib/skills/long-task-continuation.d.ts +4 -0
  162. package/lib/skills/long-task-continuation.d.ts.map +1 -0
  163. package/lib/skills/long-task-continuation.js +43 -0
  164. package/lib/skills/long-task-continuation.js.map +1 -0
  165. package/lib/skills/service.d.ts.map +1 -1
  166. package/lib/skills/service.js +8 -3
  167. package/lib/skills/service.js.map +1 -1
  168. package/lib/skills/viora-canvas-builtin.d.ts +3 -0
  169. package/lib/skills/viora-canvas-builtin.d.ts.map +1 -0
  170. package/lib/skills/viora-canvas-builtin.js +19 -0
  171. package/lib/skills/viora-canvas-builtin.js.map +1 -0
  172. package/lib/storage/migrate-layout.d.ts.map +1 -1
  173. package/lib/storage/migrate-layout.js +13 -4
  174. package/lib/storage/migrate-layout.js.map +1 -1
  175. package/lib/store.d.ts.map +1 -1
  176. package/lib/store.js +2 -0
  177. package/lib/store.js.map +1 -1
  178. package/lib/tasks/context.js +1 -0
  179. package/lib/tasks/context.js.map +1 -1
  180. package/lib/tasks/continuation-yield.d.ts +4 -0
  181. package/lib/tasks/continuation-yield.d.ts.map +1 -0
  182. package/lib/tasks/continuation-yield.js +27 -0
  183. package/lib/tasks/continuation-yield.js.map +1 -0
  184. package/lib/tasks/continuation.d.ts +13 -0
  185. package/lib/tasks/continuation.d.ts.map +1 -0
  186. package/lib/tasks/continuation.js +106 -0
  187. package/lib/tasks/continuation.js.map +1 -0
  188. package/lib/tasks/domain.d.ts +2 -0
  189. package/lib/tasks/domain.d.ts.map +1 -1
  190. package/lib/tasks/scheduling.d.ts.map +1 -1
  191. package/lib/tasks/scheduling.js +7 -0
  192. package/lib/tasks/scheduling.js.map +1 -1
  193. package/lib/tasks/service.d.ts +2 -1
  194. package/lib/tasks/service.d.ts.map +1 -1
  195. package/lib/tasks/service.js +19 -1
  196. package/lib/tasks/service.js.map +1 -1
  197. package/lib/ui/attachment-storage.d.ts +2 -0
  198. package/lib/ui/attachment-storage.d.ts.map +1 -0
  199. package/lib/ui/attachment-storage.js +59 -0
  200. package/lib/ui/attachment-storage.js.map +1 -0
  201. package/lib/ui/capability-editor.js +1 -1
  202. package/lib/ui/capability-editor.js.map +1 -1
  203. package/lib/ui/companion-access-panel.js +1 -1
  204. package/lib/ui/companion-access-panel.js.map +1 -1
  205. package/lib/ui/companion-create.js +1 -1
  206. package/lib/ui/companion-create.js.map +1 -1
  207. package/lib/ui/companion-picker.js +1 -1
  208. package/lib/ui/companion-picker.js.map +1 -1
  209. package/lib/ui/identity-editor.js +1 -1
  210. package/lib/ui/identity-editor.js.map +1 -1
  211. package/lib/ui/mcp-capabilities.js +1 -1
  212. package/lib/ui/mcp-capabilities.js.map +1 -1
  213. package/lib/ui/mcp-panel.js +1 -1
  214. package/lib/ui/mcp-panel.js.map +1 -1
  215. package/lib/ui/memory/concern-board.js +2 -2
  216. package/lib/ui/memory/concern-board.js.map +1 -1
  217. package/lib/ui/memory/concern-deletion.d.ts +1 -1
  218. package/lib/ui/memory/concern-deletion.d.ts.map +1 -1
  219. package/lib/ui/memory/concern-deletion.js +9 -4
  220. package/lib/ui/memory/concern-deletion.js.map +1 -1
  221. package/lib/ui/memory/concern-panel.js +1 -1
  222. package/lib/ui/memory/concern-panel.js.map +1 -1
  223. package/lib/ui/memory/memory-library.js +1 -1
  224. package/lib/ui/memory/memory-library.js.map +1 -1
  225. package/lib/ui/memory/memory-panel.js +1 -1
  226. package/lib/ui/memory/memory-panel.js.map +1 -1
  227. package/lib/ui/partner-components.js +1 -1
  228. package/lib/ui/partner-components.js.map +1 -1
  229. package/lib/ui/requirement-board.js +1 -1
  230. package/lib/ui/requirement-board.js.map +1 -1
  231. package/lib/ui/requirement-dialog.js +1 -1
  232. package/lib/ui/requirement-dialog.js.map +1 -1
  233. package/lib/ui/requirement-tasks-panel.js +1 -1
  234. package/lib/ui/requirement-tasks-panel.js.map +1 -1
  235. package/lib/ui/schedule-panel.d.ts.map +1 -1
  236. package/lib/ui/schedule-panel.js +20 -4
  237. package/lib/ui/schedule-panel.js.map +1 -1
  238. package/lib/ui/skills-panel.js +1 -1
  239. package/lib/ui/skills-panel.js.map +1 -1
  240. package/lib/ui/storage-settings.d.ts.map +1 -1
  241. package/lib/ui/storage-settings.js +2 -1
  242. package/lib/ui/storage-settings.js.map +1 -1
  243. package/lib/ui/task-board-stage.js +1 -1
  244. package/lib/ui/task-board-stage.js.map +1 -1
  245. package/lib/ui/workspace-components.js +1 -1
  246. package/lib/ui/workspace-components.js.map +1 -1
  247. package/lib/ui/workspace-navigation.d.ts +16 -16
  248. package/lib/ui/workspace-navigation.js +1 -1
  249. package/lib/ui/workspace-navigation.js.map +1 -1
  250. package/package.json +55 -41
  251. package/resources/skills/cinematic-director/manifest.json +205 -0
  252. package/resources/skills/cinematic-director/upstream/CHANGELOG.md +213 -0
  253. package/resources/skills/cinematic-director/upstream/CONTRIBUTING.md +316 -0
  254. package/resources/skills/cinematic-director/upstream/LICENSE +21 -0
  255. package/resources/skills/cinematic-director/upstream/README.md +507 -0
  256. package/resources/skills/cinematic-director/upstream/SKILL.md +420 -0
  257. package/resources/skills/cinematic-director/upstream/assets/beat-sheet-template.md +97 -0
  258. package/resources/skills/cinematic-director/upstream/assets/director-book-template.md +254 -0
  259. package/resources/skills/cinematic-director/upstream/assets/edit-timeline-template.md +147 -0
  260. package/resources/skills/cinematic-director/upstream/assets/keyframe-prompt-template.md +334 -0
  261. package/resources/skills/cinematic-director/upstream/assets/qc-checklist.md +153 -0
  262. package/resources/skills/cinematic-director/upstream/assets/shot-plan-template.md +95 -0
  263. package/resources/skills/cinematic-director/upstream/assets/sound-plan-template.md +181 -0
  264. package/resources/skills/cinematic-director/upstream/assets/video-prompt-template.md +305 -0
  265. package/resources/skills/cinematic-director/upstream/evals/run.md +69 -0
  266. package/resources/skills/cinematic-director/upstream/references/ai-video-tool-adapters.md +527 -0
  267. package/resources/skills/cinematic-director/upstream/references/blocking-and-staging.md +424 -0
  268. package/resources/skills/cinematic-director/upstream/references/cinematic-language.md +595 -0
  269. package/resources/skills/cinematic-director/upstream/references/continuity-bible.md +410 -0
  270. package/resources/skills/cinematic-director/upstream/references/director_styles/01_spielberg.md +192 -0
  271. package/resources/skills/cinematic-director/upstream/references/director_styles/02_hitchcock.md +193 -0
  272. package/resources/skills/cinematic-director/upstream/references/director_styles/03_kubrick.md +196 -0
  273. package/resources/skills/cinematic-director/upstream/references/director_styles/04_kurosawa.md +196 -0
  274. package/resources/skills/cinematic-director/upstream/references/director_styles/05_scorsese.md +195 -0
  275. package/resources/skills/cinematic-director/upstream/references/director_styles/06_fellini.md +197 -0
  276. package/resources/skills/cinematic-director/upstream/references/director_styles/07_bergman.md +197 -0
  277. package/resources/skills/cinematic-director/upstream/references/director_styles/08_tarkovsky.md +184 -0
  278. package/resources/skills/cinematic-director/upstream/references/director_styles/09_wong_kar_wai.md +189 -0
  279. package/resources/skills/cinematic-director/upstream/references/director_styles/10_nolan.md +185 -0
  280. package/resources/skills/cinematic-director/upstream/references/director_styles/11_villeneuve.md +188 -0
  281. package/resources/skills/cinematic-director/upstream/references/director_styles/12_fincher.md +185 -0
  282. package/resources/skills/cinematic-director/upstream/references/director_styles/13_refn.md +186 -0
  283. package/resources/skills/cinematic-director/upstream/references/director_styles/14_bi_gan.md +188 -0
  284. package/resources/skills/cinematic-director/upstream/references/director_styles/15_zhang_yimou.md +192 -0
  285. package/resources/skills/cinematic-director/upstream/references/director_styles/16_hou_hsiao_hsien.md +192 -0
  286. package/resources/skills/cinematic-director/upstream/references/director_styles/17_park_chan_wook.md +192 -0
  287. package/resources/skills/cinematic-director/upstream/references/director_styles/18_malick.md +191 -0
  288. package/resources/skills/cinematic-director/upstream/references/director_styles/19_michael_mann.md +192 -0
  289. package/resources/skills/cinematic-director/upstream/references/director_styles/20_coen_brothers.md +194 -0
  290. package/resources/skills/cinematic-director/upstream/references/director_styles/README.md +89 -0
  291. package/resources/skills/cinematic-director/upstream/references/director_styles/example_comparisons.md +140 -0
  292. package/resources/skills/cinematic-director/upstream/references/editing-and-assembly.md +263 -0
  293. package/resources/skills/cinematic-director/upstream/references/failure-modes.md +594 -0
  294. package/resources/skills/cinematic-director/upstream/references/genre-playbooks.md +407 -0
  295. package/resources/skills/cinematic-director/upstream/references/image-model-adapters.md +290 -0
  296. package/resources/skills/cinematic-director/upstream/references/lighting-and-color.md +349 -0
  297. package/resources/skills/cinematic-director/upstream/references/product-and-macro.md +207 -0
  298. package/resources/skills/cinematic-director/upstream/references/production-workflow.md +238 -0
  299. package/resources/skills/cinematic-director/upstream/references/prompt-lexicon.md +602 -0
  300. package/resources/skills/cinematic-director/upstream/references/sound-and-dialogue.md +364 -0
  301. package/resources/skills/director-skills/manifest.json +541 -0
  302. package/resources/skills/director-skills/upstream/CHANGELOG.md +32 -0
  303. package/resources/skills/director-skills/upstream/LICENSE +21 -0
  304. package/resources/skills/director-skills/upstream/MANIFEST.md +366 -0
  305. package/resources/skills/director-skills/upstream/README.md +251 -0
  306. package/resources/skills/director-skills/upstream/RESEARCH_PROVENANCE.md +37 -0
  307. package/resources/skills/director-skills/upstream/SKILL.md +114 -0
  308. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/SKILL.md +81 -0
  309. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/checklists/continuity_checklist.md +8 -0
  310. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/examples/character_continuity_update.md +9 -0
  311. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/examples/location_continuity_update.md +9 -0
  312. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/continuity_system.md +21 -0
  313. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/golden_image_workflow.md +29 -0
  314. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/identity_anchors.md +14 -0
  315. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/references/visual_bible_system.md +15 -0
  316. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/character_profile.md +15 -0
  317. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/continuity_checklist.md +11 -0
  318. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/costume_profile.md +12 -0
  319. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/location_profile.md +14 -0
  320. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/prop_profile.md +13 -0
  321. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/templates/visual_style_bible.md +15 -0
  322. package/resources/skills/director-skills/upstream/skills/character-location-prop-bible/tests/continuity_tests.md +6 -0
  323. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/SKILL.md +80 -0
  324. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/checklists/image_prompt_quality_checklist.md +10 -0
  325. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/examples/shot_list_to_image_prompts.md +4 -0
  326. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/image_prompt_components.md +22 -0
  327. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/lighting_and_photorealism.md +19 -0
  328. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/negative_prompt_patterns.md +18 -0
  329. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/references/prompt_anatomy.md +18 -0
  330. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/character_reference_sheet_prompt.md +5 -0
  331. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/cinematic_still_prompt.md +3 -0
  332. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/keyframe_prompt.md +6 -0
  333. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/location_reference_prompt.md +3 -0
  334. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/templates/prop_prompt.md +3 -0
  335. package/resources/skills/director-skills/upstream/skills/cinematic-image-prompting/tests/image_prompt_completeness_tests.md +5 -0
  336. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/SKILL.md +84 -0
  337. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/checklists/video_prompt_quality_checklist.md +9 -0
  338. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/examples/image_prompt_to_video_prompt.md +3 -0
  339. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/ai_film_production_pipeline.md +21 -0
  340. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/audio_motion_timing.md +16 -0
  341. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/camera_lens_movement.md +26 -0
  342. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/negative_prompt_patterns.md +18 -0
  343. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/prompt_anatomy.md +18 -0
  344. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/references/video_prompt_components.md +25 -0
  345. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/image_to_video_prompt.md +5 -0
  346. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/text_to_video_prompt.md +5 -0
  347. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/templates/video_beat_prompt.md +9 -0
  348. package/resources/skills/director-skills/upstream/skills/cinematic-video-prompting/tests/video_prompt_completeness_tests.md +5 -0
  349. package/resources/skills/director-skills/upstream/skills/model-adaptation/SKILL.md +82 -0
  350. package/resources/skills/director-skills/upstream/skills/model-adaptation/checklists/model_export_checklist.md +9 -0
  351. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/failed_model_transfer_diagnosis.md +5 -0
  352. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/image_prompt_translation.md +10 -0
  353. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/same_scene_across_models.md +9 -0
  354. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/universal_prompt_to_model_specific_exports.md +14 -0
  355. package/resources/skills/director-skills/upstream/skills/model-adaptation/examples/video_prompt_translation.md +9 -0
  356. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/failure_modes_by_model.md +13 -0
  357. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/image_model_profiles.md +226 -0
  358. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/model_capability_matrix.md +24 -0
  359. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/model_update_protocol.md +10 -0
  360. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/parameter_compatibility.md +20 -0
  361. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/prompt_translation_rules.md +18 -0
  362. package/resources/skills/director-skills/upstream/skills/model-adaptation/references/video_model_profiles.md +251 -0
  363. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/model_comparison_table.md +4 -0
  364. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/model_specific_prompt_export.md +21 -0
  365. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/multi_model_export_package.md +18 -0
  366. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/prompt_translation_report.md +13 -0
  367. package/resources/skills/director-skills/upstream/skills/model-adaptation/templates/universal_prompt_brief.md +25 -0
  368. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/model_routing_tests.md +8 -0
  369. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/prompt_translation_tests.md +7 -0
  370. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/research_provenance_tests.md +6 -0
  371. package/resources/skills/director-skills/upstream/skills/model-adaptation/tests/unknown_capability_tests.md +7 -0
  372. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/SKILL.md +82 -0
  373. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/checklists/diagnostic_checklist.md +8 -0
  374. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/checklists/release_quality_checklist.md +9 -0
  375. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/examples/failed_output_to_revised_prompt.md +10 -0
  376. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/examples/final_prompt_package_export.md +10 -0
  377. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/failure_modes.md +13 -0
  378. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/iteration_diagnostics.md +17 -0
  379. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/revision_loops.md +17 -0
  380. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/references/story_voice_release_qc.md +30 -0
  381. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/failed_output_intake.md +13 -0
  382. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/final_production_package.md +11 -0
  383. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/templates/prompt_revision_report.md +17 -0
  384. package/resources/skills/director-skills/upstream/skills/prompt-iteration-and-diagnostics/tests/prompt_quality_checklist_tests.md +6 -0
  385. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/SKILL.md +81 -0
  386. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/checklists/scene_quality_checklist.md +8 -0
  387. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/examples/scene_to_screenplay_excerpt.md +18 -0
  388. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/dialogue_and_subtext.md +15 -0
  389. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/fountain_workflow.md +29 -0
  390. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/scene_construction.md +20 -0
  391. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/references/screenplay_format.md +18 -0
  392. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/beat_sheet.md +6 -0
  393. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/dialogue_pass.md +9 -0
  394. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/fountain_scene.md +25 -0
  395. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/templates/screenplay_scene.md +19 -0
  396. package/resources/skills/director-skills/upstream/skills/screenplay-and-scene-writing/tests/screenplay_scene_tests.md +6 -0
  397. package/resources/skills/director-skills/upstream/skills/short-film-development/SKILL.md +83 -0
  398. package/resources/skills/director-skills/upstream/skills/short-film-development/checklists/concept_quality_checklist.md +8 -0
  399. package/resources/skills/director-skills/upstream/skills/short-film-development/examples/idea_to_logline.md +13 -0
  400. package/resources/skills/director-skills/upstream/skills/short-film-development/examples/logline_to_outline.md +10 -0
  401. package/resources/skills/director-skills/upstream/skills/short-film-development/references/ai_storytelling_workflow.md +46 -0
  402. package/resources/skills/director-skills/upstream/skills/short-film-development/references/continuity_handoff.md +8 -0
  403. package/resources/skills/director-skills/upstream/skills/short-film-development/references/screenplay_structure.md +19 -0
  404. package/resources/skills/director-skills/upstream/skills/short-film-development/references/story_development_workflow.md +23 -0
  405. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/beat_sheet.md +7 -0
  406. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/idea_intake.md +16 -0
  407. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/logline.md +10 -0
  408. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/short_film_treatment.md +23 -0
  409. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/short_story_plan.md +22 -0
  410. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/story_premise.md +19 -0
  411. package/resources/skills/director-skills/upstream/skills/short-film-development/templates/story_revision_audit.md +22 -0
  412. package/resources/skills/director-skills/upstream/skills/short-film-development/tests/output_format_tests.md +3 -0
  413. package/resources/skills/director-skills/upstream/skills/short-film-development/tests/routing_tests.md +7 -0
  414. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/SKILL.md +77 -0
  415. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/checklists/shotlist_quality_checklist.md +8 -0
  416. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/examples/screenplay_scene_to_shot_list.md +8 -0
  417. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/camera_plan.md +11 -0
  418. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/production_breakdown.md +11 -0
  419. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/references/shotlist_schema.md +21 -0
  420. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/asset_list.md +7 -0
  421. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/camera_plan.md +10 -0
  422. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/scene_breakdown.md +16 -0
  423. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/templates/shot_list.md +5 -0
  424. package/resources/skills/director-skills/upstream/skills/shotlist-and-visual-breakdown/tests/screenplay_to_shotlist_tests.md +5 -0
  425. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/SKILL.md +77 -0
  426. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/checklists/style_quality_checklist.md +8 -0
  427. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/examples/genre_to_visual_direction.md +15 -0
  428. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/camera_lens_movement.md +26 -0
  429. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/cinematic_language.md +32 -0
  430. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/genre_style_tone.md +17 -0
  431. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/references/lighting_and_photorealism.md +19 -0
  432. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/templates/visual_style_bible.md +33 -0
  433. package/resources/skills/director-skills/upstream/skills/style-cinematography-director/tests/style_translation_tests.md +5 -0
  434. package/resources/skills/director-skills/upstream/tests/master_router_tests.md +80 -0
  435. package/resources/skills/drama-production/manifest.json +933 -0
  436. package/resources/skills/drama-production/upstream/LICENSE +21 -0
  437. package/resources/skills/drama-production/upstream/skills/short-drama/SKILL.md +153 -0
  438. package/resources/skills/drama-production/upstream/skills/short-drama/agents/openai.yaml +4 -0
  439. package/resources/skills/drama-production/upstream/skills/short-drama/assets/creator-decision.example.jsonl +4 -0
  440. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/app.js +1263 -0
  441. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/index.html +114 -0
  442. package/resources/skills/drama-production/upstream/skills/short-drama/assets/dashboard/styles.css +297 -0
  443. package/resources/skills/drama-production/upstream/skills/short-drama/assets/production-observation.example.jsonl +2 -0
  444. package/resources/skills/drama-production/upstream/skills/short-drama/assets/project-template/short-drama.json +36 -0
  445. package/resources/skills/drama-production/upstream/skills/short-drama/assets/reference-observation.example.jsonl +2 -0
  446. package/resources/skills/drama-production/upstream/skills/short-drama/references/audience-reveal.md +21 -0
  447. package/resources/skills/drama-production/upstream/skills/short-drama/references/contract-and-ownership.md +45 -0
  448. package/resources/skills/drama-production/upstream/skills/short-drama/references/creator-documents.md +230 -0
  449. package/resources/skills/drama-production/upstream/skills/short-drama/references/creator-workflow.md +98 -0
  450. 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
  451. 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
  452. 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
  453. package/resources/skills/drama-production/upstream/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +75 -0
  454. 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
  455. 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
  456. package/resources/skills/drama-production/upstream/skills/short-drama/references/knowhow-index.md +85 -0
  457. package/resources/skills/drama-production/upstream/skills/short-drama/references/look-development.md +51 -0
  458. package/resources/skills/drama-production/upstream/skills/short-drama/references/pickup-and-alternate.md +24 -0
  459. package/resources/skills/drama-production/upstream/skills/short-drama/references/production-form-profiles.md +126 -0
  460. package/resources/skills/drama-production/upstream/skills/short-drama/references/reference-roles.md +53 -0
  461. package/resources/skills/drama-production/upstream/skills/short-drama/references/runtime-preflight.md +24 -0
  462. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/creator_markdown_check.py +1413 -0
  463. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/dashboard_server.py +1798 -0
  464. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/project_tool.py +2454 -0
  465. package/resources/skills/drama-production/upstream/skills/short-drama/scripts/selftest.py +287 -0
  466. package/resources/skills/drama-production/upstream/skills/short-drama-assets/SKILL.md +76 -0
  467. package/resources/skills/drama-production/upstream/skills/short-drama-assets/agents/openai.yaml +4 -0
  468. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/character-look.example.jsonl +3 -0
  469. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/continuity.example.jsonl +4 -0
  470. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/decisions.example.jsonl +5 -0
  471. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/location-view.example.jsonl +3 -0
  472. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/occurrences.example.jsonl +5 -0
  473. package/resources/skills/drama-production/upstream/skills/short-drama-assets/assets/prop-state.example.jsonl +3 -0
  474. package/resources/skills/drama-production/upstream/skills/short-drama-assets/examples/minimal/characters.jsonl +2 -0
  475. package/resources/skills/drama-production/upstream/skills/short-drama-assets/examples/minimal/looks.jsonl +2 -0
  476. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/asset-review-checklist.md +82 -0
  477. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/character-and-look.md +190 -0
  478. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/continuity-delta.md +120 -0
  479. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/continuity-lock.md +122 -0
  480. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/identity-vs-variant.md +140 -0
  481. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/location-and-view.md +84 -0
  482. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/occurrence-extraction.md +108 -0
  483. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/prop-and-state.md +126 -0
  484. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/stage-contract.md +43 -0
  485. package/resources/skills/drama-production/upstream/skills/short-drama-assets/references/voice-direction.md +179 -0
  486. package/resources/skills/drama-production/upstream/skills/short-drama-assets/scripts/asset_check.py +267 -0
  487. package/resources/skills/drama-production/upstream/skills/short-drama-assets/scripts/selftest.py +89 -0
  488. package/resources/skills/drama-production/upstream/skills/short-drama-develop/SKILL.md +157 -0
  489. package/resources/skills/drama-production/upstream/skills/short-drama-develop/agents/openai.yaml +4 -0
  490. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/adaptation-map.example.jsonl +1 -0
  491. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/creative-brief.md +120 -0
  492. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/episode-map.jsonl +1 -0
  493. package/resources/skills/drama-production/upstream/skills/short-drama-develop/assets/story-engine.md +181 -0
  494. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/adaptation-craft.md +219 -0
  495. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/creative-reference-intake.md +57 -0
  496. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/director-brief-craft.md +113 -0
  497. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/episode-design.md +509 -0
  498. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-and-hook-playbook.md +240 -0
  499. 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
  500. 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
  501. 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
  502. 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
  503. 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
  504. 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
  505. 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
  506. 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
  507. 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
  508. 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
  509. 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
  510. 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
  511. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/genre-cards.md +92 -0
  512. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/mechanism-loop.md +282 -0
  513. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/multi-episode-intake.md +128 -0
  514. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/premise-devices.md +211 -0
  515. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/reveal-reversal-payoff.md +99 -0
  516. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/serial-character-and-memory.md +293 -0
  517. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/stage-contract.md +88 -0
  518. package/resources/skills/drama-production/upstream/skills/short-drama-develop/references/story-craft.md +359 -0
  519. package/resources/skills/drama-production/upstream/skills/short-drama-develop/scripts/episode_intake.py +699 -0
  520. package/resources/skills/drama-production/upstream/skills/short-drama-develop/scripts/selftest.py +47 -0
  521. package/resources/skills/drama-production/upstream/skills/short-drama-edit/SKILL.md +146 -0
  522. package/resources/skills/drama-production/upstream/skills/short-drama-edit/agents/openai.yaml +4 -0
  523. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/README.md +60 -0
  524. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/package.json +15 -0
  525. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/remotion.config.ts +6 -0
  526. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/Root.tsx +26 -0
  527. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/Subtitles.tsx +88 -0
  528. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/font.ts +46 -0
  529. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/index.ts +4 -0
  530. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/src/schema.ts +32 -0
  531. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets/remotion/tsconfig.json +13 -0
  532. package/resources/skills/drama-production/upstream/skills/short-drama-edit/assets//345/211/252/350/276/221/345/215/225.md +43 -0
  533. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/cut-craft.md +38 -0
  534. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/delivery-verify.md +29 -0
  535. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/generated-footage.md +54 -0
  536. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/sound-and-subtitles.md +60 -0
  537. package/resources/skills/drama-production/upstream/skills/short-drama-edit/references/stage-contract.md +51 -0
  538. package/resources/skills/drama-production/upstream/skills/short-drama-edit/scripts/edit_tool.py +1156 -0
  539. package/resources/skills/drama-production/upstream/skills/short-drama-edit/scripts/selftest.py +520 -0
  540. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/SKILL.md +73 -0
  541. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/agents/openai.yaml +4 -0
  542. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +187 -0
  543. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/image-prompts.md +42 -0
  544. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +128 -0
  545. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/assets/lookdev-prompts.md +34 -0
  546. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +2 -0
  547. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/character-and-look.md +153 -0
  548. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/common-recipe.md +241 -0
  549. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/edit-and-revision.md +110 -0
  550. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/location-plate.md +151 -0
  551. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/look-and-state-variant.md +97 -0
  552. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/lookdev-frame.md +34 -0
  553. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/production-sheet-recipes.md +177 -0
  554. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/prop-plate.md +137 -0
  555. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/review-and-fixtures.md +92 -0
  556. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/references/stage-contract.md +32 -0
  557. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/scripts/image_prompt_check.py +443 -0
  558. package/resources/skills/drama-production/upstream/skills/short-drama-image-prompts/scripts/selftest.py +95 -0
  559. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/SKILL.md +245 -0
  560. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/agents/openai.yaml +4 -0
  561. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/assets/episode-candidate.example.jsonl +3 -0
  562. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/adaptation-triage.md +116 -0
  563. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/adaptation-value.md +124 -0
  564. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +155 -0
  565. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/chapter-extraction.md +144 -0
  566. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/references/stage-contract.md +67 -0
  567. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/scripts/novel_index.py +651 -0
  568. package/resources/skills/drama-production/upstream/skills/short-drama-novel-analyze/scripts/selftest.py +51 -0
  569. package/resources/skills/drama-production/upstream/skills/short-drama-produce/SKILL.md +183 -0
  570. package/resources/skills/drama-production/upstream/skills/short-drama-produce/agents/openai.yaml +4 -0
  571. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/adapter-contract.md +219 -0
  572. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/gpt-image-2.md +24 -0
  573. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-h3-video.md +86 -0
  574. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-music.md +25 -0
  575. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/minimax-speech.md +41 -0
  576. package/resources/skills/drama-production/upstream/skills/short-drama-produce/references/providers/seedance.md +64 -0
  577. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/fixture_adapter.py +77 -0
  578. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/production_tool.py +2205 -0
  579. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/provider_adapters.py +1747 -0
  580. package/resources/skills/drama-production/upstream/skills/short-drama-produce/scripts/selftest.py +135 -0
  581. package/resources/skills/drama-production/upstream/skills/short-drama-review/SKILL.md +118 -0
  582. package/resources/skills/drama-production/upstream/skills/short-drama-review/agents/openai.yaml +4 -0
  583. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/finding-template.jsonl +2 -0
  584. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/supersession-decision.example.json +42 -0
  585. package/resources/skills/drama-production/upstream/skills/short-drama-review/assets/verdict-template.json +32 -0
  586. package/resources/skills/drama-production/upstream/skills/short-drama-review/examples/minimal-findings.jsonl +2 -0
  587. package/resources/skills/drama-production/upstream/skills/short-drama-review/examples/minimal-verdict.json +34 -0
  588. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/anti-template-repair.md +109 -0
  589. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/production-quality-gates.md +276 -0
  590. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/project-calibration.md +83 -0
  591. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/review-method.md +81 -0
  592. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-assets-prompts.md +111 -0
  593. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-source-analysis.md +108 -0
  594. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-story-script.md +264 -0
  595. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/rubric-visual-motion.md +184 -0
  596. package/resources/skills/drama-production/upstream/skills/short-drama-review/references/stage-contract.md +28 -0
  597. package/resources/skills/drama-production/upstream/skills/short-drama-review/scripts/review_check.py +325 -0
  598. package/resources/skills/drama-production/upstream/skills/short-drama-review/scripts/selftest.py +87 -0
  599. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/SKILL.md +175 -0
  600. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/agents/openai.yaml +4 -0
  601. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +2 -0
  602. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/coverage-template.json +49 -0
  603. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/keyframe-prompts.md +36 -0
  604. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/keyframe-template.jsonl +2 -0
  605. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +12 -0
  606. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +2 -0
  607. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/assets/shot-template.jsonl +2 -0
  608. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/blocking-playbooks.md +216 -0
  609. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/comic-keyframe-lexicon.md +156 -0
  610. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/coverage-audition.md +34 -0
  611. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/keyframe-craft.md +174 -0
  612. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/lighting-craft.md +39 -0
  613. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/production-shot-grammar.md +279 -0
  614. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/review-and-fixtures.md +36 -0
  615. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/scene-visual-plan.md +30 -0
  616. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +155 -0
  617. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/shot-craft.md +266 -0
  618. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/shot-revision-identity.md +25 -0
  619. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/references/stage-contract.md +57 -0
  620. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/scripts/selftest.py +191 -0
  621. package/resources/skills/drama-production/upstream/skills/short-drama-storyboard/scripts/storyboard_check.py +824 -0
  622. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/SKILL.md +154 -0
  623. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/agents/openai.yaml +4 -0
  624. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +21 -0
  625. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +101 -0
  626. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +217 -0
  627. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +2 -0
  628. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +31 -0
  629. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/performance.fragment.json +38 -0
  630. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/assets/video-prompts.md +67 -0
  631. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +2 -0
  632. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/camera-audio-continuity.md +259 -0
  633. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/delivery-profile.md +273 -0
  634. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/generability.md +93 -0
  635. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/minimax-h3.md +253 -0
  636. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/motion-recipe.md +315 -0
  637. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/performance-action-timing.md +209 -0
  638. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/production-prompt-grammar.md +304 -0
  639. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/review-and-fixtures.md +139 -0
  640. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/seedance-2.0.md +50 -0
  641. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/seedance-2.5.md +122 -0
  642. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/stage-contract.md +60 -0
  643. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/references/target-model-profile.md +116 -0
  644. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/container_check.py +329 -0
  645. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/motion_timing_check.py +450 -0
  646. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/music_spec_check.py +327 -0
  647. package/resources/skills/drama-production/upstream/skills/short-drama-video-prompts/scripts/selftest.py +82 -0
  648. package/resources/skills/drama-production/upstream/skills/short-drama-write/SKILL.md +99 -0
  649. package/resources/skills/drama-production/upstream/skills/short-drama-write/agents/openai.yaml +4 -0
  650. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/beats.jsonl +2 -0
  651. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/episode-card-standalone.json +120 -0
  652. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/episode-card.json +55 -0
  653. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/screenplay.md +36 -0
  654. package/resources/skills/drama-production/upstream/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +89 -0
  655. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/dialogue-craft.md +526 -0
  656. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/production-format-dialect.md +273 -0
  657. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/scene-handoff-capsule.md +25 -0
  658. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/scene-sound-dramaturgy.md +43 -0
  659. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/screenplay-format.md +266 -0
  660. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/script-craft.md +745 -0
  661. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/stage-contract.md +36 -0
  662. package/resources/skills/drama-production/upstream/skills/short-drama-write/references/substitutable-realization.md +107 -0
  663. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/duration_estimate.py +309 -0
  664. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/screenplay_index.py +1091 -0
  665. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/selftest.py +229 -0
  666. package/resources/skills/drama-production/upstream/skills/short-drama-write/scripts/voice_sheet_check.py +416 -0
  667. package/resources/skills/viora-canvas-production/manifest.json +23 -0
  668. package/resources/skills/viora-canvas-production/references/canvas-contract.md +50 -0
  669. package/resources/skills/viora-canvas-production/references/creative-production.md +50 -0
  670. package/resources/skills/viora-canvas-production/references/generation-delivery.md +36 -0
  671. package/resources/skills/viora-canvas-production/references/production-ledger.md +25 -0
@@ -0,0 +1,195 @@
1
+ ---
2
+ name: martin_scorsese_urban_kinetic_skill
3
+ title: 马丁·斯科塞斯导演风格 Skill
4
+ description: 用于学习并转化斯科塞斯式都市能量、罪感、男性困境、流行音乐剪辑、旁白和道德坠落。请用于原创创作,不要复制其具体镜头、台词、角色或受版权保护的表达。
5
+ ---
6
+
7
+ # 马丁·斯科塞斯导演风格 Skill
8
+
9
+ Load this file when 用户点名「斯科塞斯 / Scorsese 风格」,或当场景需要一个人用旁白为自己辩护,而镜头在同一时间拆穿他。
10
+
11
+ ## 一句话镜头 / Lens in one line
12
+
13
+ 让摄影机被欲望拖着走,用音乐把上升拍得好看,再用静默让代价落地。
14
+
15
+ Let desire drag the camera, sell the rise on a pop track, then cut the music so the cost lands.
16
+
17
+ ## 适用场景
18
+
19
+ - 犯罪片、都市人物传记、道德坠落、亚文化圈层生态、男性友谊与暴力关系、宗教罪感。
20
+ - 需要"进入一个世界"的段落:从任何人都能进的公共入口,连续走到只有内部人能进的那个房间。
21
+ - 需要用 60–120 秒压缩数年命运的音乐蒙太奇。
22
+ - 不适用:需要观众保持冷静分析的题材、极简室内心理剧、无音乐的写实主义。
23
+
24
+ ## 反例:这不是什么 / What this lens is NOT
25
+
26
+ - 不是通用手持犯罪片:手持不是默认语法。能量来自有目的的机器运动——稳定器长镜头、推轨、急推变焦。摄影机被人物欲望拖着走,不是被摄影师的呼吸拖着走。
27
+ - 不是当代动作片的抖动:任何抖动都会毁掉这个风格。运动必须平滑并且有速度曲线:起步慢、中段快、停得干脆,停在一个构图上而不是漂着。
28
+ - 不是盖·里奇:里奇用剪辑花招(分屏、定格图解、倒放)讲规则;这里靠第一人称旁白 + 一个不间断的长镜头带观众走进去,规则由空间路径本身揭示——哪道门要有人放行、哪条通道只有自己人走、终点那张桌子谁能坐。
29
+ - 不是浪漫化犯罪:上升段用流行乐蒙太奇(ASL 1.5–3 秒),崩塌段必须抽掉音乐并把 ASL 拉到 8–15 秒。这两段的音画反差就是道德判断,缺一段就变成宣传片。
30
+ - 不是塔伦蒂诺:塔式暴力被对白与风格化拖长;这里的暴力短促(0.5–2 秒)、笨拙、有难看的生理后果,并且专门用来打断此前的音乐节奏。
31
+ - 不是芬奇的冷静调查:这里的叙述者不可靠,摄影机与人物同谋。允许人物直视镜头说话、允许旁白与画面矛盾——矛盾就是内容。
32
+
33
+ ## 核心风格关键词
34
+
35
+ 都市脉搏、不可靠旁白、圈层规则、流行乐蒙太奇、稳定器长镜头、急推变焦、突发暴力、罪感与自辩、上升到崩塌。
36
+
37
+ ## 叙事方法
38
+
39
+ - 结构固定为四段:进入 → 上升 → 沉迷 → 坠落。四段的音乐密度依次为高、最高、中、零。
40
+ - 用第一人称旁白搭建人物的神话,再用画面证伪:旁白说"我们都是朋友",画面里有人被隔在门外。
41
+ - 亚文化世界必须有可被列举的规则(谁先动手、钱怎么分、谁能坐哪张桌子)。规则通过一次违规被观众理解。
42
+ - 人物不理解自己的罪,只会不断辩护;因此他不设置转折点,转折由后果设置。
43
+ - 结尾不美化堕落:给出他失去的具体东西(一个人、一个位置、一种自我形象),不给顿悟。
44
+
45
+ ## 镜头语言
46
+
47
+ - 主力 18–27mm 用于稳定器长镜头(跟随人物穿过空间,与背景保持接触感);40–75mm 用于人物在自辩时的中近景。
48
+ - 长镜头的功能是"入场仪式":从公共空间连续走到私密空间,路上经过至少 3 个需要被许可的关卡。生成端把它拆成 2–3 段,接点放在有人或有物完全挡住画面的那 4–6 帧(一个横过的背影、一扇被推开的门),观众读不出接缝;工具若提供续写/延长入口,直接用它接。
49
+ - 急推变焦(snap zoom)用一支约 27–75mm 的变焦头完成:0.5–1 秒内从 27 推到 75,机位不动。这是焦段变化不是位移,透视不变,所以它读起来像"被抓住"而不是"被接近"——生成端必须写成 focal length change, camera does not move,否则模型会做成推轨,透视一变这层意思就没了。一个段落最多 2 次,只用在信息突然对人物不利的那一帧。
50
+ - 特写用于兴奋、偏执、羞耻与暴力前的瞬间,通常伴随呼吸声抬高。
51
+ - 允许人物直视镜头或对镜头说话;此时摄影机停止运动,构图正面居中。
52
+ - 运动词表与覆盖几何见 [cinematic-language.md](../cinematic-language.md),此处只做取舍。
53
+
54
+ ## 灯光与色彩
55
+
56
+ - 夜景为主:霓虹、酒吧红、后厨绿、金色包厢、街灯钠黄。实用光源直接入画并且允许过曝。
57
+ - 主光可以很硬且方向混乱(多个实用光源互相打架),比 5:1;这种"脏"的照明就是都市的质感。
58
+ - 上升段饱和度拉高(红金为主),坠落段把饱和度降低 30–40%、把红换成灰绿,同一空间照明不改而观感改变。
59
+ - 烟雾常驻:让每个光源都有可见的光锥,画面才有厚度。
60
+
61
+ ## 剪辑节奏
62
+
63
+ - 音乐蒙太奇 ASL 1.5–3 秒,切点严格落在鼓点或人声起句上;崩塌段 ASL 8–15 秒且无音乐。
64
+ - 可用定格 + 旁白解释一个人物(一次段落不超过 3 次),也可用跳切压缩重复行为。
65
+ - 暴力打断节奏:在最快的音乐段落里插入一个 0.5–2 秒的暴力镜头,然后让音乐继续,观众带着不适继续跳舞。
66
+ - 慢动作只在一个地方用:人物第一次意识到自己被排除在外的那一刻。只有这一条 clip 要把 slow motion 从 negative 列表里拿掉,其余全段保留禁用。
67
+ - 切点与节奏的通用算法见 [editing-and-assembly.md](../editing-and-assembly.md),音乐落点的写法见 [sound-and-dialogue.md](../sound-and-dialogue.md)。
68
+
69
+ ## 声音与音乐
70
+
71
+ - 流行歌曲是时代、阶层与人物心理的标记,不是背景。选歌的理由必须能一句话说清。
72
+ - 音乐来源尽量在场景内(点唱机、车载电台、楼上派对),这样它可以被人物关掉——关掉的那一刻就是转折。
73
+ - 旁白与画面允许矛盾。录音风格是近讲式、干、亲密,像有人凑到观众耳边。
74
+ - 城市噪音分层:低频(车流、地铁)打底,中频(人声、餐具)承载空间,高频(笑声、玻璃、警笛)做刺点。
75
+
76
+ ## 人物与表演
77
+
78
+ - 人物充满能量、欲望与矛盾,既有魅力也有危险;表演强调语速、打断、重叠和突然的沉默。
79
+ - 群戏是重叠对白:3 人以上同时说话,观众只需要听清其中一条线,其余是能量。
80
+ - 给的指令是节奏:这段话不许换气、这句必须打断对方、这里停 3 秒再回答。
81
+ - 角色不理解自己的罪。演员不能演出"我知道我错了",只能演出"我在解释"。
82
+
83
+ ## 风格参数 / Style parameters
84
+
85
+ ```yaml
86
+ style_id: scorsese
87
+ lens_kit_mm: [18, 27, 40, 75] # 18/27 撑稳定器长镜头,让背景始终贴着人物;40 拍自辩的中近景;75 是急推的落点——急推由一支约 27-75mm 的变焦头在 0.5-1 秒内推完,机位不动
88
+ camera:
89
+ prefer: ["steadicam long take entering a space", "dolly-in that accelerates then stops hard", "snap zoom on a face", "lateral tracking along a bar or table", "locked frontal when the character addresses the lens"]
90
+ avoid: ["unmotivated handheld shake", "drifting float with no endpoint", "slow drone-like flyover", "symmetrical locked wide", "static coverage of a moving scene"]
91
+ motion_budget: high
92
+ height: "眼平;入场长镜头维持 1.5-1.6m 恒定,暴力节拍可掉到腰高"
93
+ shot_size_bias: ["steadicam medium tracking", "close-up on excitement or shame", "wide of the room as a social map", "insert of money/hands/glass", "frontal medium for direct address"]
94
+ composition: ["subject centred with the world streaming past behind", "layered background of people who all have business", "practical light source burning in frame", "over-shoulder into a room the character is not yet allowed in", "frontal symmetrical only for direct address"]
95
+ lighting:
96
+ key_quality: hard
97
+ key_ratio: "5:1,方向混乱(多个实用光源互相打架)"
98
+ motivation: practical
99
+ signature: "入画且允许过曝的霓虹与灯罩,常驻烟雾让每个光源都有可见光锥"
100
+ palette:
101
+ dominant: 酒吧红、后厨绿、钠黄街灯、包厢金
102
+ accent: 白炽过曝的高光点、单一冷蓝(警灯或电视)
103
+ saturation: high
104
+ contrast: high
105
+ editing:
106
+ avg_shot_length_s: "1.5-3 音乐蒙太奇;8-15 崩塌段(无音乐)"
107
+ transition_bias: ["hard cut on the downbeat", "jump cut", "freeze frame", "whip pan"]
108
+ coverage_style: "长镜头承担入场,碎切承担上升;同一空间在上升与坠落时用相同机位、不同节奏拍两次"
109
+ sound:
110
+ music: 场景内可见来源的流行歌(点唱机、车载电台、楼上派对),可被人物关掉;关掉即转折
111
+ ambience: 三层都市噪音——低频车流、中频人声餐具、高频笑声玻璃警笛
112
+ dialogue: 重叠、打断、语速快;群戏只需听清一条线,其余是能量
113
+ silence_use: 崩塌段完全无音乐,只留房间底噪,持续 15 秒以上
114
+ performance:
115
+ register: 魅力与危险并存;演"我在解释",不许演"我知道我错了"
116
+ blocking: 人物不断向房间更深处移动;被排除时用一道门或一群背影挡住他
117
+ aspect_bias: "1.85:1 / 16:9"
118
+ ai_video:
119
+ clip_duration_s: "2-4 蒙太奇碎片;8-12 入场长镜头"
120
+ prompt_bias: 把摄影机运动写成有终点的句子("tracks with him until he stops at the bar, then holds"),不要写"camera moves through the scene"。速度曲线必须显式:slow start, faster middle, hard stop。
121
+ risk: 模型把"跟拍"做成无止境的漂移,人物与背景脱节,能量变成眩晕。对策是每条 clip 指定一个停止点与停止时的构图,并把背景人物写成"各自有事在做"而不是"人群"。
122
+ negative_prompt_adds: ["handheld jitter", "aimless floating camera", "slow motion", "empty background", "clean even lighting", "modern smartphone screens", "text or watermark", "symmetrical composition"]
123
+ ```
124
+
125
+ ## 可迁移拍摄清单
126
+
127
+ 1. 写下这个圈层的 3 条规则,并设计一次违规来让观众学会它们。
128
+ 2. 让人物用旁白讲自己的神话,然后在同一画面里放一个证伪它的视觉细节。
129
+ 3. 设计一条入场路径:公共空间 → 3 个关卡 → 私密空间,用一个不间断长镜头走完。
130
+ 4. 给每个摄影机运动写终点与停止构图,并标出速度曲线。
131
+ 5. 上升段选一首场景内有来源的歌,切点落在鼓点上,ASL 1.5–3 秒。
132
+ 6. 在最快的音乐段里插一个 0.5–2 秒的暴力镜头,然后让音乐继续。
133
+ 7. 坠落段抽掉全部音乐,ASL 拉到 8–15 秒,饱和度降 30–40%。
134
+ 8. 结尾写出他具体失去的那一样东西,不写顿悟。
135
+
136
+ ## 提示词模板 / Prompt templates
137
+
138
+ 镜头设计简报(中文,用于 Step 5 导演本与 Step 7 分镜):
139
+
140
+ ```text
141
+ 用斯科塞斯镜头设计以下场景:<一句话事件>
142
+ 硬性要求:
143
+ - 圈层规则 3 条 <>,违规事件 <>
144
+ - 旁白一句(人物的自我神话)+ 同画面里证伪它的视觉细节 <>
145
+ - 入场路径:公共空间 → 关卡1 <> → 关卡2 <> → 关卡3 <> → 私密空间,一个长镜头走完
146
+ - 焦段:18-27mm 稳定器跟拍 / 40mm 自辩中近景 / 急推落点 75mm(27→75 变焦,机位不动,全段最多 2 次)
147
+ - 运动:每条写终点与停止构图,速度曲线"慢起—中段快—硬停"
148
+ - 光:入画实用光源允许过曝,比 5:1,常驻烟雾让光锥可见
149
+ - 声:场景内有来源的歌 <>;崩塌段抽掉音乐,只留房间底噪
150
+ - 节奏:上升 ASL 1.5-3 秒(切在鼓点);坠落 ASL 8-15 秒
151
+ 输出:分镜表 + 音乐切点表 + 上升/坠落两版同机位对照
152
+ ```
153
+
154
+ Image-to-video motion prompt(英文,用于 Step 10,接关键帧):
155
+
156
+ ```text
157
+ [27mm], eye level at 1.55m, steadicam tracking that starts slow, accelerates, and stops hard on [named endpoint composition].
158
+ [Subject] begins [start state], then walks [direction] past [named obstacle/gatekeeper], and stops at [endpoint].
159
+ Background figures each have their own business — [pouring, carrying, arguing] — nobody is standing still as a crowd.
160
+ Practical light sources burn in frame: [neon sign | kitchen fluorescents | shaded table lamp]; visible haze gives each a light cone; 5:1, mixed directions.
161
+ End with the camera locked on [exact final framing]. Maintain [face, costume, prop, bar/room geometry, colour palette].
162
+ Avoid: handheld jitter, aimless floating camera, slow motion, empty background, even lighting, text, watermark.
163
+ ```
164
+
165
+ Keyframe / still prompt(英文,用于 Step 8,接图像模型):
166
+
167
+ ```text
168
+ [Medium tracking frame | close-up], 27mm-equivalent, eye level, subject centred with the room streaming past behind.
169
+ Background: three layers of people, each mid-action; a doorway at the rear leading somewhere the subject is not yet allowed.
170
+ Lighting: practical only — [red neon | green kitchen fluorescent | sodium street light] burning in frame and slightly clipped;
171
+ haze so every source shows a cone; hard mixed-direction key at 5:1.
172
+ Palette: saturated bar red and gold with one cold blue accent [police light | television].
173
+ Expression: [lit up with excitement | jaw tight with shame], breath visible in the pace of the chest.
174
+ 1.85:1. No symmetry, no clean lighting, no empty background, no text, no watermark.
175
+ ```
176
+
177
+ ## 落地示例 / Worked example
178
+
179
+ 控制场景:一个人站在一扇关着的公寓门前,手里拿着打算送出去的东西,犹豫,最后没敲门就走了。
180
+
181
+ 这一拍的功能:让他一路上都在用旁白解释自己为什么应该被原谅,然后在门前,房子替他回答。
182
+
183
+ 调度:稳定器从楼下的门厅开始,跟着他上两层楼梯。路上经过三个关卡:一个把门开条缝又关上的邻居、一段熄了灯的声控走廊(他跺脚灯才亮)、一台还在响的公用洗衣机。旁白全程在讲"我只是来放个东西,不打扰"。他到门前停住,摄影机在他身后 1.2 米硬停。他抬手——楼上有人放的歌在这一秒被关掉。他把包裹换到左手,转身,摄影机跟他往回走两步后停下,让他走出画面,只剩那扇门。
184
+
185
+ 关键镜头 SH4 完整规格:中景跟拍转锁定,27mm,眼平 1.55 米,硬停在他身后 1.2 米——27mm 在这个距离给到约 1.6 米宽的画幅,他的背、两侧墙面和整扇门都在里面,谁都躲不掉。稳定器慢起—中段快—硬停。走廊唯一光源是刚被跺亮的声控顶灯,色温偏绿,比 5:1,方向从头顶正上方压下来,眼窝全黑。楼道有薄烟(做饭的油烟),顶灯有可见光锥。声音:楼上歌声 → 硬切静音 → 只剩洗衣机的滚筒声与声控灯的电流嗡鸣。
186
+
187
+ ```text
188
+ 27mm, eye level at 1.55m, steadicam following a man from behind up a stairwell landing — slow start, faster through the corridor, hard stop 1.2m behind him at a closed apartment door.
189
+ A motion-sensor ceiling light snaps on overhead: single green-tinted source straight down, 5:1, eye sockets in shadow; thin cooking haze makes a visible cone.
190
+ He arrives holding a wrapped parcel, raises his hand toward the door, and stops. Music playing from an upstairs flat cuts off on that exact beat.
191
+ He moves the parcel to his left hand, turns, and walks back past camera out of frame. The camera stays, locked on the closed door.
192
+ Ambient after the cut-off: a washing machine drum and the electrical hum of the light.
193
+ Maintain his face, jacket, the parcel, the corridor's green light and haze.
194
+ Avoid: handheld jitter, floating camera, slow motion, symmetrical composition, even lighting, text, watermark.
195
+ ```
@@ -0,0 +1,197 @@
1
+ ---
2
+ name: federico_fellini_dream_carnival_skill
3
+ title: 费德里科·费里尼导演风格 Skill
4
+ description: 用于学习并转化费里尼式梦境、马戏团感、记忆、欲望、自传性幻想和现实与幻觉交叠。请用于原创创作,不要复制其具体镜头、台词、角色或受版权保护的表达。
5
+ ---
6
+
7
+ # 费德里科·费里尼导演风格 Skill
8
+
9
+ Load this file when 用户点名「费里尼 / Fellini 风格」,或当场景要从写实滑进梦境,而这个滑动必须由人群而不是特效完成。
10
+
11
+ ## 一句话镜头 / Lens in one line
12
+
13
+ 怪异全部长在真人身上:脸、身体、服装、姿态;摄影机在人群里游动,不停下。
14
+
15
+ The strangeness lives on real bodies — faces, flesh, costume, posture — and the camera drifts through the crowd without settling.
16
+
17
+ ## 适用场景
18
+
19
+ - 梦境段落、自传性叙事、艺术家困境、荒诞喜剧、回忆结构、城市漫游、群像仪式(游行、派对、集会、婚礼、葬礼)。
20
+ - 需要喜剧与悲伤同时在场的段落;需要主角被一群人包围但更孤独的段落。
21
+ - 时尚片、音乐录影、品牌短片里需要"生命剧场"感的群像调度。
22
+ - 不适用:需要严密因果的类型片情节、需要观众相信空间地图的动作戏、极简室内两人戏。
23
+
24
+ ## 反例:这不是什么 / What this lens is NOT
25
+
26
+ - 不是通用超现实:超现实靠不可能的物件与视觉扭曲(漂浮、变形、拼贴);这里的怪异全部来自真实的人——脸、体型、服装、姿态的奇观性。场景本身保持物理可信,重力不失效。
27
+ - 不是林奇:林奇的梦是威胁性的、缓慢的、靠低频与声音设计压迫;这里的梦是喧闹的、外向的、由人群与游行推进,情绪是滑稽与悲伤同时在场,不是恐惧。
28
+ - 不是韦斯·安德森:不用对称、不用平面正交构图、不用居中定格。摄影机在人群中游动(跟移 + 摇摄),人物从画面边缘陆续进入,构图持续被打断和重组。
29
+ - 不是塔可夫斯基的梦:塔可夫斯基的梦缓慢、静默、物质性(水、火、尘、时间流逝);这里由音乐驱动,节拍接近圆舞曲或进行曲,人声嘈杂,几乎没有静默。
30
+ - 不是转场特效:现实滑入幻想不靠溶解、变形或粒子。方法是同一空间内群众行为的逐级升级——先多出一个不合时宜的人,再多出五个,直到空间变成舞台,而观众说不清是哪一秒变的。
31
+ - 不是无结构漫游:离题必须回旋。同一意象(乐队、海边、一张脸、一件衣服)在段落里至少出现两次,第二次带着第一次积累的情绪回来,否则只是散。
32
+
33
+ ## 核心风格关键词
34
+
35
+ 游行式调度、人脸奇观、马戏团与圆舞曲、记忆逻辑、欲望与羞耻、滑稽与悲伤并置、心理舞台、意象回旋、开放结尾。
36
+
37
+ ## 叙事方法
38
+
39
+ - 用记忆与欲望做结构,不用因果。一个段落的连接理由可以是"同一首曲子"或"同一种羞耻"。
40
+ - 主角常是迷惘的创作者、浪子或观察者;他的功能是被环绕,不是推动。
41
+ - 现实滑入幻想没有边界线:让观众在事后才意识到已经越界。
42
+ - 全片选 3 个意象反复出现,每次改变一个属性(白天变夜晚、活人变照片、乐队变一个人)。
43
+ - 结尾是圆舞、游行或队列继续走,不给答案,给"生活还在流动"的动量。
44
+
45
+ ## 镜头语言
46
+
47
+ - 主力 18–32mm。正面近景用 25mm 贴到 0.5–0.7 米拍——夸张来自这个距离而不是这支镜头(同样是 25mm,退到 2 米脸就只是变小)。鼻子略大、耳朵后缩是漫画式效果,不要用长焦修正。
48
+ - 摄影机持续游动:跟移 + 摇摄组合,速度 0.4–0.8 m/s,很少完全静止。它像一个在派对里找人的宾客。
49
+ - 群体调度像游行:人物从画面左右边缘陆续入画,前景不断有人穿过(前景遮挡占 10–30%),构图每 2–3 秒被重组一次。群体走位的记法与出入场几何见 [blocking-and-staging.md](../blocking-and-staging.md)。
50
+ - 允许人物直视镜头并对镜头说话或招手——观众被邀请成为队伍里的一员,而不是被推开。
51
+ - 一场戏里安排一次"垂直事件":有人站上桌子、有人从楼梯上下来、有东西被举高,让平面的人群突然获得高度。
52
+ - 竖幅(9:16)改写:"人从画面左右边缘陆续入画"在 9:16 上没有地方发生——横向只剩一个身位。把游行改成纵深队列:人从纵深远端走来、贴着镜头擦身而过、再从画面下缘出画;前景遮挡由离镜头最近那个人的肩背承担,比例仍是 10–30%。摄影机的横向游动改成沿纵深的游动。而那次"垂直事件"在竖幅里从点缀升成主结构——纵向是竖幅唯一富余的方向。竖幅通则见 [cinematic-language.md](../cinematic-language.md)。
53
+
54
+ ## 灯光与色彩
55
+
56
+ - 光像舞台照明:硬边光区打出看得见的边界,雾再把边界柔化半米左右;人物走进走出光区,明暗切换本身是表演。
57
+ - 雾与逆光常驻:让人群有轮廓、有层次,也让边界变得不可靠。比 4:1,但阴影里保留细节。
58
+ - 彩色时倾向华丽、人工、肉感:粉、金、酒红、天蓝,饱和度高;服装的颜色比环境更响。
59
+ - 黑白思维时靠强反差 + 雾 + 白衣黑衣的对撞分区,不靠灰阶细腻。
60
+
61
+ ## 剪辑节奏
62
+
63
+ - ASL 6–14 秒,切点由音乐乐句决定而不是由动作决定;一个乐句结束才切。
64
+ - 允许"离题"镜头(一个与情节无关的人做一件无关的事)占段落 15–25%,它们承担世界的密度。
65
+ - 场景之间用意象、音乐或欲望连接,不用因果:同一顶帽子、同一段旋律、同一个手势。
66
+ - 结尾段落把 ASL 拉长到 15–30 秒,让队列在一个镜头里走完;生成端拆成 2–3 段,接点放在前景有人整幅穿过的那几帧(工具若提供续写/延长入口就直接用它)。
67
+
68
+ ## 声音与音乐
69
+
70
+ - 音乐是发动机:圆舞曲、进行曲、马戏团铜管、怀旧流行。它先于人物动作确定节拍,人物跟着音乐走路。
71
+ - 声音允许夸张与非写实:笑声、叫卖、祈祷、海浪可以在物理上不该出现的地方出现。
72
+ - 对白可以听不清也可以互相压过——它是人群的质地。真正重要的话通常由一个人在音乐间隙单独说出。
73
+ - 几乎不用静默;如果用,就用在意象第二次回来的那一刻,只留一种声音(风、海、铃)。
74
+
75
+ ## 人物与表演
76
+
77
+ - 人物夸张、怪诞、可笑又可怜,像现实人物与梦中形象的混合。选角优先"一张脸能说完一个故事"。
78
+ - 表演强调姿态与存在感:怎么站、怎么笑、怎么举手,比台词重要。
79
+ - 女性形象常带欲望投射;当代创作必须给她自己的目的与视角,让她也是观察者,而不是被观察的符号。
80
+ - 群众演员不是背景:每人给一句话的身份与一个正在做的动作,这是这个风格的主要成本。
81
+
82
+ ## 风格参数 / Style parameters
83
+
84
+ ```yaml
85
+ style_id: fellini
86
+ lens_kit_mm: [18, 25, 32] # 18 装下整支队伍与前景穿行;25 做正面近景的漫画式透视夸张(不要用长焦修正);32 是人群中跟移的默认焦段
87
+ camera:
88
+ prefer: ["drifting track through a crowd at 0.4-0.8 m/s", "pan handing off from one face to the next", "frontal wide close-up with mild distortion", "crane rising over a procession", "follow that loses the subject and finds another"]
89
+ avoid: ["locked symmetrical wide", "long-lens compression", "shallow-focus isolation", "static shot-reverse-shot", "drone-style detached flyover"]
90
+ motion_budget: high
91
+ height: "眼平游动为主;垂直事件时升到 2.5-4m 让人群变成图案"
92
+ shot_size_bias: ["wide of the whole procession", "frontal close-up of a single strange face", "medium tracking through bodies", "over-shoulder past a foreground passer-by", "high angle turning the crowd into a pattern"]
93
+ composition: ["figures entering continuously from both frame edges", "foreground passers-by occupying 10-30%", "reframed every 2-3 seconds, never settled", "one vertical event lifting someone above the crowd", "direct address to the lens"]
94
+ lighting:
95
+ key_quality: mixed
96
+ key_ratio: "4:1,阴影保留细节"
97
+ motivation: stylized
98
+ signature: "硬边舞台光区被常驻的雾柔化半米;人物走进走出光区,明暗切换本身是表演"
99
+ palette:
100
+ dominant: 粉、金、酒红、天蓝
101
+ accent: 纯白与漆黑的服装对撞
102
+ saturation: high
103
+ contrast: mid
104
+ editing:
105
+ avg_shot_length_s: "6-14;结尾段拉到 15-30"
106
+ transition_bias: ["hard cut on a musical phrase end", "match cut on a recurring image", "dissolve"]
107
+ coverage_style: "不做正反打;一个游动镜头交接多个人物,离题镜头占段落 15-25%"
108
+ sound:
109
+ music: 圆舞曲、进行曲、马戏团铜管——先于动作确定节拍,人物跟着音乐走路
110
+ ambience: 允许非写实:笑声、叫卖、祈祷、海浪出现在物理上不该出现的地方
111
+ dialogue: 互相压过、听不清,是人群的质地;重要的话在音乐间隙由一个人单独说出
112
+ silence_use: 极少;只用在某个意象第二次回来时,留一种声音(风、海、铃)
113
+ performance:
114
+ register: 夸张、怪诞、可笑又可怜;选角标准是"一张脸能说完一个故事"
115
+ blocking: 主角站着不动被环绕,人群绕他运动;群众演员每人有一句话身份与一个正在做的动作
116
+ aspect_bias: "1.85:1;黑白段落可用 1.37:1" # 9:16 交付时的构图改写见「镜头语言」末条
117
+ ai_video:
118
+ clip_duration_s: "6-12"
119
+ prompt_bias: 先写人群的行为清单(谁在做什么),再写摄影机;把"持续有人从画面边缘进出"写成硬要求,把音乐节拍写进动作描述(walking on the beat of a waltz)。
120
+ risk: 模型会把人群做成对称、同步、面目模糊的背景板,怪异感消失。对策是点名 3-5 个具体人物及其各自动作与服装,并写 no two people doing the same thing、faces distinct and exaggerated。
121
+ negative_prompt_adds: ["symmetrical composition", "synchronised crowd", "blurred faceless background people", "shallow depth of field", "long-lens compression", "cold desaturated palette", "text or watermark", "empty space"]
122
+ ```
123
+
124
+ ## 可迁移拍摄清单
125
+
126
+ 1. 选 3 个意象,规划它们各出现两次,第二次改变一个属性。
127
+ 2. 给场上每个群众角色写一句话身份 + 一个正在做的动作;写不满就减少人数。
128
+ 3. 设计现实到幻想的升级台阶:先多出 1 个不合时宜的人,再多出 5 个,最后空间变成舞台。
129
+ 4. 先定音乐再定调度,让人物的步速跟上乐句。
130
+ 5. 摄影机全段游动,写出速度(0.4–0.8 m/s)与每次交接给下一张脸的时间点。
131
+ 6. 安排一次垂直事件,让平面人群突然有高度。
132
+ 7. 允许 15–25% 的镜头与情节无关,用来撑世界的密度。
133
+ 8. 结尾让队列继续走,用一个 15–30 秒的长镜头收,不给答案。
134
+
135
+ ## 提示词模板 / Prompt templates
136
+
137
+ 镜头设计简报(中文,用于 Step 5 导演本与 Step 7 分镜):
138
+
139
+ ```text
140
+ 用费里尼镜头设计以下场景:<一句话事件>
141
+ 硬性要求:
142
+ - 3 个回旋意象 <> <> <>,各出现两次,第二次改变的属性 <>
143
+ - 群众清单:至少 5 人,每人"一句话身份 + 正在做的动作 + 服装颜色"
144
+ - 幻想升级台阶:1 个不合时宜的人 → 5 个 → 空间变舞台,写清每一级的触发点
145
+ - 焦段:18mm 装队伍 / 25mm 正面近景(保留透视夸张,不修正)/ 32mm 人群跟移
146
+ - 运动:全段游动 0.4-0.8 m/s,写出交接给下一张脸的时间点;一次垂直事件 <>
147
+ - 光:舞台式光区 + 常驻雾与逆光,比 4:1,阴影保留细节
148
+ - 色:粉 / 金 / 酒红 / 天蓝,高饱和;服装比环境更响
149
+ - 声:先定曲子 <>,人物按乐句走路;切点落在乐句结束
150
+ 输出:分镜表 + 群众动作表 + 意象回旋表
151
+ ```
152
+
153
+ Image-to-video motion prompt(英文,用于 Step 10,接关键帧):
154
+
155
+ ```text
156
+ [25mm | 32mm], eye level, camera drifting continuously through the crowd at walking pace — track plus pan, never settling.
157
+ [Subject] stands still while [3-5 named background figures, each with a distinct costume colour and a distinct action] move around him.
158
+ People keep entering from both frame edges; foreground passers-by cross the lens occupying 10-30% of the frame.
159
+ Everyone walks on the beat of a [waltz | brass march] audible in the scene. No two people are doing the same thing.
160
+ Stage-style light pools with hard edges, visible haze and backlight, 4:1, detail retained in shadow.
161
+ End with the camera handing off to [another face] as [subject] is left behind.
162
+ Maintain [subject's face and costume, palette of pink/gold/wine red, the haze].
163
+ Avoid: symmetrical composition, synchronised crowd, faceless blurred extras, shallow depth of field, text, watermark.
164
+ ```
165
+
166
+ Keyframe / still prompt(英文,用于 Step 8,接图像模型):
167
+
168
+ ```text
169
+ [Wide of the procession | frontal close-up of one strange face], 25mm-equivalent, eye level, mild wide-angle facial exaggeration retained.
170
+ Crowd: five distinct figures — [tall thin man in wine-red coat carrying a folded chair], [woman in gold laughing at nothing], [child in white eating], [old man in black praying], [musician with a brass instrument]. Each mid-action, none synchronised.
171
+ Foreground: one passer-by crossing, blurred by motion, occupying the left 20%.
172
+ Lighting: theatrical pools with hard edges softened by heavy haze, backlight rimming every silhouette; 4:1; shadows keep detail.
173
+ Palette: pink, gold, wine red, sky blue, saturated; costume colours louder than the environment.
174
+ 1.85:1. No symmetry, no faceless extras, no shallow focus, no cold desaturation, no text, no watermark.
175
+ ```
176
+
177
+ ## 落地示例 / Worked example
178
+
179
+ 控制场景:一个人站在一扇关着的公寓门前,手里拿着打算送出去的东西,犹豫,最后没敲门就走了。
180
+
181
+ 这一拍的功能:他是唯一静止的人,而楼道里的生活从他身边源源不断地流过,最后把他一起带走。
182
+
183
+ 调度:走廊不空。他到门前停住,之后每 3 秒就有一个人经过:一个抱着一摞折叠椅的瘦高男人、一个端着一整锅汤边走边尝的女人、两个追逐的孩子、一个拎着小号回家的乐手、最后是四个抬着一张长桌的邻居——桌子横过整个画面,把门完全挡住 2 秒。桌子过去后,门还在,他的手已经放下了。乐手在楼下开始吹一段圆舞曲,他跟着节拍不自觉地换了脚,然后加入人流的方向走了。
184
+
185
+ 关键镜头 SH3 完整规格:中景跟移转摇摄,32mm,眼平 1.6 米,摄影机以 0.5 m/s 从画左向画右游动,最后交接给乐手的脸。走廊有做饭的雾,两侧高窗把雾切成一道道侧逆光的光带(每有人穿过一道,他的轮廓就闪一下),比 4:1,阴影里仍能看清墙上的旧海报。服装色:酒红外套、金色围裙、天蓝童装、纯白桌布。音乐是楼下的小号圆舞曲,全程不停。
186
+
187
+ ```text
188
+ 32mm, eye level at 1.6m, camera drifting left to right through a crowded apartment corridor at walking pace, never settling.
189
+ A man stands still at a closed door holding a cloth-wrapped parcel — the only motionless figure.
190
+ Around him, each on the beat of a waltz played on a trumpet downstairs: a tall thin man carrying a stack of folding chairs,
191
+ a woman in a gold apron tasting soup from a pot, two children chasing past the lens in the foreground,
192
+ and finally four neighbours carrying a long table that crosses the whole frame and hides the door for two seconds.
193
+ When the table clears, his hand is already down. He shifts his feet to the beat and turns to follow the crowd.
194
+ Cooking haze cut into bands by high side windows; each figure flares as it crosses a band; 4:1, detail retained in the shadows. Costume colours: wine red, gold, sky blue, white.
195
+ End with the camera handing off to the trumpet player's face at frame right.
196
+ Avoid: symmetrical composition, synchronised crowd, faceless blurred extras, shallow depth of field, text, watermark.
197
+ ```
@@ -0,0 +1,197 @@
1
+ ---
2
+ name: ingmar_bergman_chamber_psychology_skill
3
+ title: 英格玛·伯格曼导演风格 Skill
4
+ description: 用于学习并转化伯格曼式室内心理剧、信仰危机、亲密关系、脸部特写和存在主义对话。请用于原创创作,不要复制其具体镜头、台词、角色或受版权保护的表达。
5
+ ---
6
+
7
+ # 英格玛·伯格曼导演风格 Skill
8
+
9
+ Load this file when 用户点名「伯格曼 / Bergman 风格」,或当整场戏的全部信息都在一张脸上,而观众必须无处可躲。
10
+
11
+ ## 一句话镜头 / Lens in one line
12
+
13
+ 把摄影机放在视线正前方,用长焦让整张脸清晰,然后不切。
14
+
15
+ Put the camera on the eyeline, keep the whole face sharp on a long lens, refuse to cut.
16
+
17
+ ## 适用场景
18
+
19
+ - 室内剧、婚姻与亲密关系冲突、信仰危机、死亡焦虑、家庭创伤、忏悔与审问、心理崩溃。
20
+ - 两人对话场景;单人独白;需要在 3–5 分钟内不换景完成情绪全程的段落。
21
+ - 需要用最少资产(一个房间、两张脸、一扇窗)做出高强度戏剧的低成本项目。
22
+ - 不适用:动作、群像、需要空间奇观或类型快感的题材;需要观众跟随外部目标的叙事。
23
+
24
+ ## 反例:这不是什么 / What this lens is NOT
25
+
26
+ - 不是通用文艺片特写:这里的特写不是"好看的脸"。机位在演员正前方,镜头轴线与其视线轴线夹角小于 10 度,演员近乎直视镜头,观众没有侧身回避的角度。
27
+ - 不是浅焦氛围:用 75–150mm,但光圈收到 f/11–f/16——100mm 在 1.3–1.4 米(脸占画幅高约 70%)时只有收到这一档,鼻尖到耳廓才全部落在景深里。不做"眼睛清晰、耳朵化开"的柔化,脸的每一块都要能被审视。
28
+ - 不是德莱叶式神性:脸不是被光升华的圣像。光是审讯性的——单侧硬光比 6:1,另一侧不补,半张脸留在黑里,观众必须自己去看那半张。
29
+ - 不是标准正反打对话片:不用固定的机位 A/B 交替。两张脸常在同一画面内并置(一张正面一张侧面,或一前一后错位),关系变化靠人物在画内移动完成,而不是靠切换机位。
30
+ - 不是慢电影:镜头长不是为了让时间流逝或让观众冥想。长是为了不让观众逃走;每个长镜头内部必须有可被指认的心理变化点(一次吞咽、一次呼吸中断、目光落下),没有变化点就该剪短。
31
+ - 不是需要哭戏:表演的最高强度是"没有哭出来但脸正在塌"。不要求外爆情绪,要求可见的抑制。
32
+
33
+ ## 核心风格关键词
34
+
35
+ 正面凝视、双脸并置、审讯式侧光、存在主义对白、沉默作为台词、室内即牢笼、剥皮式揭露、不治愈的结尾。
36
+
37
+ ## 叙事方法
38
+
39
+ - 人物 2–3 个,空间 1–2 个,时间跨度不超过一夜。外部事件越简单越好。
40
+ - 真正的戏剧来自关系里的谎言、依赖、怨恨与羞耻,不来自情节推进。
41
+ - 对白像剥皮:每一轮交换都比上一轮更接近人物最不愿说的那句话。写对白时给每一轮标一个"被剥掉的第几层"。
42
+ - 全场设一次"权力翻转":谁在问、谁在答,必须在中段互换一次。
43
+ - 结尾不是和解,是更清楚地看见痛苦。允许两人回到起点,但观众已经看见了内部。
44
+
45
+ ## 镜头语言
46
+
47
+ - 主力 75–150mm 拍脸。75mm 给中近景,100–150mm 给大特写;长焦不放大鼻子也不缩耳朵,脸被拍成它本来的比例,观众找不到一处变形可以拿来替他解释。
48
+ - 正面凝视是核心手段:摄影机在视线轴线上(偏差 <10 度),脸占画幅高度 60–80%。这是这个透镜最贵也最有效的一招,一场戏用 2–4 次就够。
49
+ - 双脸构图:一张脸正面在中景平面,另一张脸侧面在近景平面,两张脸的边缘接触或轻微重叠。谁离镜头近,谁在这一刻更有权力。
50
+ - 焦点转换代替剪辑:两人同框时用一次 1.5–2 秒的变焦点完成"注意力转移",不切镜头。这一条和"整张脸都在景深内"不冲突,但必须分开执行:单脸大特写收到 f/11–f/16,双脸构图开到 f/2.8–f/4 并让两张脸相差 0.5 米以上,变焦点才读得出来。
51
+ - 静止镜头为主;如有运动,只用极慢的推近(0.02–0.05 m/s,20 秒内推进 0.5–1 米),慢到观众意识不到。术语见 [cinematic-language.md](../cinematic-language.md)。
52
+
53
+ ## 灯光与色彩
54
+
55
+ - 单侧硬主光,比 6:1,暗面不补光但保留可辨认的轮廓。光源方向决定谁在审问谁。
56
+ - 光源常是窗、台灯、火;把光位设在演员正侧方(90 度)而不是 45 度,这样鼻影会把脸分成两半。
57
+ - 黑白思维:先确认画面在去色后靠脸的明暗雕塑成立。彩色时也保持低饱和、室内化、冷偏(灰蓝、灰绿),只留皮肤是暖的。
58
+ - 背景压到近乎全黑或全白的单色平面,让脸没有可依靠的环境信息。
59
+
60
+ ## 剪辑节奏
61
+
62
+ - ASL 20–90 秒。一场 4 分钟的戏可以只有 5–8 个镜头。
63
+ - 不在情绪高点切走。让镜头继续拍到情绪之后的那 3–5 秒——观众要看的是余波。
64
+ - 用画内移动代替切换:人物起身、转身、走近窗户,都是"剪辑"。
65
+ - 梦境或回忆插入时不做视觉标记(不加滤镜、不加溶解),靠光位与声音的突然改变提示。
66
+
67
+ ## 声音与音乐
68
+
69
+ - 音乐极少。若使用,只在场景之间的空白处,且不与对白同时存在。
70
+ - 沉默是台词的一部分:给每场戏指定 2–3 处 4–8 秒的沉默,并写清沉默期间镜头在拍谁的脸。
71
+ - 环境声取单一元素并让它持续:钟摆、海浪、风穿窗缝、时钟走秒。它负责让沉默可被计量。
72
+ - 对白录音干、近、无混响,呼吸与吞咽必须清晰可闻——它们是这个透镜的音效。
73
+
74
+ ## 人物与表演
75
+
76
+ - 表演高度内在化:情绪不必爆发,但压力必须持续可见。给演员的指令是抑制的目标(不许眨眼超过一次、不许移开视线、把这句话说完再呼吸)。
77
+ - 人物在爱与恨、依赖与厌恶、信仰与虚无之间摇摆,且两端同时为真。
78
+ - 残酷来自亲密关系里的真实需求,不来自恶意;每一句伤人的话背后要有一个可说清的需求。
79
+ - 允许人物对镜头说话(近似告解),但一场戏只用一次。
80
+
81
+ ## 风格参数 / Style parameters
82
+
83
+ ```yaml
84
+ style_id: bergman
85
+ lens_kit_mm: [75, 100, 150] # 75 中近景;100/150 拍大特写,长焦不给脸任何变形借口;单脸收到 f/11-f/16 让整张脸落在景深内,双脸构图开到 f/2.8-f/4 留给变焦点
86
+ camera:
87
+ prefer: ["locked frontal close-up on the eyeline axis", "two-face composition with one profile in foreground", "focus pull between two faces instead of a cut", "imperceptible push-in at 0.02-0.05 m/s", "hold past the emotional peak"]
88
+ avoid: ["handheld", "shot-reverse-shot on fixed A/B setups", "camera orbit", "wide establishing of the room", "any move the audience can notice"]
89
+ motion_budget: low # 实际接近 none:唯一允许的运动是观众察觉不到的推进
90
+ height: "眼平,精确对齐演员瞳孔高度;全场不变"
91
+ shot_size_bias: ["extreme close-up filling 60-80% of frame height", "two-face composition", "medium close-up at 75mm", "hands or object insert", "one wide only if the room must be established once"]
92
+ composition: ["camera on the eyeline axis, deviation under 10 degrees", "two faces overlapping at their edges, one frontal one profile", "near-black or near-white flat background", "negative space on the side the character is avoiding", "whole face inside depth of field"]
93
+ lighting:
94
+ key_quality: hard
95
+ key_ratio: "6:1,暗面不补光但保留轮廓"
96
+ motivation: practical
97
+ signature: "正侧方 90 度单光源,鼻影把脸分成两半;背景压成单色平面"
98
+ palette:
99
+ dominant: 灰蓝、灰绿、近黑、近白
100
+ accent: 皮肤的暖色是画面里唯一的暖
101
+ saturation: low
102
+ contrast: high
103
+ editing:
104
+ avg_shot_length_s: "20-90;一场 4 分钟的戏只用 5-8 个镜头"
105
+ transition_bias: ["hard cut", "fade"]
106
+ coverage_style: "不做标准正反打;用画内移动与变焦点代替切换,情绪高点之后再拍 3-5 秒"
107
+ sound:
108
+ music: 极少;只在场景之间的空白处,不与对白同时存在
109
+ ambience: 单一持续元素(钟摆、海浪、风穿窗缝),让沉默可被计量
110
+ dialogue: 干、近、无混响;呼吸与吞咽必须清晰可闻
111
+ silence_use: 每场指定 2-3 处 4-8 秒沉默,并写清沉默时镜头在拍谁的脸
112
+ performance:
113
+ register: 高度抑制;最高强度是"没有哭出来但脸正在塌",指令写成抑制目标
114
+ blocking: 人物在画内起身、转身、靠近窗;谁离镜头近谁在这一刻更有权力
115
+ aspect_bias: "1.37:1 / 4:3——接近方形的画幅让脸在竖向被填满;16:9 会在脸两侧留下无用空间"
116
+ ai_video:
117
+ clip_duration_s: "8-15(在工具能稳住身份的前提下取最长)"
118
+ prompt_bias: 一条 clip 只写一次微表情变化 + 一次呼吸事件,摄影机写成 locked 或 imperceptible push-in;显式写 the whole face stays in focus。唯一例外是双脸变焦点那一条——它要从 negative 里拿掉 shallow depth of field,改写成 focus shifts from the front face to the face behind over 1.5 seconds。20 秒以上的长镜头用同参数分段续接拼出来,接点选在动作完全静止的那一帧。
119
+ risk: 模型会给静止的脸补上多余动作(转头、眨眼过频、微笑)并把背景虚化成柔焦氛围,抑制感立刻消失。对策是写 no head turn, blinks only once, background flat and dark, no bokeh,并把 clip 控制在一次心理变化点之内。
120
+ negative_prompt_adds: ["shallow depth of field or bokeh", "soft glamour lighting", "head turning away", "smiling", "camera movement", "warm colour grade", "background detail or props", "text or watermark"]
121
+ ```
122
+
123
+ ## 可迁移拍摄清单
124
+
125
+ 1. 把冲突压进一个房间、一夜之间、2–3 个人物;砍掉所有外部事件。
126
+ 2. 给对白每一轮标"被剥掉的第几层",确保层数单调递增。
127
+ 3. 全场安排一次权力翻转,标出翻转发生在第几分钟。
128
+ 4. 每场用 2–4 次正面凝视特写,机位偏离视线轴不超过 10 度。
129
+ 5. 把光位放在演员正侧方 90 度,比 6:1,暗面不补光。
130
+ 6. 指定 2–3 处 4–8 秒沉默,并写清镜头此刻在拍谁。
131
+ 7. 每个长镜头内部标出至少一个心理变化点(吞咽、呼吸中断、目光落下);没有就剪短。
132
+ 8. 结尾不给和解,给"看得更清楚";写出观众现在知道而开场时不知道的那一件事。
133
+
134
+ ## 提示词模板 / Prompt templates
135
+
136
+ 镜头设计简报(中文,用于 Step 5 导演本与 Step 7 分镜):
137
+
138
+ ```text
139
+ 用伯格曼镜头设计以下场景:<一句话事件>
140
+ 硬性要求:
141
+ - 人物 2-3 人,空间 1 个,时间不超过一夜;外部事件写成一句话
142
+ - 对白剥层表:第 1 层 <> → 第 2 层 <> → 第 3 层 <>,层数只增不减
143
+ - 权力翻转发生在第 <> 分钟,翻转标志 <>
144
+ - 镜头:75mm 中近景 / 100-150mm 大特写;正面凝视 2-4 次,机位偏离视线轴 <10 度
145
+ - 双脸构图至少 1 次:谁在近景侧面、谁在中景正面,以及为什么是他
146
+ - 光圈:单脸大特写 f/11-f/16(整张脸落在景深内)/ 双脸构图 f/2.8-f/4 且两张脸相差 >0.5 米(留给变焦点)
147
+ - 光:正侧方 90 度单光源,比 6:1,暗面不补;背景压成单色平面
148
+ - 声:环境只留 <钟摆 / 海浪 / 风>;沉默 2-3 处,每处 4-8 秒,注明拍谁
149
+ - 节奏:ASL 20-90 秒;情绪高点后继续拍 3-5 秒
150
+ 输出:分镜表 + 剥层表 + 沉默表
151
+ ```
152
+
153
+ Image-to-video motion prompt(英文,用于 Step 10,接关键帧):
154
+
155
+ ```text
156
+ [100mm | 150mm], locked camera on the eyeline axis, face filling [60-80%] of frame height, whole face inside depth of field.
157
+ [Subject] begins [held expression, gaze direction]. Over the clip: [one single micro-change — a swallow, the breath stopping, the eyes lowering].
158
+ No head turn. Blinks once. The mouth does not open unless [named line]. Nothing in the background moves.
159
+ Hard single key from 90 degrees camera-[left/right], 6:1, unfilled shadow side, nose shadow dividing the face; background flat near-black.
160
+ End with [the face after the change, held]. Maintain [face, hair, collar, light direction, flat dark background].
161
+ Avoid: bokeh, shallow focus, camera movement, smiling, head turning away, warm grade, text, watermark.
162
+ ```
163
+
164
+ Keyframe / still prompt(英文,用于 Step 8,接图像模型):
165
+
166
+ ```text
167
+ [Extreme close-up | two-face composition], 100mm-equivalent, camera on the eyeline axis, eye level exactly at pupil height.
168
+ Framing: the face occupies 60-80% of frame height; whole face sharp front to back — no bokeh, no selective focus.
169
+ [If two faces: one profile in the foreground at frame left, one frontal behind at frame right, their edges touching; the front face sharp, the one behind slightly softer so a focus shift is possible in the video step.]
170
+ Lighting: single hard source at 90 degrees camera-left, 6:1, shadow side unfilled but with a readable contour; nose shadow splits the face.
171
+ Background: flat near-black wall, no props, no texture.
172
+ Palette: desaturated grey-blue; skin is the only warm value in the image.
173
+ Expression: [suppressed — the mouth held, the eyes wet but not spilling, the jaw working once].
174
+ 1.37:1. No warm grade, no glamour softening, no background detail, no text, no watermark.
175
+ ```
176
+
177
+ ## 落地示例 / Worked example
178
+
179
+ 控制场景:一个人站在一扇关着的公寓门前,手里拿着打算送出去的东西,犹豫,最后没敲门就走了。
180
+
181
+ 这一拍的功能:不拍走廊,不拍他怎么来的。整场戏只有一张脸,和玻璃里回看着它的第二张。
182
+
183
+ 调度:他侧对镜头站在门前 0.3 米,四分之三侧面在画左的近景平面;门上那块玻璃在画右稍后的平面里,装着他自己的正面倒影,两张脸的边缘在画面中央相接。倒影的视线锁在他自己的实脸上——"被审视"这件事不需要第二个演员。注意方向:正面倒影只能来自他面对的那块玻璃,如果把门放在他背后,玻璃里出现的是后脑勺,这一镜就不成立。他抬手时倒影同时抬手;他停住,倒影停住。他看了倒影 6 秒(全场唯一的沉默段),目光落下,退出画左。摄影机不动,继续拍玻璃里空掉的那一格 5 秒。
184
+
185
+ 关键镜头 SH1 完整规格:双脸构图,100mm,机位距实脸 1.3 米、在他视线轴外侧约 25 度,眼平对齐瞳孔,全镜锁定 22 秒。这一镜的正面凝视由倒影承担,所以摄影机不必压在视线轴上——这是本透镜允许突破 10 度规则的唯一情况。景深是它的核心:镜像成在玻璃后等距处,倒影的光学距离是 1.3 + 0.3×2 = 1.9 米,实脸 1.3 米,开到 f/4 时两者不可能同时锐利,正好换来一次 1.5–2 秒的变焦点(实脸 → 倒影)。单光源来自画左正侧方 90 度(走廊尽头的窗),比 6:1,暗面不补光但保留下颌轮廓;鼻影把脸分成两半。背景压到近黑。声音只有他的呼吸和远处的钟走秒;没有音乐。22 秒在生成端拆成两条(变焦点之前 / 之后),接点放在他手停住的那一帧。
186
+
187
+ ```text
188
+ Two-face composition, 100mm, locked camera 1.3m from his face and about 25 degrees off his eyeline, eye level at pupil height.
189
+ Frame left, foreground: his real face in three-quarter profile, facing the door. Frame right, slightly further away:
190
+ his own frontal reflection in the small glass panel of that closed door, its edge touching his cheek; the reflection looks back at him.
191
+ He holds a wrapped parcel just below frame and raises his hand; the reflection raises with him. He stops. One swallow.
192
+ The breath catches and does not resume for a beat. Focus shifts once from the real face to the reflection over 1.5 seconds and stays there.
193
+ Then the eyes lower and he steps out of frame left, leaving the empty glass panel.
194
+ Hard single key from 90 degrees camera-left, 6:1, shadow side unfilled but with a readable jaw contour, nose shadow splitting the face; background near-black.
195
+ Sound: breathing and a distant clock only. Maintain both versions of the face, the collar, the light direction, the flat dark background.
196
+ Avoid: camera movement, head turning away, smiling, warm grade, background detail, text, watermark.
197
+ ```