Communitygithub.com

OliviaPp8/minara-video-skills

Le flux de travail standard de l'opérateur pour créer des vidéos marketing, de lancement ou de démonstration Minara. Basé sur la compétence hyperframes, avec un processus plus strict : confirmer le style → storyboard détaillé → texte → construire chaque scène séparément → confirmer un script par seconde → itérer sur une page de test locale → ne rendre que lorsque l'utilisateur est satisfait.

Qu'est-ce que minara-video-skills ?

Cette compétence définit la procédure opératoire standard pour la production de vidéos Minara (marketing, lancement, démonstration) où chaque image est construite en code via HyperFrames. Elle est conçue comme un wrapper plus strict autour de la compétence `hyperframes`, ajoutant des étapes de validation à chaque phase : confirmation du style, storyboard détaillé, écriture du texte, construction scène par scène, confirmation d'un script par seconde, itération sur une page de test locale, et rendu final uniquement sur approbation utilisateur. La compétence impose des règles de conception fixes, notamment l'utilisation exclusive de la police Geist (sans exception, sauf demande explicite de changement de police), le chargement obligatoire des règles de composition HyperFrames et de la bibliothèque de plans `video-shotcraft`, ainsi que la consultation de la bibliothèque de composants Remotion `remocn` et `snapcn` sur demande. Le flux de travail intègre également la gestion de la musique et des effets sonores via la compétence `minara-music`, avec création d'une feuille de repère (`cues.json`) avant rendu. Les plateformes supportées incluent Claude Code, Cursor et Codex, et la compétence insiste sur l'utilisation de plans déterministes et reproductibles, en évitant tout code non déterministe comme `Math.random()` ou `Date.now()`.

Compatible avec✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/OliviaPp8/minara-video-skills/tree/HEAD/skills/minara-video

Demander à votre IA préférée

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

Aperçu

Depuis le README du skill

minara-video-skills preview

Documentation

/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-video n'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 dans hyperframes. Écrire du HTML de scène sans le charger rencontrera des problèmes connus (timeline en pause, enregistrement de window.__timelines, pas de Math.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-video pour que les règles soient dans le contexte actuel.
  • Ordre de chargement : Skill(hyperframes) d'abord → puis lire $VIDEO_WORKSPACE/video-shotcraft/SKILL.md en entier → puis Read $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écutez ls d'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 : cp les actifs dont vous avez besoin dans le dossier assets/ 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-video démarre, lisez son SKILL.md en 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-video reste centré sur les compositions seek-safe d'HyperFrames, les aperçus scène par scène et le flux de rendu ; video-shotcraft fournit 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 pas Date.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 explicitement Ink Press ou Remotion, ou demande de reproduire ce modèle, lisez template/TEMPLATE.md en 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>.md et la source d'implémentation correspondante demos/<card-name>/ en entier ; lisez references/sequences/ lorsque vous avez besoin d'une structure de film entier, et references/sound-design.md et assets/audio/ATTRIBUTION.md lorsque 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/, ou demos/ 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 le skills/remocn/SKILL.md local en entier. Pour un film complet, lisez ensuite skills/remocn/references/anatomy.md et les references/archetypes/<type>.md correspondants ; 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.json manque, exécutez d'abord npx 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.txt pour filtrer, puis lisez la page .../<component>.md spé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 source registry/ 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. Length dans 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éfaut 1280×720 @ 30fps ne 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 primitives remocn-ui sont pilotées par l'état de la timeline et n'ont pas de prop speed. Les deux doivent être reproductibles image par image, et Math.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/ (GitHub snapcndev/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 le skills/snapcn/SKILL.md local. Choisissez les composants via la table de routage à skills/snapcn/references/components/index.md (avec Utiliser pour / Éviter pour / Longueur / Ambiance), et ouvrez uniquement les references/components/<name>.md sé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) et references/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 source registry/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> (@snapcn est déjà dans le répertoire de registre shadcn, donc aucune configuration de registres n'est nécessaire). Le projet Remotion a besoin d'un components.json d'abord, et de l'alias @/ configuré à la fois dans tsconfig.json et remotion.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ète llms-full.txt) ; ne devinez pas les props / valeurs par défaut / durées. Length est la longueur naturelle en images de l'action propre du composant (par exemple answer-stream 150f, search-typing 420f), 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 dans skills/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ègle motion-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 @ 30fps ne remplace pas la spécification de sortie du projet Minara actuel.
  • Distinguez les deux types d'API : le niveau d'animation snapcn est piloté par les images et a speed ; les primitives snap-cn-ui (input / caret) sont pilotées par l'état de la timeline et n'ont pas de speed. Les deux doivent être reproductibles image par image ; le clignotement du curseur utilise Math.floor(frame/15) % 2, les étapes de défilement du terminal plutôt que des eases, et Math.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]

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

OliviaPp8/minara-video-skills

Create Minara product guide/tutorial videos from screen recordings supplied by the operator. Use for /minara-guide-video, “给录屏加字幕配音”, retiming a new recording cut, building a timeline approval player, or correcting caption/product meaning. Drives caption-recording from source analysis through pre-render approval, final verification, and local delivery. Not for synthetic HyperFrames marketing videos.

OliviaPp8/minara-video-skills

Generate background music and synced sound effects for Minara videos from the per-second script. Translates each scene's mood and on-screen actions (taps, typing, success, notifications, transitions) into a cue sheet, then renders BGM + SFX locally (numpy synth, no external service), with optional ducking under the voiceover. Use for /minara-music, "配乐", "生成音乐", "BGM", "按脚本生成音乐", "加音效", or when a minara-video / minara-guide-video project needs a music bed.

OliviaPp8/minara-video-skills

Make Minara use case / beginner tutorial videos (mobile App or desktop), rebuilding the product UI in HyperFrames code and walking through the real user path step by step. Unlike minara-video (marketing demo, UI redesign allowed), this skill requires a faithful UI: copy, layout, components, and interaction paths all follow the product frontend code and screen recordings. Triggers: "use case 视频", "教程视频", "操作演示", "新手教程", "按 App 界面做一个视频"; also makes covers for these videos ("封面", "cover", "缩略图").

OliviaPp8/minara-video-skills

Write Minara video scripts before any animation work — launch / promo films, single-scene supplements, use case tutorials. Turns a brief, product screenshots, frontend code, Figma frames or a feature note into an English-only script doc built around a keyframe sheet; each keyframe has a still image (rendered from UI code, exported from Figma, or AIGC-generated from screenshots), a picture description, the voiceover line, on-screen text (花字) with style, timing and duration, and the BGM style / sound cues. Also covers what each scene must land, user flow + UI copy, voiceover word budget and open questions, in a calm, neutral, natural voice. Then hands off to minara-video, minara-usecase-video and minara-music. Use for /minara-videoscript, "写视频脚本", "视频脚本", "分镜脚本", "关键帧", "关键帧脚本", "花字", "补充脚本", "旁白稿", "video script", "voiceover script", "keyframes".

Skills associés