Intent + emotion, not transcription
An ASR ensemble (Whisper + Voxtral) transcribes, then Gemma reconciles the hypotheses against the audio — keeping exact technical terms while adding tone and urgency.
QuietVoice is an MCP voice control plane. Your headless agent asks by voice, you answer from your phone, and it understands intent and emotion — not a blind transcript. Runs on your Mac, your GPU, your rules. No metered cloud, no lock-in.
Metered per hour. Your audio uploaded to someone else's servers. And you're locked to their stack — their models, their region, their price changes. QuietVoice keeps the audio on your box and the choice in your hands. The recording never leaves the machine under your desk.
A small control plane stays up on any box — CGO-free Go, no GPU — and exposes two MCP tools over a Telegram transport. Behind it, a swappable inference plane keeps the models hot on whatever accelerator you have. Same code everywhere; only the engine binaries are rebuilt.
A headless coding agent calls a tool when it needs your judgment.
CGO-free Go, no GPU. Speaks to your phone over Telegram.
Models kept hot. Runs local or remote by one config line.
An ASR ensemble (Whisper + Voxtral) transcribes, then Gemma reconciles the hypotheses against the audio — keeping exact technical terms while adding tone and urgency.
Apple Metal, NVIDIA CUDA, AMD ROCm. Swap the engine binaries and go — the Go layer is byte-for-byte identical across all three.
Plugs into Claude Code, Codex, or any MCP agent as two clean tools: say and listen_voice. No SDK, no glue.
The agent asks; you answer a Telegram voice note whenever you can. No terminal open, no microphone live on the host.
Sizes the brain to your GPU: a MacBook runs say + Whisper; a 16 GB card adds the Gemma brain; an MI300X batches a whole agent swarm. One config line apart.
Audio never leaves your box. A card under your desk plus pennies of electricity — instead of a subscription that meters every hour of speech.
Managed cloud voice runs about $1 for a 40-minute chapter — forever, every time, for audio you already hold. Self-hosting is a one-time card and pennies of electricity after that.
You own the box. A datacenter GPU is the scale-up when you're ready to batch a whole swarm — not a dependency you're forced to rent from day one. The same Go control plane that runs on your laptop runs in front of an MI300X unchanged.
The control plane is a single Go binary — no GPU required to start. Point it at a local or remote inference plane whenever you're ready.
$ git clone https://github.com/Ruslan/quietvoice && cd quietvoice
$ make build # or: make run (control plane)
Prebuilt multi-platform engine binaries (Metal · CUDA · ROCm) are on the GitHub Releases page — no need to build the inference plane from source.