Your agent speaks from a GPU you run
Dograh is the self-hostable voice agent platform with an open-source workflow builder. Start with Kokoro as it ships, or put another open model behind a small server, and give each agent its own voice.
From model server to first call
Put the voice behind one endpoint
/v1/audio/speechthe route that turns text into audio
Your server turns the agent's reply text into raw 24 kHz PCM, with no WAV or MP3 wrapper.
→ Kokoro-FastAPI already answers this route
Choose it in the voice settings
Local Models (Speaches)the self-hosted voice option
Enter the server's address and model name. Kokoro's af_heart voice is the default, with speed from 0.25 to 4.0.
→ Set the speed after hearing it on a phone
Judge it where callers hear it
8 kHzwhat most phone lines still carry
A voice that sounds rich in a browser loses detail on an 8 kHz line, so pick it on a real call.
→ Listen to how it reads your prices and dates
Open voices, sorted by what you can ship
Kokoro fits as it ships. Other models need a raw 24 kHz PCM server and a test call.
Their licences generally rule out paid calls, even on your own servers.
Swap an agent to a hosted voice and its flow stays as it was.
Five checks before the voice goes live
- Weights licence readThe licence on the weights, not only the code, generally allows a paid line.
- GPU in placeFirst audio timed on your own card at peak, since a CPU can leave seconds of silence.
- Dates spelled outThe prompt has the model write dates and codes as words before the voice reads them.
- Consent on fileAny cloned voice comes from someone who agreed, with that consent kept on file.
- Fixed lines recordedPolicy wording plays as a recorded clip that skips the voice model.
What an open voice changes
Replies voiced in-house
On self-hosted Dograh, reply text never goes to a voice vendor. Run speech-to-text and the LLM locally as well and the whole call stays inside.
GPU hours, not characters
You pay for the card you run, not for every character the agent speaks.
A voice for each agent
A support line can run Kokoro while a sales agent keeps a hosted clone.
Clones under open licences
Chatterbox and Qwen3-TTS Base models clone from a short clip, with weights you can generally ship in a paid product.
Compare the open voices, model by model
Which open-source voice runs in Dograh with no extra work?+×
Kokoro 82M. Serve it with Kokoro-FastAPI, choose Local Models (Speaches), and the defaults already point at the kokoro model and the af_heart voice.
Can I run a model other than Kokoro?+×
Yes. Put it behind a server that answers /v1/audio/speech with raw 24 kHz PCM, enter its address and model name, then place a test call.
Do I need a GPU for an open voice?+×
Plan on one. On a GPU, Kokoro-FastAPI starts speaking in about 300 ms. An older desktop CPU takes about 3.5 seconds, which callers hear as a dead line.
Can I put any open TTS model on a paid line?+×
No. XTTS-v2 and F5-TTS carry non-commercial licences, and VibeVoice is a research release. Apache-2.0 and MIT models such as Kokoro and Chatterbox generally allow it.
Does an open voice keep all call audio private?+×
It covers the agent's side. The caller's audio goes to speech-to-text, so run that and the language model locally too, with Dograh self-hosted.
Can I go back to a hosted voice later?+×
Yes. The voice is a model setting, so an agent moves to ElevenLabs or Cartesia on your own key without any change to its flow.
Start on Kokoro. Choose a voice per agent.
Self-host in one command, or start on Dograh Cloud.
$ curl … start_docker.sh && ./start_docker.sh