Skip to content
BlackNode App
Sign in Start workspace

Reelmaker

A pipeline skill that turns one sentence into a polished 9:16 reel: hero shots from Nano Banana 2 → 6–8s Seedance morph → ElevenLabs TTS → Whisper word-sync → GSAP per-word captions → brand endcard, composed by HyperFrames into a 1080×1920 H.264 MP4.

When to use it

  • You want a vertical reel for TikTok / Reels / Shorts, not a 16:9 explainer.
  • You're OK with AI-generated B-roll. (For real footage, use the video-editor skill — Ultra only.)
  • You have ≤ $1 of credits and ~3 minutes of wall-clock to spare.

Quickstart

claude
# > "make a 9:16 reel about Printara. Hook with
#    'turn your kid's drawing into an Etsy bestseller',
#    5 segments, save to /workspace/printara-1.mp4"

Claude picks the reelmaker skill, generates a 5-segment config, kicks off HyperFrames and streams progress back to the terminal. Output lands at the path you specified.

Output format

  • Resolution — 1080×1920 (TikTok / Reels / Shorts native).
  • Codec — H.264 + AAC (works on iOS Safari without re-encode).
  • Bitrate — ~8 Mbps for 25–30s reels (~15–25 MB total).
  • Default destination/workspace/{name}.mp4.

Five hard rules (don't break them)

  1. Each segment uses class="clip" + data-start. The orchestrator depends on the attribute.
  2. Videos must be direct root children of <body>. Don't wrap them in containers.
  3. Strip the audio from Seedance and the endcard before render. They reuse the bus and clip the master.
  4. No imperative JS playback (video.play()). Let HyperFrames drive it.
  5. Hard-kill safety after exit tweens — otherwise GSAP leaves dangling listeners.

Environment variables

KIE_API_KEY=...            # Nano Banana 2 + Seedance 2 + Kling
OPENAI_API_KEY=...         # Whisper (word-level timestamps)
XSKILL_API_KEY=...         # TTS (ElevenLabs-compatible)
ELEVEN_VOICE_ID=...        # optional, defaults to Adam
cwd gotcha. compose-from-assets.mjs requires relative output paths like -o final.mp4. Absolute paths break on directories that contain spaces. Always cd into the reel directory first.

Cost

  • 5-segment reel ≈ 4 PNG + 1 morph + 60s TTS + Whisper ≈ $0.30 – $0.80 per reel.
  • Higgsfield premium (Ultra plan, priority queue) ≈ 22–35 credits / reel ≈ $2 – $4.

Troubleshooting

  • Captions clip the top of frame — bump caption.safeTop to 0.28 in config.json.
  • Audio out of sync after segment 3 — you forgot to strip audio from Seedance. Re-run with --strip-audio.
  • Render hangs at 100% on the endcard — GSAP exit tween blocking; the safety kill timer should land within 6s.
Last updated 2026-05-21 Edit on GitHub soon