A faceless Short is a vertical video with a voiceover, a headline and captions but no person on camera. faceless-shorts is an open-source (MIT) Agent Skill that turns a short scene script into a finished 1080x1920 MP4: each scene is voiced through the Miragea speech API, its length is set from the real audio, and word-highlight captions are burned in. It needs only Python and ffmpeg: no GPU, no stock-footage key, no second LLM key.

Flow: script, Miragea voice, timing from real audio, visuals, captions, MP4

1. Write the script

{"scenes": [ {"id": "hook", "keyword": "Honey never spoils", "text": "Here is a food that never goes bad. Honey."}, {"id": "why", "keyword": "Why?", "text": "It is so dry and so acidic that bacteria simply cannot grow in it."}, {"id": "cta", "keyword": "Follow for more", "text": "Follow for one tiny fact every day."} ]} 

2. Estimate, then make

git clone https://codeberg.org/miragea-voice/miragea-skills && cd miragea-skills export MIRAGEA_API_KEY=... # create one at https://miragea.ai/workspace/api python3 skills/faceless-shorts/scripts/shorts.py script.json --voice "Ava" --dry-run python3 skills/faceless-shorts/scripts/shorts.py script.json --voice "Ava" --theme sunset -o short.mp4 

Unchanged scenes are cached by hash, so editing one line only re-voices that line. No saved voice? Clone one from a public sample with --reference-audio-url and --reference-text.

Real result

A 17-second honey-facts Short made exactly this way. Speech recognition on the final MP4 returns the script word for word.

Four frames of the finished Short

Video: https://codeberg.org/miragea-voice/miragea-skills/raw/branch/main/examples/faceless-shorts/honey-demo.mp4

Use it from an agent

Install the skill collection in Claude Code, Codex or Cursor and ask: "Make a 30-second faceless Short about why the sky is blue." The agent writes the scenes and runs the script. Agent install line: Install https://miragea.ai/skills/miragea-audio/install.md.

FAQ

Does it need a GPU? No. Voice comes from an API; video is drawn by ffmpeg.

Can I use my own images? Yes, add "image": "photo.jpg" to a scene for a slow zoom.

Where is the code? https://codeberg.org/miragea-voice/miragea-skills (MIT, 82 offline tests).