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.
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.
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).


