Short-form video work usually needs fast iteration: a hook, a few alternate reads, and a final audio file that can be dropped into an editor. The CLI is useful because an agent can turn script drafts into named audio assets without switching tools.
Recommended flow
Ask the agent for a short script
Keep each line short enough for captions and editing.Write a 25-second Shorts script with:
- one opening hook
- three short beats
- one call to action
Generate a scratch take
cast "This is the fastest way to test a Typecast voice from your terminal." \
--emotion smart \
--out shorts-scratch.wav
Generate alternate hooks
cast "Stop scrolling. Your app can speak in one command." \
--emotion preset --emotion-preset happy --emotion-intensity 1.3 \
--out hook-a.wav
cast "Here is a terminal trick for instant AI voiceovers." \
--emotion smart \
--out hook-b.wav
Save final audio
cast "$(cat shorts-script.txt)" \
--voice-id tc_xxx \
--emotion smart \
--format mp3 \
--out shorts-final.mp3
Generate captions from the same take
cast "$(cat shorts-script.txt)" \
--voice-id tc_xxx \
--emotion smart \
--out shorts-final.wav \
--timestamps-out shorts-final.srt
Agent prompt pattern
Create a short-form video voiceover.
Write the script first, then generate:
1. hook-a.wav
2. hook-b.wav
3. final.mp3
4. final.srt
Use the CLI. Keep filenames descriptive, generate captions from the same final script, and do not overwrite approved takes.
Practical tips
| Goal | CLI option |
|---|
| Faster delivery | --tempo 1.08 to --tempo 1.18 |
| More energetic read | --emotion preset --emotion-preset happy --emotion-intensity 1.2 |
| More natural context | --emotion smart --prev-text ... --next-text ... |
| Editor-friendly output | --out final.mp3 --format mp3 |
| Subtitle import | --timestamps-out final.srt |
| Web preview captions | --timestamps-out final.vtt --timestamps-format vtt |
| Custom campaign voice | cast voices clone sample.wav --name "Campaign Voice" |
| Reproducible drafts | --seed 42 |
What to automate
| Shorts task | Recommended CLI feature |
|---|
| Opening hook A/B tests | Separate hook-a.wav, hook-b.wav files |
| Captions for editing | --timestamps-out final.srt |
| Browser preview captions | --timestamps-out final.vtt --timestamps-format vtt |
| Branded or creator voice | cast voices clone then use --voice-id uc_xxx |
| Fast review in a room | Run cast "short sentence" without --out for immediate playback |
Generate hooks as separate files. It makes it easier for the agent or editor to compare openings without regenerating the full narration.