Apple Speech
Native transcription with the same hold-to-talk gesture.
Open source / macOS
An open-source macOS dictation app that turns speech into polished text locally in any application.
um can you send the revised build by friday
Can you send the revised build by Friday?
Processed locallyThe interaction
Vivek and I built VibeFlow because most dictation tools ask users to trade privacy or control for convenience. We wanted capture, transcription, cleanup, and insertion to happen locally without forcing anyone into a separate editor.
We kept the visible interaction deliberately small: hold a key, speak, release, and get cleaned text inside the current app. The engineering underneath stays modular so either Apple Speech or WhisperKit can power that same gesture.
One gesture, four local stages
Native transcription with the same hold-to-talk gesture.
Local transcription and cleanup with explicit model readiness.
These are small code decisions, but they decide whether dictation feels native or like a model demo bolted onto macOS.
choice[0]SpeechRecognitionService and TextProcessingService let us switch engines without duplicating the hotkey, history, HUD, or paste workflow.
choice[1]A small regex pass handles predictable words before the language model. That cuts needless tokens and gives the model a narrower editing job.
choice[2]The initial download is heavier, but an interaction this small feels broken if the first key release unexpectedly waits for model setup.
Product details
We wired a global macOS hotkey, microphone capture, focus tracking, and paste behavior so dictation works inside the active app.
We made Apple Speech and WhisperKit interchangeable behind one interface, including permissions, model readiness, and error recovery.
We run a compact Qwen model through MLX to remove filler words, repair grammar, and format the transcript without sending it away.
We added writing styles, a custom dictionary, and transcript history so cleanup reflects how the person actually writes.
Current rough edges