Créer une vidéo
L'utilisateur crée des vidéos YouTube avec vous : longues vidéos explicatives (16:9) et Shorts (9:16), animées en code avec
Remotion, narrées par une voix Gemini, mettant souvent en scène un sprite de personnage. Cette compétence gère l'intégralité du
processus. Les outils se trouvent dans <videokit>, le dossier videokit de ce dépôt de compétence (lisez
references/toolkit.md avant d'exécuter quoi que ce soit). Si <videokit> n'a pas été remplacé par un chemin réel,
demandez à l'utilisateur où il a cloné le dépôt (le dossier contenant vk.py) et utilisez ce chemin.
L'utilisateur attache le plus d'importance à trois choses, qui expliquent pourquoi le processus est structuré ainsi :
- Rien n'est construit avant qu'il n'approuve un brouillon. Il veut voir l'histoire et exactement à quoi ressemblera et ressemblera chaque scène - ses transitions, animations, éclairage, effets sonores et qualité - d'abord. Modifier un plan coûte des minutes ; modifier un rendu coûte des heures.
- Cela doit paraître professionnel. Transitions motivées avec flou de mouvement, mouvement fluidifié, profondeur, véritable
éclairage, un son pour tout ce qui se passe, 1080p propre.
references/pro-look.mdexplique ce que cela signifie en pratique et quels composants le réalisent. - Ils veulent la vidéo terminée, pas un flot de questions. Un agent de révision répond aux questions
en cours de route et note le travail par rapport à une checklist fixe de 10 éléments ; l'utilisateur reçoit la vidéo
une fois qu'elle obtient 9/10.
references/review.mdexplique comment cela fonctionne : qui décide quoi, la checklist, les invites, et quand s'arrêter. Les révisions arrivent tôt (le brouillon, l'animatique), lorsque les modifications sont peu coûteuses, pas seulement à la fin.
Les étapes
Chaque ✋ est un arrêt : attendez la réponse avant de continuer. ✋ utilisateur : l'utilisateur décide. ✋ réviseur : l' agent de révision le fait (un agent pour toute la vidéo, poursuivi avec SendMessage - review.md).
0. Le brief ✋ utilisateur
Demandez ce que vous ne pouvez pas déduire de la demande, avec AskUserQuestion (jusqu'à 4 questions par appel ; un deuxième appel pour tout ce qui reste). Ne supposez aucun de ces éléments, même lorsque le sujet en rend un probable :
- Format : vidéo longue (16:9, 1920×1080) · Short (9:16, 1080×1920, moins de 3 min) · les deux (une vidéo longue plus 3 à 5 Shorts découpés dedans).
- Narration : voix IA (Gemini TTS ; vous enverrez des échantillons) · pas de narration (musique + mots à l'écran) · l' propre enregistrement de l'utilisateur.
- Style : proposez 3 à 4 styles concrets adaptés au sujet (par exemple, espace codé cinématographique avec vraie lumière ; graphiques animés plats et nets ; doodle dessiné à la main ; découpage papier façon livre d'histoires), chacun décrit en une ligne.
- Personnages : leurs sprites de personnage existants (dans
<videokit>/sprites;python vk.py charactersles liste) · nouveaux personnages générés avec un outil de génération d'images tel que Gemini (Nano Banana, coûte de l'argent) · emoji · dessinés en code · aucun. - Tous les autres assets (accessoires, objets, icônes, arrière-plans) - demandez cela séparément, à chaque fois : dessinés en
code (gratuit ; l'aspect de la bibliothèque d'effets) · emoji (gratuit ; le composant
Emoji, éclairé comme tout le reste) · généré avec un outil de génération d'images tel que Gemini (coûte de l'argent) · un mélange, décidé actif par actif dans le brouillon. Demandez-le pour chaque vidéo. Les images générées ne sont créées que lorsque l'utilisateur a choisi cette option. - Musique : une partition originale (ambiance : émerveillement / tension / ludique / épique) · une partition composée note par note pour cette vidéo (un thème, des accords et des hits synchronisés avec les scènes - toolkit.md "Une partition composée") · leur propre chanson (ils envoient l'audio et les paroles - ne la téléchargez jamais) · aucune.
Réglez également le sujet, la durée et la langue s'ils ne sont pas clairs. Créez ensuite le projet :
python -X utf8 vk.py new <dossier> --title "..." --format long|short|both (depuis le dossier videokit ; le
projet est créé à côté).
1. Le brouillon ✋ réviseur, puis ✋ utilisateur
Recherchez le sujet (vérifiez chaque fait ; notez tout ce qui dépend de la date du jour), écrivez script.md
(la narration, une ligne enregistrée par ligne "> "), puis écrivez plan.md à partir du modèle déjà présent dans le
projet. references/draft.md explique chaque section. Le cœur en est le tableau scène par scène : pour
chaque plan, la narration, ce que nous voyons (et ce que fait le personnage), la caméra et l'animation, la
transition d'entrée et de sortie, l'éclairage et les couleurs, les effets sonores et la musique. Plus le plan de style, de mouvement,
d'éclairage, de transition et de son, les spécifications de qualité, les Shorts (si "les deux"), les faits avec
sources et le coût. Écrivez également 2 à 3 options d'accroche (chacune une première ligne et une première image). Pour un Short, suivez
la règle "Les 3 premières secondes" de draft.md : la surprise à 1 s, une action avec un son à l'image 0, une première image
lumineuse. Les chiffres réels des Shorts montrent que les vues se gagnent ou se perdent là ; les chiffres de l'utilisateur sont dans
references/channel-numbers.md.
La révision du brouillon : lancez le réviseur avec plan.md et script.md (review.md, "Lancer"). Corrigez chaque
défaut qu'il trouve et ce que le brouillon peut corriger pour les éléments notés en dessous de 2 ; intégrez son choix d'accroche dans le
brouillon ; enregistrez ce que vous avez pris et ce que vous n'avez pas pris dans out/revue/decisions.md.
Ensuite, montrez à l'utilisateur : un court résumé dans le chat (l'histoire en quelques lignes, les scènes sous forme de liste compacte,
tout ce sur quoi vous avez besoin qu'il décide, et le score projeté par le réviseur en une ligne) avec un lien vers plan.md.
Demandez une approbation ou des modifications, révisez et répétez jusqu'à ce qu'il donne le feu vert. N'enregistrez, ne générez ni
n'animez rien avant cela - c'est la règle de l'utilisateur.
2. Voix (si narrée)
- La voix par défaut (video.json : Gemini "Kore" à
vitesse1.2) ne nécessite aucune question. Une nouvelle voix ou un nouveau style :vk.py voice samples→ envoyez les échantillons (SendUserFile) → ✋ utilisateur : il choisit à l'oreille (les agents ne peuvent pas entendre, donc celui-ci ne va jamais au réviseur). Définissez-la dansvideo.json, avecvitesse. vk.py voice record(mis en cache ; les lignes identiques sont réutilisées gratuitement à partir d'autres projets), puisvk.py words(synchronisation des mots + une vérification que chaque ligne dit bien ce que le script indique ; écoutez tout ce qu'il signale).- Gemini 402 = les crédits prépayés sont épuisés : arrêtez et informez l'utilisateur.
3. Aspect visuel ✋ réviseur
- Créez chaque actif comme le dit la liste des actifs approuvée du brouillon (code, emoji, Gemini ou existant) :
- les sprites existants vont dans
CHARACTERS/PROP_DIRSdansscripts/build.py; - générés (uniquement si approuvé) : un outil de génération d'images tel que Gemini (Nano Banana), découpé en PNG transparents et importé de la même manière (toolkit.md, "Les images Gemini") ;
- emoji :
<Emoji char="🚀" .../>(fx/emoji.tsx) avec la lumière de contour de la scène et une ombre portée ; - code : dessiné dans la scène avec la bibliothèque fx (LitSphere, Sun, formes, DrawPath...).
- les sprites existants vont dans
- Créez 3 à 4 images de style - les moments clés du brouillon, entièrement éclairés - sous forme de planche contact
(
vk.py stills ...) et envoyez-les au réviseur ("Un choix en cours de route") : approuver l'aspect ou dire quoi changer. Enregistrez la réponse.
4. Construction
-
scripts/build.py: remplissez à partir du brouillon - pauses, repères (c.at(ligne, 'phrase')),MOVES(comment chaque section arrive),effects()(un son pour chaque événement),music()(ambiance, arc d'intensité, accents - ou la partition composée),ambience(), le texte YouTube. Exécutezvk.py build. -
Scènes : un fichier par scène dans
src/scenes/, écrit en secondes d'histoire par rapport aux repères, en utilisantsrc/fx(caméra, couches de profondeur, éclairage, particules, texte cinétique, la piste du personnage). Listez-les danssrc/Video.tsxavec leurs transitions. Gardez le personnage dans l'action (debout sur, chevauchant, pointant vers, réagissant à ce qui est à l'écran) - un personnage qui flotte donne l'impression de remplissage. Bloguez d'abord chaque plan - placé, synchronisé avec ses repères et en mouvement - avant le passage à l'éclairage et à la richesse. Bouger signifie plus que le personnage : à partir du blocage, chaque plan a une caméra qui dérive ou se déplace, des bandes de profondeurCamLayeret autre chose en mouvement. Un Short qui a obtenu 20/20 avec un monde statique derrière le personnage a été jugé trop plat une fois visionné en mouvement. -
L'animatique ✋ réviseur :
vk.py animaticrend la vidéo entière à mi-taille avec son son réel et sans flou de mouvement (environ 1,5 min pour un Short de 30 s) et exécute les vérifications de rythme. Envoyez-la au réviseur (l'invite de l'animatique). Corrigez l'accroche, le timing et la clarté maintenant, avant la finition. -
Shorts (si "les deux") : spécifications dans build.py via
kit.shorts.build, une scène par Short danssrc/shorts/. -
Passage de richesse : parcourez plan par plan la section "Rendre riche" dans
references/pro-look.mdet ajoutez des effets partout où un plan est plat. Chaque plan a besoin de :- un arrière-plan avec de la profondeur ;
- une lumière visible ;
- le sujet installé dans le monde ;
- quelque chose au premier plan ;
- une caméra qui ne se bloque jamais ;
- une vie en arrière-plan ;
- la finition ;
- le son.
Chaque vidéo doit donner une impression de richesse, donc cela fait partie du travail, pas un supplément. Respectez les règles de retenue pour que cela reste propre et gardez les effets hors du texte.
5. Vérification (boucle jusqu'à propreté)
vk.py qa rend chaque repère et chaque point médian de transition dans des planches contact (out/qa/) puis exécute les
vérifications automatiques → out/qa/<comp>_checks.md : texte sous les boutons/titres de YouTube/TikTok, de taille inférieure
à 44 px, se chevauchant ou sortant du cadre (mesuré sur la page elle-même) ; et sur le rendu le plus récent,
les étirements où l'image change à peine, les plans où l'arrière-plan reste immobile (moins de 25 % du cadre en mouvement),
les trous dans la voix, les bandes découvertes le long du bord du cadre, la jointure de boucle et le volume sonore. Corrigez chaque problème qu'il liste et jetez un œil à chaque "mérite un coup d'œil". Parcourez ensuite
les planches en fonction de la checklist dans references/pro-look.md - transitions à mi-parcours, direction de l'éclairage, le
personnage dans la scène, pas d'images plates (tout ce qui semble plat ou vide est enrichi) - corrigez et relancez
(vk.py qa --auto relance uniquement les vérifications, environ une minute). Faites un court rendu de test
(vk.py render --frames 0-150) pour voir le mouvement réel et la vitesse de rendu avant le rendu complet. Les rendus
réutilisent chaque bloc de 4 s dont les images n'ont pas changé, donc après une correction, relancez simplement le rendu (--fresh uniquement
après avoir modifié un dessin de canevas ou remplacé un fichier vidéo).
6. Final ✋ réviseur
vk.py final(etvk.py final --comp Short-<id>pour chaque Short) : 1080p H.264, sauvegardé en v1/v2..., vérifié pour la taille, les fps, les codecs, -14 LUFS et le pic réel. Pas de copies en prévisualisation téléphone ou 720p - livrez uniquement le fichier 1080p. Ensuite, exécutezvk.py qa --autodessus.- La révision finale (review.md, "Les tours et quand s'arrêter") : le réviseur le note sur la checklist et choisit le titre. Corrigez les défauts et les corrections les mieux classées, enregistrez les décisions, rendez à nouveau et envoyez la nouvelle version avec la précédente pour comparaison. Il réussit à 18/20 sans aucun élément à 0 et sans défaut ouvert ; arrêtez après 3 tours, ou plus tôt lorsqu'un tour ne trouve rien de nouveau et que le score se maintient.
- TikTok (Shorts, lorsque l'utilisateur les publie également là-bas) :
vk.py final --platform tiktok→ " (TikTok).mp4" : pas de grain, moitié moins de poussière, un débit binaire plus élevé et un léger accentuation, car TikTok ré-encode chaque téléchargement de manière agressive. - Vignette (
src/Thumbnail.tsx→ 1280×720 jpg),captions.srt,youtube.md(titre, description avec chapitres, tags, la mention de la voix IA) ;shorts.mdpour les Shorts.
7. Livraison
Envoyez la vidéo terminée avec SendUserFile lorsqu'elle fait moins de ~30 Mo (les Shorts le sont généralement) ; sinon, donnez le
chemin cliquable (le montage TikTok est généralement plus volumineux : donnez son chemin). Résumez ce qu'elle contient scène par scène et
comment elle a été vérifiée : le score final du réviseur (et les tours précédents), tout ce qui est encore en dessous de 2, les
notes du réviseur sur la chaîne (des choses concernant la chaîne dans son ensemble - leur décision), et que le réviseur a jugé
le son uniquement par mesure : leur propre écoute avec le son est la dernière vérification. Ajoutez les notes de publication. Enregistrez ou mettez à jour
une note de mémoire de projet (ce qui a été fait, où, les décisions prises par l'utilisateur). Lorsque l'utilisateur demande plus tard comment un
Short publié s'est comporté, ajoutez sa ligne à references/channel-numbers.md.
Règles toujours applicables
references/house-rules.md contient les règles permanentes - lisez-le une fois par vidéo. La version courte :
ne jamais imprimer la clé API ; pas d'images Gemini sans un oui ; ne jamais télécharger de chansons ni mettre les paroles d'autres artistes
à l'écran ; les questions "juste pour savoir" obtiennent des réponses, pas des constructions ; brouillon avant construction ; 1080p uniquement ; le réviseur
répond aux questions de l'étape, tandis que le brief, le brouillon, une nouvelle voix, l'argent et tout ce qui est public restent avec
l'utilisateur.
Références
references/review.md- l'agent de révision : qui décide quoi, la checklist en 10 éléments, les invites pour chaque étape, le journal des décisions et quand s'arrêter.references/draft.md- comment rédiger le brouillon (plan.md) et le présenter, y compris les règles des 3 premières secondes pour les Shorts.references/channel-numbers.md- un modèle pour les propres statistiques YouTube de l'utilisateur (taux de rétention par Short, ce que chaque ouverture a donné) et comment lire Studio.references/pro-look.md- la norme professionnelle : transitions, animation, éclairage, particules, typographie, son, vérifications de qualité, performances de rendu et les composants pour chacun.references/toolkit.md- commandes videokit (les vérifications automatiques, l'animatique, le montage TikTok), la disposition du projet, l'horloge de l'histoire, les hooks build.py, les Shorts, les clips musicaux, les pièges Windows.references/house-rules.md- les règles permanentes et pourquoi.