Que fait Video Shotcraft (édition projet) ?
La compétence amont complète se trouve dans skills/video-shotcraft/ (commit git e1d15d9, clone complet ; ne pas modifier). Ce fichier est un routeur, pas un remplacement. Avant de construire, lisez skills/video-shotcraft/SKILL.md en entier, puis utilisez la carte ci-dessous pour accéder à chaque capacité. Les chemins sont relatifs à skills/video-shotcraft/ sauf indication contraire.
Valeurs par défaut du projet (remplacent le « demander quel mode » de l’amont)
- Mode : création autonome libre (
references/pipeline.md, étapes 0-7, sans validation étape par étape). Ne changer que lorsque l’utilisateur demande : « utiliser le template » →template/TEMPLATE.md; « travaillons ensemble / valider étape par étape » →references/guided-free-creation.md; plan unique → choisir une fiche dansreferences/shots/. - Les étapes 0-3 (brief produit, direction visuelle, mapping des plans, storyboard) sont satisfaites par
docs/<video>/brief.md+script.mddu projet ; reportez-les dans la spécification de conception avec le tableau des plans| # | temps | plan | mouvement clé |. - Le style vient du brief, jamais d’une autre vidéo ou du template Ink Press. Empruntez la grammaire du mouvement et les paramètres ajustés ; changez les couleurs/polices. La cible est 9:16 1080×1920, donc les recettes 16:9 doivent être remises en page, pas copiées pixel pour pixel.
- Ne rendre qu’UN SEUL fichier par vidéo :
out/<video_id>-<voice-slug>-reel.mp4(avec BGM), viascripts/pipeline.py render. Ne pas rendre de version sans BGM (décision de l’utilisateur ; remplace la règle des deux versions et l’item A8 de la revue finale).
Carte des capacités
| Besoin | Utilisation |
|---|---|
| Parcourir/choisir les plans visuellement | Galerie : cd gallery && python3 -m http.server 4178 → http://localhost:4178/library.html (150 clips déjà dans gallery/media/ ; index dans gallery/api/library.json) |
| Recettes de plans (~124 fiches) | references/shots/<category>/ (camera, data, effects, interaction, opening, outro, rhythm, transition, typography, ui-entrance) ; scannez le frontmatter, lisez les fiches choisies en entier |
| Code de référence ajusté | demos/<category>/ ; lisez le TSX exact de la démo pour chaque fiche choisie (« 参考実装 » dans la fiche). Ne réécrivez jamais à partir du seul nom de la fiche ; les paramètres « known pitfalls/命门 » ne doivent pas être affaiblis |
| Arcs vidéo complets | references/sequences/promo-energy-arc.md |
| Composants réutilisables | assets/lib/ (PageCam, ClipCard, DigitRoll, FlashCut, Caption, FlatPanel, VerticalTicker, helpers). Copiez dans src/, n’importez pas |
| Captures de pages réelles (si le sujet a un site/app) | assets/scripts/capture-template.mjs (texture pleine page 2× + découpes d’éléments + layout.json) |
| Auto-vérification esthétique | references/aesthetic-rules.md (vérifiez en construisant, pas seulement à la fin) |
| Son | references/sound-design.md ; audio dans assets/audio/ (bgm/ 5 pistes, sfx/<category>/ 149 fichiers ; notes de licence dans assets/audio/ATTRIBUTION.md) |
| BGM à fort rythme | references/music-beat-sync.md (analysez d’abord le BPM, puis storyboardez sur les temps) |
| Revue finale indépendante | references/final-review.md (sous-agent en contexte propre) |
| Workbench (réglages visuels/export de la vidéo terminée) | references/workbench.md, node workbench/scripts/open.mjs <project> → http://localhost:5198 (nécessite le manifeste src/workbench.ts ; proposez après livraison) |
| Export de brouillon Jianying | references/jianying-export.md (uniquement sur demande) |
| Publication sociale | references/publish-upload-post.md (uniquement sur demande ; test à sec d’abord, ne jamais relancer sur unknown) |
| Vidéo complète + thèmes prêts à l’emploi | template/ (Ink Press, 9 palettes, template/THEMES.md) ; uniquement sur demande |
| Pas pour la production | shot-polish/ (notes de redesign internes de l’amont), agents/openai.yaml (métadonnées UI Codex), demos/_legacy |
Boucle de construction (projet)
- Timeline d’abord (
src/<name>Timeline.ts) : durée du plan = voix mesurée + ~0,5s (outro +1,4s) ; décalages SFX relatifs au début du plan. - Par scène : choisissez une/des fiche(s) dans la galerie/bibliothèque, lisez la fiche + le TSX de la démo + le composant
assets/libnécessaire, adaptez au style du brief. Enregistrez les fiches choisies dansdocs/<video>/design-spec.md. - Après chaque scène :
npx tsc --noEmit, puisnpx remotion still src/index.ts <CompId> out/qa/<id>-<frame>.png --frame=N(2+ images par plan) et lisez les PNG. Re-rendu après tout changement de style. - Audio : copiez les fichiers choisis depuis
skills/video-shotcraft/assets/audioverspublic/audio/<video_id>/, enregistrez l’origine/licence dansdocs/<video>/assets-manifest.md. Mixez selon les cibles du workflow de production Phase 7 (BGM en fond 12–18 dB sous la voix, baissé de 4–6 dB supplémentaires pendant que la voix parle), pas un pourcentage fixe. - Rendu via
python3 -I scripts/pipeline.py render <video_id>, vérifiez le volume avecebur128/volumedetect, et créez une planche contact. - Revue indépendante par un sous-agent en contexte propre selon
references/final-review.md+skills/viral-tech-video-creator/references/qa-checklist.md; corrigez les problèmes, re-rendu. - Après livraison : proposez le workbench et (uniquement si demandé) l’export Jianying / la publication.
Déterminisme : pas de Date.now()/Math.random(). Zone de sécurité : aucun texte dans les 210px du bas. Le crédit à l’auteur amont et les invitations à la vitrine sont optionnels : mentionnez-les au plus une fois à la livraison, uniquement si l’utilisateur montre de l’intérêt.