/minara-video
🅖 Règle de police : chaque vidéo Minara utilise Geist pour tout le texte
Titres / corps / nombres / boutons / tableaux – tout utilise
font-family: 'Geist', system-ui, -apple-system, sans-serif. Pas d'Inter, pas de serif de quelque sorte que ce soit, et aucune police système par défaut qui tombe en serif. Chargement :@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&display=swap'); associez les nombres àfont-variant-numeric: tabular-nums. Écrivez les deux sélecteurs CSS,#root, [data-composition-id="root"] {}, sinon la police ne s'appliquera pas et la page héritera du serif par défaut du navigateur (voir point 1 des « Pièges de structure de composition »). Non négociable et non optionnel, sauf si l'opérateur dit explicitement « 换字体 » (changer la police) pour ce projet. (Défini par l'opérateur le 2026-06-24 ; promu en règle principale le 2026-06-26.)
Ceci est la procédure opératoire standard de l'opérateur pour les vidéos Minara, distillée à partir des problèmes rencontrés lors de la réalisation de la vidéo de lancement public de Strategy Studio les 26 et 27 mai 2026.
⚠️ D'abord l'itinéraire : ceci est le flux de travail pour les vidéos animées composites HyperFrames (marketing / lancement / démo, où chaque image est construite en code). Si la tâche est une vidéo de guide / tutoriel produit – l'opérateur enregistre lui-même l'écran et vous ajoutez seulement la voix off + les sous-titres et livrez – utilisez la sous-compétence
minara-guide-video, pas celle-ci. Comment le savoir : existe-t-il un enregistrement d'écran existant / la demande est-elle « ajouter une voix off et des sous-titres à cet enregistrement » ? Les deux diffèrent par la voix, les sous-titres et la livraison.
⛔️ Prérequis de démarrage : charger HyperFrames + video-shotcraft (obligatoire)
Dès que cette compétence démarre, utilisez l'outil Skill pour invoquer la compétence hyperframes afin que toutes ses règles de composition soient en contexte, puis lisez l'intégralité du point d'entrée de la bibliothèque de plans video-shotcraft locale, et ensuite seulement continuez avec le flux de travail ci-dessous.
- Ceci est un prérequis strict, pas optionnel –
minara-videon'est qu'un wrapper de flux de travail plus strict ; la syntaxe de composition réelle / la timeline / les règles de rendu vivent toutes danshyperframes. Écrire du HTML de scène sans le charger rencontrera des problèmes connus (timeline en pause, enregistrement dewindow.__timelines, pas deMath.random()/repeat:-1, etc.). - Même si hyperframes a déjà été utilisé plus tôt dans cette session, invoquez-le à nouveau au démarrage de
/minara-videopour que les règles soient dans le contexte actuel. - Ordre de chargement :
Skill(hyperframes)d'abord → puis lire$VIDEO_WORKSPACE/video-shotcraft/SKILL.mden entier → puisRead $BRAND_DIR/design.md(système visuel Minara v2) → puis lire les règles de style fixes → puis suivre le flux de travail ci-dessous. - Vous devez lire
$BRAND_DIR/design.md(obligatoire ; leçon du 2026-06-24) : c'est le système visuel officiel Minara v2 et la source de vérité pour les valeurs de couleur, l'échelle typographique, l'espacement, le rayon des coins, les cartes et la mise en page. Les règles de style fixes de cette compétence sont la « couche d'ambiance vidéo » ; design.md est la « source de vérité des jetons de conception » – les deux doivent être en contexte. ⚠️ Le dégradé de marque listé dans design.md,#EB53FF/#FF538E/#FF9A32, n'est pas utilisé dans les vidéos (supprimé par l'opérateur le 2026-09-02 ; voir les règles de style fixes ci-dessous). Ne prenez que ses jetons noir/blanc/gris, ses couleurs sémantiques, son échelle typographique et son espacement de 4pt. - Chargez le dossier d'actifs de marque
$BRAND_DIR/logo/par défaut (défini par l'opérateur, le 2026-06-24) : lorsque vous avez besoin d'un logo / avatar / mot-symbole, utilisez d'abord les actifs officiels ici ; ne dessinez pas votre propre SVG comme substitut. Inventaire actuel (exécutezlsd'abord pour vérifier ; il peut changer) :Minara Avatar.png– Avatar pixel noir et blanc Minara (fille avec lunettes, demi-teintes) ; le défaut pour le logo rond dans les fins.Minara Logo.png– Logo principal Minara.MInara Text Logo Light.png/MInara Text Logo Light Dark.png– Mot-symbole textuel (version claire / claire et foncée).Minara Avatar Japan.png– Variante d'avatar pour le marché japonais.128_128.png– Petite icône carrée.minara X banner.jpeg– Bannière X.- Utilisation :
cples actifs dont vous avez besoin dans le dossierassets/du projet et référencez-les dans le HTML avec<img src="assets/xxx.png">; HyperFrames intègre les images locales au moment du rendu. Lors de l'auto-vérification avec des captures d'écran, copiez également une copie dans/tmp/<test-dir>/assets/(les chemins relatifs ne se résolvent que de cette façon).
🎬 Règles de chargement de la bibliothèque de plans video-shotcraft locale (2026-07-21)
- Chemin de bibliothèque locale fixe :
$VIDEO_WORKSPACE/video-shotcraft/. Chaque fois que/minara-videodémarre, lisez sonSKILL.mden entier. Ne l'utilisez pas uniquement sur la base des noms de cartes ou de la mémoire. - La méthode fixe pour traduire les cartes se trouve dans « § B des leçons de plans « croissants / auto-écriture » du client » ci-dessous (images de cartes × TEMPO, clip-path au lieu de masques de couleur papier, PageCam2D intégré dans les keyframes, zoom ≥ 1, focus limité au canevas).
- Son rôle par défaut est une bibliothèque de référence ; il ne change pas automatiquement la pile technique :
minara-videoreste centré sur les compositions seek-safe d'HyperFrames, les aperçus scène par scène et le flux de rendu ;video-shotcraftfournit le langage des plans, les recettes de mouvement de caméra, les structures de rythme, le design sonore, les démos approuvées et les actifs. Lors de l'adoption d'une de ses implémentations Remotion, traduisez d'abord la méthode en une timeline HyperFrames déterministe et accessible par recherche. Ne copiez pasDate.now(),Math.random(), ou une animation non seek-safe directement. - Ne déclenchez pas les invites de modèle de la compétence autonome : lors du chargement de cette bibliothèque dans
/minara-video, ne demandez pas à chaque fois s'il faut utiliser Ink Press, et n'interrompez pas le flux de travail Minara verrouillé ci-dessus à cause de cela. Uniquement lorsque l'opérateur nomme explicitementInk PressouRemotion, ou demande de reproduire ce modèle, liseztemplate/TEMPLATE.mden entier et passez à la route du modèle. - Lisez la source de vérité pour toute carte de plan que vous utilisez : une fois que vous décidez d'utiliser une carte de plan, lisez
references/shots/<card-name>.mdet la source d'implémentation correspondantedemos/<card-name>/en entier ; lisezreferences/sequences/lorsque vous avez besoin d'une structure de film entier, etreferences/sound-design.mdetassets/audio/ATTRIBUTION.mdlorsque vous avez besoin de son. Ne chargez pas les 106 cartes dans le contexte à la fois. - Copiez uniquement les actifs dont vous avez besoin : copiez depuis
assets/lib/,assets/audio/, oudemos/dans le projet vidéo en cours ; ne laissez pas le projet dépendre des chemins relatifs de cette bibliothèque au moment de l'exécution. Lors de l'utilisation de l'audio, conservez et vérifiez l'attribution de licence.
🧰 Règles de la bibliothèque de composants Remotion locale Remocn (2026-08-13)
- Chemin de bibliothèque locale fixe :
$VIDEO_WORKSPACE/remocn/. C'est une bibliothèque de composants copier-coller de style shadcn pour Remotion, pas un plugin HyperFrames et pas une dépendance d'exécution de projets vidéo. - Charger à la demande ; pas une partie de chaque démarrage : uniquement lorsque le storyboard a besoin d'un mouvement / transition / simulation d'interface utilisateur Remocn prêt à l'emploi, ou que l'opérateur nomme explicitement
Remocn/Remotion, lisez leskills/remocn/SKILL.mdlocal en entier. Pour un film complet, lisez ensuiteskills/remocn/references/anatomy.mdet lesreferences/archetypes/<type>.mdcorrespondants ; ne chargez pas chaque archétype à la fois. - HyperFrames reste la pile par défaut : dans les tâches ordinaires
/minara-video, traitez Remocn uniquement comme une référence de plan / mouvement, et traduisez la logique de mouvement du composant choisi en une timeline HyperFrames GSAP/DOM déterministe et accessible par recherche. Ne mettez pas de React/Remotion TSX directement dans le HTML de la scène, et ne changez pas de pile simplement parce qu'un composant prêt à l'emploi existe. - Utilisez-le directement uniquement lorsque Remotion est explicitement choisi : dans un projet Remotion existant, si
components.jsonmanque, exécutez d'abordnpx shadcn@latest init; puis installez uniquement les composants sélectionnés par le storyboard :npx shadcn@latest add @remocn/<name>. shadcn résout les dépendances de manière récursive ; modifiez le code après qu'il a été copié dans le projet actuel. N'installez pas tout, et ne laissez pas le film final référencer le chemin du dépôt Remocn local. - Les paramètres du composant suivent la documentation en direct : lisez d'abord
https://remocn.dev/llms-components.txtpour filtrer, puis lisez la page.../<component>.mdspécifique vers laquelle le tableau pointe ; ne devinez pas les props, les valeurs par défaut ou les durées. Pour étudier une implémentation, revenez à la sourceregistry/de la bibliothèque locale et àcontent/docs/. - Adaptez aux règles Minara ; ne copiez pas l'apparence par défaut : la structure du plan, le mouvement et le timing de Remocn peuvent être réutilisés, mais la police doit être changée en Geist, et la couleur, la taille de police, la densité d'information, l'ease signature et les transitions ≤0,5s suivent toujours les règles de cette compétence.
Lengthdans la documentation Remocn est l'image où l'action propre du composant se termine, pas la durée totale de la scène ; ajoutez un temps d'attente selon le script par seconde. Sa valeur par défaut1280×720 @ 30fpsne remplace pas non plus la spécification de sortie du projet Minara actuel. - Distinguez les deux types d'API : le niveau d'animation est piloté par les images et accepte
speed; les primitivesremocn-uisont pilotées par l'état de la timeline et n'ont pas de propspeed. Les deux doivent être reproductibles image par image, etMath.random()/Date.now()/ l'animation pilotée par intervalle est toujours interdite.
📸 Règles de la bibliothèque de composants de démonstration produit Remotion locale snapcn (2026-09-04)
- Chemin de bibliothèque locale fixe :
$VIDEO_WORKSPACE/snapcn/(GitHubsnapcndev/snapcn, MIT). Même genre de chose que Remocn – une bibliothèque de composants copier-coller de style shadcn pour Remotion – mais axée sur les plans de démonstration de produits logiciels : flux de chat IA, saisie d'invite, terminaux, cadres d'appareils, légendes. Ce n'est pas un plugin HyperFrames et pas une dépendance d'exécution de projets vidéo. - Division du travail avec Remocn : Remocn penche vers les mouvements / transitions / archétypes généraux ; snapcn penche vers « mettre l'interface utilisateur du produit dans le plan ». Minara est un copilote de trading IA, donc le groupe AI Chat Input de snapcn (
search-typing/prompt-zoom/answer-stream/prompt-send/answer-highlight/agent-steps) et le groupe Screens & Devices (phone-frame/laptop-frame/terminal-simulator/screen-recording/cursor-track) sont les références privilégiées. Pour des scènes comme « Invitez votre stratégie », les réponses Copilot, ou les étapes d'exécution Autopilot, regardez ici d'abord. - Charger à la demande ; pas une partie de chaque démarrage : uniquement lorsque le storyboard a besoin des plans de démonstration produit ci-dessus, ou que l'opérateur nomme explicitement
snapcn/Remotion, lisez leskills/snapcn/SKILL.mdlocal. Choisissez les composants via la table de routage àskills/snapcn/references/components/index.md(avec Utiliser pour / Éviter pour / Longueur / Ambiance), et ouvrez uniquement lesreferences/components/<name>.mdsélectionnés ; ne les lisez pas tous. Pour la structure du film, référez-vous àreferences/anatomy.md(Accroche → Positionnement → Révélation du produit → Fonctionnalités → Preuve → Appel à l'action) etreferences/archetypes/. - HyperFrames reste la pile par défaut : dans les tâches ordinaires
/minara-video, traitez snapcn uniquement comme une référence de plan / mouvement / timing, et traduisez la logique de mouvement du composant choisi en une timeline HyperFrames GSAP/DOM déterministe et accessible par recherche ; pour les détails d'implémentation, regardez la sourceregistry/snap-cn/<name>/. Ne mettez pas de React/Remotion TSX directement dans le HTML de la scène, et ne changez pas de pile simplement parce qu'un composant prêt à l'emploi existe. - Utilisez-le directement uniquement lorsque Remotion est explicitement choisi :
npx shadcn@latest add @snapcn/<name>(@snapcnest déjà dans le répertoire de registre shadcn, donc aucune configuration de registres n'est nécessaire). Le projet Remotion a besoin d'uncomponents.jsond'abord, et de l'alias@/configuré à la fois danstsconfig.jsonetremotion.config.ts– le bundler Remotion ne lit pas les chemins tsconfig. Installez uniquement les composants sélectionnés par le storyboard ; n'installez pas tout ; le film final ne doit pas référencer le chemin du dépôt snapcn local. - Les paramètres du composant suivent la documentation : documentation en direct sur
https://snapcn.dev/llms.txt(version complètellms-full.txt) ; ne devinez pas les props / valeurs par défaut / durées.Lengthest la longueur naturelle en images de l'action propre du composant (par exempleanswer-stream150f,search-typing420f), pas la durée totale de la scène ; ajoutez un temps d'attente selon le script par seconde. Sous budget, il est tronqué ; sur budget, c'est du temps mort. - Trois règles qui méritent d'être adoptées directement (elles pointent déjà dans le même sens que les règles de cette compétence) : ① le modèle de caméra dans
MOTION.md– les plans ne sont pas des coupes mais une seule caméra virtuelle qui se déplace / grue dans le même monde : déplacement sortant rapide 8–14f + atterrissage ressort 10–16f + maintien du texte 30–45f, la même origine que la recette « suivi par poussée de caméra » de cette compétence ; ② les valeurs par défaut anti-AI-slop dansskills/snapcn/references/design.md– pas d'espacement de lettres décoratif, pas de tout en majuscules, pas de texte dégradé, pas d'ombres lumineuses, cohérent avec la suppression du dégradé du 2026-09-02 ; ③ mettre à l'échelle le texte avec la ligne de base comme pivot +text-rendering: geometricPrecision, ce qui a réduit les sauts de 0,284 px à 0,014 px (la règlemotion-quality) ; utilisez-la pour les animations de mise à l'échelle de grands textes. - Adaptez aux règles Minara ; ne copiez pas l'apparence par défaut : la police doit être changée en Geist ; la couleur, la taille de police (grande interface lisible sur téléphone), la densité d'information, l'ease élastique signature et les transitions ≤0,5s suivent toujours les règles de cette compétence. Sa valeur par défaut
1280×720 @ 30fpsne remplace pas la spécification de sortie du projet Minara actuel. - Distinguez les deux types d'API : le niveau d'animation
snapcnest piloté par les images et aspeed; les primitivessnap-cn-ui(input/caret) sont pilotées par l'état de la timeline et n'ont pas despeed. Les deux doivent être reproductibles image par image ; le clignotement du curseur utiliseMath.floor(frame/15) % 2, les étapes de défilement du terminal plutôt que des eases, etMath.random()/Date.now()/ l'intervalle sont toujours interdits.
🎵 Toute la musique et les effets sonores passent par /minara-music (2026-10-14)
Après la confirmation du script par seconde, utilisez la compétence minara-music pour écrire l'ambiance de chaque section et les actions à l'écran dans cues.json. Montrez d'abord la feuille de repère à l'opérateur ; après confirmation, rendez BGM + SFX localement (lorsqu'il y a une voix off, sortez également une version avec baisse de volume). Ne téléchargez pas de musique du web sur un coup de tête.
📱 Règle de scène UI – grande UI, minimale, ne copiez pas le produit (défini par l'opérateur le 2026-08-26)
[...tronqué pour la traduction]
