@autoaiai/aicut 0.1.11 → 0.1.13

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 (1063) hide show
  1. package/MANUAL.md +94 -94
  2. package/package.json +1 -1
  3. package/skills/aicut-motion/SKILL.md +69 -3
  4. package/skills/aicut-motion/THIRD_PARTY_NOTICES.md +14 -0
  5. package/skills/aicut-motion/assets/atlas/lib/harness.js +116 -0
  6. package/skills/aicut-motion/assets/atlas/lib/sound.js +274 -0
  7. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/code.js +937 -0
  8. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/poster.jpg +0 -0
  9. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/style.json +13 -0
  10. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/code.js +909 -0
  11. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/poster.jpg +0 -0
  12. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/style.json +13 -0
  13. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/code.js +881 -0
  14. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/poster.jpg +0 -0
  15. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/style.json +13 -0
  16. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/code.js +897 -0
  17. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/poster.jpg +0 -0
  18. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/style.json +13 -0
  19. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/code.js +814 -0
  20. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/poster.jpg +0 -0
  21. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/style.json +13 -0
  22. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/code.js +990 -0
  23. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/poster.jpg +0 -0
  24. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/style.json +13 -0
  25. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/code.js +994 -0
  26. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/poster.jpg +0 -0
  27. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/style.json +13 -0
  28. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/code.js +792 -0
  29. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/poster.jpg +0 -0
  30. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/style.json +13 -0
  31. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/code.js +840 -0
  32. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/poster.jpg +0 -0
  33. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/style.json +13 -0
  34. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/code.js +1126 -0
  35. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/poster.jpg +0 -0
  36. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/style.json +13 -0
  37. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/code.js +854 -0
  38. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/poster.jpg +0 -0
  39. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/style.json +13 -0
  40. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/code.js +1124 -0
  41. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/poster.jpg +0 -0
  42. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/style.json +13 -0
  43. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/code.js +728 -0
  44. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/poster.jpg +0 -0
  45. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/style.json +13 -0
  46. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/code.js +664 -0
  47. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/poster.jpg +0 -0
  48. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/style.json +13 -0
  49. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/code.js +991 -0
  50. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/poster.jpg +0 -0
  51. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/style.json +13 -0
  52. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/code.js +801 -0
  53. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/poster.jpg +0 -0
  54. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/style.json +13 -0
  55. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/code.js +692 -0
  56. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/poster.jpg +0 -0
  57. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/style.json +13 -0
  58. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/code.js +756 -0
  59. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/poster.jpg +0 -0
  60. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/style.json +13 -0
  61. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/code.js +922 -0
  62. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/poster.jpg +0 -0
  63. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/style.json +13 -0
  64. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/code.js +852 -0
  65. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/poster.jpg +0 -0
  66. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/style.json +13 -0
  67. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/code.js +724 -0
  68. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/poster.jpg +0 -0
  69. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/style.json +13 -0
  70. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/code.js +793 -0
  71. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/poster.jpg +0 -0
  72. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/style.json +13 -0
  73. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/code.js +846 -0
  74. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/poster.jpg +0 -0
  75. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/style.json +13 -0
  76. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/code.js +1008 -0
  77. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/poster.jpg +0 -0
  78. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/style.json +13 -0
  79. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/code.js +680 -0
  80. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/poster.jpg +0 -0
  81. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/style.json +13 -0
  82. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/code.js +633 -0
  83. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/poster.jpg +0 -0
  84. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/style.json +13 -0
  85. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/code.js +757 -0
  86. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/poster.jpg +0 -0
  87. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/style.json +13 -0
  88. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/code.js +828 -0
  89. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/poster.jpg +0 -0
  90. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/style.json +13 -0
  91. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/code.js +697 -0
  92. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/poster.jpg +0 -0
  93. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/style.json +13 -0
  94. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/code.js +687 -0
  95. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/poster.jpg +0 -0
  96. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/style.json +13 -0
  97. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/code.js +727 -0
  98. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/poster.jpg +0 -0
  99. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/style.json +13 -0
  100. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/code.js +903 -0
  101. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/poster.jpg +0 -0
  102. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/style.json +13 -0
  103. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/code.js +662 -0
  104. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/poster.jpg +0 -0
  105. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/style.json +13 -0
  106. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/code.js +951 -0
  107. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/poster.jpg +0 -0
  108. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/style.json +13 -0
  109. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/code.js +759 -0
  110. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/poster.jpg +0 -0
  111. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/style.json +13 -0
  112. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/code.js +738 -0
  113. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/poster.jpg +0 -0
  114. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/style.json +13 -0
  115. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/code.js +793 -0
  116. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/poster.jpg +0 -0
  117. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/style.json +13 -0
  118. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/code.js +673 -0
  119. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/poster.jpg +0 -0
  120. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/style.json +13 -0
  121. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/code.js +907 -0
  122. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/poster.jpg +0 -0
  123. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/style.json +13 -0
  124. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/code.js +833 -0
  125. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/poster.jpg +0 -0
  126. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/style.json +13 -0
  127. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/code.js +845 -0
  128. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/poster.jpg +0 -0
  129. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/style.json +13 -0
  130. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/code.js +496 -0
  131. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/poster.jpg +0 -0
  132. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/style.json +13 -0
  133. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/code.js +635 -0
  134. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/poster.jpg +0 -0
  135. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/style.json +13 -0
  136. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/code.js +799 -0
  137. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/poster.jpg +0 -0
  138. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/style.json +13 -0
  139. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/code.js +547 -0
  140. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/poster.jpg +0 -0
  141. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/style.json +13 -0
  142. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/code.js +592 -0
  143. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/poster.jpg +0 -0
  144. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/style.json +13 -0
  145. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/code.js +768 -0
  146. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/poster.jpg +0 -0
  147. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/style.json +13 -0
  148. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/code.js +666 -0
  149. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/poster.jpg +0 -0
  150. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/style.json +13 -0
  151. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/code.js +559 -0
  152. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/poster.jpg +0 -0
  153. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/style.json +13 -0
  154. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/code.js +943 -0
  155. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/poster.jpg +0 -0
  156. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/style.json +13 -0
  157. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/code.js +606 -0
  158. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/poster.jpg +0 -0
  159. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/style.json +13 -0
  160. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/code.js +730 -0
  161. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/poster.jpg +0 -0
  162. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/style.json +13 -0
  163. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/code.js +782 -0
  164. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/poster.jpg +0 -0
  165. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/style.json +13 -0
  166. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/code.js +504 -0
  167. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/poster.jpg +0 -0
  168. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/style.json +13 -0
  169. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/code.js +517 -0
  170. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/poster.jpg +0 -0
  171. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/style.json +13 -0
  172. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/code.js +713 -0
  173. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/poster.jpg +0 -0
  174. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/style.json +13 -0
  175. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/code.js +717 -0
  176. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/poster.jpg +0 -0
  177. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/style.json +13 -0
  178. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/code.js +540 -0
  179. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/poster.jpg +0 -0
  180. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/style.json +13 -0
  181. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/code.js +524 -0
  182. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/poster.jpg +0 -0
  183. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/style.json +13 -0
  184. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/code.js +934 -0
  185. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/poster.jpg +0 -0
  186. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/style.json +13 -0
  187. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/code.js +690 -0
  188. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/poster.jpg +0 -0
  189. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/style.json +13 -0
  190. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/code.js +612 -0
  191. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/poster.jpg +0 -0
  192. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/style.json +13 -0
  193. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/code.js +666 -0
  194. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/poster.jpg +0 -0
  195. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/style.json +13 -0
  196. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/code.js +651 -0
  197. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/poster.jpg +0 -0
  198. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/style.json +13 -0
  199. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/code.js +656 -0
  200. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/poster.jpg +0 -0
  201. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/style.json +13 -0
  202. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/code.js +672 -0
  203. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/poster.jpg +0 -0
  204. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/style.json +13 -0
  205. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/code.js +548 -0
  206. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/poster.jpg +0 -0
  207. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/style.json +13 -0
  208. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/code.js +989 -0
  209. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/poster.jpg +0 -0
  210. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/style.json +13 -0
  211. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/code.js +440 -0
  212. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/poster.jpg +0 -0
  213. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/style.json +13 -0
  214. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/code.js +895 -0
  215. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/poster.jpg +0 -0
  216. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/style.json +13 -0
  217. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/code.js +563 -0
  218. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/poster.jpg +0 -0
  219. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/style.json +13 -0
  220. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/code.js +627 -0
  221. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/poster.jpg +0 -0
  222. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/style.json +13 -0
  223. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/code.js +1096 -0
  224. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/poster.jpg +0 -0
  225. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/style.json +13 -0
  226. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/code.js +595 -0
  227. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/poster.jpg +0 -0
  228. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/style.json +13 -0
  229. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/code.js +665 -0
  230. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/poster.jpg +0 -0
  231. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/style.json +13 -0
  232. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/code.js +645 -0
  233. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/poster.jpg +0 -0
  234. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/style.json +13 -0
  235. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/code.js +436 -0
  236. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/poster.jpg +0 -0
  237. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/style.json +13 -0
  238. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/code.js +1237 -0
  239. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/poster.jpg +0 -0
  240. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/style.json +13 -0
  241. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/code.js +622 -0
  242. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/poster.jpg +0 -0
  243. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/style.json +13 -0
  244. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/code.js +524 -0
  245. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/poster.jpg +0 -0
  246. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/style.json +13 -0
  247. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/code.js +689 -0
  248. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/poster.jpg +0 -0
  249. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/style.json +13 -0
  250. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/code.js +574 -0
  251. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/poster.jpg +0 -0
  252. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/style.json +13 -0
  253. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/code.js +469 -0
  254. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/poster.jpg +0 -0
  255. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/style.json +13 -0
  256. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/code.js +531 -0
  257. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/poster.jpg +0 -0
  258. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/style.json +13 -0
  259. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/code.js +675 -0
  260. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/poster.jpg +0 -0
  261. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/style.json +13 -0
  262. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/code.js +609 -0
  263. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/poster.jpg +0 -0
  264. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/style.json +13 -0
  265. package/skills/aicut-motion/references/motion-delivery.md +55 -0
  266. package/skills/aicut-motion/references/style-index.json +690 -0
  267. package/skills/aicut-motion/references/style-research.md +73 -0
  268. package/skills/aicut-motion/references/style-selection.md +71 -0
  269. package/skills/aicut-motion/scripts/atlas-viewer.html +195 -0
  270. package/skills/aicut-motion/scripts/atlas.mjs +109 -0
  271. package/studio/server/fetch-github.mjs +14 -3
  272. package/studio/server/server.mjs +40 -3
  273. package/studio/server/skill-summaries.mjs +60 -0
  274. package/studio/server/skills.mjs +121 -7
  275. package/studio/server/styles-store.mjs +235 -0
  276. package/studio/server/template-posters.mjs +2 -2
  277. package/studio/server/templates-page.mjs +93 -93
  278. package/studio/server/templates.mjs +32 -7
  279. package/studio/ui/dist/assets/ExportCenter-DasulhAv.js +1 -0
  280. package/studio/ui/dist/assets/SettingsModal-BZw0Hz2_.js +2 -0
  281. package/studio/ui/dist/assets/es-C8XPZARI.js +1 -0
  282. package/studio/ui/dist/assets/index-BjJVmBzB.js +1623 -0
  283. package/studio/ui/dist/assets/index-C3BfKZFO.css +1 -0
  284. package/studio/ui/dist/assets/ja-BeNkdaEj.js +1 -0
  285. package/studio/ui/dist/assets/ko-DcTVhdzK.js +1 -0
  286. package/studio/ui/dist/assets/zh-CN-Cg51ctbL.js +1 -0
  287. package/studio/ui/dist/index.html +2 -2
  288. package/skills/30x-web-to-video/SKILL.md +0 -421
  289. package/skills/30x-web-to-video/examples/INDEX.md +0 -26
  290. package/skills/30x-web-to-video/references/animations.md +0 -539
  291. package/skills/30x-web-to-video/references/audio.md +0 -256
  292. package/skills/30x-web-to-video/references/components.md +0 -340
  293. package/skills/30x-web-to-video/references/lottie.md +0 -174
  294. package/skills/30x-web-to-video/references/visual-effects.md +0 -157
  295. package/skills/30x-web-to-video/remotion-best-practices/rules/audio.md +0 -169
  296. package/skills/30x-web-to-video/remotion-best-practices/rules/calculate-metadata.md +0 -134
  297. package/skills/30x-web-to-video/remotion-best-practices/rules/charts.md +0 -120
  298. package/skills/30x-web-to-video/remotion-best-practices/rules/compositions.md +0 -154
  299. package/skills/30x-web-to-video/remotion-best-practices/rules/ffmpeg.md +0 -38
  300. package/skills/30x-web-to-video/remotion-best-practices/rules/fonts.md +0 -152
  301. package/skills/3d-asset-generation/SKILL.md +0 -142
  302. package/skills/action-fight-prompt/SKILL.md +0 -136
  303. package/skills/action-fight-prompt/references/camera-and-impact.md +0 -64
  304. package/skills/action-fight-prompt/references/example-15s-duel.md +0 -59
  305. package/skills/action-fight-prompt/references/scene-patterns.md +0 -80
  306. package/skills/ad-creative-video/SKILL.md +0 -205
  307. package/skills/ad-creative-video/references/batch-ad-pipeline.md +0 -289
  308. package/skills/ad-creative-video/references/platform-specs.md +0 -72
  309. package/skills/after-effects/SKILL.md +0 -123
  310. package/skills/after-effects/references/export-recipes.md +0 -168
  311. package/skills/after-effects/references/expression-library.md +0 -184
  312. package/skills/after-effects/references/expressions.md +0 -134
  313. package/skills/after-effects/references/performance-triage.md +0 -138
  314. package/skills/after-effects/references/project-hygiene.md +0 -188
  315. package/skills/ai-media-quality-review/SKILL.md +0 -72
  316. package/skills/ai-product-video/SKILL.md +0 -296
  317. package/skills/ai-product-video/references/aesthetic-rules.md +0 -177
  318. package/skills/ai-product-video/references/final-review.md +0 -110
  319. package/skills/ai-product-video/references/guided-free-creation.md +0 -194
  320. package/skills/ai-product-video/references/music-beat-sync.md +0 -219
  321. package/skills/ai-product-video/references/pipeline.md +0 -392
  322. package/skills/ai-product-video/references/sequences/promo-energy-arc.md +0 -50
  323. package/skills/ai-product-video/references/shots/ATTRIBUTION.md +0 -65
  324. package/skills/ai-product-video/references/shots/camera/basic-3d-scene.md +0 -37
  325. package/skills/ai-product-video/references/shots/camera/crash-zoom-punch.md +0 -39
  326. package/skills/ai-product-video/references/shots/camera/cursor-flyover.md +0 -38
  327. package/skills/ai-product-video/references/shots/camera/depth-layer-moves.md +0 -40
  328. package/skills/ai-product-video/references/shots/camera/graze-face-tour.md +0 -57
  329. package/skills/anidoodle/SKILL.md +0 -185
  330. package/skills/anidoodle/references/anatomy.md +0 -91
  331. package/skills/anidoodle/references/backends-and-adapters.md +0 -82
  332. package/skills/anidoodle/references/camera.md +0 -148
  333. package/skills/anidoodle/references/craft-bar.md +0 -72
  334. package/skills/anidoodle/references/determinism-and-contract.md +0 -46
  335. package/skills/anidoodle/references/formats.md +0 -121
  336. package/skills/anidoodle/references/motion-grammar.md +0 -234
  337. package/skills/anidoodle/references/music/compose.md +0 -388
  338. package/skills/anidoodle/references/music/sound-design.md +0 -245
  339. package/skills/anidoodle/references/music/sounds-licenses.md +0 -69
  340. package/skills/anidoodle/references/music/styles/lofi-electronic.md +0 -112
  341. package/skills/anidoodle/references/music/styles/music-box.md +0 -57
  342. package/skills/animated-component-libraries/SKILL.md +0 -820
  343. package/skills/animated-component-libraries/references/customization_guide.md +0 -699
  344. package/skills/animated-component-libraries/references/magic_ui_components.md +0 -422
  345. package/skills/animated-component-libraries/references/react_bits_components.md +0 -587
  346. package/skills/animated-infographic/SKILL.md +0 -211
  347. package/skills/animated-infographic/references/sequenced-infographic.md +0 -286
  348. package/skills/appshot-core/SKILL.md +0 -872
  349. package/skills/article-highlights/SKILL.md +0 -151
  350. package/skills/avatar-mix/SKILL.md +0 -301
  351. package/skills/bang-motion/SKILL.md +0 -583
  352. package/skills/bang-motion/references/ae-bridge-higgsfield.md +0 -160
  353. package/skills/bang-motion/references/anti-ppt.md +0 -110
  354. package/skills/bang-motion/references/architecture.md +0 -188
  355. package/skills/bang-motion/references/explainer.md +0 -579
  356. package/skills/bang-motion/references/kartun-panggung.md +0 -221
  357. package/skills/bang-motion/references/opener-konsep.md +0 -817
  358. package/skills/bang-motion/references/roadmap.md +0 -85
  359. package/skills/bang-motion/references/techniques.md +0 -690
  360. package/skills/beat-sync-edit/SKILL.md +0 -148
  361. package/skills/book-video-factory/SKILL.md +0 -139
  362. package/skills/book-video-factory/references/first-run.md +0 -50
  363. package/skills/book-video-factory/references/paper-collage-explainer.md +0 -127
  364. package/skills/book-video-factory/references/quality-gates.md +0 -87
  365. package/skills/book-video-production/SKILL.md +0 -211
  366. package/skills/brag/SKILL.md +0 -195
  367. package/skills/brag/references/audio.md +0 -312
  368. package/skills/brag/references/step-1-inspect.md +0 -125
  369. package/skills/brag/references/step-2-plan.md +0 -234
  370. package/skills/brag/references/step-3-compose.md +0 -199
  371. package/skills/brag/references/step-4-deliver.md +0 -141
  372. package/skills/brag/references/tones.md +0 -231
  373. package/skills/brand-setup/SKILL.md +0 -228
  374. package/skills/brewreel/SKILL.md +0 -491
  375. package/skills/brewreel/docs/broll.en.md +0 -252
  376. package/skills/brewreel/docs/broll.md +0 -252
  377. package/skills/brewreel/docs/custom-shot.en.md +0 -66
  378. package/skills/brewreel/docs/custom-shot.md +0 -103
  379. package/skills/brewreel/docs/faq.en.md +0 -90
  380. package/skills/brewreel/docs/faq.md +0 -90
  381. package/skills/brewreel/docs/features.en.md +0 -157
  382. package/skills/brewreel/docs/features.md +0 -157
  383. package/skills/brewreel/docs/gallery.en.md +0 -44
  384. package/skills/brewreel/docs/gallery.md +0 -44
  385. package/skills/brewreel/docs/how-it-works.en.md +0 -64
  386. package/skills/brewreel/docs/how-it-works.md +0 -64
  387. package/skills/caption-animation/SKILL.md +0 -216
  388. package/skills/caption-animation/references/word-timed-captions.md +0 -254
  389. package/skills/cartcut-editing/SKILL.md +0 -615
  390. package/skills/cartcut-editing/references/html-typography.md +0 -277
  391. package/skills/cassette-video-edit/SKILL.md +0 -129
  392. package/skills/ccvideo/SKILL.md +0 -264
  393. package/skills/chekhov-dramaturgy/SKILL.md +0 -367
  394. package/skills/chekhov-dramaturgy/reference.md +0 -375
  395. package/skills/chengfeng-check-updates/SKILL.md +0 -283
  396. package/skills/cinematic-product-promo-skill/SKILL.md +0 -295
  397. package/skills/cinematic-product-promo-skill/references/aesthetic-rules.md +0 -187
  398. package/skills/cinematic-product-promo-skill/references/final-review.md +0 -116
  399. package/skills/cinematic-product-promo-skill/references/guided-free-creation.md +0 -199
  400. package/skills/cinematic-product-promo-skill/references/jianying-export.md +0 -183
  401. package/skills/cinematic-product-promo-skill/references/music-beat-sync.md +0 -257
  402. package/skills/cinematic-product-promo-skill/references/pipeline.md +0 -393
  403. package/skills/cinematic-product-promo-skill/references/sequences/promo-energy-arc.md +0 -50
  404. package/skills/cinematic-product-promo-skill/references/shots/ATTRIBUTION.md +0 -65
  405. package/skills/cinematic-product-promo-skill/references/shots/camera/basic-3d-scene.md +0 -37
  406. package/skills/cinematic-product-promo-skill/references/shots/camera/crash-zoom-punch.md +0 -39
  407. package/skills/cinematic-product-promo-skill/references/shots/camera/cursor-flyover.md +0 -38
  408. package/skills/cinematic-product-promo-skill/references/shots/camera/depth-layer-moves.md +0 -40
  409. package/skills/claude-gif/SKILL.md +0 -211
  410. package/skills/claude-gif/references/gif-optimization.md +0 -209
  411. package/skills/claude-gif/references/perfect-loops.md +0 -295
  412. package/skills/claude-gif/references/platform-specs.md +0 -138
  413. package/skills/claude-gif/references/prompt-engineering.md +0 -211
  414. package/skills/claude-gif/references/remotion-gif.md +0 -560
  415. package/skills/codex-video-pipeline/SKILL.md +0 -213
  416. package/skills/codex-video-pipeline/examples/ai-meeting-notes/INPUT.md +0 -10
  417. package/skills/codex-video-pipeline/examples/ai-meeting-notes/expected/action-list.md +0 -22
  418. package/skills/codex-video-pipeline/references/captions.md +0 -39
  419. package/skills/codex-video-pipeline/references/cover-system.md +0 -72
  420. package/skills/codex-video-pipeline/references/cross-platform.md +0 -77
  421. package/skills/codex-video-pipeline/references/example-run.md +0 -54
  422. package/skills/codex-video-pipeline/references/first-run.md +0 -130
  423. package/skills/codex-video-pipeline/references/project-contract.md +0 -54
  424. package/skills/codex-video-pipeline/references/quality-gates.md +0 -44
  425. package/skills/codex-video-pipeline/references/research-and-script.md +0 -50
  426. package/skills/collage-broll-explainers/SKILL.md +0 -429
  427. package/skills/create-onboarding-video/SKILL.md +0 -233
  428. package/skills/cs-shotcraft-skill/SKILL.md +0 -218
  429. package/skills/cs-shotcraft-skill/references/aesthetic-rules.md +0 -207
  430. package/skills/cs-shotcraft-skill/references/camera-table.md +0 -88
  431. package/skills/cs-shotcraft-skill/references/engineering.md +0 -132
  432. package/skills/cs-shotcraft-skill/references/final-review.md +0 -118
  433. package/skills/cs-shotcraft-skill/references/guided-free-creation.md +0 -199
  434. package/skills/cs-shotcraft-skill/references/jianying-export.md +0 -183
  435. package/skills/cs-shotcraft-skill/references/music-beat-sync.md +0 -257
  436. package/skills/cs-shotcraft-skill/references/pipeline.md +0 -408
  437. package/skills/cs-shotcraft-skill/references/product-machine.md +0 -56
  438. package/skills/cs-shotcraft-skill/references/sequences/promo-energy-arc.md +0 -50
  439. package/skills/cs-shotcraft-skill/references/shots/ATTRIBUTION.md +0 -65
  440. package/skills/cs-shotcraft-skill/references/shots/camera/basic-3d-scene.md +0 -37
  441. package/skills/cut-video/SKILL.md +0 -387
  442. package/skills/cyxj-hyperframes-overlay/SKILL.md +0 -75
  443. package/skills/cyxj-remotion-evolve/SKILL.md +0 -123
  444. package/skills/cyxj-remotion-evolve-vibe-motion/SKILL.md +0 -123
  445. package/skills/demo-video-creation-skill/SKILL.md +0 -152
  446. package/skills/demo-video-creation-skill/references/capture-workflow.md +0 -74
  447. package/skills/demo-video-creation-skill/references/qc-checklist.md +0 -61
  448. package/skills/demo-video-creation-skill/references/remotion-ffmpeg.md +0 -94
  449. package/skills/demo-video-creation-skill/references/storytelling.md +0 -86
  450. package/skills/demo-video-creation-skill/references/visual-system.md +0 -83
  451. package/skills/demoday/SKILL.md +0 -148
  452. package/skills/develop-premiere-pro-mcp/SKILL.md +0 -131
  453. package/skills/diagram-animation/SKILL.md +0 -200
  454. package/skills/diagram-animation/references/diagram-and-chart-recipes.md +0 -218
  455. package/skills/diagram-tour/SKILL.md +0 -287
  456. package/skills/diagram-tour/examples/agent-architecture/agent-architecture-tour.md +0 -78
  457. package/skills/docvideoer/SKILL.md +0 -139
  458. package/skills/draftcut/SKILL.md +0 -104
  459. package/skills/draftcut/docs/agent-bootstrap.md +0 -64
  460. package/skills/draftcut/docs/approvals.md +0 -45
  461. package/skills/draftcut/docs/audio-first-migration.md +0 -35
  462. package/skills/draftcut/docs/configuration.md +0 -54
  463. package/skills/draftcut/docs/getting-started.md +0 -63
  464. package/skills/draftcut/docs/harness-case-study.en.md +0 -23
  465. package/skills/draftcut/docs/harness-case-study.md +0 -47
  466. package/skills/draftcut/references/01-plan.md +0 -30
  467. package/skills/draftcut/references/03-deliver.md +0 -26
  468. package/skills/draftcut/references/04-reference-theme-prompt.md +0 -7
  469. package/skills/draftcut/references/05-social-loudness.md +0 -58
  470. package/skills/draftcut/references/06-modern-components.md +0 -72
  471. package/skills/easyedit/SKILL.md +0 -66
  472. package/skills/erduo-broll-loop-engineering/SKILL.md +0 -136
  473. package/skills/erduo-broll-loop-engineering/references/animation-craft.md +0 -208
  474. package/skills/erduo-broll-loop-engineering/references/first-run-onboarding.md +0 -107
  475. package/skills/erduo-broll-loop-engineering/references/handoff-template.md +0 -70
  476. package/skills/erduo-broll-loop-engineering/references/motion-layout-lint.md +0 -122
  477. package/skills/erduo-broll-loop-engineering/references/parent-review-checklist.md +0 -171
  478. package/skills/erduo-broll-loop-engineering/references/prompt-first-workflow.md +0 -322
  479. package/skills/erduo-broll-loop-engineering/references/remotion-backend.md +0 -334
  480. package/skills/erduo-broll-loop-engineering/references/runtime/remotion-hyperframes-map.md +0 -76
  481. package/skills/erduo-broll-loop-engineering/references/runtime/runtime-contract.md +0 -174
  482. package/skills/erduo-broll-loop-engineering/references/runtime/runtime-selection.md +0 -135
  483. package/skills/erduo-broll-loop-engineering/references/shotcraft/remotion-sources/SOURCE.md +0 -7
  484. package/skills/erduo-broll-loop-engineering/references/shotcraft/upstream-attribution.md +0 -65
  485. package/skills/explainer-assets/SKILL.md +0 -98
  486. package/skills/explainer-video/SKILL.md +0 -146
  487. package/skills/framewright/SKILL.md +0 -324
  488. package/skills/framewright/references/audio.md +0 -230
  489. package/skills/framewright/references/guide.md +0 -276
  490. package/skills/framewright/references/painting.md +0 -425
  491. package/skills/framewright/references/photo.md +0 -75
  492. package/skills/framewright/references/questionnaire.md +0 -115
  493. package/skills/framewright/references/styles.md +0 -388
  494. package/skills/framewright/references/troubleshooting.md +0 -119
  495. package/skills/framewright/references/world.md +0 -215
  496. package/skills/gbro-collage-broll/SKILL.md +0 -435
  497. package/skills/gbro-collage-info/SKILL.md +0 -135
  498. package/skills/gbro-collage-info/references/motion-grammar.md +0 -66
  499. package/skills/gbro-collage-info/references/production.md +0 -67
  500. package/skills/gbro-collage-info/references/style-system.md +0 -38
  501. package/skills/gemini-tts/SKILL.md +0 -208
  502. package/skills/gemini-tts/references/prompting-guide.md +0 -169
  503. package/skills/gen/SKILL.md +0 -282
  504. package/skills/ghost-editor/SKILL.md +0 -437
  505. package/skills/ghost-editor/docs/HOW-IT-WORKS.md +0 -82
  506. package/skills/ghost-editor/docs/PLAYBOOK.md +0 -139
  507. package/skills/ghost-editor/docs/THIRD_PARTY/audio.md +0 -17
  508. package/skills/ghost-editor/docs/THIRD_PARTY/audioqa.md +0 -13
  509. package/skills/ghost-editor/docs/THIRD_PARTY/captions.md +0 -20
  510. package/skills/ghost-editor/docs/THIRD_PARTY/fonts.md +0 -17
  511. package/skills/ghost-editor/docs/THIRD_PARTY/kinetic.md +0 -22
  512. package/skills/ghost-editor/docs/THIRD_PARTY/looks.md +0 -22
  513. package/skills/ghost-editor/docs/THIRD_PARTY/matte.md +0 -20
  514. package/skills/ghost-editor/docs/THIRD_PARTY/models.md +0 -11
  515. package/skills/ghost-editor/docs/THIRD_PARTY/runtime.md +0 -13
  516. package/skills/ghost-editor/docs/THIRD_PARTY/shaders.md +0 -15
  517. package/skills/git-story-film/SKILL.md +0 -220
  518. package/skills/git-story-film/examples/raven-story/FONTS.md +0 -8
  519. package/skills/git-story-film/examples/raven-story/OUTLINE.md +0 -93
  520. package/skills/git-story-film/references/craft.md +0 -148
  521. package/skills/git-story-film/references/directing.md +0 -185
  522. package/skills/git-story-film/references/forms.md +0 -150
  523. package/skills/git-story-film/references/production.md +0 -150
  524. package/skills/git-story-film/references/story.md +0 -137
  525. package/skills/git-story-film/references/text-and-fonts.md +0 -90
  526. package/skills/guizang-product-video-skill/SKILL.md +0 -96
  527. package/skills/guizang-product-video-skill/references/audio-and-qa.md +0 -113
  528. package/skills/guizang-product-video-skill/references/audio-sourcing.md +0 -80
  529. package/skills/guizang-product-video-skill/references/case-study.md +0 -63
  530. package/skills/guizang-product-video-skill/references/component-pipeline.md +0 -86
  531. package/skills/guizang-product-video-skill/references/cover.md +0 -43
  532. package/skills/guizang-product-video-skill/references/direction.md +0 -91
  533. package/skills/guizang-product-video-skill/references/onboarding.md +0 -98
  534. package/skills/guizang-product-video-skill/references/repo-and-style.md +0 -44
  535. package/skills/guizang-product-video-skill/references/review.md +0 -38
  536. package/skills/guizang-product-video-skill/references/starter.md +0 -168
  537. package/skills/guizang-product-video-skill/references/story-and-copy.md +0 -88
  538. package/skills/guizang-product-video-skill/references/visual-vocabulary.md +0 -78
  539. package/skills/guofeng-paper-video/SKILL.md +0 -159
  540. package/skills/guofeng-paper-video/style/design.md +0 -43
  541. package/skills/guofeng-paper-video/style/palette.md +0 -21
  542. package/skills/guofeng-paper-video/style/prompts/01-/345/210/206/351/225/234/350/241/250.md +0 -19
  543. package/skills/guofeng-paper-video/style/prompts/02-/347/224/237/346/210/220/347/272/270/347/211/207.md +0 -37
  544. package/skills/guofeng-paper-video/style/prompts/03-/351/205/215/351/237/263/350/204/232/346/234/254.md +0 -27
  545. package/skills/guofeng-paper-video/style//345/210/206/351/225/234/344/270/216/345/233/276/345/261/202/350/247/204/350/214/203.md +0 -67
  546. package/skills/guofeng-paper-video/style//347/272/270/347/211/207/347/264/240/346/235/220/350/247/204/350/214/203.md +0 -29
  547. package/skills/hand-drawn-explainer-video-nikola/SKILL.md +0 -113
  548. package/skills/hand-drawn-explainer-video-nikola/docs/ARCHITECTURE.md +0 -18
  549. package/skills/hand-drawn-explainer-video-nikola/docs/CONFIGURATION.md +0 -22
  550. package/skills/hand-drawn-explainer-video-nikola/docs/STYLES.md +0 -28
  551. package/skills/hand-drawn-explainer-video-nikola/docs/TROUBLESHOOTING.md +0 -35
  552. package/skills/hand-drawn-explainer-video-nikola/examples/program-animation/skill-demo/DESIGN.md +0 -24
  553. package/skills/hand-drawn-explainer-video-nikola/references/automation-workflow.md +0 -67
  554. package/skills/hand-drawn-explainer-video-nikola/references/output-example.md +0 -79
  555. package/skills/hand-drawn-explainer-video-nikola/references/preflight-and-recovery.md +0 -49
  556. package/skills/hand-drawn-explainer-video-nikola/references/style-guide.md +0 -82
  557. package/skills/hand-drawn-explainer-video-nikola/references/style-selection-and-updates.md +0 -39
  558. package/skills/hand-drawn-explainer-video-nikola/references/upstream-whiteboard-review.md +0 -30
  559. package/skills/hand-drawn-explainer-video-nikola/references/voiceover.md +0 -37
  560. package/skills/hbg-life-simulation/SKILL.md +0 -285
  561. package/skills/hbg-life-simulation/references/image-generation.md +0 -53
  562. package/skills/hbg-life-simulation/references/local-account-api.md +0 -112
  563. package/skills/hbg-life-simulation/references/opening-system.md +0 -45
  564. package/skills/hbg-life-simulation/references/project-spec.md +0 -62
  565. package/skills/hbg-life-simulation/references/render-and-qa.md +0 -107
  566. package/skills/hbg-life-simulation/references/storyboarding.md +0 -69
  567. package/skills/hbg-life-simulation/references/style-system.md +0 -80
  568. package/skills/hbg-life-simulation/references/visual-system.md +0 -44
  569. package/skills/heygen-avatar/SKILL.md +0 -489
  570. package/skills/heygen-avatar/references/asset-routing.md +0 -86
  571. package/skills/heygen-avatar/references/avatar-creation.md +0 -181
  572. package/skills/heygen-avatar/references/troubleshooting.md +0 -137
  573. package/skills/heytea-doodle-poster/SKILL.md +0 -132
  574. package/skills/heytea-doodle-poster/references/desktop-pet-character-modes.md +0 -103
  575. package/skills/heytea-doodle-poster/references/desktop-pet-environment.md +0 -122
  576. package/skills/heytea-doodle-poster/references/desktop-pet-pack.md +0 -106
  577. package/skills/heytea-doodle-poster/references/desktop-pet-workflow.md +0 -264
  578. package/skills/heytea-doodle-poster/references/evaluation.md +0 -246
  579. package/skills/heytea-doodle-poster/references/lettering-guide.md +0 -213
  580. package/skills/heytea-doodle-poster/references/mixed-media-style-guide.md +0 -101
  581. package/skills/heytea-doodle-poster/references/monster-poster-workflow.md +0 -56
  582. package/skills/heytea-doodle-poster/references/style-guide.md +0 -412
  583. package/skills/heytea-doodle-poster-hosted/SKILL.md +0 -132
  584. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-character-modes.md +0 -103
  585. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-environment.md +0 -122
  586. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-pack.md +0 -106
  587. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-workflow.md +0 -264
  588. package/skills/heytea-doodle-poster-hosted/references/evaluation.md +0 -246
  589. package/skills/heytea-doodle-poster-hosted/references/lettering-guide.md +0 -213
  590. package/skills/heytea-doodle-poster-hosted/references/mixed-media-style-guide.md +0 -101
  591. package/skills/heytea-doodle-poster-hosted/references/monster-poster-workflow.md +0 -56
  592. package/skills/heytea-doodle-poster-hosted/references/style-guide.md +0 -412
  593. package/skills/html2video/SKILL.md +0 -290
  594. package/skills/html2video/references/cjk-type.md +0 -173
  595. package/skills/html2video/references/editorial.md +0 -145
  596. package/skills/html2video/references/narration.md +0 -111
  597. package/skills/html2video/references/pitfalls.md +0 -238
  598. package/skills/html2video/references/shots.md +0 -198
  599. package/skills/html2video/references/storyboard.md +0 -323
  600. package/skills/hyperdirector/SKILL.md +0 -202
  601. package/skills/hyperdirector/docs/audio-workflow.md +0 -160
  602. package/skills/hyperdirector/docs/audio-workflow.zh-CN.md +0 -244
  603. package/skills/hyperdirector/docs/brand-kit-setup.md +0 -322
  604. package/skills/hyperdirector/docs/brand-kit-setup.zh-CN.md +0 -277
  605. package/skills/hyperdirector/docs/cursor-development-notes.md +0 -474
  606. package/skills/hyperdirector/docs/faq.md +0 -285
  607. package/skills/hyperdirector/docs/faq.zh-CN.md +0 -198
  608. package/skills/hyperdirector/docs/first-video.md +0 -320
  609. package/skills/hyperdirector/docs/first-video.zh-CN.md +0 -265
  610. package/skills/hyperdirector/docs/installation.md +0 -254
  611. package/skills/hyperdirector/docs/installation.zh-CN.md +0 -222
  612. package/skills/hyperdirector/docs/quickstart.md +0 -203
  613. package/skills/hyperframes/SKILL.md +0 -117
  614. package/skills/hyperframes/references/captions.md +0 -46
  615. package/skills/hyperframes/references/film.md +0 -48
  616. package/skills/hyperframes/references/format.md +0 -158
  617. package/skills/hyperframes/references/look.md +0 -69
  618. package/skills/hyperframes/references/motion.md +0 -95
  619. package/skills/hyperframes/references/overlays.md +0 -39
  620. package/skills/hyperframes/references/review.md +0 -51
  621. package/skills/hyperframes/references/runtimes.md +0 -69
  622. package/skills/hyperframes/references/skill-lifecycle.md +0 -49
  623. package/skills/hyperframes/references/sound.md +0 -43
  624. package/skills/hyperframes/references/spec.md +0 -76
  625. package/skills/hyperframes/references/story.md +0 -103
  626. package/skills/hyperframes-motion-director/SKILL.md +0 -920
  627. package/skills/hyperframes-motion-director/references/asset-choreography-and-render-qa.md +0 -185
  628. package/skills/hyperframes-motion-director/references/audio-sync.md +0 -83
  629. package/skills/hyperframes-motion-director/references/design-engineering.md +0 -156
  630. package/skills/hyperframes-motion-director/references/gsap-choreography.md +0 -202
  631. package/skills/hyperframes-motion-director/references/hyperframes-stability.md +0 -99
  632. package/skills/hyperframes-motion-director/references/imagegen-asset-pipeline.md +0 -227
  633. package/skills/hyperframes-motion-director/references/motion-background-system.md +0 -165
  634. package/skills/hyperframes-motion-director/references/motion-craft.md +0 -182
  635. package/skills/hyperframes-motion-director/references/premium-product-promo.md +0 -287
  636. package/skills/hyperframes-motion-director/references/text-over-background-layout.md +0 -221
  637. package/skills/hyperframes-motion-director/references/visual-standard.md +0 -174
  638. package/skills/hyperframes-motion-director/references/workflow.md +0 -320
  639. package/skills/hypit/SKILL.md +0 -367
  640. package/skills/hypit/references/creation/brief.md +0 -93
  641. package/skills/hypit/references/creation/script-and-time.md +0 -259
  642. package/skills/hypit/references/creation/transformations.md +0 -143
  643. package/skills/hypit/references/playbooks/craft/b-roll.md +0 -94
  644. package/skills/hypit/references/playbooks/craft/caption-tracking.md +0 -126
  645. package/skills/hypit/references/playbooks/craft/captions.md +0 -253
  646. package/skills/hypit/references/playbooks/craft/generated-dependencies.md +0 -38
  647. package/skills/hypit/references/playbooks/craft/graphic-compositions.md +0 -85
  648. package/skills/hypit/references/playbooks/craft/motion-graphics.md +0 -68
  649. package/skills/hypit/references/playbooks/craft/screen-demonstrations.md +0 -51
  650. package/skills/hypit/references/playbooks/craft/sound-mix.md +0 -70
  651. package/skills/hypit/references/playbooks/formats/narration-led-demo.md +0 -87
  652. package/skills/image/SKILL.md +0 -153
  653. package/skills/image/references/characters.md +0 -86
  654. package/skills/image/references/creative-direction.md +0 -137
  655. package/skills/image/references/de-slop.md +0 -95
  656. package/skills/image/references/dimensional.md +0 -88
  657. package/skills/image/references/editing.md +0 -112
  658. package/skills/image/references/golden-rules.md +0 -198
  659. package/skills/image/references/gpt-image.md +0 -228
  660. package/skills/image/references/models.md +0 -78
  661. package/skills/image/references/multi-panel.md +0 -354
  662. package/skills/image/references/nano-banana.md +0 -150
  663. package/skills/image/references/patterns/character-design.md +0 -150
  664. package/skills/image/references/patterns/ecommerce.md +0 -124
  665. package/skills/image-smixs/SKILL.md +0 -153
  666. package/skills/image-smixs/references/characters.md +0 -86
  667. package/skills/image-smixs/references/creative-direction.md +0 -137
  668. package/skills/image-smixs/references/de-slop.md +0 -95
  669. package/skills/image-smixs/references/dimensional.md +0 -88
  670. package/skills/image-smixs/references/editing.md +0 -112
  671. package/skills/image-smixs/references/golden-rules.md +0 -198
  672. package/skills/image-smixs/references/gpt-image.md +0 -228
  673. package/skills/image-smixs/references/models.md +0 -78
  674. package/skills/image-smixs/references/multi-panel.md +0 -354
  675. package/skills/image-smixs/references/nano-banana.md +0 -150
  676. package/skills/image-smixs/references/patterns/character-design.md +0 -150
  677. package/skills/image-smixs/references/patterns/ecommerce.md +0 -124
  678. package/skills/image-story-video-wizard/SKILL.md +0 -148
  679. package/skills/image-story-video-wizard/docs/ARTICLE_ALIGNMENT.md +0 -29
  680. package/skills/image-story-video-wizard/references/host-routing.md +0 -44
  681. package/skills/image-story-video-wizard/references/state-schema.md +0 -79
  682. package/skills/image-story-video-wizard/references/workflow.md +0 -203
  683. package/skills/image-story-video-wizard/references/writing-and-review.md +0 -60
  684. package/skills/ip-as-logo/SKILL.md +0 -151
  685. package/skills/ip-as-logo-s1dashu/SKILL.md +0 -151
  686. package/skills/jtxvideo-skill/SKILL.md +0 -337
  687. package/skills/kinetic-reel/SKILL.md +0 -140
  688. package/skills/kinetic-reel/examples/work-reel-26/STORYBOARD.md +0 -51
  689. package/skills/kinetic-reel/references/sound.md +0 -40
  690. package/skills/kinetic-reel/references/style-guide.md +0 -79
  691. package/skills/knowledge-explainer-skill/SKILL.md +0 -149
  692. package/skills/knowledge-explainer-skill/examples/ai_video_3steps.md +0 -61
  693. package/skills/knowledge-explainer-skill/examples/algorithm_bubble.md +0 -20
  694. package/skills/knowledge-explainer-skill/examples/before_after_demo.md +0 -38
  695. package/skills/knowledge-explainer-skill/examples/cta_outro.md +0 -11
  696. package/skills/knowledge-explainer-skill/examples/double_pendulum.md +0 -20
  697. package/skills/knowledge-explainer-skill/examples/paper_fold.md +0 -20
  698. package/skills/knowledge-explainer-skill/examples/script.md +0 -40
  699. package/skills/lanshu-create-ai-presenter-video/SKILL.md +0 -253
  700. package/skills/lanshu-create-ai-presenter-video/references/editing.md +0 -67
  701. package/skills/lanshu-create-ai-presenter-video/references/generation.md +0 -94
  702. package/skills/lanshu-create-ai-presenter-video/references/qa-recovery.md +0 -83
  703. package/skills/lanshu-create-ai-presenter-video/references/styled-explainer.md +0 -189
  704. package/skills/laoxu-video-script/SKILL.md +0 -117
  705. package/skills/laoxu-video-script/references/cases.md +0 -305
  706. package/skills/laoxu-video-script/references/de-ai.md +0 -32
  707. package/skills/laoxu-video-script/references/diagnostics.md +0 -67
  708. package/skills/laoxu-video-script/references/format.md +0 -62
  709. package/skills/laoxu-video-script/references/formulas.md +0 -43
  710. package/skills/laoxu-video-script/references/method.md +0 -115
  711. package/skills/laoxu-video-script/references/motifs-and-lines.md +0 -829
  712. package/skills/laoxu-video-script/references/persona.md +0 -38
  713. package/skills/laoxu-video-script/references/qihao-path.md +0 -35
  714. package/skills/laoxu-video-script/references/qihao-xinfa.md +0 -39
  715. package/skills/laoxu-video-script/references/redlines.md +0 -26
  716. package/skills/lemo-opuscar/SKILL.md +0 -67
  717. package/skills/lipnardo/SKILL.md +0 -308
  718. package/skills/lipnardo/examples/batch-personalized.md +0 -44
  719. package/skills/lipnardo/examples/photo-to-avatar-pipeline.md +0 -56
  720. package/skills/lipnardo/examples/single-video.md +0 -44
  721. package/skills/lipnardo/references/avatar-types.md +0 -42
  722. package/skills/lipnardo/references/credit-costs.md +0 -39
  723. package/skills/lipnardo/references/error-codes.md +0 -66
  724. package/skills/lipnardo/references/heygen-api-reference.md +0 -416
  725. package/skills/ll-video-decomposer/SKILL.md +0 -105
  726. package/skills/ll-video-decomposer/references/audiovisual-analysis-guide.md +0 -44
  727. package/skills/ll-video-decomposer/references/evidence-and-confidence-rules.md +0 -41
  728. package/skills/ll-video-decomposer/references/multi-video-comparison-template.md +0 -48
  729. package/skills/ll-video-decomposer/references/single-video-report-template.md +0 -47
  730. package/skills/ll-video-decomposer/references/tool-discovery-workflow.md +0 -30
  731. package/skills/ll-video-decomposer/references/transcription-routing.md +0 -65
  732. package/skills/ll-video-decomposer/references/video-acquisition-workflow.md +0 -30
  733. package/skills/ltx2-video/SKILL.md +0 -193
  734. package/skills/ltx2-video/references/mode_ux.md +0 -293
  735. package/skills/make-ai-short/SKILL.md +0 -130
  736. package/skills/make-blender-education-video/SKILL.md +0 -247
  737. package/skills/make-blender-education-video/references/evidence-and-explanation.md +0 -62
  738. package/skills/make-blender-education-video/references/github-workflow-discovery.md +0 -55
  739. package/skills/make-blender-education-video/references/production-workflow.md +0 -62
  740. package/skills/make-blender-education-video/references/story-patterns.md +0 -65
  741. package/skills/make-blender-education-video/references/visual-quality.md +0 -82
  742. package/skills/manage-storyboard-projects/SKILL.md +0 -128
  743. package/skills/manim-composer/SKILL.md +0 -176
  744. package/skills/manim-composer/references/narrative-patterns.md +0 -125
  745. package/skills/manim-composer/references/scene-examples.md +0 -216
  746. package/skills/manim-composer/references/visual-techniques.md +0 -223
  747. package/skills/manim-composer/templates/scenes-template.md +0 -147
  748. package/skills/monet-ai-editor-monet/SKILL.md +0 -367
  749. package/skills/motion-graphics/SKILL.md +0 -206
  750. package/skills/motion-graphics/references/craft.md +0 -136
  751. package/skills/motion-graphics/references/engine.md +0 -130
  752. package/skills/motion-graphics/references/export.md +0 -67
  753. package/skills/motion-graphics/references/physics.md +0 -100
  754. package/skills/motion-graphics/references/verify.md +0 -124
  755. package/skills/motion-video/SKILL.md +0 -133
  756. package/skills/motion-video/references/audio-and-beat-sync.md +0 -109
  757. package/skills/motion-video/references/composition-contract.md +0 -107
  758. package/skills/motion-video/references/production-pipeline.md +0 -147
  759. package/skills/motion-video/references/style-comic-spiderverse.md +0 -87
  760. package/skills/motion-video/references/style-glass-keynote.md +0 -69
  761. package/skills/motion-video-maker/SKILL.md +0 -1452
  762. package/skills/motion-video-maker/reference/components.md +0 -451
  763. package/skills/motion-video-maker/reference/workflow.md +0 -190
  764. package/skills/motioncraft/SKILL.md +0 -221
  765. package/skills/motioncraft/references/animation-system.md +0 -57
  766. package/skills/motioncraft/references/assets-and-licensing.md +0 -21
  767. package/skills/motioncraft/references/customization.md +0 -52
  768. package/skills/motioncraft/references/gpu-cloud-render.md +0 -15
  769. package/skills/motioncraft/references/music.md +0 -43
  770. package/skills/motioncraft/references/phase1-planning-and-preview.md +0 -74
  771. package/skills/motioncraft/references/phase2-timeline-audio.md +0 -33
  772. package/skills/motioncraft/references/phase3-pixel-review.md +0 -13
  773. package/skills/motioncraft/references/phase4-templates.md +0 -30
  774. package/skills/motioncraft/references/preflight.md +0 -27
  775. package/skills/motioncraft/references/qa.md +0 -53
  776. package/skills/motioncraft/references/reference-analysis.md +0 -37
  777. package/skills/narrator-ai-cli/SKILL.md +0 -256
  778. package/skills/narrator-ai-cli/references/magic-video.md +0 -205
  779. package/skills/narrator-ai-cli/references/operations.md +0 -230
  780. package/skills/narrator-ai-cli/references/resources.md +0 -126
  781. package/skills/narrator-ai-cli/references/workflows.md +0 -332
  782. package/skills/newcut-video-clipping/SKILL.md +0 -194
  783. package/skills/newcut-video-clipping/references/examples.md +0 -59
  784. package/skills/newcut-video-clipping/references/provider-config.md +0 -110
  785. package/skills/newcut-video-clipping/references/quality-check.md +0 -35
  786. package/skills/newcut-video-clipping/references/semantic-plan.md +0 -65
  787. package/skills/notes-to-video/SKILL.md +0 -476
  788. package/skills/openchatcut/SKILL.md +0 -100
  789. package/skills/openchatcut/references/editing-workflow.md +0 -54
  790. package/skills/openchatcut/references/getting-started.md +0 -106
  791. package/skills/openchatcut/references/known-errors.md +0 -62
  792. package/skills/openstoryline-install/SKILL.md +0 -228
  793. package/skills/orca-motion/SKILL.md +0 -100
  794. package/skills/orca-motion/references/api.md +0 -100
  795. package/skills/orca-motion/references/integration.md +0 -59
  796. package/skills/orca-motion/references/kinetic-type.md +0 -59
  797. package/skills/orca-motion/references/principles.md +0 -76
  798. package/skills/package-talking-head-video/SKILL.md +0 -90
  799. package/skills/package-talking-head-video/docs/EXAMPLES.md +0 -18
  800. package/skills/package-talking-head-video/docs/TROUBLESHOOTING.md +0 -29
  801. package/skills/package-talking-head-video/docs/USAGE.md +0 -83
  802. package/skills/package-talking-head-video/docs/superpowers/plans/2026-08-08-multicolor-center-speaker.md +0 -144
  803. package/skills/package-talking-head-video/docs/superpowers/plans/2026-08-08-semantic-template-system-v2.md +0 -1099
  804. package/skills/package-talking-head-video/docs/superpowers/specs/2026-08-08-multicolor-center-speaker-design.md +0 -154
  805. package/skills/package-talking-head-video/docs/superpowers/specs/2026-08-08-semantic-template-system-v2-design.md +0 -365
  806. package/skills/package-talking-head-video/examples/auto-editing-0/GATE_A.md +0 -56
  807. package/skills/package-talking-head-video/examples/auto-editing-0/GATE_D.md +0 -8
  808. package/skills/package-talking-head-video/examples/auto-editing-0/QA_REPORT.md +0 -34
  809. package/skills/package-talking-head-video/references/director-rules.md +0 -29
  810. package/skills/package-talking-head-video/references/motion-and-illustration.md +0 -25
  811. package/skills/paper-cut/SKILL.md +0 -164
  812. package/skills/paper-cut/references/asset-spec.md +0 -47
  813. package/skills/paper-cut/references/audio-and-chatcut.md +0 -26
  814. package/skills/paper-cut/references/hyperframes-assembly.md +0 -47
  815. package/skills/paper-cut/references/image-led-production.md +0 -65
  816. package/skills/paper-cut/references/storyboard-schema.md +0 -48
  817. package/skills/paper-cut/references/workflow.md +0 -39
  818. package/skills/personal-ip-brand-intro/SKILL.md +0 -216
  819. package/skills/personal-ip-brand-intro/references/intake-schema.md +0 -79
  820. package/skills/personal-ip-brand-intro/references/music-upload-workflow.md +0 -40
  821. package/skills/personal-ip-brand-intro/references/originality-rules.md +0 -42
  822. package/skills/personal-ip-brand-intro/references/qa-checklist.md +0 -60
  823. package/skills/personal-ip-brand-intro/references/rhythm-routing.md +0 -41
  824. package/skills/personal-ip-brand-intro/references/storyboard-contract.md +0 -42
  825. package/skills/pixel2motion/SKILL.md +0 -279
  826. package/skills/pixel2motion/references/html-delivery-template.md +0 -42
  827. package/skills/pixel2motion/references/motion-personality.md +0 -109
  828. package/skills/pixel2motion/references/reveal-patterns.md +0 -163
  829. package/skills/pixel2motion/references/ribbon-fitting.md +0 -90
  830. package/skills/pixel2motion/references/twelve-principles-for-logos.md +0 -116
  831. package/skills/premiere-batch-delivery/SKILL.md +0 -71
  832. package/skills/premiere-pro-mcp/SKILL.md +0 -161
  833. package/skills/promo-creator-skills/SKILL.md +0 -209
  834. package/skills/promo-creator-skills/references/mureka_prompt_guide.md +0 -251
  835. package/skills/promo-creator-skills/references/product_promo_bgm_prompting.md +0 -100
  836. package/skills/promo-video/SKILL.md +0 -408
  837. package/skills/qisi-video-remix/SKILL.md +0 -134
  838. package/skills/qisi-video-remix/examples/creative-plan.md +0 -133
  839. package/skills/qisi-video-remix/references/delivery-guide.md +0 -63
  840. package/skills/reel-video/SKILL.md +0 -237
  841. package/skills/remotion-ad-video/SKILL.md +0 -252
  842. package/skills/remotion-ad-video/references/ad-aesthetic-qa.md +0 -60
  843. package/skills/remotion-ad-video/references/ad-brief-contract.md +0 -235
  844. package/skills/remotion-ad-video/references/ad-exemplars.md +0 -186
  845. package/skills/remotion-ad-video/references/ad-intake.md +0 -54
  846. package/skills/remotion-ad-video/references/asset-harvest.md +0 -56
  847. package/skills/remotion-ad-video/references/audio-caption-system.md +0 -202
  848. package/skills/remotion-ad-video/references/concept-contract.md +0 -128
  849. package/skills/remotion-ad-video/references/creative-direction.md +0 -146
  850. package/skills/remotion-ad-video/references/fast-test-workflow.md +0 -86
  851. package/skills/remotion-ad-video/references/game-ad-patterns.md +0 -75
  852. package/skills/remotion-ad-video/references/hyperframes-output.md +0 -90
  853. package/skills/remotion-ad-video/references/industry-angle-library.md +0 -71
  854. package/skills/remotion-ads/SKILL.md +0 -278
  855. package/skills/remotion-ads/references/ad-copywriting.md +0 -229
  856. package/skills/remotion-ads/references/animations.md +0 -693
  857. package/skills/remotion-ads/references/brand-config-template.md +0 -355
  858. package/skills/remotion-ads/references/captions.md +0 -529
  859. package/skills/remotion-ads/references/carousels.md +0 -580
  860. package/skills/remotion-ads/references/components.md +0 -897
  861. package/skills/remotion-ads/references/copy-frameworks.md +0 -144
  862. package/skills/remotion-ads/references/formats.md +0 -436
  863. package/skills/remotion-ads/references/gemini-tts.md +0 -473
  864. package/skills/remotion-ads/references/html-in-canvas.md +0 -555
  865. package/skills/remotion-ads/references/local-assets.md +0 -543
  866. package/skills/remotion-ads/references/music.md +0 -656
  867. package/skills/remotion-code-motion-explainer/SKILL.md +0 -178
  868. package/skills/remotion-code-motion-explainer/references/code-motion-design.md +0 -86
  869. package/skills/remotion-code-motion-explainer/references/motion-production-patterns.md +0 -93
  870. package/skills/remotion-code-motion-explainer/references/production-and-qc.md +0 -99
  871. package/skills/remotion-code-motion-explainer/references/reference-reconstruction.md +0 -48
  872. package/skills/remotion-code-motion-explainer/references/ui-motion-shot-library.md +0 -62
  873. package/skills/remotion-motion-graphics/SKILL.md +0 -169
  874. package/skills/remotion-motion-graphics/references/patterns.md +0 -355
  875. package/skills/remotion-motion-graphics/references/polish.md +0 -102
  876. package/skills/remotion-motion-graphics/references/scaffold.md +0 -144
  877. package/skills/remotion-motion-graphics/references/traps.md +0 -152
  878. package/skills/remotion-resemble-ai/SKILL.md +0 -879
  879. package/skills/remotion-resemble-ai/rules/resemble-captions.md +0 -350
  880. package/skills/remotion-resemble-ai/rules/resemble-remotion-integration.md +0 -305
  881. package/skills/remotion-resemble-ai/rules/resemble-setup.md +0 -284
  882. package/skills/remotion-resemble-ai/rules/resemble-streaming-tts.md +0 -225
  883. package/skills/remotion-resemble-ai/rules/resemble-sync-tts.md +0 -239
  884. package/skills/remotion-resemble-ai/rules/resemble-voices.md +0 -213
  885. package/skills/remotion-resemble-ai/rules/visual-animations.md +0 -567
  886. package/skills/riffkit/SKILL.md +0 -196
  887. package/skills/riffkit/examples/any-look-styles.md +0 -11
  888. package/skills/riffkit/examples/faceless-and-auto.md +0 -16
  889. package/skills/riffkit/examples/localize-spanish.md +0 -18
  890. package/skills/riffkit/examples/tiktok-shop-product.md +0 -22
  891. package/skills/riffkit/references/anchor.md +0 -62
  892. package/skills/riffkit/references/api.md +0 -806
  893. package/skills/riffkit/references/details.md +0 -153
  894. package/skills/riffkit/references/errors.md +0 -69
  895. package/skills/riffkit/references/intents.md +0 -29
  896. package/skills/saas-motion-video/SKILL.md +0 -71
  897. package/skills/script-to-video/SKILL.md +0 -2627
  898. package/skills/shorts/SKILL.md +0 -372
  899. package/skills/shorts/references/caption-styles.md +0 -105
  900. package/skills/shorts/references/platform-specs.md +0 -149
  901. package/skills/shorts/references/remotion-patterns.md +0 -180
  902. package/skills/shorts/references/scoring-rubric.md +0 -106
  903. package/skills/smart-video-editor/SKILL.md +0 -327
  904. package/skills/smart-video-editor/docs/FONTS.md +0 -57
  905. package/skills/story-telling/SKILL.md +0 -222
  906. package/skills/story-telling/rules/composition.md +0 -130
  907. package/skills/story-telling/rules/images.md +0 -119
  908. package/skills/story-telling/rules/models.md +0 -98
  909. package/skills/story-telling/rules/narration.md +0 -87
  910. package/skills/story-telling/rules/pitfalls.md +0 -140
  911. package/skills/story-telling/rules/story-formats.md +0 -108
  912. package/skills/story-telling/rules/story-json.md +0 -143
  913. package/skills/story-telling/rules/voices.md +0 -114
  914. package/skills/story-telling/rules/workflow.md +0 -105
  915. package/skills/story-to-handdrawn-video/SKILL.md +0 -216
  916. package/skills/story-to-handdrawn-video/references/asset-workflow.md +0 -24
  917. package/skills/story-to-handdrawn-video/references/reference-style-workflow.md +0 -27
  918. package/skills/su-card-to-video/SKILL.md +0 -103
  919. package/skills/talking-head-video-pipeline/SKILL.md +0 -224
  920. package/skills/talking-head-video-pipeline/examples/prompts.md +0 -217
  921. package/skills/talking-head-video-pipeline/references/asr-adapters.md +0 -51
  922. package/skills/talking-head-video-pipeline/references/caption-workflow.md +0 -53
  923. package/skills/talking-head-video-pipeline/references/export-recipes.md +0 -78
  924. package/skills/talking-head-video-pipeline/references/layout-safety.md +0 -49
  925. package/skills/talking-head-video-pipeline/references/video-use-integration.md +0 -71
  926. package/skills/talking-head-video-pipeline/references/workflows/captions.md +0 -52
  927. package/skills/talking-head-video-pipeline/references/workflows/design.md +0 -77
  928. package/skills/talking-head-video-pipeline/references/workflows/doctor.md +0 -51
  929. package/skills/talking-head-video-pipeline/references/workflows/export.md +0 -50
  930. package/skills/talking-head-video-pipeline/references/workflows/init.md +0 -51
  931. package/skills/talking-head-video-pipeline/references/workflows/learn.md +0 -36
  932. package/skills/text-to-lottie/SKILL.md +0 -202
  933. package/skills/text-to-lottie/references/chapterization-transition-grammar.md +0 -132
  934. package/skills/text-to-lottie/references/design-taste.md +0 -292
  935. package/skills/text-to-lottie/references/lottie-spec-map.md +0 -82
  936. package/skills/text-to-lottie/references/motion-taste.md +0 -260
  937. package/skills/text-to-lottie/references/player-contract.md +0 -325
  938. package/skills/text-to-lottie/references/recipe-camera-scene-motion.md +0 -65
  939. package/skills/text-to-lottie/references/recipe-data-stats.md +0 -104
  940. package/skills/text-to-lottie/references/recipe-diagram-technical.md +0 -106
  941. package/skills/text-to-lottie/references/recipe-loaders-icons.md +0 -70
  942. package/skills/text-to-lottie/references/recipe-logo.md +0 -72
  943. package/skills/text-to-lottie/references/recipe-lower-thirds.md +0 -62
  944. package/skills/text-to-lottie/references/recipe-product-promo.md +0 -99
  945. package/skills/ultrademo/SKILL.md +0 -212
  946. package/skills/video-assemble/SKILL.md +0 -101
  947. package/skills/video-assemble-zenstory-ai/SKILL.md +0 -153
  948. package/skills/video-assemble-zenstory-ai/references/audio-modes.md +0 -63
  949. package/skills/video-assemble-zenstory-ai/references/explicit-audio-mix.md +0 -77
  950. package/skills/video-assemble-zenstory-ai/references/jianying/SOURCE.md +0 -14
  951. package/skills/video-assemble-zenstory-ai/references/narration-adoption.md +0 -103
  952. package/skills/video-assemble-zenstory-ai/references/packaging.md +0 -44
  953. package/skills/video-assemble-zenstory-ai/references/source-score.md +0 -146
  954. package/skills/video-assemble-zenstory-ai/references/subtitle-track.md +0 -202
  955. package/skills/video-editing/SKILL.md +0 -688
  956. package/skills/video-explainer/SKILL.md +0 -163
  957. package/skills/video-explainer/references/brief-to-script.md +0 -56
  958. package/skills/video-explainer/references/errors-and-privacy.md +0 -18
  959. package/skills/video-explainer/references/motion-storyboard.md +0 -82
  960. package/skills/video-explainer/references/render-and-verify.md +0 -62
  961. package/skills/video-explainer/references/review-gate.md +0 -82
  962. package/skills/video-explainer/references/setup-and-doctor.md +0 -33
  963. package/skills/video-script-builder/SKILL.md +0 -329
  964. package/skills/video-script-builder/examples/quick-start-transcript.md +0 -19
  965. package/skills/video-script-builder/references/audio-workflow.md +0 -84
  966. package/skills/video-script-builder/references/caption-components.md +0 -70
  967. package/skills/video-script-builder/references/common-pitfalls.md +0 -80
  968. package/skills/video-script-builder/references/component-catalog.md +0 -197
  969. package/skills/video-script-builder/references/component-recipes.md +0 -165
  970. package/skills/video-script-builder/references/gsap-patterns.md +0 -112
  971. package/skills/video-script-builder/references/pacing-rules.md +0 -78
  972. package/skills/video-script-builder/references/quality-checklist.md +0 -98
  973. package/skills/video-script-builder/references/remotion-patterns.md +0 -211
  974. package/skills/video-script-builder/references/shader-transitions.md +0 -115
  975. package/skills/video-script-builder/references/taste-principles.md +0 -160
  976. package/skills/video-scrub/SKILL.md +0 -216
  977. package/skills/video-scrub/references/profiles.md +0 -89
  978. package/skills/video-scrub/references/residue-map.md +0 -204
  979. package/skills/video-short-maker/SKILL.md +0 -182
  980. package/skills/video-shot-analysis-feishu/SKILL.md +0 -173
  981. package/skills/video-shotcraft/SKILL.md +0 -267
  982. package/skills/video-shotcraft/docs/deepseek-harness.md +0 -69
  983. package/skills/video-shotcraft/references/aesthetic-rules.md +0 -177
  984. package/skills/video-shotcraft/references/final-review.md +0 -112
  985. package/skills/video-shotcraft/references/guided-free-creation.md +0 -199
  986. package/skills/video-shotcraft/references/jianying-export.md +0 -182
  987. package/skills/video-shotcraft/references/music-beat-sync.md +0 -219
  988. package/skills/video-shotcraft/references/pipeline.md +0 -390
  989. package/skills/video-shotcraft/references/sequences/promo-energy-arc.md +0 -50
  990. package/skills/video-shotcraft/references/shots/ATTRIBUTION.md +0 -65
  991. package/skills/video-shotcraft/references/shots/camera/basic-3d-scene.md +0 -37
  992. package/skills/video-shotcraft/references/shots/camera/crash-zoom-punch.md +0 -39
  993. package/skills/video-shotcraft/references/shots/camera/cursor-flyover.md +0 -38
  994. package/skills/video-shotcraft-vincentwei10/SKILL.md +0 -316
  995. package/skills/video-shotcraft-vincentwei10/references/aesthetic-rules.md +0 -187
  996. package/skills/video-shotcraft-vincentwei10/references/final-review.md +0 -116
  997. package/skills/video-shotcraft-vincentwei10/references/guided-free-creation.md +0 -199
  998. package/skills/video-shotcraft-vincentwei10/references/jianying-export.md +0 -183
  999. package/skills/video-shotcraft-vincentwei10/references/music-beat-sync.md +0 -257
  1000. package/skills/video-shotcraft-vincentwei10/references/pipeline.md +0 -401
  1001. package/skills/video-shotcraft-vincentwei10/references/publish-upload-post.md +0 -111
  1002. package/skills/video-shotcraft-vincentwei10/references/sequences/promo-energy-arc.md +0 -50
  1003. package/skills/video-shotcraft-vincentwei10/references/shots/ATTRIBUTION.md +0 -62
  1004. package/skills/video-shotcraft-vincentwei10/references/shots/camera/basic-3d-scene.md +0 -41
  1005. package/skills/video-shotcraft-vincentwei10/references/shots/camera/crash-zoom-punch.md +0 -52
  1006. package/skills/video-shotcraft-vincentwei10/references/shots/camera/cursor-flyover.md +0 -39
  1007. package/skills/video-structure-analyzer/SKILL.md +0 -148
  1008. package/skills/video-structure-analyzer/examples/xhs-rook-time-spend/xhs-rook-time-spend_/346/213/211/347/211/207/346/213/206/350/247/243.md +0 -50
  1009. package/skills/video-structure-analyzer/examples/xhs-smelly-cat/xhs-smelly-cat_/346/213/211/347/211/207/346/213/206/350/247/243.md +0 -19
  1010. package/skills/video-toolkit/SKILL.md +0 -686
  1011. package/skills/videocut/SKILL.md +0 -159
  1012. package/skills/videodb/SKILL.md +0 -497
  1013. package/skills/videodb/reference/api-reference.md +0 -741
  1014. package/skills/videodb/reference/capture-reference.md +0 -399
  1015. package/skills/videodb/reference/capture.md +0 -110
  1016. package/skills/videodb/reference/editor-reference.md +0 -506
  1017. package/skills/videodb/reference/editor.md +0 -389
  1018. package/skills/videodb/reference/generative.md +0 -344
  1019. package/skills/videodb/reference/indexing-reference.md +0 -481
  1020. package/skills/videodb/reference/indexing.md +0 -537
  1021. package/skills/videodb/reference/legacy/index-reference.md +0 -223
  1022. package/skills/videodb/reference/legacy/index.md +0 -241
  1023. package/skills/videodb/reference/legacy/search.md +0 -249
  1024. package/skills/videodb/reference/migration.md +0 -113
  1025. package/skills/vlog-auto-edit/SKILL.md +0 -982
  1026. package/skills/vlog-auto-edit/examples/project_structure.md +0 -84
  1027. package/skills/vox-animated-ad-mcp/SKILL.md +0 -419
  1028. package/skills/vox-director/SKILL.md +0 -351
  1029. package/skills/vox-director/references/beat-layer.md +0 -143
  1030. package/skills/vox-director/references/host-mode.md +0 -120
  1031. package/skills/vox-director/references/local-engine.md +0 -73
  1032. package/skills/vox-director/references/models-and-gotchas.md +0 -91
  1033. package/skills/vox-director/references/prompt-guide.md +0 -275
  1034. package/skills/vox-director/references/voices.md +0 -59
  1035. package/skills/xingchen-vox-collage/SKILL.md +0 -251
  1036. package/skills/xingchen-vox-collage/references/asset-layer-contract.md +0 -98
  1037. package/skills/xingchen-vox-collage/references/creative-exploration.md +0 -19
  1038. package/skills/xingchen-vox-collage/references/learned-branches.md +0 -34
  1039. package/skills/xingchen-vox-collage/references/remotion-scene-contract.md +0 -77
  1040. package/skills/xingchen-vox-collage/references/visual-language.md +0 -74
  1041. package/skills/xingchen-vox-collage/references/visual-qa.md +0 -59
  1042. package/skills/youtube/SKILL.md +0 -147
  1043. package/skills/youtube/references/algorithm-guide.md +0 -59
  1044. package/skills/youtube/references/analytics-benchmarks.md +0 -67
  1045. package/skills/youtube/references/dataforseo-integration.md +0 -51
  1046. package/skills/youtube/references/monetization-guide.md +0 -62
  1047. package/skills/youtube/references/repurposing-guide.md +0 -54
  1048. package/skills/youtube/references/retention-scripting-guide.md +0 -75
  1049. package/skills/youtube/references/seo-playbook.md +0 -77
  1050. package/skills/youtube/references/shorts-playbook.md +0 -64
  1051. package/skills/youtube/references/thumbnail-ctr-guide.md +0 -73
  1052. package/skills/youtube-shorts-factory/SKILL.md +0 -358
  1053. package/skills/youtube-shorts-factory/resources/adaptation-guide.md +0 -133
  1054. package/skills/youtube-shorts-factory/resources/storyboard-template.md +0 -271
  1055. package/skills/youtube-shorts-factory/resources/workflow-steps.md +0 -139
  1056. package/studio/ui/dist/assets/ExportCenter-DEyy1vs_.js +0 -1
  1057. package/studio/ui/dist/assets/SettingsModal-CQmsA2A2.js +0 -2
  1058. package/studio/ui/dist/assets/es-AqUfIkAy.js +0 -1
  1059. package/studio/ui/dist/assets/index-C7moXjTY.css +0 -1
  1060. package/studio/ui/dist/assets/index-DdU5QNpY.js +0 -1623
  1061. package/studio/ui/dist/assets/ja-YwiCB4QQ.js +0 -1
  1062. package/studio/ui/dist/assets/ko-CKtBPDze.js +0 -1
  1063. package/studio/ui/dist/assets/zh-CN-DtNEwKWJ.js +0 -1
