Explainer (style Vox) → HyperFrames
Un explainer d'environ 60 secondes est N blocs × 10 s (60 s = 6 blocs). La ligne de narration du bloc k est lue sur l'image du bloc k. Outils : .claude/skills/explainer/tools/ ($T). Guide de style : references/styles.md. Exemple travaillé avec sources : examples/explainer-eiffel/.
Ambiance
Ça doit ressembler à une app bien conçue, pas à un terminal :
- Une étape par message, puis stop et attente. Un titre d'étape en gras avec un emoji adapté.
- Paramètres et choix sous forme de tableaux ; séparateurs
---entre les sections ; lignes courtes, aérées. - Pas de bavardage interne : ne jamais décrire les écritures de fichiers, les vérifications d'outils, les calculs de timing. Parle uniquement là où l'utilisateur agit ou si quelque chose manque.
- Tout ce qui est destiné à être copié-collé doit être dans un bloc de code contenant uniquement le prompt ; les étiquettes et notes restent à l'extérieur.
Étape 0 — Vérifications silencieuses (jamais commentées)
setup/doctor.sh --quiet. Si videos/ contient des projets explainer (un pack.json à l'intérieur), ouvrir avec "Bon retour — une nouvelle vidéo, ou continuer <la plus récente> ?" au lieu de l'Étape 1.
Étape 1 — Bienvenue 🎬
Un court message de bienvenue, un tableau de 5 lignes expliquant le fonctionnement (idée → look → voix → scènes → montage final), puis poser une question : De quoi doit parler la vidéo ? N'importe quelle idée approximative est bien, ou trouve un sujet pour les meilleurs sujets de la semaine. Stop.
Étape 2 — Sujet et paramètres ⚙️
trouve un sujet→ recherche web de l'actualité ; proposer les 3 meilleurs, chacun avec un pitch d'une ligne (une question pourquoi/comment + un chiffre surprenant + pourquoi ça rendra bien). Ignorer les tragédies et les potins. L'utilisateur choisit, ne jamais choisir à sa place.- Sinon, affiner l'idée en un angle d'une ligne : une question dont la réponse est surprenante.
Ensuite, un tableau des paramètres avec les valeurs par défaut ; go accepte tout :
| Paramètre | Défaut | Options |
|---|---|---|
| Look | collage | collage (collage éditorial audacieux) · diorama (documentaire papier sépia) |
| Images | code | code (libre, construit dans HyperFrames) · ai (Higgsfield ou tout générateur) · mixte |
| Durée | 60 s | 30 s – 10 min, par blocs de 10 s |
| Format | 16:9 | 16:9 · 9:16 · les deux |
Stop.
Étape 3 — Recherche et script (silencieuse)
Créer videos/<slug>/. Rechercher chaque affirmation : recherche web, vérifier chaque nombre sur deux sources indépendantes, conserver les URLs. Si les sources sont en désaccord, utiliser le chiffre sûr ou l'abandonner. Une ligne vague mais vraie vaut mieux qu'une ligne précise mais fausse : ne jamais inventer un nombre, une citation ou une prédiction.
Écrire une ligne de narration par bloc, les nombres en toutes lettres, langage simple :
- Voix Kokoro : 22–26 mots par ligne. Voix edge-tts : 18–20 mots. L'étape vocale corrigera les écarts de toute façon.
- Structure : ouverture à froid (le fait le plus surprenant, sans salutation) → enjeux → preuves (une idée par bloc, concrète : un nombre, une date ou un lieu, en crescendo) → le tournant → résolution avec une chute qui fait écho au bloc 1.
- Ton : curieux, précis, légèrement spirituel. Ça explique, ça ne vend jamais.
- Conception sur les blocs : un objet héros récurrent qui revient et change (la tour, le conteneur, la pièce) ; une question posée tôt, répondue en dernier ; un moment de révélation dont on se souviendra.
Pour chaque bloc, choisir aussi un callout (le nombre ou fait de deux mots à l'écran, ≤ 9 caractères, ex. +15 cm, 2,5M, 7 ans) et un visuel. En mode code, le kind du visuel est l'un des suivants : silhouette de type tower (adapter le SVG), dots, bars, lean, calendar ou stat. Écrire pack.json (format ci-dessous). Ne rien montrer encore.
Étape 4 — Voix 🎙
| Voix | Timbre | Moteur |
|---|---|---|
am_michael | Homme US, calme documentaire | Kokoro (hors ligne, défaut) |
bm_george | Homme britannique, mesuré | Kokoro |
af_heart | Femme US, chaleureuse et claire | Kokoro |
en-US-ChristopherNeural / en-GB-RyanNeural / en-US-JennyNeural | Voix neurales Microsoft | edge-tts (gratuit, en ligne) |
samples → voix du bloc 1 dans chacune des trois voix Kokoro et envoyer les fichiers. Stop.
Étape 5 — Le brief 📋 (barrière)
Un message :
- un tableau avec l'angle, le fil conducteur, le look, les images, la durée/blocs, le format et la voix
- le script, sous forme
Bloc 1 … N - la liste des sources
Fin : "Tout est bon — ou tu veux changer quelque chose ?" Boucler jusqu'à approbation. L'utilisateur peut réécrire n'importe quelle ligne.
Étape 6 — Images
Mode code : passer à l'Étape 8. Chaque bloc devient une scène collage : un champ de couleur, un grain de papier, le callout qui compte, un cercle de feutre qui se dessine, et le visuel.
Mode ai / mixte :
- Clé stylistique 🎨 : proposer 3 variantes nommées en une phrase chacune (même système visuel, palette ou composition différente, depuis
references/styles.md). Une fois choisie, donner le prompt image prêt à coller. Higgsfield :nano_banana_pro, format = celui de la vidéo. Citer le coût et attendre un oui avant de générer. Une image verrouille le look ; elle est attachée à chaque scène. - Scènes 🎬 : un message par bloc (ou tous en même temps si demandé). Chacun reçoit sa ligne de narration en contexte et un prompt prêt à coller construit à partir du template dans
references/styles.md: STYLE / SCÈNE / MOUVEMENT / AUDIO / ÉVITER. Tableau des paramètres : image de référence = la clé stylistique, 10 s, 720p+, son ambiant activé, enregistrer sousblockNN.mp4. Higgsfield directement :kling3_0pro image-à-vidéo avec la clé stylistique. Citer le total (blocs × crédits) d'abord. Ou l'utilisateur lance les prompts dans n'importe quel générateur de son choix (Veo, Kling, Runway…). - Les clips arrivent 📥 : l'utilisateur dépose les fichiers dans
videos/<slug>/clips/. Renommer les variantes évidentes en silence (Block 1.mp4→block01.mp4) ; ne demander que lorsque l'appariement est vraiment ambigu. Un bloc sans clip passe automatiquement en scène code.
Étape 7 — Vérifier les clips (silencieuse)
Extraire une image de chaque clip et l'examiner. Hors-style ou photoréaliste : resserrer les lignes STYLE et ÉVITER et ne régénérer que ce bloc. Deux échecs identiques signifient réécrire le prompt, pas seulement la graine. Un texte lisible à l'intérieur des clips IA est un échec en mode collage (le texte vit dans nos callouts et légendes).
Étape 8 — Voix et montage (silencieuse)
~/.local/share/hf-kokoro/bin/python $T/voice.py videos/<slug> # ou --engine edge --voice en-GB-RyanNeural
Chaque prise doit tenir entre 7,5 et 9,7 s. L'outil liste les contrevenants : réécrire ces lignes (plus courtes ou plus longues), ré-enregistrer avec --only 3,5, et répéter jusqu'à ce que tout tienne. Ne jamais étirer le temps.
.venv/bin/python $T/build.py videos/<slug> [--aspect 9:16] # index.html + assets/mix.wav
cd videos/<slug> && npx --yes [email protected] lint && npx --yes [email protected] render -o raw.mp4
ffmpeg -y -i raw.mp4 -af loudnorm=I=-14:TP=-1:LRA=11 -c:v copy -c:a aac -b:a 192k "../../out/<Titre> (16x9).mp4"
lint prévient en cas de structure imbriquée ou de pistes denses. Ce sont des alertes pour la vue Timeline Studio, pas pour le rendu, donc les ignorer. Les erreurs doivent être corrigées. Faire une capture d'écran par bloc (snapshot . --at 2.5,12.5,…) et vérifier : les nombres tiennent sur une ligne, le cercle entoure le nombre, les légendes ne couvrent pas l'image.
Étape 9 — Livraison ✅
Envoyer le MP4. Puis un petit tableau : sujet, durée et format, look et voix, sources (liens). Proposer : l'autre format, une modification d'un bloc, ou une nouvelle vidéo.
pack.json
{ "title": "…", "angle": "…", "through_line": "…", "look": "collage", "aspect": "16:9",
"voice": { "engine": "kokoro", "name": "am_michael" },
"blocks": [ { "line": "…", "callout": { "big": "+15 cm", "label": "plus haut les jours les plus chauds" },
"visual": { "kind": "bars", "values": [10, 30, 60, 100], "highlight": 3 },
"prompt": "(mode ai) prompt complet de la scène" } ],
"sources": [ "Éditeur — titre : https://…" ] }
Écrire aussi un pack.md lisible (brief, script, prompts, sources). C'est le dossier du projet.
Règles
- Faits : deux sources par nombre ; les sources sont livrées avec chaque vidéo. Pas de chiffres, citations ou prédictions inventés.
- Génération payante uniquement après avoir cité le modèle × le nombre × les crédits et reçu un oui (PLAYBOOK #1).
- Ne pas générer de visages de vraies personnes en gros plan ; utiliser des plans moyens, des silhouettes ou des barres de censure, ce qui évite aussi les refus de modération.
- Le look Vox est un hommage. Ne jamais utiliser le logo, le nom ou la marque Vox dans la vidéo.