media-use

Agent Media OS — resolve any media need (BGM, SFX, image, icon) into a frozen local file + ledger record. One verb (`resolve`) handles the full cascade — project cache, global cache, HeyGen catalog search, freeze, register. Keeps search noise on disk, hands the agent a path. Use when a composition needs background music, sound effects, images, or icons.

npx skills add https://github.com/heygen-com/hyperframes --skill media-use

media-use

The media OS for HyperFrames: resolve · generate · operate · remember — every media type, one skill, zero context noise.

First run: install and sign in to the heygen CLI (the free-usage path), then verify with node <SKILL_DIR>/scripts/resolve.mjs --doctor. Setup and providers: references/setup-providers.md.

Resolve — the one verb

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

Returns one line: resolved <id> → <path> (<type>, <metadata>). All search noise stays on disk.

TypeOne-line intent
bgmbackground music (HeyGen catalog, 10k+ tracks)
sfxsound effects (bundled 19-file library + catalog)
imagephotos, backgrounds (HeyGen asset search, 75k+ vectors)
iconicons, symbols (transparent)
logoofficial brand marks (svgl → simple-icons → GitHub avatar → favicon; never redrawn)
voiceTTS voiceover (HeyGen free-usage path; optional local Kokoro)
grademeasured correction candidate; broad polish/stylization follows Media Treatments
lutuser-provided or explicitly chosen reusable validated .cube file

Before resolving fresh, list reusable candidates with --candidates and judge fit yourself — reuse rules, all flags, ingest (--from), and adopt are in references/resolve.md.

Treat broad visual feedback as media intent

When a user explicitly asks to fix, polish, stylize, obscure, emphasize, or reveal photographic media, read references/media-treatments.md even if they do not name color grading or an effect. Inspect the real <img>/<video>, choose one primary intent, then use deterministic persistence and verification. Use a matching recipe as an optional tested seed, or inspect hyperframes media-treatment --capabilities --json, then request one relevant family/effect with --capability <id> and assemble a custom treatment from canonical controls. Never load --all for ordinary authoring. A treatment may compose correction, a preset, finishing, compatible shader effects, supported keyframes, and optional Registry overlays. Add only source-justified bounded tuning and compatible parts, never effects merely to make the result look more sophisticated. Persist the final combined payload with hyperframes media-treatment.

Use one progressively escalating workflow. For video, inspect one labeled early/middle/late contact sheet rather than reading frames separately. Apply one candidate and inspect one after-sheet for ordinary correction or polish. Escalate to individual frames or moving draft evidence only when the result is ambiguous, temporal, stylized, LUT-based, HDR/LOG-sensitive, private, or brand-critical.

For ordinary correction or polish, persist the final treatment's preset/adjustment JSON. Do not generate a .cube LUT merely to encode exposure, shadows, contrast, or warmth. Use a LUT only when the user supplies one or the selected treatment explicitly owns one. resolve --type grade --for ... --analyze is measurement evidence, not permission to replace the chosen treatment with a generated LUT. Do not recreate supported vignette, grain, blur, pixelate, color, or treatment effects with CSS/SVG overlays; that bypasses Studio controls and the canonical preview/render shader path.

Be proactive — run a media opportunity pass

The human usually can't tell which media would lift the piece. You can. When you build or review a composition, do one grounded scan and then ask once — don't silently add, and don't nag per asset.

Surface an opportunity only when a concrete signal is present:

Signal detectedOffer
On-screen text / a script with no voiceoverTTS voiceover (audio engine)
Emoji or a <div> styled as an iconresolve real icons
Image that is a placeholder, tiny, or upscaled-lookinga better image (and/or upscale — see references/operations.md)
Hard scene cuts / transitions with no soundtransition sfx
A piece over ~10s with no music bedbgm
Footage that reads under/over-exposed or color-casta corrective grade (inspect it with hyperframes media-treatment --selector '#hero' --analyze --json)
Photographic media that feels visually flat or off-topicone specific source-appropriate preset or custom treatment, with the intended target named
A meaningful media entrance/reveal that feels staticone supported seek-safe treatment animation; preserve color unless the request also justifies a preset

Rules that keep this a help, not nagware: grounded, not generic (no signal → no suggestion); opinionated + concrete (propose the specific fix with defaults chosen — the human approves all / some / none); once per project (one consolidated ask; respect "leave it"); surface, never silently mutate (color grades especially: propose and preview — a gray-world "correction" ruins an intentional sunset or neon look).

Where to look — read only the file your task needs

TaskRead
resolve / reuse / adopt / ingest, flags, cascade, inventoryreferences/resolve.md
color grading, LUTs, smart grade (--for), grade-comparereferences/grading.md
voiceover / TTS, music, SFX, captions, transcription (audio engine)references/audio.md
cut / reframe / transform existing media, exact error diffusion, HEVCreferences/operations.md
source-aware creative treatments, realtime effects, overlays, revealsreferences/media-treatments.md
install + auth, provider table, RAM ladders, --local-only, --providerreferences/setup-providers.md
remembered preferences + frozen recipes (user memory)references/memory.md
ownership matrix, usage stats, telemetry, privacy (maintainer-facing)references/meta.md

