If you're using Cursor, Claude Code, or Windsurf to write software, you're already vibe coding — letting an AI take the first pass and steering with natural language. The bottleneck isn't the model anymore. It's the keyboard.
This post walks through the workflow we've found works best: voice as the input layer, AI as the synthesis layer, and your Mac as the trust boundary.
What is vibe coding?
Andrej Karpathy named it: vibe coding is when you "fully give in to the vibes, embrace exponentials, and forget that the code even exists." You describe what you want. The model writes it. You skim, accept, or redirect.
It works because the cost of generating code has collapsed. The cost of describing what you want has not — because typing is slow.
Why voice is the missing input layer
You speak at 150 words per minute. You type at 40. Vibe coding rewards verbose, contextual prompts: explain the constraints, the existing patterns, the edge cases you care about. Typing all that is friction. Speaking it is natural.
This is exactly the workflow voice dictation was made for.
The setup (5 minutes)
You need three things on your Mac:
- JustVoice for system-wide voice dictation. Local Whisper transcription, hotkey-triggered, types into any app. Download here.
- Cursor or Claude Code as your AI-assisted editor. Both work the same with voice.
- A hotkey you can hold while talking. Right Option is JustVoice's default. Map it to something your hand naturally rests on.
The workflow
Here's how a typical vibe coding session works once voice is in the loop:
1. Describe the change
Open the chat sidebar in Cursor. Hold your dictation hotkey. Speak the prompt.
> "Refactor the auth middleware to use Redis instead of in-memory session storage. Keep the existing public API. Add a connection pool and handle Redis being unavailable gracefully — fail open with a logged warning, not closed."
That's a 50-word prompt. You spoke it in 20 seconds. Typed, it would take 90.
2. Steer the output
The model writes the diff. Skim it. If you spot something wrong, hold the hotkey again:
> "The fail-open behaviour should be behind a feature flag. Add it as a config option called redis_strict_mode defaulting to false."
3. Document as you ship
After the change works, dictate the commit message and PR description in the same flow:
> "Move auth middleware to Redis-backed sessions. Adds a redis_strict_mode config flag for fail-closed behaviour in production. Default is fail-open for backwards compatibility."
Total keyboard time: zero. Total elapsed time: a fraction of typing.
Why local matters here
The thing that makes this actually viable for serious work is that voice transcription happens on your Mac. Not in someone else's data centre. Not transcribed-and-stored alongside your private repo content.
JustVoice runs Whisper locally on your Mac's GPU. Audio doesn't leave your device. If you're working on proprietary code, internal tools, or anything covered by an NDA, this matters.
Cloud dictation tools (Wispr Flow, Willow Voice, Otter) all stream audio to remote servers. That's a different trust model — and a non-starter for many teams.
Tips that compounded for us
- Train custom vocabulary. Add the names of your codebase's modules, classes, and conventions. Whisper transcribes them correctly every time after that.
- Use snippets for repeated prompts. JustVoice snippets can expand
pls explaininto a paragraph-long structured prompt. Saves typing the same scaffolding repeatedly. - Push-to-talk, not toggle. The hotkey-hold model is more precise than toggle. You can think mid-sentence and pause without bleeding silence into the prompt.
- Don't dictate code character by character. Use voice for the prompt to the AI, then let the AI write the code. That's the leverage.
- Stay in the editor. The whole point is no context switching. Voice dictation that types into Cursor's chat directly preserves flow in a way that switching to a separate app doesn't.
The result
We've measured ~3x throughput on routine refactors and a step-change improvement on documentation, ADRs, and code review responses. The biggest win wasn't speed — it was that we write more of the things we used to skip because typing them felt expensive.
Get started
Download JustVoice for Mac — free with 5,000 words/month, $5/mo Plus, $9/mo Pro for code mode.Open Cursor or Claude Code, hold your hotkey, talk to the model like a colleague. That's it.
---
See the JustVoice for Developers page → How JustVoice compares to Wispr Flow →