Communitygithub.com

octaviosilva2/claude-video-motion

Produit une vidéo déterministe avec HyperFrames — composition HTML/CSS capturée dans Chrome/FFmpeg, avec format, fps, durée et résolution déclarés et rendu autorisé. À utiliser lorsque la livraison est un fichier média rendu (MP4, WebM, MOV, PNG), lorsque l'utilisateur demande une pièce vidéo, un motion, une animation exportée ou une composition reproductible.

Qu'est-ce que claude-video-motion ?

Cette skill permet à un agent d'IA (tel que Claude Code, Cursor, Codex) de produire des fichiers vidéo déterministes (MP4, WebM, MOV, PNG) en utilisant le moteur HyperFrames. Elle orchestre la génération de compositions HTML/CSS, leur capture via Chrome/FFmpeg, et leur exportation sous forme de fichiers média. La skill impose des garde-fous stricts : aucun format, résolution, fps ou durée par défaut ; chaque paramètre doit être confirmé avec l'utilisateur. Elle interdit le rendu automatique sans autorisation explicite et exige que les dépendances (Node, Chrome, FFmpeg) soient installées avant d'engager la production. Elle est conçue pour les livraisons où le résultat final est un fichier média rendu, pas une vidéo intégrée dans un site web ni une UI interactive. La reproductibilité est garantie par le verrouillage des versions de tous les composants (HyperFrames, Chrome, FFmpeg, polices, assets, codec).

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/octaviosilva2/claude-video-motion/tree/HEAD/skill/frontend-video

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

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âcheOuvrir
décider format, résolution, fps, duréehyperframes.md §3
contenu, polices, captions, droitshyperframes.md §4
temps déterministe, sortie reproductible, adapters de scènehyperframes.md §5
accessibilité et performance de la piècehyperframes.md §6
autoriser le renduhyperframes.md §7
direction esthétique de la compositiondirecao-visual.md
licence d'image, police, musique, effet, narrationassets.md
finaliser la livraisonvalidacao.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

  1. Contenu réel, jamais inventé — sans placeholder qui semble final.
  2. Captions et contraste font partie de la livraison, ce ne sont pas des suppléments.
  3. 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.
  4. 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.

Skills associés