HeyGen launches CLI for one-command avatar video and batch translation
HeyGen released a Mac and Linux CLI that creates avatar videos, lip-synced translations, voice matches, and photo avatars from terminal commands. The binary returns structured JSON and wait flags, which makes video generation scriptable for localization and agent workflows.


TL;DR
- Hasan's launch demo shows HeyGen shipping a terminal CLI that turns a natural-language prompt into a rendered avatar video, with no browser step in the loop.
- According to the install tweet and the CLI overview, the tool ships as a single binary for macOS and Linux and installs into
~/.local/binwith a curl pipe. - Hasan's feature list and the CLI docs say the command set already covers prompt-based video creation, lip-synced translation, voice matching, photo-to-avatar flows, webhooks, and structured JSON responses.
- Hasan's scripting examples highlight the part that matters for automation: a
--waitflag, JSON output, and shell-friendly commands that let a script create, poll, and download videos without manual clicks.
You can browse the CLI docs, inspect the installer script, and see in the shell examples thread that HeyGen already expects people to loop over languages, block until completion, and hand results off to other tools.
One binary, one prompt
The nicest part of this release is how little ceremony it adds. Hasan's demo shows a single prompt in the terminal producing a talking avatar video, while the CLI overview frames the tool as direct command-line access to HeyGen's v3 API.
The install story is equally stripped down. Hasan's install tweet says there is no runtime to manage, and the installer script confirms the binary installer picks the right macOS or Linux build, verifies SHA-256 checksums, and supports pinned stable versions with --version.
JSON-native commands
Hasan's capability rundown is basically a checklist for creative ops teams that want video generation to behave like any other CLI job. The current surface includes:
- Text prompt to full avatar video
- Video translation with lip-sync
- Voice design from descriptive text
- Photo upload to speaking avatar
- Webhook registration for completion events
- Structured JSON responses by default
That last item is the big unlock. The CLI overview says every command wraps the v3 API and returns machine-friendly output, which makes jq, CI jobs, and agent runtimes first-class users instead of afterthoughts.
Translation loops and wait flags
Hasan's examples gets more specific about the workflows: one script creates a video, waits for completion, checks status, and downloads the file; another loops a single source video through Spanish, French, German, Japanese, and Korean; another pipes the finished URL straight into xargs open.
The CLI docs add a few details that matter in practice. heygen video-agent create --prompt "..." returns IDs immediately, heygen video get <video_id> can resume status checks later, and --wait blocks for up to 20 minutes by default before timing out with a resumable state.
Platforms, auth, and v3 scope
One detail tucked into the docs is that this CLI is part of a bigger platform shift. The developer quick start says HeyGen's new capabilities, including the CLI, MCP support, Voice Design API, improved error handling, lipsync models, and a 99.9% SLA, are exclusive to v3, while legacy v1 and v2 endpoints stay supported until October 31, 2026.
The CLI overview also fills in the practical edges: authenticate with heygen auth login or HEYGEN_API_KEY, credentials live under ~/.heygen/credentials, macOS and Linux are supported today across Intel, Apple Silicon, x64, and arm64, and Windows support is not here yet, with WSL recommended in the meantime.