Agency OS Skill Library

HeyGen Avatar Videos

Produces AI avatar videos in HeyGen, from talking heads and explainers to short cinematic clips and multi-scene productions.

Video First result: 30 minutes heygen
Back to all skills

What it does

Creates avatar-led videos in HeyGen across four modes: a talking head of 60 seconds or more for explainers, training and VSLs; short cinematic clips of 5 to 15 seconds with body movement and camera work; a full production mixing dialogue scenes with cinematic hooks and closers; and B-roll only with no avatar. It delivers either a finished video and download link generated through the API, or a fully written prompt plus exact dashboard settings you paste in yourself. Every mode starts from an optimised prompt, because output quality tracks prompt quality almost entirely.

Say this to start

This skill has no button. You start it by saying what you want. Any of these will do it:

/create-video
> make a HeyGen video
> AI avatar video
> talking head video
> explainer video
> make a video with a talking photo

When to reach for it

When NOT to use it

If you actually wantUse this instead
writing the spoken script when the ask is a sales videovsl-architect
writing the persuasive copy itselflegendary-copywriters
a multi-shot shot list with effects timelines and density mapsvideo-prompt-builder
still image prompts or overall art directioncreative-director
editing raw camera or screen footage you already haveauto-editor
slicing an existing long video into clips and postsvideo-repurposer

Before you start

What you needWhy
A HeyGen account at app.heygen.comneeded for every mode, including the one where you paste the prompt into the dashboard yourselfRequired
A HeyGen API key set as the HEYGEN_API_KEY environment variablerequired for the two API modes, generate-for-me and precise scene control. Without it you can still use the dashboard-prompt modeOptional
HeyGen credits on the accountgeneration spends real credits. Cinematic clips run at 4 premium credits per second, so a 15 second clip is 60Required
A check of protocol/current-tool-stack.mdif the workspace names a different avatar-video tool as the tool of record, the request should be routed there instead. The tool-stack file wins that decisionRequired
Your topic or script, plus who the video is forthe skill needs the video type, duration and audience before it can write an optimised promptRequired
Workspace brand files: owner profile, voice profile, ICA and verified claimsthey set the styling, the script tone, the audience angle, and the grounding for anything claimed on screen or out loudOptional
HeyGen MCP tools configuredpreferred over raw HTTP calls when present. Without them the skill falls back to direct API calls with your keyOptional

Installing what it needs

No toolchain to install. This skill needs one thing: your own HeyGen API key, for the modes that generate through the API.

Set your HeyGen key

From your HeyGen account settings. Without it the skill still produces the script and the prompt for you to run manually, so it degrades rather than blocks.

echo 'export HEYGEN_API_KEY=your_key_here' >> ~/.zshrc && source ~/.zshrc

Check it worked

Should print your key. If it prints nothing, open a new terminal.

echo $HEYGEN_API_KEY

How it runs

  1. Routing checkIt reads the workspace tool-stack file first. If a different avatar-video tool is on record, it says so in one line and routes you there rather than running. The craft below transfers either way.
  2. It asks what kind of videoTalking head at 60 seconds or more, a cinematic clip of 5 to 15 seconds, a full production mixing both, or B-roll only with no avatar. That answer decides which references load and which generation path is used.
  3. It asks how you want it deliveredGenerate it through the API and hand you a download link; write you a prompt to paste into the HeyGen dashboard; or take precise scene-by-scene control with exact avatar, voice and background per scene.
  4. It writes an optimised promptEvery mode goes through prompt optimisation before anything is sent. The prompt sets format, duration, orientation, tone, avatar, then scene by scene: which are avatar scenes, which are B-roll, what the voiceover says, and the music treatment.
  5. Generation or handoverOn the API path it submits the job and polls until the video is ready, then gives you the download URL. On the dashboard path it hands you a copyable prompt block plus the exact settings to use: duration, orientation, which avatar, style preset and whether to plan first or generate immediately.
  6. Cinematic clips, if the video needs themShort clips use their own prompt anatomy: subject, action, setting, one camera movement, style, mood, duration, always closing with smooth motion and stable framing. Constraints are hard: 15 seconds maximum per generation, one camera movement, positive phrasing only, up to three reference images and no human faces among them.
  7. Full productions get splitDialogue scenes are generated with the talking-head mode and hooks and closers with the cinematic mode, and it tells you the split before generating so you know what you are paying for.
  8. Fallback and loggingIf the API errors or the video sits pending past ten minutes, it offers to switch you to the dashboard path and hands over the optimised prompt. Finished videos are logged to your workspace assets file with the date.

What you get

Honest limits

Read this before you rely on it

Where people go wrong

The mistakeDo this instead
Passing a talking photo ID as the avatar ID in an API callThe API does not accept them. Switch to the dashboard-prompt mode and select the talking photo there.
Sending a rough one-line prompt and judging the tool by the resultNever send an unoptimised prompt. Quality depends almost entirely on prompt quality, which is why the skill optimises before every generation in every mode.
Writing cinematic clip prompts with negations, such as 'no shaky camera'Positive prompting only. Describe what you want, and close with smooth motion and stable framing.
Stacking camera movements to make a clip feel dynamicOne camera movement per shot, never stacked. Dynamism comes from the subject's action and the shot choice.
Trying to script one long production as a single generationSplit it. Dialogue scenes on the talking-head path, hooks and closers on the cinematic path, then edit together.
Worth knowing

When you need a multi-shot video rather than a single scene, run video-prompt-builder first. It produces the structured shot list with effects breakdown and paste-ready blocks that feed directly into this skill's cinematic clip mode, so you are not inventing camera language shot by shot inside the generation step.