Voice coding on Mac: dictate prompts to Cursor and VS Code

By · Updated · 5 min read

Voice coding sounds like talking in curly braces. In practice it is the opposite. The part of programming that has turned into prose is the part you now type to an AI assistant: the prompt. That is what dictation is good at.

What is voice coding good for?

It is good for anything you would write as sentences. That covers more of a developer's day than it used to.

Task Good fit for dictation? Why
Prompts to Cursor, Claude Code or another assistant Yes Long, descriptive, forgiving of small errors
Commit messages and PR descriptions Yes Prose with a few technical terms
Code comments and docs Yes Prose
Slack messages about code Yes Prose
Exact syntax, symbols, indentation No One wrong character breaks it
Shell commands you will run immediately With care Read the text before pressing Return

The speed argument is simple. Conversational English runs at about 150 words per minute, and the average typist does 52. A spoken prompt also tends to carry more context, because adding a sentence costs you nothing. The full numbers are in is dictation really 4x faster than typing?.

How do you dictate a prompt to Cursor, Claude Code or VS Code?

You click into the prompt box, hold the key and talk.

  1. Install Gabble and grant Microphone and Accessibility permission. Setup details are in how to dictate into any Mac app.
  2. Click into the chat box in Cursor or VS Code, or the Claude Code prompt in your terminal.
  3. Hold Right Option and say the prompt. For a long one, tap the key quickly to go hands-free and tap again when you are done.
  4. Release. The text is pasted in.
  5. Read it, then send it.

The text shows up after you stop speaking, not while you talk. That suits prompts fine. You say the whole thought and then review it once.

What does Developer mode do?

Developer mode tidies the dictation and writes technical terms the way they are spelled in code. Gabble describes it as being for prompts, commit messages and comments. Its instruction to the AI is to fix grammar and punctuation, remove fillers, and write identifiers, file names and CLI commands in their code spelling, so a spoken "use effect" comes out as useEffect. It is also told not to answer the request and not to write code you did not dictate.

Three things to know:

  • It is picked automatically in some apps. The default per-app rules use Developer mode in Xcode, VS Code and Terminal. Claude Code runs in a terminal, so if you use it in Terminal you get Developer mode there too.
  • Other editors and terminals need a rule. The default list covers those three apps. For Cursor, or a different terminal app, add a rule in the Modes tab and point it at Developer.
  • It is an AI mode. AI cleanup is off by default. Until you turn it on in the Modes tab, Developer mode falls back to the on-device Clean mode, which removes ums and repeated words but does not know about useEffect.

For the AI step you can use Ollama on your own Mac, or your own Anthropic or OpenAI-compatible API key. Only the transcript text goes to the provider. With Ollama, nothing leaves the machine. See clean up dictation with a local LLM.

How do you get identifiers and library names spelled right?

Put them in the Dictionary. Speech models are trained on everyday speech, so they will hear "Postgres" as "post gress" and your internal service name as something worse.

The Dictionary tab has two parts per entry: the preferred spelling, and a list of "heard as" versions to replace.

Preferred spelling Heard as
useEffect use effect
PostgreSQL post gress, postgres q l
kubectl cube control, cube c t l
getUserById get user by id

The "heard as" examples above are illustrations. Dictate your own terms a few times, see what actually comes out, and add those. The History tab is searchable, which makes it easy to find the misspellings you keep getting.

Dictionary replacements run on the text, so they work with every speech model and without AI cleanup. If you use one of the Whisper models, the Dictionary also biases the recogniser towards your terms. When AI cleanup is on, your dictionary terms are passed along so the AI spells them correctly too. More on this in teach dictation your names and jargon.

How do you edit by voice?

Use command mode on selected text. Select some text, hold Shift together with the dictation key, say an instruction, and release. The selection is replaced with the rewritten version.

Instructions that work well are the ones you would give a colleague:

  • "make this shorter"
  • "turn this into a bullet list"
  • "rewrite this as a commit message"

Command mode needs AI cleanup turned on, because the rewrite is done by the AI provider you configured. The selected text is what gets sent. If that text is proprietary code and you care where it goes, use Ollama.

What about snippets for things you say repeatedly?

Use the Snippets tab for boilerplate you dictate often. You set a trigger phrase and the text it expands to. Good candidates for developers are a standard instruction you append to prompts, a PR description template, or a bug report skeleton. Say the trigger and the block is inserted.

What does Gabble not do for coding?

It does not do live streaming text, it does not read your screen or your code, and it does not run on Windows, Intel Macs or iOS. It also does not generate code. It gets your words into the tool that does.

If you want to see how it compares with a cloud dictation tool, read Gabble vs Wispr Flow.

Frequently asked questions

Can I dictate prompts to Cursor or Claude Code on a Mac?

Yes. Any system-wide dictation app works, because the prompt box is a normal text field. With Gabble you hold the dictation key, speak the prompt, and release to paste it.

Is voice coding faster than typing?

For prose such as prompts it usually is. Conversational speech runs at about 150 words per minute and the average typist manages 52. For exact code syntax, typing or an AI assistant is still the better tool.

How do I stop dictation from misspelling function names?

Add the names to the Dictionary tab with the misheard versions as 'heard as' entries. Gabble then replaces them every time, and with Whisper models the recogniser is also biased towards your terms.

Does Gabble's Developer mode write code for me?

No. Developer mode cleans up what you dictated and spells technical terms the way they appear in code. It does not answer your request or generate code you did not say.

Does voice coding send my code to the cloud?

Speech recognition in Gabble runs on the Mac and audio is never uploaded. If you turn on AI cleanup with an API key, the transcript text or the text you selected for command mode is sent to that provider. With Ollama it stays on your Mac.

Does Gabble work in the terminal?

Yes. Terminal uses Developer mode by default, and the text is pasted at the prompt. Read it before you press Return.

Try Gabble

Free dictation for Mac that runs on your machine. No account.

Download for Mac