Communitygithub.com

media-use

Système multimédia pour HyperFrames : résoudre, générer, opérer et mémoriser chaque type de média avec un seul skill.

Qu'est-ce que media-use ?

Ce skill transforme le flux de travail multimédia dans les projets HyperFrames en une commande unique et unifiée. Il permet de résoudre (trouver et figer localement) tout type de média : BGM, SFX, images, icônes, logos, voix off, LUTs et corrections colorimétriques. Il peut générer du contenu manquant via TTS, musique ou modèles d'image, et opérer sur les médias existants (couper, recadrer, transformer). Il supporte également la voix off, la transcription, les sous-titres et la suppression d'arrière-plan via un moteur audio partagé. Le skill propose un balayage proactif des opportunités médiatiques (voix off pour texte, icônes pour emojis, BGM pour vidéos longues, etc.) et des traitements visuels avancés (grades, LUTs, effets) sans ajout silencieux. Il est conçu pour Claude Code, Cursor, Codex et d'autres agents, et s'articule autour de la commande `resolve` qui retourne une ligne avec l'ID, le chemin, le type et les métadonnées. La réutilisation des actifs entre projets est encouragée via des candidats et un système de mémoire.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jasonfast123/hyperframes-skills/tree/main/skills/media-use

Demander à votre IA préférée

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

Documentation

Que fait media-use ?

Le système multimédia pour HyperFrames : résoudre · générer · opérer · mémoriser — chaque type de média, un seul skill, zéro bruit contextuel.

Première exécution : installer et se connecter à l'interface CLI heygen (le chemin d'utilisation gratuite), puis vérifier avec node <SKILL_DIR>/scripts/resolve.mjs --doctor. Configuration et fournisseurs : references/setup-providers.md.

Résoudre — le verbe unique

node <SKILL_DIR>/scripts/resolve.mjs --type <type> --intent "<description>" --project <dir>

Retourne une ligne : resolved <id> → <path> (<type>, <metadata>). Tout le bruit de recherche reste sur le disque.

