Dictation for macOS · MIT licensed · bring your own key

Speak anywhere.
VoxFlow writes it for you.

Hold , say the thing, let go. Whisper transcribes it on your Mac, an AI pass turns the rambling into a sentence, and the text lands at your cursor in whatever app you were already in.

macOS 13+ · Apple Silicon · open the DMG, drag to Applications · Linux in progress

heldwhisper.cpp · metal · on-device
audio in−1.2 s silence trimmed
transcript

um so can you uh check whether the the cache is warm before we ship

rewrite

Can you check whether the cache is warm before we ship?

A dictation traced end to end: audio is captured and silence-trimmed, transcribed on device by Whisper, rewritten into a clean sentence, and inserted at the cursor — all within the 1.5 second budget.

How it works

Five stages between your voice and your cursor.

Everything on the hot path is Rust — the hotkey tap, audio capture, the voice detector, the state machine. The interface only draws what already happened.

  1. 01

    Hold the keys

    Hold Option+Ctrl anywhere in macOS. A small pill fades in at the bottom of the screen. Nothing takes focus, nothing covers what you were reading.

    CGEventTap · no letter-key shortcut to collide with

  2. 02

    Speak

    Audio is captured through CoreAudio and gated by a voice activity detector, so the silence at either end never reaches the model.

    CPAL capture · WebRTC VAD

  3. 03

    Whisper transcribes on device

    Transcription runs locally through whisper.cpp with Metal acceleration. Your audio does not leave the machine.

    whisper-rs · Metal

  4. 04

    An AI pass cleans it up

    The raw transcript goes through a rewrite pass that drops fillers, fixes grammar, and returns a sentence you would have typed. On by default, not a paid add-on.

    Groq, OpenAI, or your own endpoint

  5. 05

    It lands at your cursor

    The finished text is pasted into whatever app had focus — editor, terminal, browser, chat. Every transcript is kept locally so you can recover one you lost.

    Accessibility paste · SQLite history

What you get

Built to feel like part of the OS.

Stays out of the way

One pill at the bottom of the screen while you talk, and nothing else. No window opens, no focus is stolen, no modal interrupts you.

Fast enough to trust

The pill is up in 80 ms and text lands inside 1.5 seconds for a short phrase. The hot path is Rust; the interface only renders.

Your audio stays home

Whisper runs on device. Only the transcript text is sent to a rewrite provider — and you choose which one, or skip the cloud entirely.

Works where you write

Insertion is system-wide, so the same hotkey works in Cursor, VS Code, Slack, Gmail, Notion, Obsidian, browsers, and terminals.

Keys live in the Keychain

Provider keys are stored through the macOS Keychain, never in a plaintext settings file. Local history is a SQLite file you own.

Costs you can see

VoxFlow tracks what each dictation costs, projects the month, and warns you at 50, 80, and 100 percent of a cap you set.

Bring your own key

Pick where the work happens.

Transcription is local by default. The rewrite pass talks to any OpenAI-compatible endpoint, so you can route it to Groq, to OpenAI, to a machine in your own house, or turn it off entirely.

Fully local

$0 per month

Whisper on device for transcription, rewrite pass off. Nothing leaves the machine.

Local + cloud rewrite

cents per month

Local Whisper, with Groq or OpenAI handling only the cleanup pass on short text.

Your own server

$0 marginal

Point VoxFlow at any OpenAI-compatible server you run — a home box over Tailscale, say.

Costs depend on your own provider and usage. VoxFlow tracks each dictation and projects your month so nothing arrives as a surprise. Seeprovider keys for setup.

Privacy

Your voice never has to leave the machine.

  • Audio is transcribed on device by Whisper — no upload, no account, no telemetry.
  • Provider keys are stored in the macOS Keychain, not in a settings file.
  • Transcript history is a local SQLite database you can read or delete yourself.
  • Turn the rewrite pass off and VoxFlow makes no network calls at all.
  • The whole thing is MIT licensed, so you can read every line before trusting it.

Pricing

The app is free.

Never for the minutes. No account. MIT licensed. You only pay a provider if you turn the rewrite pass on and point it at one.

$0

what VoxFlow charges. Forever.

Included

Local Whisper, the hotkey, the overlay, rewrite, history, as many providers as you want. The whole app.

You may still pay

Only Groq, OpenAI, or a server you run, and only if you send text there. Turn rewrite off and nothing leaves the machine.

Questions

The things people ask first.

Does my voice get sent to the cloud?

No. Transcription runs on your Mac through whisper.cpp with Metal acceleration. Only the resulting text is sent to a rewrite provider, and you can turn the rewrite pass off to keep everything on device.

Is VoxFlow a subscription?

No. The app is free. There is no VoxFlow subscription and no account. If you send the rewrite pass to Groq or OpenAI, you pay that provider directly for what you use.

Which apps does it work in?

Any app that accepts text. Insertion happens at the system level through macOS Accessibility, so the same hotkey works in editors, terminals, browsers, chat apps, and email.

What is the hotkey?

Option+Ctrl by default, held or toggled. It uses a CGEventTap rather than a letter-key global shortcut, so it does not collide with shortcuts inside the app you are using.

Which platforms are supported?

macOS 13 or later, with Apple Silicon recommended for Metal-accelerated Whisper. Linux support is in progress.

How is this different from Wispr Flow?

Same idea, different economics. VoxFlow is free. Transcription stays on your Mac, keys live in the Keychain, and you pay a provider only if you choose to. Wispr Flow charges a monthly subscription for the minutes.

Stop typing what you could just say.