Skip to content
Conduit

skill

fb-ad-video-studio

High-converting FB/IG/TikTok video ads built as code in Claude Code — HyperFrames compositions with a battle-tested ad structure, audio pipeline, and reverse-template workflow.

Set up

Skills are installed by placing their folder where your agent loads skills.

The download comes from github.com/ai-agents-for-agencies-coaches/fb-ad-video-studio itself, not from our server, so what you get is exactly what its author published.

Install instructions come from the README

Skills do not use an MCP config. Follow the steps in the README below.

README

synced Oct 17, 2026

fb-ad-video-studio

High-converting Facebook / Instagram / TikTok video ads, built as code in Claude Code — no editor, no After Effects, no $3k/mo motion designer.


Your best static ad still loses to video. You know it. You're still not shipping video.

Not because you can't. Because the pipeline is hell.

A single 60-second founder ad is a timeline editor, a VO booth, a silence-cutting pass, caption sync, sound design, render queue, and four rounds of "move that text up 40px." Miss the sync by 200ms and it feels cheap. Outsource it and it's $1,500 and a week per variant — so you ship one, it fatigues in eleven days, and you're back to static because video "takes too long."

Meanwhile the accounts crushing it aren't making better videos. They're making more of the same proven shape — same hook arc, same pacing, same caption rhythm — with a fresh script and a new face.

That shape is the asset. This skill is that shape, as code.

fb-ad-video-studio turns Claude Code into your motion department. It's an opinionated layer on top of HyperFrames (HeyGen's HTML-video framework): you bring a script or a recording, Claude authors the composition, and it renders to a finished MP4 — using a structure distilled from 23 production iterations of a real founder ad, not a blank timeline.

Because every ad is a composition file, you get what a timeline editor structurally can't:

  • The hook arc is baked in. Cold-open motion hook → speaker PIP arc (hidden → PIP → full → PIP → full → lockup) → whip-pan scene cuts. The rhythm that tested best across 23 versions is the default, not something you rediscover at 1am.
  • Sync is automatic, and tight. VO is transcribed to word-level timestamps; captions, SFX hits, and text reveals anchor to actual spoken words — never script estimates. 0.18s drift cuts, 0.25s reveals. It feels expensive because the timing is frame-accurate.
  • The audio pipeline is solved. ElevenLabs Chris VO with dialed-in settings, silence-cutting that trims dead air without clipping words (77s→67s typical), and a Mixkit SFX rail with tight ad-length trims. Every "free audio" dead end is already mapped so you skip it.
  • It version-controls and templatizes. git diff a headline change. And the killer move — share a winning video ad and Claude reverse-engineers its arc, pacing, and caption rhythm into a reusable template. The winner stops being a competitor's video and becomes your repeatable format.
  • It scales sideways. One composition → a dozen on-brand variants for testing. New script, new VO, new offer — same proven shape, rendered, not rebuilt.

Seven families ship ready:

TemplateLengthYou bringFor
Motion-graphics spot15–30sa VO scriptOffer/feature ads, retargeting, no on-camera talent
Talking-head founder ad45–75sa phone recordingFounder story, authority, cold traffic
iMessage conversation~10–14sa message scriptSocial-proof / "a friend told me" text-thread ads
revid-story~25sAI scene backgrounds + a VO scriptFast full-bleed "revid" story ads for lead-gen / DR
Split-screen~15stwo clips + a VO scriptReaction / UGC, claim-vs-proof, demo + talking-head
Listicle / top-515–30sa VO script"Top 5 / 5 Reasons" fast-retention faceless roundups
Whiteboard~55sElevenLabs + Gemini keysHand-drawn doodle explainer (own engine, not HyperFrames)

It's MIT-licensed and free. The render runs locally. The next video ad you would have paid $1,500 and waited a week for is one npx hyperframes render away — and the one after that is a script swap.

Install it, bring a script, and ask Claude for the ad. ⬇️


Install

As a Claude Code skill (recommended)

git clone https://github.com/ai-agents-for-agencies-coaches/fb-ad-video-studio.git \
  ~/.claude/skills/fb-ad-video-studio

cd ~/.claude/skills/fb-ad-video-studio
npm install                    # pulls the HyperFrames CLI
npx hyperframes doctor         # checks Node >=22, FFmpeg, Docker

Claude auto-discovers the skill via SKILL.md. Then just ask: "make me a 20-second motion-graphics ad for…" or "build a founder ad from this recording" or "make a video ad like this one: ".

This skill is the ad recipe on top of HyperFrames — it doesn't reimplement the framework. If the base HyperFrames skills aren't present: npx skills add heygen-com/hyperframes.

Requirements

  • Node.js ≥ 22, FFmpeg, and Docker (render runs in Docker on Linux — apparmor blocks puppeteer otherwise)
  • ELEVENLABS_API_KEY (only if generating VO via scripts/tts.py)
  • pip install faster-whisper (for caption/SFX sync timestamps)

Production pipeline

The order that survived 23 iterations. Scripts live in scripts/.

script.md
  → scripts/tts.py            VO (ElevenLabs Chris)         [or record a presenter]
  → scripts/cut-silences.py   trim dead air                 [talking-head only]
  → scripts/whisper-words.py  word timestamps (the spine)
  → scripts/reencode-footage.sh  fix sparse keyframes        [talking-head only]
  → edit the template         anchor captions/SFX to words
  → scripts/fetch-sfx.sh      Mixkit SFX rail, tight-trimmed
  → npx hyperframes lint && inspect
  → scripts/render.sh         MP4 (Docker)
ScriptDoes
tts.pyElevenLabs Chris VO with ad-tuned voice settings
whisper-words.pyWord-level timestamps → *.words.json (drives all sync)
cut-silences.pyBIT cut — trims silences, keeps 0.18s room tone
fetch-sfx.shMixkit SFX, trimmed to ad lengths + gain-staged under VO
reencode-footage.shFixes phone-MP4 sparse-keyframe seek failures
render.shnpx hyperframes render --docker (+ --frame <t> debug)

Templates

Real HyperFrames compositions in templates/ — generic brand tokens (--accent, --ink, …) and [BRACKET] placeholder copy. Scaffolds, not constraints.

  • motion-graphics-spot/ — kinetic-typography spot. Beat arc: hook · problem · solution · proof · CTA. VO + SFX, no footage.
  • talking-head-founder-ad/ — the proven speaker PIP arc, whisper-synced captions, SFX rail, whip-pan cuts, closing lockup.
  • imessage-conversation/ — animated text thread (typing dots, bubble pop-in, auto-scroll, link-preview CTA). No talent or VO.
  • revid-story/ — full-bleed AI scene backgrounds that hard-cut on whooshes behind big word-synced kinetic captions. Bring AI backgrounds + VO.
  • split-screen/ — two stacked panels (reaction/claim on top, demo/proof on bottom) with a caption band on the seam. Bring two clips + VO.
  • listicle-top5/ — "Top 5 / 5 Reasons" fast-cut spot: title card → five numbered item scenes → CTA lockup. VO script only.
  • whiteboard/ — own render engine, not HyperFrames. A marker hand scribbles each scene's line art in, then color paints over it, ending on a pristine cartoon. Needs ElevenLabs + Gemini. See templates/whiteboard/README.md.

Reverse-template workflow

The highest-leverage use: turn a winning video ad into a reusable composition. See references/reverse-template.md. You extract structure and pacing (not ownable) — never a competitor's footage, VO, music, or copy.

References

License

MIT — see LICENSE.


Free training & community

This is one of several free skills from the AI for Agencies & SMBs community.

↑↓ navigate openesc close