Just talk. Murmur types it.
A tiny menu-bar cat that turns your voice into text — instantly, on the fly, in any app and ~30 languages. Everything runs right on your Mac: no accounts, no cloud, nothing recorded.
⬇ Download for Mac · Free & open source · powered by MLX
brew tap bshk-app/homebrew-tap
brew install --cask murmur…or grab the latest .app from Releases.
Murmur keeps itself up to date in-app via Sparkle.
On first launch a one-time setup downloads the two on-device models (~3.6 GB).
- Hold the shortcut. One global hotkey (default ⌃⌥Space), anywhere in macOS — the menu-bar cat wakes up and starts listening.
- Just speak. Talk naturally. Murmur catches every word in real time — no "processing" spinner, no waiting.
- It's typed for you. Words land straight in whatever field has focus — Slack, Notes, your terminal, a code comment.
The dual-model trick: a lightweight model types an instant draft so you never wait, and a split second later an accurate model catches up and quietly sharpens each word — fixing names, punctuation, and homophones in place. You watch it tidy itself up.
Auto-detects what you're speaking — around 30 languages, from global majors to most of Europe — and even handles code-switching between two in one breath.
Your voice never leaves your Mac. Both models run locally, so dictation works on a plane, in a tunnel, or fully offline.
- 100% offline — no audio upload, nothing stored, no accounts.
- Optional diagnostics — anonymous usage/error analytics (PostHog) are opt-in: off until you enable them on the Welcome screen (or in Settings), and only anonymous events are ever sent — never your audio or transcripts. Builds from source ship with analytics off entirely.
- macOS 15 (Sequoia) or later
- Apple Silicon (M1 or newer) — speech runs on MLX / Metal
- Microphone — to hear you while you hold the shortcut.
- Accessibility — to type the text into other apps. Optional: without it, dictation still shows live in a HUD.
Murmur is a Tuist project; the dictation core lives in MurmurKit/
and the app (Sources/Murmur) is a thin UI over it.
make build # generate the Xcode project + build Release
make run # build and launch the menu-bar agentBuilds are Release — MLX-Swift in Debug is several times slower and not realtime.
Analytics stay off in source builds unless TUIST_MURMUR_POSTHOG_KEY is set at build time.
On-device speech via mlx-audio-swift
(MurmurKit → MLXAudioSTT / VAD / Core) on MLX;
models from the Hugging Face Hub via
swift-huggingface; the global
hotkey via KeyboardShortcuts;
in-app updates via Sparkle; optional
diagnostics via PostHog.
MIT © 2026 Aleksandr Beshkenadze