Skip to main content
The CLI can create a custom voice from a local WAV or MP3 sample, print the new uc_ voice ID, and use that voice for text-to-speech.

Clone from a sample

cast voices clone sample.wav --name "My Clone"
The command prints the cloned voice ID by default, which makes it easy to use in scripts:
voice_id=$(cast voices clone sample.wav --name "Review Clone")
cast "Short test line." --voice-id "$voice_id" --out review.wav
cast voices delete "$voice_id"

Use JSON output for handoff

cast voices clone sample.mp3 --name "Review Clone" --json
Use JSON when an agent or another tool needs structured fields such as the cloned voice ID and suggested next-step values.

Generate speech with the cloned voice

cast "Hello from my cloned voice." \
  --voice-id uc_xxx \
  --emotion smart \
  --out cloned.wav

Clean up cloned voices

cast voices delete uc_xxx

Constraints

ConstraintValue
Input audioWAV or MP3
Max file size25 MB
Voice name1-30 characters
Modelssfm-v30
Treat cloned voices as project assets. Name them clearly, record which output files used them, and delete temporary clones when the workflow is done.