Sleeptalk

Configure

Language support

Choose the language you speak, and Sleeptalk moves the listening model, speaking model, and voice to the recommended ones for it.

Speech languages

The settings page offers 13 speech languages.

LanguageTag
English (US)en-US
English (UK)en-GB
Spanish (Spain)es-ES
Spanish (Mexico)es-MX
Frenchfr-FR
Germande-DE
Italianit-IT
Portuguese (Brazil)pt-BR
Dutchnl-NL
Japaneseja-JP
Koreanko-KR
Chinese (Mandarin)zh-CN
Hindihi-IN

The terminal wizard also lists Polish (pl-PL) and Urdu (ur-PK), plus Other for any BCP-47 tag. Those have no recommended voices in the catalog.

Three parts must agree

  • Listening: the speech-to-text model must recognize what you say.
  • Agent or model: it must understand the transcript and reply in your language.
  • Speaking: the text-to-speech model and voice must pronounce the reply.

The language setting is not a translation switch. If your agent replies in English, give it a reply-language instruction separately.

Change the language

  1. Run sleeptalk settings --open and open Language, or use the language picker at the top right of any settings page.
  2. Choose what you speak. Sleeptalk saves it to the profile's stt.language and tts.language.
  3. Read the confirmation. It names what moved to the new language's recommendation: the listening model, the speaking model, or the voice.
  4. Start a new call. A running call keeps its old settings.

A model or voice that was the old language's recommendation follows the language. So does one that can't serve the new language. A model or voice you picked yourself stays while it still fits. Choosing a language also shows the settings page in that language; This page in changes only the page's words. See settings.

In the terminal, run sleeptalk settings --terminal, open the advanced sections, and choose Spoken language. Agents pass --language to sleeptalk host input link.

Language fields in a profile
[stt]
language = "es-ES"

[tts]
language = "es-ES"

A hand edit changes only these fields. At call time, a listening model left on the service's English default still moves to the model recommended for the language. On OpenRouter, Venice, Groq, and Together the speaking model does too. A voice set in the profile stays as it is, so choose one for the language in settings.

Default models by language

These are the recommendations from the speech catalog.

ServiceListeningSpeaking
Cartesiaink-2 for English; ink-whisper for the other 11sonic-3 for all 13
Deepgramnova-3 for all 13Flux for English; an Aura-2 voice for Spanish, French, German, Italian, Dutch, and Japanese; no voice for Portuguese, Korean, Chinese, or Hindi
ElevenLabsscribe_v2 for all 13eleven_multilingual_v2 for all 13
OpenRouterParakeet TDT v3 for English, Spanish, French, German, Italian, Portuguese, and Dutch; MAI-Transcribe-2 for Japanese, Korean, Chinese, and HindiGrok Voice for all but Chinese; Qwen TTS Flash for Chinese
VeniceParakeet TDT v3 for the European languages; Whisper large-v3 for Japanese, Korean, Chinese, and HindiGrok Voice for all 13
TogetherParakeet TDT v3 for the European languages; Whisper large-v3 for Japanese, Korean, Chinese, and HindiCartesia Sonic 2 for all 13
GroqWhisper large-v3 turbo for all 13Orpheus, English only
LocalEnglish onlyEnglish only

Provider details that affect these defaults:

  • Deepgram receives hi for hi-IN. Korean runs on nova-3.
  • Deepgram has no Portuguese, Korean, Hindi, or Chinese voices. For those languages, pick another speaking service, such as Cartesia or ElevenLabs.
  • Groq's Orpheus voice and the local voices speak English only.
  • MAI-Transcribe-2 and Qwen3-ASR identify the language themselves, so Sleeptalk sends them no language hint. Whisper gets no hint for Chinese, because the hint makes it write English words in Chinese.
Chinese on OpenRouter

Measured on 24 September 2026 with mixed Chinese and English coding speech. MAI-Transcribe-2, given no language hint, had the lowest character error rate and kept the English terms. Parakeet has no Chinese. Qwen TTS Flash spoke Chinese with English terms correctly, with first audio in about half a second. The runners-up were Qwen3-ASR Flash for listening and Grok Voice Eve for speaking.

Default voices by language

The first native voice is the default. The settings page lists up to five native voices per language for Cartesia, Deepgram, and ElevenLabs. On OpenRouter and Venice the five Grok voices (Eve, Ara, Rex, Sal, Leo) speak every language. Together starts on Skylar for every language.

LanguageCartesiaDeepgramElevenLabsOpenRouterVenice
English (US, UK)SkylarHannahBrittneyEveEve
Spanish (Spain)MartaAlvaroCarolinaEveEve
Spanish (Mexico)FernandaLucianoMarleneEveEve
FrenchInèsHectorLucieEveEve
GermanMarleneViktoriaSusiEveEve
ItalianElenaCesareViolettaEveEve
Portuguese (Brazil)HelenaNoneKerenEveEve
DutchFleurSanderRoosEveEve
JapaneseNaokiIzanamiSakuraEveEve
KoreanMinjiNoneAnna KimEveEve
Chinese (Mandarin)JianNoneCoco LiLonganhuan (Qwen TTS Flash)Eve
HindiNehaNoneZaraEveEve

The settings page plays recorded samples in the page's language only, so a Spanish page never plays an English preview. The curated English picks drop out of the list in other languages. The voice lists are in voice_catalog.py.

Pronunciation and spoken lines

