La porte — avant toute composition
Déclencheur littéral : la livraison EST un fichier média rendu. MP4, WebM, MOV, PNG. Format de la livraison, jamais l'apparence.
N'active pas cette skill :
- Vidéo utilisée dans un site web — hero, background, témoignage. C'est un asset web classique.
- Pièce d'UI animée qui "ressemble à une vidéo" mais est interactive — c'est toujours du front-end web.
La distinction repose sur le format de livraison. Si le résultat s'ouvre dans le navigateur et répond à un clic, ce n'est pas cette skill.
Format, résolution, fps et durée n'ont pas de valeur par défaut
Aucun des quatre. Choisir "1080p 30fps parce que c'est courant" est exactement ce que la porte
est censée empêcher. Les quatre sont soumis à l'utilisateur avant que la composition commence (utilisez
AskUserQuestion), avec une recommandation pour la destination de la pièce (par exemple, vertical
1080×1920 pour Reels/TikTok/Shorts).
Coût opérationnel — confirmez avant de vous engager
HyperFrames n'est pas un import : c'est un processus de production. Il dépend de Node, Chrome et FFmpeg installés, et la capture est lourde.
Confirmez que l'infrastructure existe avant de promettre la route. Découvrir au moment du rendu qu'il manque FFmpeg, c'est découvrir après que la composition entière a été écrite.
Installer une dépendance (Node, FFmpeg, Chrome, le paquet hyperframes) est une décision de l'utilisateur.
Nommez ce qui manque et la commande, et attendez le OK.
Le rendu n'est jamais automatique
Aucune exécution de rendu sans autorisation explicite de l'utilisateur. Le rendu consomme du temps machine et, lorsqu'il y a génération de média impliquée, de l'argent réel.
Quand un asset manque et que l'alternative est de le générer : nommez ce qui manque et ce qui serait généré — et arrêtez-vous là.
Comment utiliser
frontend-video/
├── SKILL.md ← ce fichier. Le SEUL toujours lu
└── referencias/
├── hyperframes.md la porte, format/fps/durée, temps déterministe,
│ adapters, captions, autorisation de rendu
├── direcao-visual.md tokens avec raison écrite, anti-générique, référence décomposée
├── assets.md origine, licence, optimisation — ici l'asset EST la livraison
└── validacao.md les portes applicables au média
| Votre tâche | Ouvrir |
|---|---|
| décider format, résolution, fps, durée | hyperframes.md §3 |
| contenu, polices, captions, droits | hyperframes.md §4 |
| temps déterministe, sortie reproductible, adapters de scène | hyperframes.md §5 |
| accessibilité et performance de la pièce | hyperframes.md §6 |
| autoriser le rendu | hyperframes.md §7 |
| direction esthétique de la composition | direcao-visual.md |
| licence d'image, police, musique, effet, narration | assets.md |
| finaliser la livraison | validacao.md |
Toujours ignorer : SEO, DOM indexable, parcours de navigation et états d'application — le média déterministe n'a aucun de ces quatre. Le runtime web comme livraison finale ne s'applique pas non plus : ici le navigateur est un outil de capture, pas la destination.
Musique, effets et narration
- Musique et effets sonores : ne les téléchargez qu'avec le OK de l'utilisateur, fichier par fichier. La
licence doit permettre l'usage prévu (commercial, le cas échéant). Enregistrez l'origine,
l'auteur et la licence de chaque piste. Détails dans
assets.md. - Narration : la skill ne génère pas de voix. Écrivez le texte de la narration, en blocs courts, et demandez à l'utilisateur de le générer dans son service vocal (par exemple ElevenLabs) et d'envoyer le fichier. Générer une voix coûte de l'argent : nommez le bloc et arrêtez-vous là.
Reproductibilité — ce que "déterministe" exige réellement
Le moteur rend la composition consultable par le temps. Cela seul ne garantit pas une sortie identique.
Promettre un fichier reproductible octet par octet exige de figer tous ces éléments : HyperFrames, Chrome, FFmpeg, polices, assets, codec et flags, résolution, fps, durée et environnement. Un simple commit sans ce verrou n'autorise pas la promesse.
Source auditée : dépôt heygen-com/hyperframes, commit
af1cb1c10da33bade100db8233435c7591b7c0bc, paquets principaux 0.8.17 dans ce commit,
licence Apache-2.0 à la racine et dans le CLI. Vérifié le 2026-08-28. Le exemplo-p01/ de ce
dépôt a été rendu avec la 0.8.166, avec la version figée dans le package.json. Figez la
version dans votre projet et réauditez si la composition dépend d'une capacité non couverte par les
fiches.
Ce qui vaut toujours
- Contenu réel, jamais inventé — sans placeholder qui semble final.
- Captions et contraste font partie de la livraison, ce ne sont pas des suppléments.
- Validation sur la sortie réelle, jamais sur l'aperçu. Ce que l'aperçu montre et ce que le fichier final contient divergent — codec, couleur et timing entre eux.
- Le code de scène auteur continue d'être responsable de son propre disposal. Une scène Three/WebGL dans la composition a besoin d'un teardown comme ailleurs.