hyperframes-showreel
SkillMediaTurn real screen and site footage into a rhythmic showreel rendered with HyperFrames: sampling, edit script, redacted clips, a generated composition, Veo only as additive FX, music edit + camera punches, delivery render and export QA. Use on \"make a showreel from these recordings\", \"build the HyperFrames video\", \"assemble the footage edit\", \"render and QA the showreel\".
Use hyperframes-showreel in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add hyperframes-showreel and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the hyperframes-showreel skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by blackbelttechnology/pi-agent-dashboard in packages/video-production/.pi/skills/hyperframes-showreel/SKILL.md and read by Ahel’s review.
End-to-end pipeline from real footage to a delivered HyperFrames showreel. HyperFrames
is used only through its public CLI (npx hyperframes …); none of its skills or code
is vendored here. Last verified with HyperFrames 0.8.72 (2026-09-24) — a data point,
not a pin.
Ground rules
- Footage-only rule — every process shown on screen comes from real footage. No AI insert may depict a process that has no footage; if there is no recording of it, the beat is cut from the script.
- Screen-blend FX rule — Veo output is used only as an additive FX layer: rendered
on a black background and composited with
mix-blend-mode: screenover the footage (light, particles, flares, scan lines). It never replaces a shot.
Pipeline
- Footage sampling — contact sheets of every source (
ffmpeg -i src.mov -vf "fps=1/2,scale=480:-2,tile=6x6" sheet_%02d.png); note sensitive regions and usable moments with timecodes. - Edit script — acts, shots, source timecodes, on-screen copy, FX layer map. Every shot names its source clip and in/out.
- Clip cutting with redaction baked in — one call per clip via the
footage-redactionskill (crop / delogo / timed blur in source-frame coordinates), then contact-sheet verification of every clip. - Generated composition, pass 1 — a generator script turns the shot table into
index.html+ one scene sub-composition per act, with provisional scene durations and a temp track or none. See references/generator-pattern.md. - Optional Veo FX layers — black-background renders (e.g.
veo-showreel-production-kit+veo-generator), screen-blended per the rule above. npx hyperframes checkand snapshots —checkmust report 0 errors;npx hyperframes snapshot --at <t1>,<t2>,…at scene midpoints to verify framing.- Preview and user review —
npx hyperframes preview; the user approves the picture before music is fitted. - Music, punches, generation pass 2 — cut the music with
music-edit-to-length(listen-before-lock), pick hits withbeat-sync-video, then regenerate the composition: re-run the generator with scene starts from_edit.json(downbeats_video, a boundary on each drop), punches from_hits.json, and root duration = the edit'sduration. - Delivery render —
npx hyperframes render . -o ../export/showreel_v1.mp4 --fps 30 --quality delivery --video-frame-format png. - Export QA — the gate below; a render is not "done" until it passes.
- Upload — copy the export (and its subtitles) to the agreed share; record the location next to the file.
Music skills not installed? Step 8's music skills ship in
@blackbelt-technology/pi-dashboard-music-production
(pi install npm:@blackbelt-technology/pi-dashboard-music-production). Without them,
continue with the unedited music track and no punches: set the root duration to the
track length and skip the pass-2 punch step.
Pitfalls
- (a) Install scope. Default: follow the upstream installer —
npx hyperframes skills updateinstalls into the universal store~/.agents/skills, which pi reads; the router installs further workflows there lazily. Only when the user wants project-only scope: after everyinit,init --skillorskills update(including the router's lazy workflow installs), copy the directories just installed into the user project's.pi/skills/. Do not modify the global store by default — it is machine-wide, other projects may use it, and the router re-installs into it anyway. Warn that project and global copies may then coexist at different versions. Remove global copies only after the user explicitly confirms (ask_user) that no other project uses them, and only the directories and lock entries that call just created. Never apply this to the dashboard repository's own.pi/skills. - (b) Blend on the wrapper.
mix-blend-modeand anyopacitygo on the FX wrapper (.fxw); never put opacity on a wrapper whose inner video carries the blend — the blend then composites against the wrapper, not the footage. - (c) Audio needs an id. Every
<audio>element needs anid, or the render is silent. - (d) Never hand-edit generated files. Composition HTML is generated; change the
generator and re-run it (and
check). - (e) Flash snapshots. A snapshot landing exactly on a flash tween looks washed out — expected; snapshot a few frames later before judging.
Export QA gate
ffprobe -v error -show_entries stream=codec_type,codec_name,width,height,r_frame_rate:format=duration -of json export/showreel_v1.mp4
ffmpeg -hide_banner -i export/showreel_v1.mp4 -af loudnorm=print_format=json -f null - 2>&1 | tail -12
ffmpeg -v error -ss <drop_t> -i export/showreel_v1.mp4 -vf "fps=8,scale=480:-2,tile=8x1" -frames:v 1 qa_drop_strip.png
ffmpeg -v error -sseof -4 -i export/showreel_v1.mp4 -vf "fps=2,scale=480:-2,tile=8x1" -frames:v 1 qa_end_strip.png
Pass criteria:
- one video + one audio stream; resolution and fps as specified;
durationequals the music edit'sduration±0.1 s; - integrated loudness (
input_i) and true peak (input_tp) reported; note the platform target (−14 LUFS integrated for web platforms, true peak ≤ −1 dBTP) and whether a finalloudnormpass is needed; - frame strips at the drop and at the end card inspected: the drop cut lands on the beat, the end card holds with the logo fully visible, no redaction leak.
Signals
- GitHub stars
- 315
- Forks
- 47
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
hyperframes-showreel- Source
- github.com/blackbelttechnology/pi-agent-dashboard
github.com/blackbelttechnology/pi-agent-dashboard
Related picks
Skill · handsontable
The pick for End-to-end testingmstar-e2e
Skill · btspoony
The pick for End-to-end testingprototype
Skill · mattpocock
More in Mediabrand-guidelines
Skill · anthropics
More in Mediaaccessibility
Skill · affaan-m
More in Mediagrill-with-docs
Skill · mattpocock
More in Media