Privacy

Your voice never leaves the device.

Murmur is a single-binary Mac app. There is no Murmur server. The only outside service it ever calls is Anthropic's API — and only when you opt in to polish mode with screen context.

Audio

Whisper runs locally on your Mac via Apple's MLX framework. There is no streaming, no audio upload, and no cloud transcription option — both quick mode and polish mode transcribe on-device.

While you hold the hotkey, Murmur captures microphone input into an in-memory buffer. Nothing is written to disk. On release, Whisper transcribes the buffer locally and the buffer is freed.

Screen context

Off by default. You enable it in the setup wizard, and it only fires when you trigger polish mode (double-tap, then hold). Quick-mode dictation never captures the screen.

When polish mode runs with screen context on, Murmur captures one PNG of the focused window, base64-encodes it, sends it to api.anthropic.com alongside the transcript, and discards it on receipt. Screenshots are never written to disk.

If you turn screen context off in the wizard, polish mode still works — Claude just gets the transcript without an image.

Replies (polish mode only)

Anthropic generates the polished reply and returns it. Murmur pastes it into the focused field and forgets it. We don't log or store replies.

Anthropic's commercial terms govern what they do with the request — by default API traffic is not used to train models. Quick mode never calls Anthropic at all.

API keys

Your Anthropic API key is stored locally in ~/.config/voice-reply/config.json, readable only by your user account. Murmur reads it only when making a polish-mode request.

Murmur has no backend, no analytics, and no telemetry. There is nowhere else for the key — or anything else — to go.

What Murmur never does

Questions

If anything here is unclear or you want detail on a specific code path, the source is open — read it, or email hello@murmur.app.