Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/heygen-com/hyperframes/media-usenpx skills add heygen-com/hyperframes --skill media-usegit clone --depth 1 https://github.com/heygen-com/hyperframesWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00144 | $0.01562 |
| Opus 5 | $0.00072 | $0.00781 |
| Sonnet 5 | $0.00029 | $0.00312 |
| Haiku 4.5 | $0.00014 | $0.00156 |
Grade A, and why
media-use scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
Copies of this mod
1 near-identical copy found in the catalogue:
- media-use — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.
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.
| Type | One-line intent |
|---|---|
bgm |
background music (HeyGen catalog, 10k+ tracks) |
sfx |
sound effects (bundled 19-file library + catalog) |
image |
photos, backgrounds (HeyGen asset search, 75k+ vectors) |
icon |
icons, symbols (transparent) |
logo |
official brand marks (svgl → simple-icons → GitHub avatar → favicon; never redrawn) |
voice |
TTS voiceover (HeyGen free-usage path; optional local Kokoro) |
grade |
measured correction candidate; broad polish/stylization follows Media Treatments |
lut |
user-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.
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- .gitignore 17 B
- audio/assets/sfx/chime.mp3 27 KB
- audio/assets/sfx/click-soft.mp3 11 KB
- audio/assets/sfx/click.mp3 11 KB
- audio/assets/sfx/CREDITS.md 1.2 KB
- audio/assets/sfx/error.mp3 51 KB
- audio/assets/sfx/glitch-1.mp3 82 KB
- audio/assets/sfx/glitch-2.mp3 110 KB
- audio/assets/sfx/glitch-3.mp3 97 KB
- audio/assets/sfx/impact-bass-1.mp3 66 KB
- audio/assets/sfx/impact-bass-2.mp3 81 KB
- audio/assets/sfx/key-press.mp3 3.8 KB
- audio/assets/sfx/manifest.json 3.6 KB
- audio/assets/sfx/notification.mp3 77 KB
- audio/assets/sfx/ping.mp3 26 KB
- audio/assets/sfx/pop.mp3 23 KB
- audio/assets/sfx/riser.mp3 314 KB
- audio/assets/sfx/sparkle.mp3 56 KB
- audio/assets/sfx/typing.mp3 26 KB
- audio/assets/sfx/whoosh-cinematic.mp3 173 KB
- audio/assets/sfx/whoosh-short.mp3 18 KB
- audio/assets/sfx/whoosh.mp3 18 KB
- audio/references/bgm.md 7.8 KB
- audio/references/captions/authoring.md 8.8 KB
- audio/references/captions/motion.md 5.5 KB
- audio/references/captions/transcript-handling.md 5.3 KB
- audio/references/remove-background.md 8.3 KB
- audio/references/requirements.md 4.2 KB
- audio/references/sfx.md 3.4 KB
- audio/references/transcribe.md 2.7 KB
- audio/references/tts-to-captions.md 1.2 KB
- audio/references/tts.md 8.6 KB
- audio/scripts/audio.mjs 13 KB runs code
- audio/scripts/audio.test.mjs 1.9 KB runs code
- audio/scripts/heygen-tts.mjs 4.2 KB runs code
- audio/scripts/lib/bgm.mjs 11 KB runs code
- audio/scripts/lib/bgm.test.mjs 1.2 KB runs code
- audio/scripts/lib/concurrency.mjs 527 B runs code
- audio/scripts/lib/concurrency.test.mjs 1.6 KB runs code
- audio/scripts/lib/heygen.mjs 6.9 KB runs code
- audio/scripts/lib/heygen.test.mjs 3.5 KB runs code
- audio/scripts/lib/python.mjs 2.5 KB runs code
- audio/scripts/lib/python.test.mjs 2.6 KB runs code
- audio/scripts/lib/sfx.mjs 5.3 KB runs code
- audio/scripts/lib/sfx.test.mjs 2.8 KB runs code
- audio/scripts/lib/tts.mjs 16 KB runs code
- audio/scripts/lib/tts.spawn.test.mjs 5.1 KB runs code
- audio/scripts/lib/tts.test.mjs 6.0 KB runs code
- audio/scripts/lyria-recipe.py 4.9 KB runs code
- audio/scripts/wait-bgm.mjs 5.4 KB runs code
- luts/index.json 2.0 KB
- luts/README.md 1.1 KB
- references/audio.md 1.7 KB
- references/grading.md 6.6 KB
- references/media-treatment-recipes.md 35 KB
- references/media-treatments.md 14 KB
- references/memory.md 3.3 KB
- references/meta.md 6.6 KB
- references/operations.md 14 KB
- references/resolve.md 8.8 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 97 lines · 144 tokens per session scan A 1301ea7cb53a
media-use is a skill published in the GitHub repository heygen-com/hyperframes (43,141 stars, last pushed 2d ago), licensed Apache-2.0. It adds 144 tokens to every session and 1,562 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
motion-graphics
Build frame-exact motion graphics — animated logos, kinetic typography, brand videos, animated titles and social clips — as a single HTML file driven by a paused Web Animations timeline, then export them to MP4 in 1:1, 4:5 and 9:16. Use this whenever someone wants to animate a wordmark or logo, make a video from text…
frame-data-chart-nyt
NYT-newsroom typography, staggered reveal animation, and editorial-grade charts (line, bar, or range band).
browser-use
Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, or extract information from web pages.
generate-3d-model
Turn a text prompt into a downloadable, textured 3D model (GLB). Use when you or the user want to generate, create, make, or forge a 3D model, asset, object, mesh, or prop from a text description — "make a 3D model of a robot", "generate a GLB of a sword", "I need a 3D chair". Runs on the FREE text→3D lane (no key, no…
rig-a-model
Auto-rig a static 3D GLB model into an animation-ready one. Use when you or the user have an existing GLB and want to rig it, add a skeleton, add bones, make it posable, or make it animatable — "rig this model", "add a skeleton to my GLB", "make this character animation-ready". Takes a GLB URL, adds a humanoid…
rebuild-site
Rebuild a whole landing page / multi-section website from a screen recording that scrolls or walks through it. Use when the user has a recording of an ENTIRE page (not a single animation) and wants the full page recreated — layout, sections, copy, design system, and scroll animations. Orchestrates analyze (measured…