@aswless_854771076/ai_short_studio_cli 0.1.98 → 0.1.100

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 (405) hide show
  1. package/README.md +15 -313
  2. package/dist/base-command.d.ts +0 -6
  3. package/dist/base-command.js +1 -39
  4. package/dist/client/api-client.js +2 -19
  5. package/dist/commands/auth/login.d.ts +1 -2
  6. package/dist/commands/auth/login.js +2 -5
  7. package/dist/commands/auth/logout.d.ts +0 -1
  8. package/dist/commands/auth/signup.d.ts +0 -1
  9. package/dist/commands/auth/status.d.ts +0 -1
  10. package/dist/commands/canvas/apply.d.ts +0 -1
  11. package/dist/commands/canvas/asset/get.d.ts +0 -1
  12. package/dist/commands/canvas/asset/list.d.ts +0 -1
  13. package/dist/commands/canvas/asset/select.d.ts +1 -3
  14. package/dist/commands/canvas/asset/select.js +3 -22
  15. package/dist/commands/canvas/asset/upload.d.ts +0 -14
  16. package/dist/commands/canvas/asset/upload.js +3 -43
  17. package/dist/commands/canvas/continuity/analyze.d.ts +0 -1
  18. package/dist/commands/canvas/edge/connect.d.ts +0 -1
  19. package/dist/commands/canvas/edge/disconnect.d.ts +0 -1
  20. package/dist/commands/canvas/edge/list.d.ts +0 -1
  21. package/dist/commands/canvas/edge/list.js +1 -4
  22. package/dist/commands/canvas/episode/create.d.ts +0 -1
  23. package/dist/commands/canvas/episode/list.d.ts +0 -1
  24. package/dist/commands/canvas/folder/copy-cross-project.d.ts +0 -1
  25. package/dist/commands/canvas/folder/create.d.ts +0 -1
  26. package/dist/commands/canvas/folder/delete.d.ts +0 -1
  27. package/dist/commands/canvas/folder/list.d.ts +0 -1
  28. package/dist/commands/canvas/folder/move.d.ts +0 -1
  29. package/dist/commands/canvas/folder/rename.d.ts +0 -1
  30. package/dist/commands/canvas/folder/restore.d.ts +0 -1
  31. package/dist/commands/canvas/get.d.ts +0 -1
  32. package/dist/commands/canvas/inspect.d.ts +0 -1
  33. package/dist/commands/canvas/node/add.d.ts +1 -1
  34. package/dist/commands/canvas/node/add.js +2 -2
  35. package/dist/commands/canvas/node/delete.d.ts +0 -1
  36. package/dist/commands/canvas/node/edit-resource.d.ts +0 -2
  37. package/dist/commands/canvas/node/edit-resource.js +1 -9
  38. package/dist/commands/canvas/node/edit-shot.d.ts +0 -1
  39. package/dist/commands/canvas/node/get.d.ts +0 -1
  40. package/dist/commands/canvas/node/list.d.ts +0 -5
  41. package/dist/commands/canvas/node/list.js +2 -43
  42. package/dist/commands/canvas/node/run.d.ts +0 -15
  43. package/dist/commands/canvas/node/run.js +6 -142
  44. package/dist/commands/canvas/node/types.d.ts +0 -1
  45. package/dist/commands/canvas/node/update-many.d.ts +0 -1
  46. package/dist/commands/canvas/node/update.d.ts +0 -1
  47. package/dist/commands/canvas/settings/get.d.ts +0 -1
  48. package/dist/commands/canvas/settings/set.d.ts +0 -24
  49. package/dist/commands/canvas/settings/set.js +1 -60
  50. package/dist/commands/config/get.d.ts +0 -1
  51. package/dist/commands/config/set.d.ts +0 -2
  52. package/dist/commands/config/set.js +2 -55
  53. package/dist/commands/preflight.d.ts +0 -1
  54. package/dist/commands/preflight.js +1 -9
  55. package/dist/commands/project/create.d.ts +0 -1
  56. package/dist/commands/project/delete.d.ts +0 -1
  57. package/dist/commands/project/get.d.ts +0 -1
  58. package/dist/commands/project/list.d.ts +0 -1
  59. package/dist/commands/project/update.d.ts +0 -1
  60. package/dist/commands/skill/install.d.ts +0 -1
  61. package/dist/commands/skill/install.js +0 -1
  62. package/dist/commands/skill/path.d.ts +0 -1
  63. package/dist/commands/skill/path.js +0 -1
  64. package/dist/commands/skill/status.d.ts +0 -1
  65. package/dist/commands/skill/status.js +0 -1
  66. package/dist/commands/task/cancel.d.ts +0 -1
  67. package/dist/commands/task/get.d.ts +0 -1
  68. package/dist/commands/task/wait.d.ts +0 -2
  69. package/dist/commands/task/wait.js +1 -6
  70. package/dist/domain/vvicat-api.d.ts +3 -63
  71. package/dist/domain/vvicat-api.js +9 -74
  72. package/dist/output/formatter.d.ts +0 -11
  73. package/dist/output/formatter.js +0 -20
  74. package/dist/preflight.d.ts +0 -1
  75. package/dist/preflight.js +1 -14
  76. package/dist/skill/command-flags.js +4 -7
  77. package/dist/skill/skill-manager.d.ts +2 -75
  78. package/dist/skill/skill-manager.js +15 -60
  79. package/package.json +3 -4
  80. package/scripts/postinstall.mjs +12 -7
  81. package/skills/using-vvicat-ai-short-studio-cli/SKILL.md +67 -27
  82. package/skills/using-vvicat-ai-short-studio-cli/references/commands/canvas.md +4 -3
  83. package/skills/using-vvicat-ai-short-studio-cli/references/commands/project.md +2 -26
  84. package/skills/using-vvicat-ai-short-studio-cli/references/commands.md +2 -2
  85. package/skills/using-vvicat-ai-short-studio-cli/references/editing-delivery.md +1 -1
  86. package/skills/using-vvicat-ai-short-studio-cli/references/h3-video-delivery.md +1 -1
  87. package/skills/using-vvicat-ai-short-studio-cli/references/humanizer/humanizer.md +9 -0
  88. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/SKILL.md +447 -0
  89. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/brief.md +93 -0
  90. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/project-files.md +246 -0
  91. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/reference-video.md +266 -0
  92. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/script-and-time.md +253 -0
  93. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/creation/transformations.md +141 -0
  94. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/distribution.md +176 -0
  95. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/local-tools.md +411 -0
  96. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/model-and-provider.md +275 -0
  97. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/environment/profile.md +286 -0
  98. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/asset-and-shot-preproduction.md +193 -0
  99. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/b-roll.md +94 -0
  100. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/caption-tracking.md +125 -0
  101. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/captions.md +252 -0
  102. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/conversation-images.md +218 -0
  103. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/h3-base-prompt-writing.md +222 -0
  104. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/h3-reference-prompt-writing.md +341 -0
  105. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/examples/image-direction.md +123 -0
  106. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/generated-dependencies.md +38 -0
  107. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/graphic-compositions.md +85 -0
  108. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/h3-prompt-writing.md +54 -0
  109. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/image-direction.md +95 -0
  110. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/motion-graphics.md +68 -0
  111. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/recreation-policy.md +51 -0
  112. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/screen-demonstrations.md +51 -0
  113. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/shot-production-contracts.md +161 -0
  114. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/sound-mix.md +76 -0
  115. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/video-direction.md +433 -0
  116. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/voice-and-performance.md +224 -0
  117. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/craft/voice-direction.md +99 -0
  118. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/narration-led-demo.md +87 -0
  119. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/presenter-led-explainer.md +160 -0
  120. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/ranking-listicle.md +71 -0
  121. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/reference-recreation-canvas.md +8 -0
  122. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/short-drama-workflow.md +165 -0
  123. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/short-drama.md +88 -0
  124. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/street-interview.md +92 -0
  125. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/talking-head.md +82 -0
  126. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/formats/two-person-podcast.md +101 -0
  127. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/playbooks/index.md +77 -0
  128. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/audio-presentation.md +49 -0
  129. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/authoring.md +228 -0
  130. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/browser-capture.md +112 -0
  131. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/builds.md +330 -0
  132. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/caption-authoring.md +156 -0
  133. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/caption-presentation.md +66 -0
  134. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-design.md +217 -0
  135. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-sharing.md +150 -0
  136. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/component-visuals.md +152 -0
  137. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/detail.svrun +8 -0
  138. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/direction.svs +14 -0
  139. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/look.svs +6 -0
  140. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/material.svrun +5 -0
  141. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/production.svml +73 -0
  142. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/production.svrun +5 -0
  143. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/examples/visuals.ts +62 -0
  144. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/fonts-and-text.md +138 -0
  145. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/image-operations.md +102 -0
  146. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/index.md +73 -0
  147. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/media-presentation.md +111 -0
  148. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/media.md +246 -0
  149. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/performance.md +114 -0
  150. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/prompt-kits.md +165 -0
  151. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/rendering.md +141 -0
  152. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/review.md +211 -0
  153. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/runs.md +151 -0
  154. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/script-syntax.md +236 -0
  155. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/snapshots.md +90 -0
  156. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/sound.md +75 -0
  157. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/source-syntax.md +163 -0
  158. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/spatial.md +189 -0
  159. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/studio-companions.md +186 -0
  160. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/studio.md +249 -0
  161. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/system.md +169 -0
  162. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/timeline.md +74 -0
  163. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/timing.md +96 -0
  164. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/track-authoring.md +215 -0
  165. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/tracks.md +67 -0
  166. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/video-downloads.md +47 -0
  167. package/skills/using-vvicat-ai-short-studio-cli/references/hypit/production/vocabulary.md +119 -0
  168. package/skills/using-vvicat-ai-short-studio-cli/references/project-and-canvas.md +1 -1
  169. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/README.md +11 -0
  170. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/SKILL.md +102 -0
  171. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/art-styles.json +585 -0
  172. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-images.md +11 -0
  173. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-profiles/character-profile-output.schema.json +99 -0
  174. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-character-profiles.md +7 -0
  175. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-drama-art-style.md +9 -0
  176. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-prop-assets.md +11 -0
  177. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/generate-scene-assets.md +13 -0
  178. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/manage-drama-art-styles.md +9 -0
  179. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/manage-drama-assets.md +9 -0
  180. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/analyze-drama-source/prompts/source_analysis.en.txt +24 -0
  181. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/analyze-drama-source/prompts/source_analysis.zh.txt +24 -0
  182. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_acting_direction.en.txt +61 -0
  183. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_acting_direction.zh.txt +79 -0
  184. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_cinematographer.en.txt +101 -0
  185. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_cinematographer.zh.txt +150 -0
  186. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_detail.en.txt +114 -0
  187. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_detail.zh.txt +89 -0
  188. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_plan.en.txt +114 -0
  189. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/agent_storyboard_plan.zh.txt +389 -0
  190. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/professional_storyboard.en.txt +40 -0
  191. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/build-drama-storyboard/prompts/professional_storyboard.zh.txt +40 -0
  192. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/define-drama-brief/prompts/drama_brief.en.txt +24 -0
  193. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/define-drama-brief/prompts/drama_brief.zh.txt +24 -0
  194. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_description.en.txt +19 -0
  195. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_description.zh.txt +19 -0
  196. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_recommend.en.txt +26 -0
  197. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/character_voice_recommend.zh.txt +26 -0
  198. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/music_track_design.en.txt +33 -0
  199. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/music_track_design.zh.txt +33 -0
  200. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/voice_analysis.en.txt +36 -0
  201. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-audio/prompts/voice_analysis.zh.txt +36 -0
  202. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-bible/prompts/ai_story_expand.en.txt +33 -0
  203. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/design-drama-bible/prompts/ai_story_expand.zh.txt +33 -0
  204. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/agent_character_visual.en.txt +26 -0
  205. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/agent_character_visual.zh.txt +26 -0
  206. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_asset_sheet.en.txt +21 -0
  207. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_asset_sheet.zh.txt +21 -0
  208. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_create.en.txt +12 -0
  209. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_create.zh.txt +12 -0
  210. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_description_update.en.txt +13 -0
  211. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_description_update.zh.txt +13 -0
  212. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_image_to_description.en.txt +11 -0
  213. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_image_to_description.zh.txt +11 -0
  214. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_modify.en.txt +15 -0
  215. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_modify.zh.txt +15 -0
  216. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_regenerate.en.txt +14 -0
  217. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-images/prompts/character_regenerate.zh.txt +14 -0
  218. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-profiles/prompts/agent_character_profile.en.txt +50 -0
  219. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-character-profiles/prompts/agent_character_profile.zh.txt +50 -0
  220. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/art_style_decision.en.txt +18 -0
  221. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/art_style_decision.zh.txt +18 -0
  222. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/config_generation.en.txt +67 -0
  223. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-drama-art-style/prompts/config_generation.zh.txt +67 -0
  224. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_description_update.en.txt +14 -0
  225. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_description_update.zh.txt +14 -0
  226. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_generate.en.txt +16 -0
  227. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/prop_generate.zh.txt +16 -0
  228. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/select_prop.en.txt +17 -0
  229. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-prop-assets/prompts/select_prop.zh.txt +17 -0
  230. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_create.en.txt +11 -0
  231. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_create.zh.txt +11 -0
  232. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_description_update.en.txt +14 -0
  233. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_description_update.zh.txt +14 -0
  234. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_modify.en.txt +13 -0
  235. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_modify.zh.txt +13 -0
  236. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_regenerate.en.txt +12 -0
  237. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/location_regenerate.zh.txt +12 -0
  238. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/scene_asset_sheet.en.txt +19 -0
  239. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/scene_asset_sheet.zh.txt +19 -0
  240. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/select_location.en.txt +18 -0
  241. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-scene-assets/prompts/select_location.zh.txt +17 -0
  242. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_enhance.en.txt +29 -0
  243. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_enhance.zh.txt +29 -0
  244. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_image.en.txt +77 -0
  245. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_grid_image.zh.txt +77 -0
  246. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_storyboard_image.en.txt +109 -0
  247. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/generate-storyboard-images/prompts/panel_storyboard_image.zh.txt +109 -0
  248. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/ideate-drama-from-market/prompts/market_inspiration.en.txt +23 -0
  249. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/ideate-drama-from-market/prompts/market_inspiration.zh.txt +23 -0
  250. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/outline-drama-series/prompts/episode_split.en.txt +42 -0
  251. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/outline-drama-series/prompts/episode_split.zh.txt +42 -0
  252. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-assets/prompts/asset_analysis.en.txt +55 -0
  253. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-assets/prompts/asset_analysis.zh.txt +55 -0
  254. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-production/prompts/production_plan.en.txt +49 -0
  255. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-drama-production/prompts/production_plan.zh.txt +52 -0
  256. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-shot-continuity/prompts/continuity_plan.en.txt +37 -0
  257. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/plan-shot-continuity/prompts/continuity_plan.zh.txt +37 -0
  258. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/review-drama-script/prompts/review_drama_script.en.txt +28 -0
  259. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/review-drama-script/prompts/review_drama_script.zh.txt +28 -0
  260. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_analysis.en.txt +57 -0
  261. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_analysis.zh.txt +169 -0
  262. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_generate.en.txt +64 -0
  263. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_shot_variant_generate.zh.txt +117 -0
  264. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_storyboard_insert.en.txt +34 -0
  265. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/agent_storyboard_insert.zh.txt +34 -0
  266. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/storyboard_edit.en.txt +18 -0
  267. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/revise-drama-storyboards/prompts/storyboard_edit.zh.txt +13 -0
  268. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/2d_to_live_action.en.txt +7 -0
  269. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/2d_to_live_action.zh.txt +7 -0
  270. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/image_prompt_modify.en.txt +28 -0
  271. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/transform-drama-media/prompts/image_prompt_modify.zh.txt +42 -0
  272. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-director-book/prompts/director_book.en.txt +35 -0
  273. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-director-book/prompts/director_book.zh.txt +35 -0
  274. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/agent_clip.en.txt +21 -0
  275. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/agent_clip.zh.txt +21 -0
  276. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/screenplay_conversion.en.txt +39 -0
  277. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-episode/prompts/screenplay_conversion.zh.txt +39 -0
  278. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/h3_video.en.txt +49 -0
  279. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/h3_video.zh.txt +48 -0
  280. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_grid_video.en.txt +51 -0
  281. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_grid_video.zh.txt +51 -0
  282. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_storyboard_video.en.txt +50 -0
  283. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/panel_storyboard_video.zh.txt +50 -0
  284. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/seedance2_video.en.txt +48 -0
  285. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/modules/write-drama-video-prompts/prompts/seedance2_video.zh.txt +46 -0
  286. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/assets/plan-drama-assets.md +7 -0
  287. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/codex-contracts.md +14 -0
  288. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/comfly-provider.md +12 -0
  289. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/controlled-vocabulary.json +115 -0
  290. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/analyze-drama-source.md +7 -0
  291. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/define-drama-brief.md +8 -0
  292. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/design-drama-bible.md +5 -0
  293. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/humanizer.md +9 -0
  294. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/outline-drama-series.md +5 -0
  295. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/short-drama.md +13 -0
  296. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/write-drama-director-book.md +6 -0
  297. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/creation/write-drama-episode.md +6 -0
  298. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/director-composition.md +794 -0
  299. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/edit-deliver-drama.md +5 -0
  300. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/edit-drama-timeline.md +22 -0
  301. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing/remotion-best-practices.md +12 -0
  302. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/editing-workflow.md +56 -0
  303. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/feature-completeness.md +111 -0
  304. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/configure-generation-providers.md +17 -0
  305. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/design-drama-audio.md +11 -0
  306. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/drama-generation-service.md +13 -0
  307. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/generate-drama-videos.md +9 -0
  308. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/generate-storyboard-images.md +11 -0
  309. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/monitor-drama-tasks.md +15 -0
  310. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/transform-drama-media.md +9 -0
  311. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/generation/write-drama-video-prompts.md +50 -0
  312. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market/market-report.schema.json +46 -0
  313. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market/methodology.md +24 -0
  314. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/analyze-drama-market.md +47 -0
  315. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/ideate-drama-from-market/market-inspiration.schema.json +109 -0
  316. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/market/ideate-drama-from-market.md +15 -0
  317. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/module-map.json +595 -0
  318. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/music-catalog-providers.md +16 -0
  319. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/manage-drama-projects.md +11 -0
  320. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/orchestrate-short-drama.md +20 -0
  321. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/recover-drama-pipeline.md +5 -0
  322. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/short-drama-skill-index.md +29 -0
  323. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/operations/use-short-drama-studio.md +15 -0
  324. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/pipeline.md +85 -0
  325. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/project-spec-v1.md +217 -0
  326. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/prompt-skill-index.md +62 -0
  327. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/recreation/publish-drama-references/litterbox.md +5 -0
  328. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/review/review-drama-script.md +7 -0
  329. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/review/review-drama-shots.md +39 -0
  330. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/runninghub-provider.md +33 -0
  331. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/starrouter-provider.md +53 -0
  332. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/build-drama-storyboard.md +13 -0
  333. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/design-fight-video.md +19 -0
  334. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/action-previz.md +39 -0
  335. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/direction-contract.md +96 -0
  336. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz/weapons-vfx.md +23 -0
  337. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/direct-blender-previz.md +15 -0
  338. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/generate-blender-previz.md +20 -0
  339. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/plan-drama-production.md +21 -0
  340. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/plan-shot-continuity.md +15 -0
  341. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/storyboard/revise-drama-storyboards.md +5 -0
  342. package/skills/using-vvicat-ai-short-studio-cli/references/short-drama/usage-guide.md +107 -0
  343. package/skills/using-vvicat-ai-short-studio-cli/references/special-workflows.md +2 -8
  344. package/skills/using-vvicat-ai-short-studio-cli/references/troubleshooting.md +0 -1
  345. package/dist/auth/login-provider.d.ts +0 -2
  346. package/dist/auth/login-provider.js +0 -3
  347. package/dist/commands/canvas/node/quote.d.ts +0 -17
  348. package/dist/commands/canvas/node/quote.js +0 -13
  349. package/dist/commands/config/ai-provider/capabilities.d.ts +0 -60
  350. package/dist/commands/config/ai-provider/capabilities.js +0 -124
  351. package/dist/commands/config/ai-provider/get.d.ts +0 -22
  352. package/dist/commands/config/ai-provider/get.js +0 -21
  353. package/dist/commands/config/ai-provider/list.d.ts +0 -21
  354. package/dist/commands/config/ai-provider/list.js +0 -19
  355. package/dist/commands/config/ai-provider/models.d.ts +0 -22
  356. package/dist/commands/config/ai-provider/models.js +0 -21
  357. package/dist/commands/config/ai-provider/set.d.ts +0 -41
  358. package/dist/commands/config/ai-provider/set.js +0 -65
  359. package/dist/commands/config/ai-provider/test.d.ts +0 -25
  360. package/dist/commands/config/ai-provider/test.js +0 -24
  361. package/dist/commands/project/provider/get.d.ts +0 -15
  362. package/dist/commands/project/provider/get.js +0 -12
  363. package/dist/commands/project/provider/set.d.ts +0 -16
  364. package/dist/commands/project/provider/set.js +0 -18
  365. package/dist/commands/project/provider/test.d.ts +0 -15
  366. package/dist/commands/project/provider/test.js +0 -12
  367. package/dist/domain/ai-provider-capabilities.d.ts +0 -109
  368. package/dist/domain/ai-provider-capabilities.js +0 -180
  369. package/dist/domain/ai-provider-command-helpers.d.ts +0 -27
  370. package/dist/domain/ai-provider-command-helpers.js +0 -55
  371. package/skills/using-vvicat-ai-short-studio-cli/references/b-roll-and-screen.md +0 -9
  372. package/skills/using-vvicat-ai-short-studio-cli/references/caption-and-graphics-direction.md +0 -11
  373. package/skills/using-vvicat-ai-short-studio-cli/references/composition-and-shot-review.md +0 -17
  374. package/skills/using-vvicat-ai-short-studio-cli/references/craft-index.md +0 -20
  375. package/skills/using-vvicat-ai-short-studio-cli/references/drama-canvas.md +0 -19
  376. package/skills/using-vvicat-ai-short-studio-cli/references/format-relationships.md +0 -15
  377. package/skills/using-vvicat-ai-short-studio-cli/references/h3-prompts.md +0 -7
  378. package/skills/using-vvicat-ai-short-studio-cli/references/image-and-reference-direction.md +0 -9
  379. package/skills/using-vvicat-ai-short-studio-cli/references/licensed-music.md +0 -9
  380. package/skills/using-vvicat-ai-short-studio-cli/references/licenses/oh-my-short-drama-MIT.txt +0 -21
  381. package/skills/using-vvicat-ai-short-studio-cli/references/licenses/short-drama-MIT.txt +0 -21
  382. package/skills/using-vvicat-ai-short-studio-cli/references/media-provenance-and-review.md +0 -22
  383. package/skills/using-vvicat-ai-short-studio-cli/references/paid-plan.md +0 -7
  384. package/skills/using-vvicat-ai-short-studio-cli/references/production-specialties.md +0 -25
  385. package/skills/using-vvicat-ai-short-studio-cli/references/recreation.md +0 -21
  386. package/skills/using-vvicat-ai-short-studio-cli/references/reference-analysis-and-timing.md +0 -19
  387. package/skills/using-vvicat-ai-short-studio-cli/references/remotion-editing.md +0 -18
  388. package/skills/using-vvicat-ai-short-studio-cli/references/shot-production.md +0 -9
  389. package/skills/using-vvicat-ai-short-studio-cli/references/sound-and-captions.md +0 -7
  390. package/skills/using-vvicat-ai-short-studio-cli/references/sources.md +0 -6
  391. package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/canvas-production.md +0 -9
  392. package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/guide.md +0 -7
  393. package/skills/using-vvicat-ai-short-studio-cli/references/story-craft/index.md +0 -13
  394. package/skills/using-vvicat-ai-short-studio-cli/references/video-and-performance-direction.md +0 -9
  395. package/skills/using-vvicat-ai-short-studio-cli/references/voice-and-sound-direction.md +0 -9
  396. package/skills/using-vvicat-ai-short-studio-cli/references/writing-polish.md +0 -15
  397. /package/skills/using-vvicat-ai-short-studio-cli/references/{licenses/humanizer-MIT.txt → short-drama/assets/modules/humanizer/LICENSE} +0 -0
  398. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/compliance-checklist.md +0 -0
  399. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/genre-guide.md +0 -0
  400. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/hook-design.md +0 -0
  401. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/opening-rules.md +0 -0
  402. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/paywall-design.md +0 -0
  403. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/rhythm-curve.md +0 -0
  404. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/satisfaction-matrix.md +0 -0
  405. /package/skills/using-vvicat-ai-short-studio-cli/references/{story-craft → short-drama/writing}/villain-design.md +0 -0
