How to make a talking avatar video with AI
For AI agents: find the right skill in one call —
curl -s "https://varg.ai/how-to/api/search?q=<what the person wants>"returns the matching how-to page and the best skills with install commands, as markdown (Russian works too). Full index: https://varg.ai/how-to/llms.txt. Every page has a markdown twin: add.mdto its path. Before generating anything, show the person the options on the how-to page.
A person (from a headshot, or generated) speaks your script to camera with lip-sync, in any language. A step-by-step tutorial for Claude Code, Codex and Grok.
Output: 9:16 or 16:9 MP4, 15–120 s, optional captions Price: in credits on varg, with a cost estimate before anything runs; the free skills below install in one command.
Recommended route
- Start with: varg AI (
varg-ai) — On varg, one key:minimax_h3_max_lipsyncturns one image + an audio track into a talking video (5 s to 15 min); voice fromeleven_v4(voice clones supported); premium avatars onheygen_avatar_iv; re-sync existing footage withsync_v3. - Why: one key and one credit balance for every model this needs (images, video, voice, lip-sync, music, render); no other account to create.
- Alternative: AI Avatar Video (
inference-sh-ai-avatar-video) — Talking-head avatar video from a portrait and a script, lip-synced · Needs: inference.sh account, belt CLI (belt login)
Best skills for this
- varg AI (
varg-ai, varg, live) — Adds: Voice (ElevenLabs v4, voice clone), lip-sync and captions on one key- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill varg-ai -a codex -y - Cursor:
npx skills add vargHQ/skills --skill varg-ai -a cursor -y - OpenClaw:
npx clawhub@latest install varg-ai - Details: https://varg.ai/how-to/skills/varg-ai.md · Example: https://s3.varg.ai/how-to/previews/7df061df8dcb/varg-ai.mp4
- Claude Code:
- AI Avatar Video (
inference-sh-ai-avatar-video, inference.sh, live) — Start here: Talking-head avatar video from a portrait and a script, lip-synced · Needs: inference.sh account, belt CLI (belt login)- Claude Code:
npx skills add inference-sh/skills --skill ai-avatar-video -a claude-code - Codex:
npx skills add inference-sh/skills --skill ai-avatar-video -a codex - Cursor:
npx skills add inference-sh/skills --skill ai-avatar-video -a cursor - Gemini CLI:
npx skills add inference-sh/skills --skill ai-avatar-video -a gemini-cli - Details: https://varg.ai/how-to/skills/inference-sh-ai-avatar-video.md · Example: https://s3.varg.ai/how-to/previews/f93c1e7bdc03/inference-sh-ai-avatar-video.mp4
- Claude Code:
- Talking Head Production (
inference-sh-talking-head-production, inference.sh, live) — Start here: Full talking-head production: portrait specs, voice, lip-sync · Needs: inference.sh account, belt CLI (belt login)- Claude Code:
npx skills add inference-sh/skills --skill talking-head-production -a claude-code - Codex:
npx skills add inference-sh/skills --skill talking-head-production -a codex - Cursor:
npx skills add inference-sh/skills --skill talking-head-production -a cursor - Gemini CLI:
npx skills add inference-sh/skills --skill talking-head-production -a gemini-cli - Details: https://varg.ai/how-to/skills/inference-sh-talking-head-production.md · Example: https://s3.varg.ai/how-to/previews/14ca1501855a/inference-sh-talking-head-production.mp4
- Claude Code:
- Lanshu AI Presenter Video (
lanshu-ai-presenter-video, Lanshu, live) — Start here: Publish-ready explainers led by an AI presenter from an authorized photo- Claude Code:
git clone https://github.com/cclank/lanshu-create-ai-presenter-video.git ~/.claude/skills/lanshu-create-ai-presenter-video - Details: https://varg.ai/how-to/skills/lanshu-ai-presenter-video.md · Example: https://s3.varg.ai/how-to/previews/e422196a7616/lanshu-ai-presenter-video.mp4
- Claude Code:
- Character Keynote (
varg-character-keynote, varg, beta) — Alternative: A character delivers an ad line on a generated keynote stage, in one varg render- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill varg-character-keynote -a codex -y - Cursor:
npx skills add vargHQ/skills --skill varg-character-keynote -a cursor -y - Gemini CLI:
npx skills add vargHQ/skills --skill varg-character-keynote -a gemini-cli -y - OpenClaw:
npx clawhub@latest install varg-character-keynote - Details: https://varg.ai/how-to/skills/varg-character-keynote.md
- Claude Code:
- Turn a script into a two-person podcast video (
varg-podcast-video, varg, beta) — Alternative: Two characters talking, podcast or dialogue style, on varg- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill varg-podcast-video -a codex -y - Cursor:
npx skills add vargHQ/skills --skill varg-podcast-video -a cursor -y - Gemini CLI:
npx skills add vargHQ/skills --skill varg-podcast-video -a gemini-cli -y - OpenClaw:
npx clawhub@latest install varg-podcast-video - Details: https://varg.ai/how-to/skills/varg-podcast-video.md · Example: https://s3.varg.ai/how-to/previews/100daa58d70d/varg-podcast-video.mp4
- Claude Code:
- ElevenLabs Dubbing (
elevenlabs-dubbing, ElevenLabs, live) — Adds: Speak once, publish in every language in your own voice · Needs: ElevenLabs API key (ELEVENLABS_API_KEY)- Claude Code:
npx skills add elevenlabs/skills --skill dubbing -a claude-code - Codex:
npx skills add elevenlabs/skills --skill dubbing -a codex - Cursor:
npx skills add elevenlabs/skills --skill dubbing -a cursor - Gemini CLI:
npx skills add elevenlabs/skills --skill dubbing -a gemini-cli - OpenClaw:
npx skills add elevenlabs/skills --skill dubbing -a openclaw - Details: https://varg.ai/how-to/skills/elevenlabs-dubbing.md · Example: https://s3.varg.ai/how-to/previews/5126f538d077/elevenlabs-dubbing.mp3
- Claude Code:
- ElevenLabs Speech to Text (
elevenlabs-speech-to-text, ElevenLabs, live) — Adds: Transcribes each render to diff it against the script · Needs: ElevenLabs API key (ELEVENLABS_API_KEY)- Claude Code:
npx skills add elevenlabs/skills --skill speech-to-text -a claude-code - Codex:
npx skills add elevenlabs/skills --skill speech-to-text -a codex - Cursor:
npx skills add elevenlabs/skills --skill speech-to-text -a cursor - Gemini CLI:
npx skills add elevenlabs/skills --skill speech-to-text -a gemini-cli - OpenClaw:
npx skills add elevenlabs/skills --skill speech-to-text -a openclaw - Details: https://varg.ai/how-to/skills/elevenlabs-speech-to-text.md
- Claude Code:
- HyperFrames (
hyperframes, HeyGen, live) — Adds: The cards and split screens that take over every 2–3 sentences- Claude Code:
claude plugin marketplace add heygen-com/hyperframes && claude plugin install hyperframes@hyperframes - Codex:
npx skills add heygen-com/hyperframes --skill hyperframes -a codex - Cursor:
npx skills add heygen-com/hyperframes --skill hyperframes -a cursor - Gemini CLI:
npx skills add heygen-com/hyperframes --skill hyperframes -a gemini-cli - Details: https://varg.ai/how-to/skills/hyperframes.md · Example: https://s3.varg.ai/how-to/previews/400daa5dc577/hyperframes.mp4
- Claude Code:
Ask the person first
Put these choices in front of the person before spending anything. Paste the example link next to each option: people pick a look by seeing it.
Format?
- Explainer: avatar + designed cards · real example: https://x.com/nateherk/status/2075338792785846404
- Dub my video into other languages — ElevenLabs Dubbing · example: https://s3.varg.ai/how-to/previews/5126f538d077/elevenlabs-dubbing.mp3
- The 'it's my AI clone' reveal · real example: https://x.com/dolfinmediahub/status/2090835189685489684
Whose face?
- Your headshot (with your consent)
- A generated character, labelled
- A stylized character — Character Keynote
Voice?
- Clone your voice
- Stock voice
Setting?
- Plain background
- Studio / stage — Character Keynote
- Home office
How to make a talking avatar video: step by step
- Get written consent for the face and voice; write the script for speech and mark a card every 2-3 sentences
- Voice the whole approved script once, transcribe that audio and fix names and numbers before any video call: it is the master clock
- Quote the seconds, run a 10 s presenter pilot, then generate takes under ~45 s split at real pauses, same image and settings
- Edit: presenter full-frame only for hook and close, cards with the avatar in a corner, word-timed captions, an 'AI clone' tag from the first second
- Transcribe the render, diff it against the script, watch it once with sound; then dub into other languages
What works now (researched 2026-10-27)
What wins in late 2026 is a consented clone of a real, named person (you, your founder) used as an explainer host: it talks for a few sentences, designed cards or a split screen take over, and the same take ships dubbed into other languages. A stock avatar reading a script full-frame, or an avatar posing as a customer or expert, stopped working: viewers spot the mouth and the too-smooth voice, platforms auto-label AI, and EU law requires a clear deepfake label since 2 August 2026.
- Never hold the avatar full-frame for long. Every 2-3 sentences, cut to a designed card or a split screen with the avatar small in a corner, and keep each continuous avatar take under about 45 s. The most-saved avatar explainers of 2026 are built this way: Nate Herk's fully agent-made Avatar V video (287,834 views, 2,219 bookmarks) and a HeyGen + HyperFrames explainer (115,587 views, 1,097 bookmarks). A hands-on test of HeyGen Avatar V in April 2026 still rated lip-sync the weakest part (mouth opens too wide on plosives) and found stock-avatar hands and gestures read as artificial; its 45-second render held identity start to end. (Nate Herk on X, Avatar V explainer made from one prompt (Jul 2026))
- Label it where the viewer sees it: a small 'AI clone' tag on screen from the first second, plus the platform's AI-content toggle. Use only faces and voices you have written consent for. EU AI Act Article 50 applies from 2 August 2026 and requires clear labelling of deepfakes (at the latest at first exposure); the Commission published official EU AI icons on 10 June 2026. YouTube requires disclosure when AI makes it look like someone gave advice they did not give; cloning your own voice for a dub does not need it. TikTok and YouTube now auto-label via C2PA and SynthID anyway. (Heuking, Commission specifies labelling for AI content and deepfakes (Jul 2026))
- Don't cast an avatar as a customer, doctor or financial adviser. Use it for a real person's own voice: founder updates, lessons, product walkthroughs, internal training. The FTC rule in force since 21 October 2024 bans testimonials from people who don't exist or never used the product, with civil penalties up to $51,744 per violation. YouTube's monetization policy names 'AI-generated podcast hosts offering financial guidance' and an 'AI doctor providing medical diagnoses' as not monetizable. (FTC, final rule banning fake reviews and testimonials (Aug 2024))
- QA every render against the script: transcribe the output, diff it word by word, check names and numbers, and listen for pace. Slow the voice a little; 'too fast and smooth' is the first tell viewers name. In an April 2026 test HeyGen silently rewrote the German, Spanish and French scripts (about 78% word similarity) and mangled the author's surname, with no warning in the UI. Replies under Nate Herk's 288k-view avatar video called out speed and monotone narration as the giveaway. (CTAIO Labs, My AI clone: video avatars tested (Apr 2026))
- Localize before you re-shoot: switch on YouTube auto-dubbing and Meta AI translations first, then render your own cloned-voice dub with lip re-sync only for ads and for languages the platforms don't cover. YouTube auto-dubbing covers 27 languages and more than 6 million viewers watch over 10 minutes of auto-dubbed content every day (Dec 2025 data); its lip-sync is still a pilot for select channels. Meta translates Reels with optional lip-sync, free for public Instagram accounts. (PPC Land, YouTube auto dubbing tops 6M daily viewers, 27 languages (May 2026))
Stopped working:
- Avatars posing as customers, doctors or finance experts (including 'AI podcast hosts' giving advice): fake testimonials under the FTC rule and not monetizable on YouTube.
- One stock avatar, same set and outfit, full-frame for a minute or more: plosive lip-sync errors and stiff gestures show, and the sameness fatigues audiences early.
- Unlabeled realistic clones, or any clone of a real person without written consent: platforms auto-label via C2PA and SynthID, and EU law now requires a clear label.
Prompts that work
Templates from the creators of the best current results and from the model guides. Fill in the {CAPS}.
Presenter take from one portrait + locked audio (omnihuman_v2)
Animates an authorized portrait to the final voice track: one lip-synced presenter take. Run a 10 s pilot first, then each segment with the same image and settings. Adapted from lanshu-create-ai-presenter-video, presenter prompt structure (references/generation.md).
Use the supplied image as the only presenter and the only scene reference. Keep exactly what is visible: {FRAMING: chest-up, centered}, {HAIR}, {GLASSES_OR_NONE}, {TOP_AND_COLOR}, {BACKGROUND}, camera at eye height, {LIGHT: soft key from the left}, same exposure and white balance.
Performance: speaks the supplied audio to camera with exact lip timing. Realistic skin, hair and eye moisture, natural breathing, bilateral blinks every few seconds, small head nods on stressed words, calm restrained energy.
One gesture only: at about {T}s, on the words "{PHRASE}", one small open-palm gesture below the collarbone, away from the face and lens; hands rest low or out of frame the rest of the time.
Ending: last 0.5 s mouth closed and settled, looking into the lens.
Camera locked off, no zoom, no cuts.
Do not change: face, identity, glasses, hair, wardrobe, skin tone, background, camera, lighting. No extra fingers, no hands near the face, no added dialogue, no text, logos, watermark or extra people.
Avatar explainer with designed cards (agent brief) (agent)
The prompt you give Claude Code or Codex to plan, voice, generate and edit the whole explainer in HyperFrames, with the presenter as host and cards carrying the facts. Adapted from HyperFrames docs, Add an AI avatar presenter to a video.
Make a {LENGTH: 45-75}-second {RATIO: 9:16} explainer about {TOPIC} for {AUDIENCE}, presented by {PRESENTER: my consented digital twin}. Build it in HyperFrames.
1. Script: hook, promise, 2-4 useful beats, synthesis, close. Write for speech: short sentences, numbers as they are said. Mark [CARD] every 2-3 sentences. Show me the script and wait for my OK.
2. Voice the whole approved script once with {VOICE}. Transcribe that audio and fix names, numbers and dropped words before any video call. This audio is the master clock.
3. Tell me the seconds and cost, run a 10 s presenter pilot from {PORTRAIT}, wait for my OK, then generate takes under 45 s, split only at real pauses, same image and settings.
4. Edit: presenter full-frame only for the hook and the close. At every [CARD] cut to a full-screen designed card (number, steps, comparison) with the presenter small in a corner circle. Short word-timed captions, music under the voice, a small "AI clone" tag from the first second.
5. Before you show me: transcribe the render and diff it against the script. The presenter says the approved words with names and numbers right, never covers the point of a card, and you watched it once with sound.
Rewrite the script for a natural v4 read (eleven_v4)
Run before voicing: turns a written script into eleven_v4 input that does not sound 'too fast and smooth', the first tell viewers name. Adapted from ElevenLabs docs, prompting Eleven v3/v4 (audio tags, pauses, speed).
Rewrite the script below as input text for ElevenLabs v4, spoken by {SPEAKER} to {AUDIENCE} in {LANGUAGE}. Keep every fact, name and number; change only how it is said.
- Sentences of 6-14 words, one idea each. Lead with the payoff.
- Pauses: v4 ignores SSML break tags. Use [Brief pause] between sections, an ellipsis (...) for a hesitation, and line breaks between thoughts.
- Delivery tags, sparingly (one per 2-3 sentences at most, never stacked): [curious], [excited], [sighs], [exhales], [laughs], [whispers].
- Emphasis: CAPITALIZE one key word in at most every third sentence.
- Write numbers, dates and units the way they are spoken ("forty-two percent").
- Mark [CARD] where a number, list or comparison should appear on screen (every 2-3 sentences); strip [CARD] before sending to TTS.
Return the rewritten text, then one line: suggested speed {0.9-0.95} (allowed 0.7-1.2).
Script: {SCRIPT}
Trending formats to remake
To remake one: download the example with the media-download skill, take a frame a second and the transcript, write a beat list (time, shot, camera, on-screen text, sound), keep what the format needs, swap in the person's product or character (never the creator's face, voice, logo or footage), show the beat list and stills before spending, then make it with the skill named below.
- Digital-twin explainer with designed cards: Your consented clone presents a topic; every few lines the frame splits or cuts to a full-screen card with the numbers, the avatar shrinks to a corner bubble, captions stay short. Why it spreads: It carries information on the cards and hides lip-sync drift. Nate Herk's one-prompt Avatar V explainer: 287,834 views, 2,219 bookmarks (1.06 per like). A Japanese HeyGen + HyperFrames explainer: 115,587 views, 1,097 bookmarks (1.31 per like). Keep: Keep a consented clone of a real person, full-frame only for the hook and close, a full-screen card with the number every 2-3 sentences while the avatar shrinks to a corner circle, takes under 45 s and an 'AI clone' tag from second one; swap the topic, the face and the card palette. Make it with Lanshu AI Presenter Video (
lanshu-ai-presenter-video).- Example to remake: @nateherk on X, 2026-07-09, 288K views, 2K saves: Fully agent-made: one /goal prompt to GPT 5.6 Sol, HeyGen Avatar V clone of himself, ElevenLabs voice, split-screen motion cards every few lines. Read the replies for the quality bar: viewers flag 'too fast and smooth' and monotone delivery.
- Example to remake: @panchaaan_2 on X, 2026-05-05, 116K views, 1K saves: Training-style explainer: avatar at a podcast desk, then a full-screen 5-step diagram with the avatar in a corner circle. Stack named in the post: Codex + HeyGen + ElevenLabs + HyperFrames.
- Speak once, publish in every language: Record (or clone) one take, then dub it in your own cloned voice and re-sync the lips per language; target-language captions on top, the original line in small type under it. Why it spreads: Reach without re-shooting, and the person stays real. KhayaAI's English-to-Ewe dub of a founder video: 99,616 views (Twi version: 69,623). Instagram's built-in AI translation turned a creator's reel into Hindi with lip-sync: 86,348 views. YouTube reports 6M+ daily viewers watching 10+ minutes of dubbed content. Keep: Keep one real take in your own cloned voice with lips re-synced per language, target-language captions on top and the original line small underneath, and turn on the platforms' free auto-dubbing first; swap the language and the speaker. Make it with ElevenLabs Dubbing (
elevenlabs-dubbing).- Example to remake: @pazunre on X, 2026-09-29, 100K views, 167 saves: Career-advice talking head dubbed English to Ewe with lip re-sync; Ewe subtitle on top, English line underneath. Maker's own product (Khaya AI), shown on real content.
- Example to remake: @Scaife51 on X, 2026-04-24, 86K views, 83 saves: Screen recording of Instagram's own AI translation: his football reel in Hindi, his voice, moving lips, minutes after posting. Proof the free platform layer comes first.
- The clone reveal: Open like a normal tip from the creator, then reveal in the first line or on screen that the person talking is their AI clone. The reveal doubles as the disclosure. Why it spreads: The 'can you tell?' twist drives replies and saves: 535 bookmarks on 15,425 views (1.58 bookmarks per like, 140 replies). Works only with your own face and a visible label. Keep: Keep it looking like a normal tip from you for the first line, then reveal on screen and in the caption that it is your AI clone, with bold short captions and cutaways to the real screens; only with your own face; swap the tips. Make it with AI Avatar Video (
inference-sh-ai-avatar-video).- Example to remake: @dolfinmediahub on X, 2026-08-21, 15K views, 535 saves: Vertical clone of the creator listing free AI tools, bold captions, cutaways to tool screens; the caption reveals it is her AI clone. No workflow shared.
Open-source repos
- cclank/lanshu-create-ai-presenter-video (3K★): Agent skill that makes a verified presenter explainer from a script and one authorized portrait (or a styled film with no presenter). How: Script, then the full narration locked as the master clock and checked by ASR, then a cheap presenter pilot, then provider-neutral lip-sync split at real pauses when a provider caps duration; a HyperFrames edit adds captions and keyword graphics, and decode plus loudness QA gate delivery (eight evidence-based states). Install as a skill: https://varg.ai/how-to/skills/lanshu-ai-presenter-video.md
- MeiGen-AI/InfiniteTalk (8K★): Open model for audio-driven talking video of any length, from one image or by re-dubbing an existing video. How: Wan2.1-I2V-14B plus a wav2vec2 audio encoder; streaming mode generates chunk after chunk with motion frames carried over, syncing lips, head, body and expression to the audio at 480p or 720p; low-VRAM runs via Wan2GP or ComfyUI.
- Francis-Rings/StableAvatar (1K★): Open video diffusion model for long, identity-preserving avatar video from one image and an audio track. How: Wan2.1-1.3B based, with a time-step-aware audio adapter that stops lip-sync drifting on long clips; extract the audio, separate the vocals from music for cleaner sync, then run inference at 480x832, 832x480 or 512x512.
Set up varg
varg is one API key for the models these skills drive — Seedance 2.5, Kling 4, Veo 3.1, Wan 3, Nano Banana 2.1, GPT Image 2.5, ElevenLabs v4 and 200+ more — billed in credits, with a cost estimate before anything runs.
- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg(skill + hosted MCP) - Codex, Cursor, Gemini CLI, OpenClaw:
npx skills add vargHQ/skills --skill varg-ai -a <agent> -y - Grok and any agent that reads SKILL.md:
npx skills add vargHQ/skills --skill varg-ai, or point it at the skill's SKILL.md - Claude.ai, ChatGPT, any MCP client: connect
https://mcp.varg.ai/mcp - API key: https://varg.ai/dashboard/api · Model specs: https://varg.ai/models/llms.txt