Speech never leaves your Mac
Transcription runs on Apple’s on-device Speech framework by default. No server, no model download, nothing uploaded.
Dictation that cleans up after you. Filler words, false starts, and “actually, make that three” are gone before the text hits the page. Your audio never has to leave your Mac.
Get TypeWiser for MacFree and open source · macOS 15 or later
Transcription runs on Apple’s on-device Speech framework by default. No server, no model download, nothing uploaded.
Want a bigger brain for cleanup? Point it at Bedrock, OpenAI, or Anthropic with your own key. Or keep it all local with llama.cpp.
API credentials go into the macOS Keychain, not a config file. Nothing about you is sent to us, because there is no “us” server.
The whole app is Swift you can audit and build yourself, under the Apache 2.0 license.
Push-to-talk dictation, LLM cleanup, hands-free mode, and a fallback that never eats your words.
Pick where speech-to-text and cleanup run. Switch any time; the change applies on your next dictation.
Change your mind mid-sentence and only the correction survives.
“um so let's meet at two, actually no, three, at the usual place”
Let’s meet at 3 at the usual place.
Add the people and jargon you say often. TypeWiser also reads text near your cursor to match spellings already on screen.
Long thought? Double-tap 🌐 and let go. Recording latches on, and typing won’t interrupt it. Tap once to stop.
Pick the speech locale that matches how you talk, not just your system language.
Slack, Mail, Notes, Cursor, Claude, a terminal. If the app has a text cursor, TypeWiser pastes into it.
If cleanup fails, times out, or returns something that isn’t a rewrite of what you said, you get the raw transcript instead.
A small HUD shows a live waveform so you know it’s listening.
Ramble, restart, correct yourself. That’s what cleanup is for.
Clean text is pasted into the focused app, with a soft sound cue.
Not by default. Speech-to-text uses Apple’s on-device Speech framework. Only if you switch to a whisper.cpp server does audio leave the app, and that server is one you run. If you choose a cloud cleanup model, only the text transcript is sent, to the provider you picked, with your own key.
No. TypeWiser is free and open source. Local mode costs nothing to run. Cloud cleanup bills against your own Bedrock, OpenAI, or Anthropic account.
Anything that accepts pasted text. TypeWiser puts the cleaned text on the clipboard and sends ⌘V to whatever app has focus.
To notice the 🌐 key from any app and to paste with ⌘V. Without it, macOS silently drops both. It also lets TypeWiser read text near your cursor so names are spelled the way they already appear.
Go to System Settings → Keyboard → “Press 🌐 key to” and choose Do Nothing.
The local cleanup model runs through llama.cpp and holds around 17 GB of RAM while active. Switching to a cloud model shuts the local server down and gives that memory back right away.
Choose a speech locale in Settings that matches how you speak, like English (India) or English (UK). It often makes a large difference over the system default.
Yes. It’s a Swift package with a fast test suite that never touches the network. Open an issue or a pull request on GitHub.
Build it from source in a minute. Native Swift, macOS 15 or later.
# one-time: a stable signing identity so permissions stick
./Scripts/create-signing-cert.sh
./Scripts/bundle-app.sh
open build/TypeWiser.app
View on GitHub