@@ -0,0 +1,62 @@
1
+ import { sealVisualTrack } from "@hypit/hypit/composition";
2
+ import type { FrameSpan } from "@hypit/hypit/composition";
3
+ import type { FontArtifactRef } from "@hypit/hypit/media";
4
+ import type { ProgramSpace } from "@hypit/hypit/program-space";
5
+ import { VISUAL_IR_V1 } from "@hypit/hypit/visual-ir";
6
+
7
+ // The caller supplies its projected Window, resolved Frame and selected font faces.
8
+ export function renderCard(input: {
9
+ id: string;
10
+ space: ProgramSpace;
11
+ span: FrameSpan;
12
+ frame: { x: number; y: number; width: number; height: number };
13
+ text: string;
14
+ fonts: readonly FontArtifactRef[];
15
+ color: string;
16
+ textColor: string;
17
+ size: number;
18
+ padding: number;
19
+ layer: number;
20
+ entranceFrames: number;
21
+ }) {
22
+ const root = `${input.id}-box`;
23
+ const length = input.span.endFrameExclusive - input.span.startFrame;
24
+ const entranceEnd = Math.min(input.entranceFrames, length - 1);
25
+ return sealVisualTrack({
26
+ id: input.id,
27
+ programSpaceId: input.space.id,
28
+ visualIr: VISUAL_IR_V1,
29
+ presents: [{
30
+ id: `${input.id}-present`,
31
+ subjectId: input.id,
32
+ span: input.span,
33
+ stacking: { order: input.layer, tieBreak: input.id },
34
+ elements: [{
35
+ kind: "box", id: root, order: 0,
36
+ style: [
37
+ { name: "position", value: "absolute" },
38
+ { name: "left", value: input.frame.x },
39
+ { name: "top", value: input.frame.y },
40
+ { name: "width", value: input.frame.width },
41
+ { name: "height", value: input.frame.height },
42
+ { name: "background-color", value: input.color },
43
+ ],
44
+ ...(entranceEnd > 0 ? { animation: { keyframes: [
45
+ { atFrame: 0, style: [{ name: "opacity", value: 0 }] },
46
+ { atFrame: entranceEnd, style: [{ name: "opacity", value: 1 }] },
47
+ ] } } : {}),
48
+ }, {
49
+ kind: "text", id: `${input.id}-text`, parent: root, order: 1,
50
+ text: input.text, fonts: input.fonts,
51
+ style: [
52
+ { name: "position", value: "absolute" },
53
+ { name: "left", value: input.padding },
54
+ { name: "top", value: input.padding },
55
+ { name: "width", value: input.frame.width - 2 * input.padding },
56
+ { name: "color", value: input.textColor },
57
+ { name: "font-size", value: input.size },
58
+ ],
59
+ }],
60
+ }],
61
+ });
62
+ }
@@ -0,0 +1,138 @@
1
+ # Fonts and independent text
2
+
3
+ Read this when choosing or finding fonts, using a local font file, handling multiple writing systems
4
+ or Emoji, or placing titles and labels. [Caption](../playbooks/craft/captions.md) covers text displayed
5
+ with speech and the reading rhythm of Chinese and English Cues.
6
+
7
+ The font's glyph shapes and spacing determine how text wraps and how much room it needs. A font
8
+ resource supplies those glyphs, a Style supplies their size and treatment, and a text item supplies
9
+ the wording, placement and lifetime. Changing one of these can preserve the others.
10
+
11
+ ## Select a face or a fallback stack
12
+
13
+ ```svml
14
+ <import as="fonts" from="@hypit/fonts-open@1"/>
15
+
16
+ <fonts:Face id="headline-font" family="archivo-black" weight="400" style="normal"/>
17
+ <fonts:Stack id="body-font" family="inter" weight="700" style="normal" emoji="color">
18
+ <fonts:Fallback family="noto-sans-sc" weight="700" style="normal"/>
19
+ </fonts:Stack>
20
+ ```
21
+
22
+ The Face is one exact font resource. Stack preserves an ordered set: here Inter, Noto Sans SC,
23
+ then a color Emoji face. Choose fallback faces for the actual writing systems in the video.
24
+ Weight and style must exist in the chosen family. `hypit vocabulary @hypit/fonts-open` and that
25
+ package's README describe the installed catalog and supported combinations.
26
+
27
+ For Chinese-led speech, start with a face made for the intended script: the installed catalog
28
+ includes `noto-sans-sc` and `noto-serif-sc` for Simplified Chinese, `noto-sans-tc` and `noto-serif-tc`
29
+ for Traditional Chinese, and display faces such as `zcool-kuaile`. Choose their character to suit the
30
+ piece. A compact, clear face is useful for running speech; an expressive display face can suit a
31
+ playful caption or a short title. Inspect the real words at delivery size, including punctuation,
32
+ numbers and any Latin names.
33
+
34
+ Fallback order also directs the design. Inter first with Noto Sans SC after it gives Latin letters
35
+ Inter's shapes and Chinese Noto's. A Chinese face first can supply both scripts for a more unified
36
+ line. Similar numeric weights in different families can look different, so judge the pairing in the
37
+ same Cue. The renderer uses the exact supplied faces and disables synthetic bold and italic.
38
+
39
+ ## Use fonts already on the machine or supplied by the user
40
+
41
+ Installed fonts are useful source material. Select their actual files and declare them as assets,
42
+ so the chosen face travels with the build instead of depending on a family name existing on another
43
+ machine. For example, a project can use a local brand face alongside an explicit Chinese fallback:
44
+
45
+ ```svml
46
+ <import as="asset" from="@hypit/media@1"/>
47
+ <asset:Font id="brand-font" src="./assets/fonts/brand-semibold.woff2" weight="600" style="normal"/>
48
+ <fonts:Face id="chinese-font" family="noto-sans-sc" weight="600" style="normal"/>
49
+
50
+ <caption-fine:Style id="caption-style" recipe={look.caption.primary} font={brand-font}>
51
+ <caption-fine:Fallback font={chinese-font}/>
52
+ </caption-fine:Style>
53
+ ```
54
+
55
+ This excerpt assumes the `fonts`, `caption-fine` and Recipe imports. `asset:Font` accepts a file path;
56
+ copying a selected face into the project's `assets/fonts/` makes the Source portable. Use the file's
57
+ real weight and style. Declaring weight 700 does not turn a regular-only file into a bold face.
58
+
59
+ Useful places to locate fonts include Font Book and `~/Library/Fonts` or `/Library/Fonts` on macOS;
60
+ Windows Fonts and `%WINDIR%\Fonts` or `%LOCALAPPDATA%\Microsoft\Windows\Fonts` on Windows; and
61
+ `fc-list` on systems with Fontconfig. Search the relevant font locations or use the operating
62
+ system's font information to identify the face and file. A local `.ttf`, `.otf`, `.woff` or `.woff2`
63
+ face can enter the same asset path as a supplied font. A `.ttc`/`.otc` collection contains multiple
64
+ faces; the current Font Surface has no collection-face selector. Obtain the intended standalone
65
+ face, or export it with a font tool when permitted, before declaring it.
66
+
67
+ ## Find a face when the available choices do not fit
68
+
69
+ Start with the user's brand assets and the relevant local or bundled faces. If the work calls for
70
+ another face, look at the foundry's or an open-font project's official specimen and download. Check
71
+ the actual script coverage, available weight/style and intended use, then bring the chosen file into
72
+ the project. Keep its source and license with it, especially when sharing the editable project.
73
+ Downloading a selected face as an asset is enough; installing it system-wide is optional.
74
+
75
+ Font choice and treatment work together: compare the actual caption wording, its line width,
76
+ character detail and contrast with the image. Good Han glyph coverage alone does not make an
77
+ English font-size, spacing or outline recipe suit Chinese text.
78
+
79
+ ## Emoji presentation
80
+
81
+ `emoji="color"` adds a color face; `emoji="mono"` chooses monochrome. Some symbols have both text
82
+ and Emoji presentation. Write the intended Unicode sequence, such as `☎️`, when its color form is
83
+ wanted.
84
+
85
+ ## Give independent text its own placement and lifetime
86
+
87
+ Typography is useful for titles, labels, verdicts and copy that follows its own display rhythm.
88
+ Script Caption remains appropriate when the displayed wording follows the performance.
89
+
90
+ The following excerpt assumes the named Fonts, layout Frames, Timeline and Recipes exist:
91
+
92
+ ```svml
93
+ <import as="copy" from="@hypit/text@1"/>
94
+ <import as="typo" from="@hypit/typography-track@1"/>
95
+
96
+ <typo:Style id="headline-style" recipe={look.text.title} font={headline-font}>
97
+ <typo:Fill color="#F1E7D8"/>
98
+ </typo:Style>
99
+ <copy:Value id="headline">A useful idea, clearly shown.</copy:Value>
100
+ <typo:Track id="titles" timeline={speech.timeline}>
101
+ <typo:Area id="opening-title" content={headline} placement={title-frame}
102
+ style={headline-style} during={story.selection.proof}/>
103
+ </typo:Track>
104
+ ```
105
+
106
+ Include `titles.track` in Film. The Style supplies typography, Paint and layer order; the item
107
+ supplies content, placement and time. Use `during="program"` for a title that lasts throughout the
108
+ program, or the component's declared Window forms for a shorter appearance.
109
+
110
+ For the example above, `look.text.title` can be the Recipe
111
+ `text.title { size: 54; weight: 400; stack-order: 20; }`, matching the selected headline face.
112
+
113
+ | Placement | Input and use |
114
+ | --- | --- |
115
+ | Point | A SpatialPoint anchoring text whose box follows its content |
116
+ | Area | A SpatialFrame for wrapping and fitting text in a bounded region |
117
+ | Path | A SpatialPath for text following an authored curve |
118
+
119
+ Query `hypit vocabulary @hypit/typography-track --tag Style` for the Recipe properties and
120
+ `--tag Track` for placement, content and motion forms. [Spatial layout](spatial.md) explains the
121
+ geometry these inputs carry.
122
+
123
+ ## Rich text and motion
124
+
125
+ An item can take graph Text through `content={...}`, or own an inline document with `typo:P`,
126
+ `typo:Span` and `typo:Break`. For example, inside an Area:
127
+
128
+ ```svml
129
+ <typo:P>Made for <typo:Span style={accent-style}>this moment</typo:Span>.</typo:P>
130
+ ```
131
+
132
+ A paragraph or Span Style replaces that run's complete typography and Paint, including its font
133
+ and size. The outer item continues to supply placement and layer order.
134
+
135
+ Typography Motion can act on the item or stagger words and graphemes. Use the installed Motion
136
+ vocabulary for its frame offsets and normalized sequence positions. For a new speech-text layout
137
+ or scheduling relationship, [Caption authoring](caption-authoring.md) explains creating a family
138
+ that consumes the existing Caption document and semantic timing.
@@ -0,0 +1,102 @@
1
+ # Preparing generated images
2
+
3
+ Read this when a generated or supplied image needs to be combined, corrected, resized, cropped, or
4
+ cut out before it becomes a model reference or a Track item. [Image direction](../playbooks/craft/image-direction.md)
5
+ owns what the image should communicate; [spatial layout](spatial.md) owns Canvas, Frame and fit.
6
+
7
+ An image operation publishes another ordinary image Output. The resulting image can feed Seedance,
8
+ a Media Track, another image operation, or any compatible project component. The operation belongs
9
+ in Source when that transformation is part of the reproducible production relationship.
10
+
11
+ ## Flatten a fixed still-image arrangement
12
+
13
+ Image Compose has one narrow job: preserve a deliberately rigid two-dimensional arrangement of
14
+ existing still images and publish it as one PNG. A comparison board, contact sheet or intentionally
15
+ hard-edged collage can need exactly that operation.
16
+
17
+ Declare the Canvas and every rectangular destination explicitly:
18
+
19
+ ```svml
20
+ <import as="space" from="@hypit/spatial@1"/>
21
+ <import as="compose" from="@hypit/image-compose@1"/>
22
+
23
+ <space:Canvas id="comparison-canvas" width="2048" height="1024"/>
24
+ <space:Frame id="before-panel" within={comparison-canvas}
25
+ left="0%" top="0%" right="50%" bottom="100%"/>
26
+ <space:Frame id="after-panel" within={comparison-canvas}
27
+ left="50%" top="0%" right="100%" bottom="100%"/>
28
+
29
+ <compose:Image id="comparison" canvas={comparison-canvas} background="#EEEAE2FF">
30
+ <compose:Layer source={before.image} frame={before-panel} fit="contain"/>
31
+ <compose:Layer source={after.image} frame={after-panel} fit="contain"/>
32
+ </compose:Image>
33
+ ```
34
+
35
+ Child order is paint order. Each Layer keeps the source image, destination Frame, fit and optional
36
+ opacity explicit. `fit` accepts `contain`, `cover` and `stretch`; `interpolation` selects the raster
37
+ resampling filter. The background is `#RRGGBBAA`, so `#00000000` is transparent. The published
38
+ `{comparison.image}` is one flattened PNG rather than a Track.
39
+
40
+ Image Compose does not understand people, objects or camera space. It cannot reconcile perspective,
41
+ depth, lighting, subject scale, background continuity or a natural seam. When several references
42
+ should become one coherent camera image, direct the image model to create that image. When the layers
43
+ must remain independently timed, clipped, moved or revised in the video, keep them in Tracks and Film.
44
+
45
+ ## Apply a reusable correction program
46
+
47
+ Image Transform separates the ordered correction choices from the image they act on:
48
+
49
+ ```svml
50
+ <import as="image" from="@hypit/image-transform@1"/>
51
+
52
+ <image:Program id="delivery-crop">
53
+ <image:Crop x="0" y="0" width="1080" height="1920" unit="pixel"/>
54
+ <image:Resize width="1080" height="1920" fit="cover"/>
55
+ <image:Encode format="png"/>
56
+ </image:Program>
57
+
58
+ <image:Transform id="prepared-shot" source={shot.image} program={delivery-crop}/>
59
+ ```
60
+
61
+ Operations run in written order. A Program is authored data and produces no pixels until a
62
+ Transform applies it. Crop, resize, rotate, flip, denoise, color, sharpen, blur, alpha handling and
63
+ encoding are available; use `hypit vocabulary @hypit/image-transform --tag Program` for their
64
+ installed fields and limits. `{prepared-shot.image}` is the transformed image.
65
+
66
+ Use correction to express a known production choice. A prompt problem remains owned by the image
67
+ direction and its Prompt Kit; a different composition remains owned by the shot or reference
68
+ relationship.
69
+
70
+ ## Remove a background
71
+
72
+ Use Background Removal when the next composition needs a still subject without its original field:
73
+
74
+ ```svml
75
+ <import as="remove" from="@hypit/background-removal@1"/>
76
+
77
+ <remove:Background id="presenter-cutout" source={portrait.image}/>
78
+ ```
79
+
80
+ `{presenter-cutout.image}` is an image with transparency, ready for a Media Track, image composition,
81
+ or another compatible consumer. The Runtime Profile chooses the Endpoint that performs the removal;
82
+ the Source records only the requested visual relationship.
83
+
84
+ The installed `@hypit/background-removal` operation accepts one image and returns one image.
85
+ Its package README names the implemented Provider binding; `hypit plan` with the selected Runtime
86
+ checks which Endpoint will serve this Source. A service advertising background removal still needs
87
+ a matching Provider capability in the installed Distribution.
88
+
89
+ For a speaking video cutout, the moving silhouette must be removed across the clip. This image
90
+ operation supplies neither video matting nor a moving mask. [Moving-media preparation](media.md#keep-original-and-processed-material-explicit)
91
+ explains video matting, operation order, retained originals and the processed picture's subsequent use.
92
+ [Spatial layout](spatial.md#shape-the-outer-frame) owns geometric clips such as circular insets.
93
+
94
+ ## Keep operation and presentation distinct
95
+
96
+ Composing or correcting image bytes changes the reusable image itself. A Media Track instead places
97
+ an image in a Frame for a Window and may animate that presentation. Choose the former when several
98
+ downstream consumers should receive the same prepared pixels; choose the latter when the change
99
+ belongs only to how this video presents the image.
100
+
101
+ Inspect the selected package vocabulary before using optional fields. The examples above provide the
102
+ stable Source shapes; Endpoint choice, credentials and execution capacity remain Runtime concerns.
@@ -0,0 +1,73 @@
1
+ # Production: express, compose and deliver
2
+
3
+ Enter at the question the current work raises. These groups locate knowledge; they are not stages
4
+ that every task must complete. [System relationships](system.md) explains the common model.
5
+ Creation and the relevant [Format/Craft](../playbooks/index.md) supply the creative decisions.
6
+
7
+ For performance-led work, including pure A-roll and short drama, prefer Script → prepared
8
+ SemanticTakes → Timeline. Performance and Sound present the selected footage and audio; Caption and
9
+ other contributions join where useful. Semantic organization remains valuable even with no MG.
10
+ For a standalone asset edit, follow the actual material operation and deliver its output.
11
+
12
+ ## Express the work
13
+
14
+ | Current question | Owner |
15
+ | --- | --- |
16
+ | How do materials, Timeline, Canvas, components and execution relate? | [System](system.md) |
17
+ | How do Source imports, references, values and Recipes work? | [Source syntax](source-syntax.md) |
18
+ | How do I write Script, spaces, pronunciation, Cues and semantic markers? | [Script syntax](script-syntax.md) |
19
+ | How do I connect the creative choices and revise existing work? | [Authoring](authoring.md) |
20
+ | Which installed interface fits, or how do I add a project package? | [Vocabulary](vocabulary.md) |
21
+ | How do I select or write a Prompt Kit? | [Prompt Kits](prompt-kits.md) |
22
+
23
+ ## Prepare material and establish time and space
24
+
25
+ | Current question | Owner |
26
+ | --- | --- |
27
+ | Files, generated/reused outputs, stream selection, normalization, semantic preparation or processed variants | [Media preparation](media.md) |
28
+ | Take placement, gaps, overlap and complete duration | [Timeline](timeline.md) |
29
+ | Semantic events, clock positions, offsets, durations and timing edits | [Timing](timing.md) |
30
+ | Canvas, destination Frames, source extents, fit, crop and coordinates | [Spatial layout](spatial.md) |
31
+ | Download source footage | [Video downloads](video-downloads.md) |
32
+ | Obtain real screenshots, recordings or HTML graphics | [Browser capture](browser-capture.md) |
33
+ | Crop, resize, compose or isolate an image | [Image operations](image-operations.md) |
34
+
35
+ ## Present content
36
+
37
+ [Tracks](tracks.md) chooses by content source and shared behavior, without classifying files as
38
+ A-roll-only or B-roll-only.
39
+
40
+ | Current question | Owner |
41
+ | --- | --- |
42
+ | Present existing Timeline footage; change its treatment while playback continues | [Performance](performance.md) |
43
+ | Place independent images, video or surfaces; choose sampling and replacements | [Media presentation](media-presentation.md) |
44
+ | Present existing Timeline audio; silence, gain or explicit source blends | [Sound](sound.md) |
45
+ | Place independent music, narration, ambience or effects | [Audio presentation](audio-presentation.md) |
46
+ | Present Script words with broad/local Styles or speaker filters | [Caption presentation](caption-presentation.md) |
47
+ | Exact fonts, multilingual text, Emoji and independent Typography | [Fonts and text](fonts-and-text.md) |
48
+
49
+ ## Create the component the work needs
50
+
51
+ | Current question | Owner |
52
+ | --- | --- |
53
+ | What should share a component, and which choices should become inputs? | [Component design](component-design.md) |
54
+ | How do I connect Surface, projections, Fragment and Producers? | [Track authoring](track-authoring.md) |
55
+ | How do I draw elements, video, graphics and frame-driven motion? | [Component visuals](component-visuals.md) |
56
+ | How do I create a new Caption layout using existing wording and timing? | [Caption authoring](caption-authoring.md) |
57
+ | How do I expose meaningful Studio entities and actual author controls? | [Studio Companions](studio-companions.md) |
58
+ | How does an owner distribute and update a package across projects? | [Component sharing](component-sharing.md) |
59
+
60
+ ## Execute, revise and deliver
61
+
62
+ | Current question | Owner |
63
+ | --- | --- |
64
+ | Choose Targets, file/Result Candidates and computed substitutes | [Runs](runs.md) |
65
+ | Decide which completed value preserves material while allowing this edit | [Reuse boundaries](authoring.md#reuse-produced-work-explicitly) |
66
+ | Plan, price, submit, follow, recover and retrieve work | [Builds and Results](builds.md) |
67
+ | Inspect the current picture, precise frames and continuous motion grids | [Snapshots](snapshots.md) |
68
+ | Assemble Film, request full/range rendering and export the result | [Rendering](rendering.md) |
69
+ | Open the selected work, read feedback and edit its Source | [Studio](studio.md) |
70
+ | Judge the actual performance, composition and encoded deliverable | [Review](review.md) |
71
+
72
+ For installation, service selection or local preparation, follow the [Environment routes](../SKILL.md#where-the-current-question-is-answered).
73
+ Package vocabulary and package-local documentation own exact ports and implementation-specific options.
@@ -0,0 +1,111 @@
1
+ # Present independent images, video and surfaces
2
+
3
+ Read this when explicitly supplying picture content and arranging its appearance or playback.
4
+ Use [Performance](performance.md) for footage and source positions already established by Timeline.
5
+ The distinction is content ownership, not whether the picture contains a person, covers the frame,
6
+ or has transparency. [Media preparation](media.md) owns the incoming values.
7
+
8
+ ## Supply a source and its destination
9
+
10
+ With the named assets, Timeline, Canvas, Frames and Recipes declared:
11
+
12
+ ```svml
13
+ <import as="media-track" from="@hypit/media-track@1"/>
14
+ <media-track:Track id="evidence" timeline={program.timeline} canvas={canvas}>
15
+ <media-track:Item id="photo" image={product} extent={product-extent}
16
+ frame={detail-frame} during={story.selection.example} appearance={look.media.still}/>
17
+ <media-track:Item id="demo" media={demo-media.media}
18
+ frame={detail-frame} during={story.selection.proof} appearance={look.media.clip}/>
19
+ </media-track:Track>
20
+ ```
21
+
22
+ Each Item takes one direct source form: `image` with its actual `extent`, prepared `media`, or a
23
+ compositable `surface`. The current Surface takes no raw `video` attribute. Generated and file-backed
24
+ assets use the same inputs once they have the required Type. A still image needs no video conversion;
25
+ its Item supplies the display duration. Code-authored graphics can publish their own Track directly.
26
+
27
+ `frame` places the destination on the Canvas. `appearance` supplies fitting, clipping, decoration,
28
+ source sampling and required `stack-order`. [Spatial layout](spatial.md) explains fitting the source's
29
+ real extent into that Frame. Independent Items may overlap; a full-frame Item is also ordinary Media.
30
+
31
+ ## Keep display time and source playback distinct
32
+
33
+ An Item's Window says when it is active. It can follow a Selection, Segment, Moment plus duration,
34
+ or an authored interval through the shared [time forms](timing.md). Its source sampling separately
35
+ says which frames to show. A semantic Window does not automatically inherit a Take's source offset.
36
+
37
+ For moving media, choose playback from the intended result:
38
+
39
+ | Intended behavior | Appearance `playback` |
40
+ | --- | --- |
41
+ | Play from the start at native speed, then expose the lower picture when exhausted | `once-start` (default) |
42
+ | Align native playback to the Window end | `once-end` |
43
+ | Hold the ending or beginning picture over excess time | `hold-start` / `hold-end` |
44
+ | Repeat at native speed with start/end alignment | `loop-start` / `loop-end` |
45
+ | Fit the selected source duration into the Window by retiming | `stretch` |
46
+
47
+ `trim-start` and `trim-end` select a pair of integer source-frame boundaries, with an exclusive end.
48
+ Omit both for the whole source. Under native playback, prepared media uses the Timeline's frame rate.
49
+ A shorter Window can truncate a longer clip; extending the Window does not extend the source.
50
+ Choose a hold, loop or retime only when that behavior serves the picture.
51
+
52
+ Durationless images reject playback and trim options. Their appearance Window is sufficient.
53
+ A surface's preparation supplies any frame information; its installed vocabulary describes the
54
+ applicable sampling. The `@hypit/media-track` README owns exact mode and boundary rules.
55
+
56
+ For example, independently replaying footage on a spoken claim can intentionally start that footage
57
+ from its beginning. Presenting the speaker continuously midway through a placed Take should instead
58
+ retain the Timeline source mapping through Performance or a project scene.
59
+
60
+ ## Coordinate layers and replacements
61
+
62
+ An Item can declare ordered `Paint` and sampled `Layer` children instead of one direct source.
63
+ The Item owns the outer Frame, clip, border and motion; each sampled Layer has its own fit and
64
+ picture treatment. Use this when the parts make one framed unit. Separate Items own independent
65
+ placement. A richer scene can own further shared behavior in a [project component](component-design.md).
66
+
67
+ Use a Sequence when content replaces content in one visual slot:
68
+
69
+ ```svml
70
+ <media-track:Track id="cards" timeline={program.timeline} canvas={canvas}>
71
+ <media-track:Sequence id="steps" frame={card-frame} appearance={look.media.card}
72
+ until={story.selection.demo} until-boundary="end">
73
+ <media-track:Member id="first" image={first-image} extent={card-extent}
74
+ at={story.moment.first}/>
75
+ <media-track:Member id="second" image={second-image} extent={card-extent}
76
+ at={story.moment.second}/>
77
+ <media-track:Handoff id="replace" from="first" transition={look.transition.cards}/>
78
+ </media-track:Sequence>
79
+ </media-track:Track>
80
+ ```
81
+
82
+ Members have ordered activation Instants and the Sequence has a terminal Instant. Each adjacent
83
+ pair declares a Handoff, including a cut. `from` names the outgoing Member; the next Member is its
84
+ successor. Transition duration and boundary ratio shape the handoff around the logical event;
85
+ they do not relocate that event. The Sequence retains the shared outer geometry as its contents change.
86
+ Query the selected package for its exact Layer, Member, Sampling and Handoff forms.
87
+
88
+ ## Move the presentation or sample the picture
89
+
90
+ A `motion` Recipe moves or fades the framed unit. `Sampling` children pan, zoom or rotate the fitted
91
+ picture inside that frame. A still can receive the same spatial sampling motion. [Spatial layout](spatial.md#move-the-frame-or-move-its-contents)
92
+ shows the distinction and an example.
93
+
94
+ A single Item's local motion may follow progress through its Window. When separate internal actions
95
+ answer separate lines, give them separate events or use a scene exposing those events. An outer
96
+ semantic Window alone cannot keep every internal action aligned with changed speech.
97
+
98
+ ## Include sound deliberately
99
+
100
+ Source audio is opt-in: `source-audio="content"` selects the direct source, or a child Layer id selects
101
+ that Layer's sound. A `Sound` child can instead attach normalized audio to an Item's entrance/exit
102
+ or to a Sequence handoff. The Track publishes `.visual`, `.program`, and `.audio` when sound is present.
103
+ Film includes the desired outputs separately.
104
+
105
+ Source audio follows the selected sampling policy; holding a picture does not synthesize held sound.
106
+ An otherwise silent overlay leaves the Film's existing Sound contribution audible. Use
107
+ [Audio Track](audio-presentation.md) for independent sound placement and avoid routing the same voice twice.
108
+
109
+ When uninterrupted visual coverage matters, inspect semantic pause boundaries, source exhaustion
110
+ and transition opacity together. [B-roll](../playbooks/craft/b-roll.md) owns the editorial choice;
111
+ [review](review.md#make-the-composition-work) locates an unintended exposure in the actual picture.