Skip to main content
Glama

dottie-talk

Local voice: STT + koko TTS (:1314) + HTTP façade (:1320).

Standalone. No gateway. No Dottie.app.

npm install
npm start

Bins ship in bin/ (macOS). Models download on first boot (~/.cache/parakeet.cpp, ~/.cache/dottie-talk or ~/.dottie).

Platform

STT

TTS

Apple Silicon (darwin)

parakeet-server :1315 (bundled)

koko :1314

Omarchy / Linux

system voxtype CLI

koko :1314 (ELF fetched on first start as bin/koko-linux-x86_64)

Command

What

npm start

HTTP :1320 (starts STT+TTS)

npm run mcp

MCP stdio

npm run tts

TTS only (:1314)

dottie-talk speak "hi" / speak "hi"

TTS → speech.wav (or -o / stdout)

dottie-talk transcribe a.wav / transcribe a.wav

STT → text on stdout

dottie-talk start

same as npm start

dottie-talk health

STT/TTS readiness JSON

dottie-talk keys on

enable talk-keys-style hotkeys (off by default)

dottie-talk keys off

disable hotkeys

dottie-talk keys status

enabled / armed / chords

dottie-talk bar on

Omarchy menubar icon (hidden until start)

dottie-talk stop

stop the HTTP server

npx speak "hello" -o hello.wav
speak "hello" -o hello.wav   # after dottie-talk bar on (~/.local/bin/speak)
npx transcribe hello.wav

Node ≥22. Override STT with DOTTIE_STT=voxtype or DOTTIE_STT=parakeet.

Linux: install Voxtype first (Omarchy: Install → AI → Dictation, or voxtype-bin). npm start skips the Darwin bin/koko and downloads the linux-bins ELF (no sudo). Streaming/multipart STT needs parakeet — buffered JSON /v1/audio/transcriptions works on both.

Keys (Linux)

Talk-keys analog. Off by default. Enable, then keep npm start running so binds arm:

dottie-talk keys on
npm start

Chord

Action

Omarchy

Super+Shift+S

Speak primary selection (else clipboard). Second tap stops.

Replaces Google Maps while armed

Super+Shift+V

Toggle dictation (voxtype)

Leaves Super+Ctrl+X / F9 alone

Escape

Stop speak

Only consumed while playback is active

Config: ~/.config/dottie-talk/config.json

{
  "keys": {
    "enabled": false,
    "speak": "SUPER + SHIFT + S",
    "stop": "ESCAPE",
    "dictate": "SUPER + SHIFT + V",
    "voice": ""
  }
}

DOTTIE_TALK_KEYS=on / off overrides enabled. Hotkeys no-op when the HTTP server is down. macOS: use talk-keys.

Related MCP server: io.github.chicogong/ffvoice

Bar (Omarchy)

Menubar icon only while npm start is running. Click: keys toggle, speak selection, stop, quit. Middle-click quits.

dottie-talk bar on
dottie-talk start

start on Linux also installs the plugin (sd.dottie-talk) next to Dottie if the bar does not already have it.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    A local voice interface providing high-performance speech recognition and natural text-to-speech with voice cloning capabilities. It enables AI assistants to speak, listen, and engage in character-based voice conversations through integrated MCP tools.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Local-first speech-to-text and text-to-speech MCP server. Hot-swappable engines via config.yaml — no code changes, no API keys required.
    2
    MIT