TypeIntention (une ligne)
bgmmusique de fond (catalogue HeyGen, 10 000+ pistes)
sfxeffets sonores (bibliothèque intégrée de 19 fichiers + catalogue)
imagephotos, arrière-plans (recherche d'actifs HeyGen, 75 000+ vecteurs)
iconicônes, symboles (transparents)
logomarques officielles (svgl → simple-icons → avatar GitHub → favicon ; jamais redessiné)
voicevoix off TTS (chemin d'utilisation gratuite HeyGen ; Kokoro local optionnel)
gradecandidat de correction mesurée ; polissage/stylisation large suit Traitements Média
lutfichier .cube réutilisable validé fourni par l'utilisateur ou explicitement choisi

Avant de résoudre un nouveau fichier, lister les candidats réutilisables avec --candidates et juger par vous-même de leur pertinence — les règles de réutilisation, tous les indicateurs, l'ingestion (--from) et l'adoption sont dans references/resolve.md.

Traiter les retours visuels larges comme une intention média

Lorsqu'un utilisateur demande explicitement de corriger, polir, styliser, obscurcir, mettre en valeur ou révéler un média photographique, lisez references/media-treatments.md même s'il ne nomme pas l'étalonnage ou un effet. Inspectez le vrai <img>/<video>, choisissez une intention principale, puis utilisez la persistance et la vérification déterministes. Utilisez une recette correspondante comme graine testée optionnelle, ou inspectez hyperframes media-treatment --capabilities --json, puis demandez une famille/effet pertinent avec --capability <id> et assemblez un traitement personnalisé à partir de contrôles canoniques. Ne chargez jamais --all pour une rédaction ordinaire. Un traitement peut composer une correction, un préréglage, une finition, des effets de shader compatibles, des images clés supportées et des superpositions optionnelles de Registre. N'ajoutez que des ajustements bornés justifiés par la source et des parties compatibles, jamais des effets juste pour rendre le résultat plus sophistiqué. Persistez la charge utile combinée finale avec hyperframes media-treatment.

Utilisez un flux de travail progressif unique. Pour la vidéo, inspectez une planche-contact étiquetée tôt/milieu/tard plutôt que de lire les trames séparément. Appliquez un candidat et inspectez une après-planche pour une correction ou un polissage ordinaire. Passez aux trames individuelles ou aux preuves de brouillon animées uniquement lorsque le résultat est ambigu, temporel, stylisé, basé sur LUT, sensible HDR/LOG, privé ou critique pour la marque.

Pour une correction ou un polissage ordinaire, persistez le JSON du préréglage/ajustement du traitement final. Ne générez pas de LUT .cube simplement pour encoder l'exposition, les ombres, le contraste ou la chaleur. Utilisez une LUT uniquement lorsque l'utilisateur en fournit une ou que le traitement sélectionné en possède explicitement une. resolve --type grade --for ... --analyze est une preuve de mesure, pas une permission de remplacer le traitement choisi par une LUT générée. Ne recréez pas les effets de vignette, grain, flou, pixellisation, couleur ou traitement supportés avec des superpositions CSS/SVG ; cela contourne les contrôles Studio et le chemin canonique de shader d'aperçu/rendu.

Être proactif — effectuer un passage d'opportunité média

L'humain ne peut généralement pas dire quel média améliorerait le morceau. Vous le pouvez. Lorsque vous construisez ou révisez une composition, faites un scan fondé puis demandez une fois — n'ajoutez pas silencieusement et ne harcèlez pas par actif.

Suggérez une opportunité uniquement lorsqu'un signal concret est présent :

Signal détectéProposition
Texte à l'écran / un script sans voix offVoix off TTS (moteur audio)
Emoji ou un <div> stylisé comme une icôneRésoudre des icons réelles
Image qui est un espace réservé, minuscule ou qui semble agrandieUne meilleure image (et/ou agrandissement — voir references/operations.md)
Coupures/transitions brusques sans sonsfx de transition
Un morceau de plus de ~10s sans fond musicalbgm
Séquences qui semblent sous/surexposées ou avec une dominance coloréeUne correction d'étalonnage (inspectez-la avec hyperframes media-treatment --selector '#hero' --analyze --json)
Média photographique qui semble visuellement plat ou hors sujetUn préréglage spécifique adapté à la source ou un traitement personnalisé, avec la cible visée nommée
Une entrée/révélation média significative qui semble statiqueUne animation de traitement supportée et sans risque de décalage ; préservez la couleur sauf si la demande justifie aussi un préréglage

Règles pour que cela reste une aide, pas du harcèlement : fondé, pas générique (pas de signal → pas de suggestion) ; avisé + concret (proposez la correction spécifique avec des valeurs par défaut choisies — l'humain approuve tout / certains / rien) ; une fois par projet (une demande consolidée ; respectez "laissez-le") ; suggérez, ne modifiez jamais silencieusement (les corrections colorimétriques surtout : proposez et prévisualisez — une "correction" grise ruine un coucher de soleil ou un look néon intentionnel).

Où chercher — lisez uniquement le fichier dont votre tâche a besoin

TâcheLire
résoudre / réutiliser / adopter / ingérer, indicateurs, cascade, inventairereferences/resolve.md
étalonnage, LUTs, correction intelligente (--for), comparaison d'étalonnagereferences/grading.md
voix off / TTS, musique, SFX, sous-titres, transcription (moteur audio)references/audio.md
couper / recadrer / transformer un média existant, diffusion d'erreur exacte, HEVCreferences/operations.md
traitements créatifs conscients de la source, effets temps réel, superpositions, révélationsreferences/media-treatments.md
installer + authentification, tableau des fournisseurs, échelons RAM, --local-only, --providerreferences/setup-providers.md
préférences mémorisées + recettes figées (mémoire utilisateur)references/memory.md
matrice de propriété, statistiques d'utilisation, télémétrie, confidentialité (destiné au mainteneur)references/meta.md

Individual skills in this repo

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

embedded-captions

>

faceless-explainer

Turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video: there is no site or footage to capture, so the visuals are invented per scene (typography, abstract graphics, diagrams, data-viz). Use for topic explainers, concept breakdowns, how-tos, listicles. Not a video built from a website (/product-launch-video — promo or tour). Unclear → /hyperframes.

figma

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

general-video

>

hyperframes

>

hyperframes-animation

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition

hyperframes-audio

>

hyperframes-cli

>

hyperframes-core

The HyperFrames composition contract — build one renderable project. Use for composition structure, the `data-*` timing attributes, `class=

hyperframes-creative

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use `hyperframes-animation`.

hyperframes-keyframes

>

hyperframes-registry

Install, discover, and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block sub-composition wiring, component snippet merging, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR).

jasonfast123/hyperframes-skills

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

motion-graphics

>

music-to-video

Turn a music track (an audio file, a video to pull audio from, or a track generated from a mood brief) into a beat-synced video — lyric video, slideshow, or kinetic promo. The music drives all pacing; any user-supplied images/videos are cut onto the same beat grid, and a complete video needs zero assets. Narrated pieces → the input-matched workflow (see /hyperframes). Unclear → /hyperframes.

pr-to-video

Turn a GitHub pull request (a PR URL, owner/repo#N, or

remotion-to-hyperframes

Port an existing Remotion (React) composition

slideshow

>

talking-head-recut

Package an existing talking-head / interview / podcast video with timed, designed GRAPHIC OVERLAY cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, picture-in-picture — synced to the transcript, on a 16:9 / 9:16 / 4:5 canvas of your choice; the clip plays untouched underneath. Trigger on

Skills associés