Lebih banyak skill dari heygen-com

hyperframes-cli
heygen-com
HyperFrames CLI dev loop — `npx hyperframes` for scaffolding (init), validation (lint, inspect), preview, render, and environment troubleshooting (doctor, browser, info, upgrade). Use when running any of these commands or troubleshooting the HyperFrames build/render environment. For asset preprocessing commands (`tts`, `transcribe`, `remove-background`), invoke the `hyperframes-media` skill instead.
developmenttestingapi
hyperframes-animation
heygen-com
Semua pengetahuan animasi untuk HyperFrames — aturan gerak atomik, cetak biru adegan multi-fase, transisi adegan, teknik desain gerak yang lebih luas, DAN tujuh adaptor runtime (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Gunakan untuk tugas gerak atau animasi apa pun: pilih 2-4 aturan dan susun, atau muat cetak biru, atau cari API khusus runtime (mis. GSAP eases / Lottie player / Three.js mixer). Asli HyperFrames: linimasa jeda tunggal, aman-cari,...
creativedevelopmentdesign
hyperframes-core
heygen-com
Kontrak komposisi HTML HyperFrames. Digunakan untuk struktur komposisi, atribut data, klip, trek, sub-komposisi, variabel, pemutaran media, aturan render deterministik, dan validasi proyek minimal yang dapat dirender.
developmentmediacreative
hyperframes-media
heygen-com
Prapemrosesan aset untuk komposisi HyperFrames — TTS multi-penyedia (HeyGen / ElevenLabs / Kokoro lokal), BGM multi-penyedia (Google Lyria / MusicGen lokal), transkripsi Whisper, penghapusan latar belakang, dan pembuatan takarir. Gunakan untuk npx hyperframes tts, bgm, transcribe, remove-background, pemilihan suara/penyedia, pengaturan suasana musik, takarir / subtitle / lirik / karaoke / gaya per kata.
mediaaudiovideo
hyperframes-registry
heygen-com
Pasang dan hubungkan blok serta komponen registry ke dalam komposisi HyperFrames. Gunakan saat menjalankan hyperframes add, memasang blok atau komponen, menghubungkan item yang sudah terpasang ke index.html, atau bekerja dengan hyperframes.json. Mencakup perintah add, lokasi pemasangan, penghubungan sub-komposisi blok, penggabungan cuplikan komponen, penemuan registry, serta pembuatan blok atau komponen baru untuk kontribusi ke hulu (ide → kerangka → validasi → PR).
developmentapicode-review
general-video
heygen-com
Gunakan sebagai cadangan untuk pembuatan komposisi video HTML HyperFrames kustom ketika tidak ada alur kerja khusus yang cocok. Mencakup potongan panjang atau multi-adegan, reel merek/sizzle, montase, kartu judul, poster gerak dengan durasi panjang, loop statis, dan komposisi bebas dalam format atau panjang apa pun. Bukan untuk promosi produk yang dipasarkan (product-launch-video), tangkapan video dari situs web umum (website-to-video), penjelas topik (faceless-explainer), video PR GitHub (pr-to-video), pemberian teks pada rekaman yang sudah ada...
videocreativemedia
motion-graphics
heygen-com
Gunakan saat pengguna menginginkan grafik gerak pendek berbasis desain di mana gerakan adalah pesannya: tipografi kinetik, hitungan angka atau statistik, pukulan grafik data, logo sting, penguncian merek, sepertiga bawah, callout, overlay sosial, judul/cuitan/berita animasi, poster gerak, atau sorotan halaman yang ditangkap cepat. Biasanya di bawah 10 detik dan hingga ~30 detik, tanpa alur narasi, sulih suara, atau subjek aksi langsung. Dapat dirender ke MP4 atau overlay transparan. Bukan untuk karya yang lebih panjang, multi-adegan, bernarasi, atau potongan reel merek...
creativevideodesign
hyperframes-read-first
heygen-com
Mulailah di sini untuk setiap permintaan membuat, menciptakan, menghasilkan, mengedit, menganimasikan, atau merender video, animasi, grafik gerak, video penjelas, kartu judul, hamparan, video dengan teks, promosi produk, video situs web, video PR atau changelog, montase data, poster gerak, atau komposisi HTML HyperFrames. Gunakan sebelum keterampilan video atau animasi lainnya ketika pengguna ingin HyperFrames menulis atau merender video MP4/web yang sudah jadi, memilih alur kerja, atau merutekan antara video peluncuran produk, video penjelas tanpa wajah, situs web-ke-video,...
creativevideomedia