@@ -1,982 +0,0 @@
1
- ---
2
- name: vlog-auto-edit
3
- description: "AI Agent自动剪辑旅行Vlog的完整工作流。从原始素材到成品视频,系统级只需ffmpeg,其余在Python venv内完成。by nyx研究所 (GitHub @znyupup · B站/小红书 @nyx研究所) Runs in AICUT: the film is film.html, a page per shot, drawn by `aicut look` and `aicut render`."
4
- license: MIT
5
- source: "znyupup/ai-video-editing-skill"
6
- ---
7
-
8
- # AI Agent 自动剪辑旅行 Vlog
9
-
10
- ## Running it in AICUT
11
-
12
- AICUT's film is `film.html`: it cuts pages, footage, pictures and sound together on tracks. A page is a web page that
13
- sets `window.film = { frame(t) }` and draws that moment — no framework, no build step, no composition object, no
14
- `registerRoot`. Five shots are five pages cut together, not one page that changes scene, so each shot stays trimmable
15
- and replaceable in Studio.
16
-
17
- ```sh
18
- npx -y @autoaiai/aicut@latest # the manual: the format and the commands, always current
19
- npx -y @autoaiai/aicut@latest open . # make this folder a film and print Studio's address
20
- npx -y @autoaiai/aicut@latest look # a contact sheet of the whole film, its sound, and a determinism check
21
- npx -y @autoaiai/aicut@latest look 4.5 # one frame, full size — look at the PNG, not at the code
22
- npx -y @autoaiai/aicut@latest render # the MP4, beside film.html
23
- ```
24
-
25
- Run the manual before the first film: it is authoritative for the format, and this skill is about the method above it.
26
-
27
- Where the words below name another program's part, it becomes this:
28
-
29
- | elsewhere | in AICUT |
30
- |---|---|
31
- | composition, timeline, project file | `film.html`; tracks and clips inside it |
32
- | a scene, a sequence, a slide | a page (`pages/<name>.html`) cut onto a track |
33
- | `useCurrentFrame()`, `interpolate()` | `frame(t)` — the picture depends only on `t`, never on state or `Date.now()` |
34
- | a still, a screengrab | `aicut look <t>` |
35
- | `render` / `build` / `export` | `aicut render` (the person can also export from Studio) |
36
- | a dev server, a preview window | `aicut open` and the Studio address it prints |
37
-
38
- Hard rules that hold whatever the method says: the picture depends only on `t`; every value in the person's prompt is
39
- binding; look at the frames `look` writes before saying a film is done.
40
-
41
-
42
- **Author:** nyx研究所 · [GitHub](https://github.com/znyupup) · [B站 @nyx研究所](https://space.bilibili.com/4330525) · 小红书 @nyx研究所 · [X @znyupup_music](https://x.com/znyupup_music)
43
-
44
- > 把一堆手机拍的旅行素材,用AI自动剪成一个完整vlog。
45
- > 最小依赖:ffmpeg + Python(whisper或FunASR+Pillow) + 视觉API。系统级只装ffmpeg,其余pip装。
46
-
47
- ## 触发条件
48
-
49
- - 用户有一批旅行/日常视频素材,想自动剪成vlog
50
- - 用户说"帮我剪个视频"、"自动剪辑"、"vlog剪辑"
51
-
52
- ## 前置要求
53
-
54
- ### 1. 系统工具
55
-
56
- | 工具 | 用途 | 安装 |
57
- |------|------|------|
58
- | ffmpeg | 视频裁剪/编码/拼接/抽帧/音量检测 | `brew install ffmpeg` (macOS) / `apt install ffmpeg` (Linux) |
59
- | Python 3.9+ | 脚本胶水 | macOS/Linux 系统自带 |
60
-
61
- ### 2. Python依赖(先检测,已有则跳过)
62
-
63
- **先检测系统是否已安装所需包,不要无脑创建 venv:**
64
-
65
- # 检测 whisper
66
- python3 -c "import whisper; print('✅ whisper已安装:', whisper.__file__)"
67
-
68
- # 检测 Pillow
69
- python3 -c "from PIL import Image; print('✅ Pillow已安装')"
70
- ```
71
- **⚠ 重要:不要用 `2>/dev/null` 吃掉错误!要看到实际报错才能判断是真没装还是PATH问题。**
72
-
73
- **⚠ macOS 注意:** 检查系统已安装的包再决定是否需要 venv。如果系统 python3 已经能 `import whisper` 和 `from PIL import Image`,直接用就行,不要盲目创建 venv 导致找不到已有的包。
74
-
75
- **仅在检测不通过时才安装:**
76
- ```
77
-
78
- # 方案A: 直接装到用户环境(推荐)
79
- pip install openai-whisper Pillow
80
-
81
- # 方案B: 如果用户环境有冲突,再用 venv
82
- python3 -m venv .venv && source .venv/bin/activate
83
- pip install openai-whisper Pillow
84
- ```
85
- **⚠ 不要每个项目都新建 venv 重装一遍!whisper模型文件1.4GB,pip install也要几分钟。**
86
-
87
- **⚠ ASR引擎二选一:Whisper 或 FunASR**
88
-
89
- 本工作流支持两个ASR引擎,优先用 whisper,whisper 装不上就用 FunASR:
90
-
91
- | | Whisper (OpenAI) | FunASR (阿里达摩院) |
92
- |---|---|---|
93
- | 安装 | `pip install openai-whisper` | `pip install funasr modelscope torchaudio` |
94
- | 模型 | medium (1.4GB, 从GitHub下载) | paraformer-zh (1.05GB, 从ModelScope下载) |
95
- | 附加模型 | 无 | VAD模型 + 标点模型 (首次运行自动下载, 共~50MB) |
96
- | 中文效果 | 好 | 好(与whisper medium相当,细节略多) |
97
- | 速度 | 14s音频 ≈ 5-10s (CPU) | 14s音频 ≈ 1.9s (CPU, RTF=0.132) ⚡ |
98
- | 时间戳粒度 | 句级别 (每句话一个start/end) | 字级别 (每个字一个时间戳) |
99
- | 模型下载源 | GitHub (国内不稳定,容易失败) | ModelScope (国内极快,~15MB/s) |
100
- | 隐性依赖 | torch | torch + torchaudio (⚠ 必须额外装) |
101
-
102
- **检测已安装的ASR引擎:**
103
- ```
104
- ```bash
105
- python3 -c "import whisper; print('✅ whisper可用')" 2>/dev/null \
106
- || python3 -c "from funasr import AutoModel; print('✅ funasr可用')" 2>/dev/null \
107
- || echo "❌ 没有可用的ASR引擎,需要安装一个"
108
- ```
109
- ```
110
- **⚠ FunASR 安装注意事项:**
111
- - 必须装 torchaudio!`pip install funasr modelscope` 不会自动装 torchaudio,import 时会报 `No module named 'torchaudio'`
112
- - 正确安装命令:`pip install funasr modelscope torchaudio`
113
- - 首次运行会自动从 ModelScope 下载3个模型(ASR + VAD + 标点),总共约1.1GB,国内速度快
114
- - 模型缓存在 `~/.cache/modelscope/hub/models/iic/` 目录下
115
- - import 时会有 urllib3 的 SSL 警告(NotOpenSSLWarning),可忽略,不影响功能
116
-
117
- **标题卡方案自动选择:**
118
- ```
119
-
120
- # 有drawtext → 直接用ffmpeg,不需要Pillow
121
-
122
- # 没有 → 用Pillow生成透明PNG再overlay(macOS brew ffmpeg通常没编freetype)
123
- ```
124
- **可选(参考分析阶段用):**
125
- ```
126
- ```bash
127
- which yt-dlp && echo "✅ yt-dlp已安装" || pip install yt-dlp
128
- python3 -c "import scenedetect" 2>/dev/null && echo "✅ scenedetect已安装" || pip install scenedetect
129
- ```
130
-
131
- ### 3. 视觉理解模型(API)
132
-
133
- 需要一个能理解图像内容的视觉模型API,用于分析素材画面。
134
-
135
- **要求:**
136
- - 支持 OpenAI Chat Completions 格式(messages + image_url)
137
- - 支持 base64 图片输入(本地素材抽帧后编码上传)
138
- - 中文理解能力(需要描述画面内容、标注镜头类型等)
139
-
140
- **推荐模型:**
141
-
142
- | 模型 | 费用 | 说明 |
143
- |------|------|------|
144
- | 智谱 GLM-4.6V-Flash | 免费 | 注册 https://open.bigmodel.cn 即用,中文理解好 |
145
- | GPT-4o | 付费 | 效果最好 |
146
- | Qwen-VL | 付费 | 阿里云,中文好 |
147
-
148
- **调用示例:**
149
-
150
- ```python
151
- import base64, json, urllib.request
152
-
153
- API_URL = 'YOUR_VISION_API_ENDPOINT' # 替换为你的视觉模型端点
154
- API_KEY='***' # 替换为你的API Key
155
- MODEL = 'YOUR_MODEL_NAME' # 替换为你的模型名
156
-
157
- with open('frame.jpg', 'rb') as f:
158
- img_b64 = base64.b64encode(f.read()).decode()
159
-
160
- payload = {
161
- 'model': MODEL,
162
- 'messages': [{'role': 'user', 'content': [
163
- {'type': 'image_url', 'image_url': {'url': f'data:image/jpeg;base64,{img_b64}'}},
164
- {'type': 'text', 'text': '简洁描述画面内容,标注:镜头类型(远/全/中/近/特写)、拍摄手法(固定/手持/移动)、画面氛围。格式:内容|类型|手法|氛围'}
165
- ]}],
166
- 'max_tokens': 200
167
- }
168
-
169
- req = urllib.request.Request(API_URL, json.dumps(payload).encode(),
170
- {'Content-Type': 'application/json', 'Authorization': f'Bearer {API_KEY}'})
171
- with urllib.request.urlopen(req, timeout=30) as resp:
172
- result = json.loads(resp.read())
173
- print(result['choices'][0]['message']['content'])
174
- ```
175
- **⚠ 视觉API调用注意事项:**
176
- - 输入格式:ffmpeg抽帧为JPEG → base64编码 → `data:image/jpeg;base64,{b64}` 放入 image_url
177
- - 抽帧尺寸:不需要原始分辨率,缩到 720p 即可(节省上传带宽和token)
178
- - 端点区分:有些平台视觉模型和文本模型端点不同,确认用对
179
- - 限流:高峰时段容易被限流,加 retry + sleep
180
- ```
181
-
182
- ### 不需要的(踩过的坑)
183
-
184
- - ❌ 剪映/CapCut — v10.4+ 项目文件加密,无法程序化操作
185
- - ❌ moviepy — ffmpeg命令行已够用,多一层抽象反而不灵活
186
- - ❌ capcut-cli (GitHub) — 基于明文JSON,对加密后的新版无效
187
- - ❌ ImageMagick — Pillow已够用,不需要再装一个图像工具
188
-
189
- ## 工作流(7个阶段)
190
-
191
- ### 阶段1: 素材盘点
192
-
193
- 目标:了解你有什么素材。
194
-
195
- # 批量获取素材信息
196
- for f in footage/*.{MOV,mp4,MP4}; do
197
- echo "=== $f ==="
198
- ffprobe -v quiet -print_format json -show_format -show_streams "$f" \
199
- | python3 -c "import json,sys; d=json.load(sys.stdin); \
200
- s=d['streams'][0]; f=d['format']; \
201
- print(f\" 时长: {float(f['duration']):.1f}s\"); \
202
- print(f\" 分辨率: {s['width']}x{s['height']}\"); \
203
- print(f\" 编码: {s['codec_name']}\")"
204
- done
205
- ```
206
- 输出一份素材清单:数量、总时长、分辨率分布、拍摄时间范围。
207
- ```
208
-
209
- ### 阶段2: 参考研究(可选但强烈建议)
210
-
211
- 目标:建立"好vlog长什么样"的认知。不做这步直接剪,效果会很差。
212
-
213
- **步骤:**
214
- 1. 找2-3个同类型优质vlog(B站/YouTube)
215
- 2. `yt-dlp` 下载720p视频 + 音频
216
- 3. `whisper` 转录旁白(提取叙事结构)
217
- 4. `scenedetect` 检测镜头切换(统计节奏)
218
- 5. `ffmpeg` 抽关键帧 + 视觉API分析(理解画面构成)
219
-
220
- **已验证的规律:**
221
-
222
- - 镜头节奏: 平均3-4秒/镜头是黄金节奏
223
- - 内容配比: 美食40-45% + 风景30% + 人物15% + 日常15%
224
- - 镜头类型: 近景/中景为主(60-65%),全景/远景穿插(35-40%)
225
- - 叙事结构: 精彩片头 → 出发/到达 → 按地点串联 → 情感升华收尾
226
- - 长短交替: 短镜头(<2s)做蒙太奇,长镜头(>8s)做叙事
227
-
228
- **剪辑教程要点:**
229
- 1. 找侧重点,不要流水账
230
- 2. 三幕式结构: 25%悬念 + 50%发展 + 25%收尾
231
- 3. 精彩放片头
232
- 4. 情感占51%(Walter Murch六法则)
233
-
234
- ### 阶段3: 素材三维分析
235
-
236
- 目标:让AI理解每条素材的内容。每条素材做三维分析:
237
-
238
- **a) 音频分析 — ASR转录(Whisper 或 FunASR)**
239
-
240
- # 提取音频(16kHz单声道WAV,两个引擎通用的最佳输入格式)
241
- ffmpeg -i footage/INPUT.MOV -vn -acodec pcm_s16le -ar 16000 -ac 1 /tmp/audio.wav
242
- ```
243
- **方案1: Whisper转录(优先使用)**
244
- ```
245
- ```python
246
- import whisper, json
247
- model = whisper.load_model('medium')
248
- result = model.transcribe('/tmp/audio.wav', language='zh')
249
- segments = [{"start": s['start'], "end": s['end'], "text": s['text']} for s in result['segments']]
250
-
251
- # 输出: [{"start": 0.5, "end": 2.3, "text": "我们现在在中央大街"}, ...]
252
- ```
253
- **方案2: FunASR转录(Whisper装不上时的替代)**
254
- ```
255
- ```python
256
- import warnings
257
- warnings.filterwarnings("ignore")
258
- from funasr import AutoModel
259
-
260
- model = AutoModel(
261
- model="paraformer-zh", # Paraformer-large,中文ASR主模型(1.05GB)
262
- vad_model="fsmn-vad", # 语音活动检测,自动切分静音段
263
- punc_model="ct-punc", # 自动加标点
264
- log_level="ERROR",
265
- disable_update=True # 跳过版本检查,加快启动
266
- )
267
-
268
- result = model.generate(input="/tmp/audio.wav")
269
- text = result[0]["text"] # 完整识别文本(已加标点)
270
- timestamps = result[0].get("timestamp", []) # 字级别时间戳 [[start_ms, end_ms], ...]
271
-
272
- # ⚠ FunASR时间戳是字级别(毫秒),需要聚合成句级别才能和whisper格式统一
273
-
274
- # 聚合策略:按标点符号(。!?,)切分成句子
275
- segments = []
276
- if timestamps and text:
277
- puncs = set("。!?,,.!?")
278
- current_start = timestamps[0][0] / 1000.0
279
- current_text = ""
280
- chars = list(text)
281
- for i, (char, ts) in enumerate(zip(chars, timestamps)):
282
- current_text += char
283
- if char in puncs or i == len(chars) - 1:
284
- segments.append({
285
- "start": round(current_start, 1),
286
- "end": round(ts[1] / 1000.0, 1),
287
- "text": current_text.strip()
288
- })
289
- if i < len(chars) - 1:
290
- current_start = timestamps[i + 1][0] / 1000.0
291
- current_text = ""
292
-
293
- # 输出格式与whisper一致: [{"start": 0.6, "end": 2.9, "text": "我们现在在中央大街的入口,"}, ...]
294
- ```
295
- **⚠ FunASR 输出差异注意:**
296
- - FunASR 返回的是完整文本 + 字级别时间戳,不像 whisper 直接给句级别 segments
297
- - 上面的聚合代码把字级别时间戳按标点切分成句子,输出格式与 whisper 对齐
298
- - 如果素材没有语音,FunASR 返回空文本 `""`,timestamps 为空 `[]`
299
- - FunASR 速度比 whisper 快 3-5x(14s音频只需1.9s),批量处理时优势明显
300
-
301
- **b) 音量检测 — ffmpeg**
302
- ```
303
-
304
- # mean_volume: 平均音量(dB) max_volume: 峰值音量(dB)
305
-
306
- # mean < -40dB 基本无声 mean > -20dB 有明显声音/语音
307
- ```
308
- **c) 视觉分析 — ffmpeg抽帧 + 视觉理解模型**
309
- ```
310
-
311
- # 抽帧策略(按时长分段)
312
-
313
- # ≤20s → 3帧(首/中/尾)
314
-
315
- # 20-60s → 5帧
316
-
317
- # >60s → 每15s一帧
318
-
319
- # 抽首/中/尾三帧示例(缩到720p节省带宽)
320
- ffmpeg -i footage/INPUT.MOV -vf "select=eq(n\,0),scale=1280:-1" -frames:v 1 -q:v 2 frame_start.jpg
321
- ffmpeg -i footage/INPUT.MOV -vf "select=eq(n\,MIDDLE),scale=1280:-1" -frames:v 1 -q:v 2 frame_mid.jpg
322
- ffmpeg -i footage/INPUT.MOV -vf "reverse,scale=1280:-1" -frames:v 1 -q:v 2 frame_end.jpg
323
- ```
324
- **d) 输出格式**(每条素材一个JSON)
325
- ```
326
- ```json
327
- {
328
- "filename": "clip_001.MOV",
329
- "duration": 15.3,
330
- "resolution": "1920x1080",
331
- "visual": [
332
- {"time": "0:00", "description": "...", "shot_type": "近景", "camera": "手持", "mood": "温馨"}
333
- ],
334
- "audio": {
335
- "has_speech": true,
336
- "mean_volume_db": -20.5,
337
- "max_volume_db": -3.2,
338
- "transcript": [{"start": 0.5, "end": 2.3, "text": "..."}]
339
- }
340
- }
341
-
342
- ### 阶段3.5: 素材精修预处理
343
-
344
- 目标:在给LLM之前,自动标注每条素材的"推荐有效区间",让LLM专注叙事编排。
345
-
346
- **为什么需要这步:**
347
- 原始手机素材普遍存在:开头录制口令、同一句话重复多遍、前1-2s举手机晃动、说完话后拖很长的无意义画面。如果把这些原始数据直接给LLM,LLM输出的plan还需要逐条修补。
348
-
349
- **预处理做四件事:**
350
-
351
- #### a) 录制口令检测
352
-
353
- ```python
354
- RECORDING_CUES = [
355
- "开始了", "好了开始", "开始录了", "好了 开始",
356
- "走了", "好了", "来了", # 仅在前3s内出现时算口令
357
- ]
358
-
359
- def detect_cues(transcript_segments, duration):
360
- """检测录制口令,返回skip zones"""
361
- skip_zones = []
362
- for seg in transcript_segments:
363
- text = seg['text'].strip()
364
- if seg['start'] < 3.0 and any(text.startswith(c) or text == c for c in RECORDING_CUES):
365
- skip_zones.append({
366
- 'type': 'recording_cue',
367
- 'range': [seg['start'], seg['end']],
368
- 'text': text,
369
- 'action': 'skip'
370
- })
371
- if seg['end'] > duration - 3.0 and text in ["好了", "走了", "好了 走"]:
372
- skip_zones.append({
373
- 'type': 'recording_cue',
374
- 'range': [seg['start'], seg['end']],
375
- 'text': text,
376
- 'action': 'skip'
377
- })
378
- return skip_zones
379
- ```
380
- #### b) 重复语音检测
381
- ```
382
- ```python
383
- from difflib import SequenceMatcher
384
-
385
- def detect_repeats(segments, threshold=0.6):
386
- """检测重复语音,标记建议跳过的重复段"""
387
- repeats = []
388
- for i, a in enumerate(segments):
389
- for j, b in enumerate(segments):
390
- if j <= i: continue
391
- ratio = SequenceMatcher(None, a['text'], b['text']).ratio()
392
- if ratio >= threshold and len(a['text']) > 4:
393
- skip = a if len(a['text']) <= len(b['text']) else b
394
- repeats.append({
395
- 'type': 'repeat',
396
- 'range': [skip['start'], skip['end']],
397
- 'text': skip['text'],
398
- 'kept': b['text'] if skip == a else a['text'],
399
- 'action': 'suggest_skip'
400
- })
401
- return repeats
402
- ```
403
- #### c) 起手晃动 / 结尾拖拽检测
404
- ```
405
- ```python
406
- def detect_trim_points(segments, duration, mean_volume_db):
407
- """基于语音+音量推荐起止点"""
408
- suggested_start = 0.0
409
- suggested_end = duration
410
-
411
- if segments:
412
- first_speech = segments[0]['start']
413
- last_speech_end = segments[-1]['end']
414
- if first_speech > 2.0:
415
- suggested_start = max(0, first_speech - 0.5)
416
- if duration - last_speech_end > 3.0:
417
- suggested_end = last_speech_end + 1.5
418
- else:
419
- if duration > 5.0:
420
- suggested_start = 1.0
421
-
422
- return suggested_start, suggested_end
423
- ```
424
- #### d) 纯画面时长限制
425
-
426
- | 模式 | 纯画面上限 | 口令处理 | 重复处理 | 起手晃动 |
427
- |----------|-----------|---------|---------------|---------|
428
- | strict | 8-10s | 全部去除 | 只留1遍 | 去1.5s |
429
- | normal | 12-15s | 去除明确口令 | 去明显重复 | 去1.0s |
430
- | loose | 20-25s | 仅去"开始了" | 保留大部分 | 去0.5s |
431
-
432
- #### e) 输出格式
433
-
434
- 预处理结果追加到素材分析数据里:
435
- ```
436
- ```
437
- ━━━ clip_012.mp4 | 时长25.8s | 1920x1080 ━━━
438
- 【画面】...
439
- 【语音】...
440
- 【精修建议】模式: normal
441
- 原始区间: [0.0 - 25.8]
442
- 推荐区间: [2.4 - 25.8]
443
- ⊘ [0.0-2.4] 跳过: 录制口令 "开始了"
444
- 有效语音: [2.62-25.8]
445
- ```
446
- ```
447
- **⚠ 重要原则:预处理只做标注和建议,不做硬裁剪。LLM保留最终决定权。**
448
- ```
449
-
450
- ### 阶段4: LLM叙事编排
451
-
452
- 目标:把预处理后的素材数据交给LLM,生成剪辑方案。
453
-
454
- 输入:素材分析 + 精修建议(推荐区间) + 参考研究结论
455
- 输出:剪辑方案JSON(结构见下方schema)
456
-
457
- #### edit_plan JSON Schema
458
-
459
- ```json
460
- {
461
- "title": "视频标题",
462
- "structure": [
463
- {
464
- "section": "段落名 — 副标题",
465
- "description": "本段落内容概述",
466
- "clips": [
467
- {
468
- "file": "素材文件名.mp4",
469
- "start": 0.0,
470
- "end": 12.0,
471
- "note": "画面内容简述",
472
- "subtitle": "保留的语音文字"
473
- }
474
- ]
475
- }
476
- ],
477
- "bgm_suggestion": "BGM风格建议(含genre/mood/instruments/tempo/bpm)",
478
- "editing_notes": "整体剪辑说明"
479
- }
480
- ```
481
- **约束:**
482
- - 同一素材可出现在多个clip中(不同时间区间)
483
- - start/end 不能截断语音中间(阶段4.5会校验)
484
- - 第一个section建议是"开篇"类引入段落
485
- - 最后一个section建议是"收尾"类段落
486
-
487
- 详细prompt模板见 `templates/edit_plan_prompt.md`。
488
- ```
489
-
490
- ### 阶段4+ : 分镜可视化 + Dashboard(浏览器预览)
491
-
492
- 目标:把LLM输出的剪辑方案做成图文并茂的网页,方便用户直观Review。
493
-
494
- **Dashboard 包含两个面板:**
495
-
496
- 1. **📋 素材总览** — 素材缩略图网格 + 时长/语音/音量标注 + 筛选(全部/已用/未用/含语音) + 点击查看详情
497
- 2. **✅ 成品质量检查** — 成品视频定时抽帧(每30秒) + 段落定位 + 点击放大
498
-
499
- **使用 `gen_dashboard.py` 脚本:**
500
-
501
- # 最小用法(只生成素材面板)
502
- python3 scripts/gen_dashboard.py \
503
- --analysis clip_analysis.json \
504
- --plan edit_plan.json \
505
- --footage footage/ \
506
- --out output/
507
-
508
- # 完整两面板(含成品QC帧)
509
- python3 scripts/gen_dashboard.py \
510
- --analysis clip_analysis.json \
511
- --plan edit_plan.json \
512
- --footage footage/ \
513
- --video output/final.mp4 \
514
- --out output/
515
- ```
516
- **支持两种分析数据格式(自动检测):**
517
- - 标准格式 `clip_analysis.json`: `{filename, duration, visual: [...], audio: {...}}`
518
- - 紧凑格式 `clips_compact.json`: `{file, dur, visual: "string", speech: [...]}`
519
-
520
- 用户确认分镜方案后,再进入渲染阶段。
521
- ```
522
-
523
- ### 阶段4.5: 语音截断校验
524
-
525
- 目标:自动校验LLM输出的plan,确保没有把任何语音从中间截断。
526
-
527
- ```python
528
- def validate_speech(plan_clips, speech_data):
529
- """检查每个clip的start/end是否截断了语音"""
530
- issues = []
531
- for clip in plan_clips:
532
- f = clip['file']
533
- cs, ce = clip['start'], clip['end']
534
- if f not in speech_data: continue
535
- for ss, se, txt in speech_data[f]:
536
- if ss < ce and se > cs: # 语音与clip有交集
537
- if ss < cs - 0.3: # 语音开始在clip之前
538
- issues.append(f"截断开头: {f} clip从{cs}开始,但语音\"{txt}\"从{ss}开始")
539
- if se > ce + 0.5: # 语音结束在clip之后
540
- issues.append(f"截断结尾: {f} clip在{ce}结束,但语音\"{txt}\"到{se}结束")
541
- return issues
542
- ```
543
- **校验不通过时:自动修复start/end,不需要回LLM重新编排。**
544
-
545
- #### 自动修复逻辑
546
- ```
547
- ```python
548
- def fix_speech_cuts(plan, speech_data, margin=0.3):
549
- """
550
- 自动修复语音截断问题。直接修改plan中的start/end。
551
-
552
- 参数:
553
- plan: edit_plan dict (会被原地修改)
554
- speech_data: dict, {filename: [(start, end, text), ...]}
555
- margin: float, 语音边界容差(秒)
556
-
557
- 返回:
558
- fixes: list of str, 修复日志
559
- """
560
- fixes = []
561
-
562
- for sec in plan["structure"]:
563
- for clip in sec["clips"]:
564
- f = clip["file"]
565
- cs = float(clip["start"])
566
- ce = float(clip["end"])
567
-
568
- if f not in speech_data:
569
- continue
570
-
571
- for ss, se, txt in speech_data[f]:
572
- if ss >= ce or se <= cs:
573
- continue
574
-
575
- # 开头截断:clip.start > speech.start + margin
576
- if ss < cs - margin and se > cs:
577
- old_start = cs
578
- new_start = max(0, ss - 0.1)
579
- clip["start"] = round(new_start, 1)
580
- fixes.append(
581
- f" 修复开头: {f} [{old_start}→{new_start}] "
582
- f"语音\"{txt[:20]}\"从{ss}s开始"
583
- )
584
- cs = new_start
585
-
586
- # 结尾截断:clip.end < speech.end - margin
587
- if se > ce + margin and ss < ce:
588
- old_end = ce
589
- new_end = se + 0.2
590
- clip["end"] = round(new_end, 1)
591
- fixes.append(
592
- f" 修复结尾: {f} [{old_end}→{new_end}] "
593
- f"语音\"{txt[:20]}\"到{se}s结束"
594
- )
595
- ce = new_end
596
-
597
- return fixes
598
-
599
-
600
- def validate_and_fix(plan, speech_data):
601
- """
602
- 端到端校验+修复入口。
603
-
604
- 用法:
605
- import json
606
- # 加载plan
607
- plan = json.load(open('edit_plan.json'))
608
- # 加载语音数据 (格式: {filename: [{start, end, text}, ...]})
609
- raw = json.load(open('clip_analysis.json'))
610
- speech_data = {}
611
- for clip_info in raw:
612
- fname = clip_info['filename']
613
- if clip_info['audio']['has_speech']:
614
- speech_data[fname] = [
615
- (s['start'], s['end'], s['text'])
616
- for s in clip_info['audio']['transcript']
617
- ]
618
-
619
- # 校验
620
- all_clips = [c for sec in plan['structure'] for c in sec['clips']]
621
- issues = validate_speech(all_clips, speech_data)
622
- print(f'发现 {len(issues)} 个截断问题')
623
-
624
- # 修复
625
- fixes = fix_speech_cuts(plan, speech_data)
626
- print(f'自动修复 {len(fixes)} 处')
627
-
628
- # 二次校验确认
629
- all_clips2 = [c for sec in plan['structure'] for c in sec['clips']]
630
- issues2 = validate_speech(all_clips2, speech_data)
631
- assert len(issues2) == 0, f'仍有 {len(issues2)} 个问题未修复!'
632
- print('✅ 二次校验通过')
633
-
634
- # 保存修复后的plan
635
- json.dump(plan, open('edit_plan_fixed.json', 'w', ensure_ascii=False), indent=2)
636
- """
637
- all_clips = [c for sec in plan['structure'] for c in sec['clips']]
638
- issues = validate_speech(all_clips, speech_data)
639
- fixes = fix_speech_cuts(plan, speech_data)
640
- return issues, fixes
641
- ```
642
- **修复策略:**
643
-
644
- | 截断类型 | 检测条件 | 修复方式 |
645
- |----------|---------|---------|
646
- | 开头截断 | clip.start > speech.start + margin | clip.start → speech.start - 0.1s |
647
- | 结尾截断 | clip.end < speech.end - margin | clip.end → speech.end + 0.2s |
648
-
649
- **边界容差 (margin=0.3s):** Whisper/FunASR 时间戳有±0.2-0.3s误差。修复后必须跑二次校验。
650
- ```
651
-
652
- ### 阶段5: ffmpeg自动执行
653
-
654
- 目标:把剪辑方案转成ffmpeg命令并执行。
655
-
656
- #### 渲染策略:逐片段裁剪 → 拼接
657
-
658
- # 单个片段裁剪+编码
659
- ffmpeg -y -ss 00:00:02.400 -i footage/INPUT.mp4 -t 00:00:23.400 \
660
- -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2,setsar=1" \
661
- -r 30 -c:v libx264 -preset medium -crf 18 -pix_fmt yuv420p \
662
- -c:a aac -b:a 128k -ar 44100 -ac 2 \
663
- -movflags +faststart segments/seg_001.mp4
664
-
665
- # 拼接成品
666
- ffmpeg -y -f concat -safe 0 -i concat.txt -c copy -movflags +faststart output.mp4
667
- ```
668
- #### 变速
669
- ```
670
-
671
- # 2倍速(视频+音频同步)
672
- ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" -filter:a "atempo=2.0" out.mp4
673
- ```
674
- #### 片头高光蒙太奇
675
-
676
- 从各段落选最有视觉冲击力的镜头,快切拼接放在视频最前面。
677
-
678
- **选片原则:**
679
- - 每个主要段落选1个精彩画面
680
- - 每个镜头0.5-1秒,快切节奏
681
- - 总共6-10个镜头,总时长5-8秒
682
- - 排除竖屏素材
683
- - 不加音频(-an),最终由BGM覆盖
684
- ```
685
- ```python
686
- import subprocess, os
687
-
688
- highlights = [
689
- ('footage/clip_a.mp4', 1.5, 2.2),
690
- ('footage/clip_b.mp4', 2.0, 2.7),
691
- # ... 每个0.7秒左右
692
- ]
693
-
694
- for i, (f, start, end) in enumerate(highlights, 1):
695
- dur = end - start
696
- cmd = f'ffmpeg -y -ss {start} -i "{f}" -t {dur} ' \
697
- f'-vf "scale=1920:1080:force_original_aspect_ratio=decrease,' \
698
- f'pad=1920:1080:(ow-iw)/2:(oh-ih)/2" ' \
699
- f'-c:v libx264 -preset ultrafast -crf 23 -pix_fmt yuv420p ' \
700
- f'-an highlights/hl_{i}.mp4'
701
- subprocess.run(cmd, shell=True)
702
-
703
- # concat
704
- with open('highlights/concat.txt', 'w') as f:
705
- for i in range(1, len(highlights)+1):
706
- f.write(f"file 'hl_{i}.mp4'\n")
707
-
708
- subprocess.run('ffmpeg -y -f concat -safe 0 -i highlights/concat.txt '
709
- '-c copy highlights/montage.mp4', shell=True)
710
- ```
711
- #### 段落标题叠加
712
-
713
- 用 Pillow 生成透明RGBA的PNG,ffmpeg overlay到视频画面上。**不要用黑底标题卡**。
714
- ```
715
- ```python
716
- from PIL import Image, ImageDraw, ImageFont, ImageFilter
717
-
718
- W, H = 1920, 1080
719
- title = "段落标题"
720
-
721
- img = Image.new("RGBA", (W, H), (0, 0, 0, 0))
722
- draw = ImageDraw.Draw(img)
723
-
724
- # 字体:macOS用冬青黑体,Linux用Noto Sans CJK
725
-
726
- # font = ImageFont.truetype("/System/Library/Fonts/Hiragino Sans GB.ttc", 60) # macOS
727
-
728
- # font = ImageFont.truetype("/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc", 60) # Linux
729
- font = ImageFont.truetype("YOUR_FONT_PATH", 60)
730
-
731
- bbox = draw.textbbox((0, 0), title, font=font)
732
- tw, th = bbox[2] - bbox[0], bbox[3] - bbox[1]
733
- x, y = (W - tw) // 2, (H - th) // 2
734
-
735
- # 柔和阴影
736
- shadow = Image.new("RGBA", (W, H), (0, 0, 0, 0))
737
- sd = ImageDraw.Draw(shadow)
738
- sd.text((x+2, y+2), title, fill=(0, 0, 0, 180), font=font)
739
- shadow = shadow.filter(ImageFilter.GaussianBlur(radius=6))
740
-
741
- img = Image.alpha_composite(img, shadow)
742
- draw = ImageDraw.Draw(img)
743
- draw.text((x, y), title, fill=(255, 255, 255, 240), font=font)
744
- img.save("title_overlay.png")
745
- ```
746
- **overlay到视频上:**
747
- ```
748
-
749
- # 标题显示前3秒
750
- ffmpeg -y -i section.mp4 -i title.png \
751
- -filter_complex "overlay=0:0:enable='between(t,0,3)'" \
752
- -c:v libx264 -preset medium -crf 18 -pix_fmt yuv420p \
753
- -c:a aac -b:a 128k -movflags +faststart \
754
- section_titled.mp4
755
- ```
756
- **⚠ overlay关键Pitfall:**
757
- - ❌ 不要加 `shortest=1` — PNG只有1帧,会导致视频流立刻截断
758
- - ✅ 直接用 `overlay=0:0:enable='between(t,0,3)'` 最简单可靠
759
- - ✅ 先用短片段(5-8s)验证overlay效果
760
-
761
- #### 段落拼接(推荐方案)
762
-
763
- **✅ 正确方案:逐段编码 → concat copy**
764
- ```
765
- ```bash
766
- echo "file 'final_sec_01.mp4'" > concat.txt
767
- echo "file 'final_sec_02.mp4'" >> concat.txt
768
- ```
769
- ```
770
- **❌ 不要用xfade链式合并:** 链式xfade会导致帧数累积丢失,后半段全黑。
771
-
772
- **段落间过渡**:段落内硬切即可。如需渐变,每段首尾加fade比xfade更可靠。
773
-
774
- #### BGM生成与混音(可选)
775
-
776
- BGM 可以手动添加,也可以用 AI 音乐生成工具(如 MiniMax music、Suno 等)。
777
-
778
- ##### a) AI 生成 BGM
779
-
780
- **风格映射参考(vlog常用):**
781
-
782
- | Vlog 风格 | genre | mood | instruments | tempo |
783
- |-----------|-------|------|-------------|-------|
784
- | 轻松日常 | indie pop | cheerful, carefree | ukulele, acoustic guitar | moderate |
785
- | 文艺治愈 | folk, acoustic | warm, gentle | acoustic guitar, piano, strings | slow |
786
- | 美食探店 | jazz, bossa nova | cozy, playful | piano, upright bass | moderate |
787
- | 冰雪/冬季 | cinematic, ambient | serene, majestic | piano, celesta, strings | slow |
788
- | 热带/海岛 | tropical house | sunny, relaxed | steel drums, marimba | upbeat |
789
- | 城市探索 | lo-fi hip hop | chill, urban | keys, vinyl crackle | moderate |
790
-
791
- ##### b) 混合到视频
792
- ```
793
-
794
- # BGM 音量 10-15%(有语音的vlog要压低BGM)
795
- ffmpeg -y -i video_no_bgm.mp4 -i bgm.m4a \
796
- -filter_complex "[0:a]volume=1.0[orig];[1:a]volume=0.12[bgm];[orig][bgm]amix=inputs=2:duration=first:dropout_transition=2[aout]" \
797
- -map 0:v -map "[aout]" -c:v copy -c:a aac -b:a 192k \
798
- -movflags +faststart output/final.mp4
799
- ```
800
- **BGM 音量建议:**
801
- - 有大量语音/旁白 → 8-12%
802
- - 语音较少,空镜为主 → 15-25%
803
- - 纯空镜蒙太奇段落 → 30-40%
804
-
805
- #### 变速
806
- ```
807
-
808
- ## Pitfalls
809
-
810
- 1. **剪映不可用** — v10.4+ 对 draft_info.json 加密,不要浪费时间
811
- 2. **视觉API端点要区分** — 有些平台视觉模型和文本模型端点不同,确认用对
812
- 3. **Whisper模型选择** — base中文太差,large太慢,medium是性价比最优
813
- 4. **不要跳过参考研究** — 没有"好vlog标准"的AI会剪出流水账
814
- 5. **ffmpeg编码兼容** — 拼接时注意素材编码一致性,先逐片段统一编码再concat
815
- 6. **视觉API限流** — 高峰时段容易限流,加retry和sleep
816
- 7. **预处理在LLM之前做** — 口令/重复/晃动检测在阶段3.5处理
817
- 8. **预处理是建议不是硬裁剪** — LLM保留覆盖权,某些口令可能有叙事价值
818
- 9. **语音截断必须自动校验** — LLM输出的plan可能在语音中间切断
819
- 10. **Whisper幻觉** — 纯音乐/环境音段落whisper会编造文字,需用音量阈值(-40dB)过滤
820
- 11. **竖屏混横屏** — 素材分析阶段就要检测,竖屏(9:16)混在横屏里很突兀,建议去掉
821
- 12. **overlay不要加shortest=1** — PNG只有1帧,shortest=1会让视频流截断
822
- 13. **标题卡风格** — 白字+柔和阴影叠在视频画面上,**不要黑底标题卡**
823
- 14. **ffmpeg drawtext不可用** — macOS Homebrew ffmpeg默认没编译freetype,用Pillow生成PNG overlay代替
824
- 15. **HEVC警告可忽略** — "Error constructing the frame RPS" 是HEVC解码警告,不影响输出
825
- 16. **Non-monotonic DTS** — concat拼接时常见的时间戳警告,播放不受影响
826
- 17. **空镜不宜过长** — 无语音的纯画面>6s偏长,建议压缩到5-8s
827
- 18. **xfade链式合并不可靠** — 链式xfade会导致帧数累积丢失,后半段全黑,用concat代替
828
- 19. **先用短片段验证** — 每次改渲染方案都先用5-8秒短片段验证效果
829
- 20. **渲染完必须验证帧数** — `ffmpeg -i output.mp4 -f null -` 检查实际frame数
830
- 21. **BGM别太大声** — 有语音段BGM控制在8-12%,先试听再定
831
- 22. **多段BGM衔接** — 保持相近的key和tempo(bpm差值<20)
832
- 23. **混音后必须试听** — 不同素材原始音量差异大
833
- 24. **不要重复安装依赖** — whisper/Pillow等先检测再装,不要每次都新建venv
834
- 25. **FunASR必须装torchaudio** — `pip install funasr modelscope` 不够,必须 `pip install funasr modelscope torchaudio`,否则 import 报 `No module named 'torchaudio'`
835
- 26. **FunASR时间戳是字级别** — 不像whisper直接给句级别segments,FunASR返回每个字的[start_ms, end_ms],需要按标点聚合成句子才能喂给后续的语音截断校验(阶段4.5)
836
- 27. **FunASR幻觉比whisper轻** — 纯环境音/音乐时FunASR通常返回空文本,不像whisper会编造内容。但仍需用音量阈值(-40dB)做二次确认
837
-
838
- ### 编码与拼接类(视频教程实战新增)
839
-
840
- 28. **⚠️ atempo加速后音视频时长不一致** — atempo处理后音频比视频短0.4-0.8秒/段。8段累积差好几秒,后半段音画完全对不上。**每段剪辑后必须立即验证音视频时长差<0.05s**,超过则用apad补齐:
841
-
842
- # 验证
843
- ffprobe -show_entries stream=duration -select_streams v -of csv=p=0 seg.mp4 # 视频时长
844
- ffprobe -show_entries stream=duration -select_streams a -of csv=p=0 seg.mp4 # 音频时长
845
-
846
- # 补齐
847
- ffmpeg -y -i seg.mp4 -af "apad" -c:v copy -c:a aac -shortest seg_fixed.mp4
848
- ```
849
- 29. **⚠️ concat copy音频时间戳不连续** — 多段concat copy后音频咔咔响/剪映音画偏移。**正确方案:音频单独提取wav+apad补齐+concat filter拼接,视频单独concat copy,最后合并**:
850
- ```
851
-
852
- # 每段提取音频(apad补齐到视频时长)
853
- ffmpeg -y -i seg.mp4 -vn -af "apad" -ar 48000 -ac 2 -c:a pcm_s16le -t {视频时长} seg.wav
854
-
855
- # concat filter拼接音频(不是demuxer)
856
- ffmpeg -y -i a.wav -i b.wav -filter_complex "[0:a][1:a]concat=n=2:v=0:a=1[aout]" -map "[aout]" -c:a aac audio.m4a
857
-
858
- # 合并
859
- ffmpeg -y -i video.mp4 -i audio.m4a -c:v copy -c:a copy output.mp4
860
- ```
861
- 30. **剪映兼容编码** — 导入剪映音画不同步的修复:`-r 30 -vsync cfr`(固定帧率) + `-x264-params "bframes=0"`(无B帧) + `-ar 48000 -ac 2`(统一音频)
862
-
863
- 31. **crf值对录屏类内容要低** — 录屏文字密集,crf 22码率不够会糊。录屏用`-crf 18`或`-b:v 3M`。一般vlog素材crf 22即可
864
-
865
- 32. **多次重编码画质累积损失** — 剪辑→拼接→加背景→叠进度条,每次编码都损失画质。**尽量一次filter链搞定**,减少编码次数
866
-
867
- 33. **后台ffmpeg进程泄漏** — kill后台任务时可能只杀shell不杀ffmpeg子进程。每次kill后`ps aux | grep ffmpeg`确认,残留用`kill -9 PID`
868
-
869
- 34. **开工前第一件事确认输出分辨率** — 全流程统一分辨率不要中途改。录屏类用1080p(文字密集对分辨率敏感),vlog素材用原始分辨率或1080p
870
-
871
- 35. **⚠️ overlay视频时音频被覆盖/丢失** — 用filter_complex overlay叠加进度条/水印等视频时,ffmpeg可能自动选取overlay源(静音)的音频而不是原视频的音频。**必须用`-map`明确指定音频来源**:
872
- ```
873
-
874
- # ❌ 不指定map,音频可能来自overlay源(静音)
875
- ffmpeg -i main.mp4 -i overlay.mp4 -filter_complex "overlay=0:0" output.mp4
876
-
877
- # ✅ 明确map:视频取filter输出,音频取原视频
878
- ffmpeg -i main.mp4 -i overlay.mp4 \
879
- -filter_complex "[0:v][1:v]overlay=0:0[vout]" \
880
- -map "[vout]" -map 0:a \
881
- -c:v libx264 -c:a copy output.mp4
882
- ```
883
- 如果还不行(音频编解码问题),**分步做更可靠**:
884
- ```
885
-
886
- # Step1: 只处理视频(-an去掉音频)
887
- ffmpeg -i main.mp4 -i overlay.mp4 -filter_complex "overlay" -map "[vout]" -an video_only.mp4
888
-
889
- # Step2: 把原始音频合回来
890
- ffmpeg -i video_only.mp4 -i main.mp4 -map 0:v -map 1:a -c:v copy -c:a copy final.mp4
891
- ```
892
- 36. **⚠️ -shortest会截断音频** — 视频和音频时长不完全一致时,`-shortest`会丢掉最后几秒的音频。**优先用`-t {精确时长}`替代**,或者确保音视频等长后不加-shortest
893
- ```
894
-
895
- ## 端到端示例
896
-
897
- ### 项目文件结构
898
-
899
- ```
900
- my-vlog-project/
901
- ├── footage/ # 原始素材(用户提供)
902
- │ ├── clip_001.MOV
903
- │ └── ...
904
- │
905
- ├── analysis/ # 阶段3输出
906
- │ └── clip_analysis.json
907
- │
908
- ├── edit_plan.json # 阶段4输出
909
- ├── edit_plan_fixed.json # 阶段4.5输出
910
- │
911
- ├── output/
912
- │ ├── dashboard.html # Dashboard网页
913
- │ ├── thumbnails/ # 素材缩略图
914
- │ ├── qc_frames/ # 成品QC帧
915
- │ ├── segments/ # 裁剪后的片段
916
- │ ├── highlights/ # 片头高光蒙太奇
917
- │ ├── titles/ # 段落标题PNG
918
- │ ├── sections/ # 带标题的段落视频
919
- │ ├── bgm/ # BGM文件
920
- │ ├── video_no_bgm.mp4 # 无BGM的完整视频
921
- │ └── final.mp4 # 🎬 成品视频
922
- │
923
- └── reference/ # 阶段2输出(可选)
924
- ```
925
-
926
- ### 中间产物示例
927
-
928
- 见 `examples/` 目录下的示例文件。
929
-
930
- ### 执行流程速查
931
-
932
- ```
933
- 素材文件夹 footage/
934
- │
935
- ▼
936
- 阶段1: 素材盘点 → ffprobe批量扫描 → 清单
937
- │
938
- ▼
939
- 阶段2: 参考研究 → 下载优质vlog → 分析节奏(可选)
940
- │
941
- ▼
942
- 阶段3: 素材三维分析 → whisper/FunASR+音量+视觉 → clip_analysis.json
943
- │
944
- ▼
945
- 阶段3.5: 精修预处理 → 口令/重复/晃动/纯画面标注
946
- │
947
- ▼
948
- 阶段4: LLM叙事编排 → edit_plan.json
949
- │
950
- ▼
951
- 阶段4+: Dashboard可视化 → 浏览器预览确认
952
- │
953
- ▼
954
- 阶段4.5: 语音截断校验 → 自动修复
955
- │
956
- ▼
957
- 阶段5: ffmpeg渲染 → 裁剪→标题→拼接→BGM → final.mp4 🎬
958
- ```
959
-
960
- ## 验证
961
-
962
- - [ ] 素材盘点完成,生成清单
963
- - [ ] 参考研究完成,提取规律
964
- - [ ] 素材三维分析完成(视觉+音频+音量)
965
- - [ ] 素材精修预处理完成
966
- - [ ] LLM剪辑方案生成
967
- - [ ] 语音截断校验通过
968
- - [ ] **每段片段音视频时长差<0.05s**
969
- - [ ] ffmpeg执行成功,输出成品视频
970
- - [ ] **成品音频完整(不被-shortest截断)**
971
- - [ ] **拖到视频后半段检查音画同步**
972
- - [ ] 成品视频质量人工确认
973
-
974
- ---
975
-
976
- **Author:** nyx研究所 · [GitHub](https://github.com/znyupup) · [B站](https://space.bilibili.com/4330525) · 小红书 @nyx研究所
977
- **License:** MIT
978
-
979
- ## Source
980
-
981
- Rewritten for AICUT from [`znyupup/ai-video-editing-skill`](https://github.com/znyupup/ai-video-editing-skill)
982
- (MIT), SKILL.md. The method is that skill's own; the way it runs is AICUT's.