build your own dictation
A dictation tool should work for your pronunciation and your dictionary, and I think that only happens when it’s built for you..
I would encourage you to build your own dictation tool, because ultimately it should work for your pronunciation, your dictionary. I say this because dictation tools became really good, still I had issues, so in July I started building one for myself on my Mac.. and I love it, it’s my first utility product that I created for myself that works.
So what I built is KV Dictate, a small Mac app. I press the Right Option key, I speak, I press it again, and my words land wherever my cursor is, in Claude, in Slack, in Mail.. it all runs on my Mac and nothing leaves it. I made it with Claude Code, mostly by saying what wasn’t working, things like “long speeches arent working” and “the fn button invokes finder aswell”.
The first problem was my own name. I wanted my surname typed, it is Vemuri, but the software kept using it as memory.. so I asked for a feature that lets me teach it certain words. Now I open Teach a Word and write Vemuri = memory, which is the right word and what it wrongly hears, and anything close to it, like “Vey Muri”, gets fixed as well.
Then I wanted some Hindi and Telugu words typed like in English, so I added word lists for both, and that’s where it got funny. I said “Should it be like a separate repo about me. That’s for later.” and it typed repu and tata.. repu is tomorrow in Telugu, and tata is my grandfather.
That was the fourth time the same thing happened, share had become sare and meeting had become mithai, so fixing one word at a time was never going to end. The word lists were changing any English word that sounded close enough. So now a single word only gets corrected if I taught it myself, and the word lists only match two words together, where English gets in the way much less.

The other thing I learned is that my real voice is different from a test. The app passed its test on the Mac’s Indian English voices, and then on my real mic “My name is Kalyan Vemuri and I work in Hyderabad” came out as “When I work in Hyderabad”. My mic was just much quieter than the test audio, so that test was never going to catch it.. I only found out by speaking into it myself.
The first thing I asked for was that it works fully in my local for free, so every tool I added on top of the Mac is open source.. I want to name them here because they do the real work, and what I made with Claude Code mostly joins them together.
There are two speech models and I can pick either one from the menu. Whisper from OpenAI is the default, the large-v3-turbo version, and Parakeet from NVIDIA is the other one. Parakeet is faster and it’s the only one that can type as I speak, but in my tests it turned Venkatesh into Vaynkutesh, so Whisper became the default. Both run on MLX, Apple’s machine learning framework for its own chips, through mlx-whisper and parakeet-mlx, and the models download once from the MLX community on Hugging Face.. after that it runs offline.
The rest are smaller tools that each do one job. sounddevice records my mic, using PortAudio underneath, and pynput listens for the Right Option key. Silero VAD decides whether I’m speaking at all, by what the audio sounds like and not by how loud it is, and it runs on PyTorch. jellyfish compares how words sound, so that’s what fixes “Vey Muri”. rumps makes the menu bar app, PyObjC lets my code talk to the Mac, so it draws the pill at the bottom of my screen and does the pasting, and pyperclip copies an old dictation back from the history.
All of this is written in Python, with NumPy carrying the audio around, and while building it I used Ruff to check the code and FFmpeg to convert the test audio. These tools are free for anyone to use, so the only part that’s really mine is my words on top..

All of this is just what works for me right now. Hardware is different for everyone and I’m on an M1 Pro, which is quite old, so there are better models that might work on a more recent Mac.. and a stack like this can get obsolete pretty quick anyway. If a tool you can download already gets your words right, you probably don’t need to build anything.. But if you want something like this, I think it’s worth building it for yourself, for your hardware, your pronunciation and your dictionary..
