Warning: Loca is still in its early testing phase
Please report issues via email or at the GitHub repository
Speech

Text-to-Speech

Last updated 2026-08-13

Loca can read the agent’s replies aloud with Text-to-Speech. It is the counterpart to Speech-to-Text: where one turns your speech into a message, this turns the agent’s answer into audio, so a conversation can be entirely spoken if you want it to be. It is useful when your eyes or hands are busy, or when you would rather listen than read.

Note

Text-to-Speech can run locally, so replies are voiced on the Core and never sent away. Like Speech-to-Text, it can also use an External provider, which sends the reply text to an outside API to be voiced instead.

Turning it on

Enable Text-to-Speech under its group in Settings, then pick a Provider. Local runs the synthesis on the Core, so nothing leaves the machine; External sends the reply text to an OpenAI-compatible API and plays back what it returns. For a Local provider you then choose a model and a voice: the model is the engine that produces the speech, and the voice is the particular sound it speaks in. An External provider takes a base URL, an API key, and a model and voice name instead.

Text-to-Speech
Enable Text-to-Speech

Each local model offers its own set of voices, and some span several languages, so the right model depends as much on the voice and languages you want as on raw quality. Picking one may need a one-time download, which Loca always asks about first and never fetches in the background.

Once it is on, replies are spoken as they arrive, so spoken output pairs naturally with Speech-to-Text for a hands-free session: you talk, the agent answers aloud, and you never touch the keyboard.

How It Works

Speaking a reply as it streams means Loca cannot wait for the whole answer before it starts. Instead the Client breaks the incoming text into small pieces, roughly a sentence at a time, and hands each one to the Core as soon as it is complete. The Core’s speech service synthesizes that piece into audio and sends the sound back, and the Client plays the clips in order. Because the pieces are produced and played back to back, you hear a continuous reply rather than the answer arriving all at once at the end. With a Local provider that synthesis runs on the Core’s device with the voice model you chose, so the audio never leaves the machine; with an External provider the Core posts each piece to the API you configured and streams the audio it returns.

Next, the standing instruction that shapes the agent across a whole session: The System Prompt.