Sleeptalk rewrites developer terms, file extensions, and hostnames into how they are said aloud, such as "dot com". Those spoken forms are English, so the rewrite applies only when the language is English. Other languages get the text unchanged, except that underscores become spaces.

The short lines Sleeptalk speaks on its own, such as acknowledgements and tool narration, are written for Spanish, French, German, Portuguese, Italian, Dutch, Polish, Hindi, Urdu, Japanese, Korean, and Chinese. English uses the defaults.

Accents and mixed-language calls

Try your own accent, names, numbers, and technical terms. A matching language tag does not establish pronunciation quality.

Some models handle more than one language in a call. MAI-Transcribe-2 and Qwen3-ASR Flash handle Chinese and English in one sentence. Deepgram's multi code-switches on nova-3, but it is a listening mode and does not change the voice. Sleeptalk does not promise automatic end-to-end language switching.

Verify and troubleshoot

  1. Run sleeptalk doctor --config /path/to/profile.toml. Its language rung reports what each provider supports and which listening model the language resolves to.
  2. Say a short sentence in your language and check the transcript.
  3. Confirm the agent's reply is in your language.
  4. Listen for pronunciation, then try a long sentence, a pause, and an interruption.

A wrong transcript points to the listening model or your microphone. Correct text spoken badly points to the speaking model or voice. A reply in the wrong language points to the agent's instructions. Early turn endings need a separate turn-taking check.

Provider language lists

Sleeptalk's capability table was last checked against the provider docs in September 2026. It is a setup classification, not a full list of what each provider offers today. A language missing here is unverified by Sleeptalk, not necessarily unavailable.

Deepgram listening: Nova-3

Chinese (zh), Dutch (nl), English (en), French (fr), German (de), Hindi (hi), Italian (it), Japanese (ja), Korean (ko), Portuguese (pt), Russian (ru), Spanish (es).

Deepgram listening: switched to Nova-2

Bulgarian (bg), Catalan (ca), Czech (cs), Danish (da), Estonian (et), Finnish (fi), Greek (el), Hungarian (hu), Indonesian (id), Latvian (lv), Lithuanian (lt), Malay (ms), Norwegian (no), Polish (pl), Romanian (ro), Slovak (sk), Swedish (sv), Thai (th), Turkish (tr), Ukrainian (uk), Vietnamese (vi).

Deepgram speaking: Aura-2

Dutch (nl), English (en), French (fr), German (de), Italian (it), Japanese (ja), Spanish (es). The Flux voices are English only.

Cartesia listening: Ink-Whisper

Arabic (ar), Bengali (bn), Bulgarian (bg), Catalan (ca), Chinese (zh), Croatian (hr), Czech (cs), Danish (da), Dutch (nl), English (en), Estonian (et), Finnish (fi), French (fr), German (de), Greek (el), Hebrew (he), Hindi (hi), Hungarian (hu), Indonesian (id), Italian (it), Japanese (ja), Korean (ko), Latvian (lv), Lithuanian (lt), Malay (ms), Norwegian (no), Persian (fa), Polish (pl), Portuguese (pt), Romanian (ro), Russian (ru), Slovak (sk), Slovenian (sl), Spanish (es), Swahili (sw), Swedish (sv), Tagalog (tl), Tamil (ta), Thai (th), Turkish (tr), Ukrainian (uk), Urdu (ur), Vietnamese (vi). Ink-2 is English only.

Cartesia speaking: Sonic-3

Arabic (ar), Bulgarian (bg), Chinese (zh), Croatian (hr), Czech (cs), Danish (da), Dutch (nl), English (en), Estonian (et), Finnish (fi), French (fr), German (de), Greek (el), Hebrew (he), Hindi (hi), Hungarian (hu), Indonesian (id), Italian (it), Japanese (ja), Korean (ko), Latvian (lv), Lithuanian (lt), Malay (ms), Norwegian (no), Polish (pl), Portuguese (pt), Romanian (ro), Russian (ru), Slovak (sk), Slovenian (sl), Spanish (es), Swedish (sv), Tagalog (tl), Thai (th), Turkish (tr), Ukrainian (uk), Vietnamese (vi).

ElevenLabs: Multilingual v2, and Scribe v2

Arabic (ar), Bulgarian (bg), Chinese (zh), Croatian (hr), Czech (cs), Danish (da), Dutch (nl), English (en), Finnish (fi), French (fr), German (de), Greek (el), Hindi (hi), Indonesian (id), Italian (it), Japanese (ja), Korean (ko), Malay (ms), Polish (pl), Portuguese (pt), Romanian (ro), Russian (ru), Slovak (sk), Spanish (es), Swedish (sv), Tagalog (tl), Tamil (ta), Turkish (tr), Ukrainian (uk). Scribe v2 adds Urdu (ur), tested by hand. Scribe documents more languages; for others, Sleeptalk warns that accuracy is unknown.

Parakeet TDT v3 (OpenRouter, Venice, Together)

Bulgarian, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, German, Greek, Hungarian, Italian, Latvian, Lithuanian, Maltese, Polish, Portuguese, Romanian, Russian, Slovak, Slovenian, Spanish, Swedish, Ukrainian.

For OpenRouter, Venice, Groq, and Together, the catalog decides. If the English default covers the language, it stays. If another model is recommended for the language, Sleeptalk uses that one. If no model in the catalog documents the language, setup warns.

Implementation: language_support.py, speech_catalog.py, settings_page.py, and lexicon.py.