← All posts

Claude Code voice mode vs a Mac dictation app

Claude Code now ships its own voice dictation. Type /voice in a session, hold Space, talk, and your words land in the prompt. If Claude Code is the only place you ever type a prompt, that may be all you need.

Most developers type prompts in more than one place, though. A follow up in Cursor, a commit message, a PR description, a Codex session in another tab. This post walks through what /voice does, where it stops, and how to set up a workflow where the built in voice mode and a system wide dictation app each do the part they are good at.

Checked on 2026-10-15 against Anthropic’s Claude Code voice dictation docs. Features change fast, so check the docs if you read this later.

How Claude Code voice mode works

Run /voice once and it stays on across sessions. The first run checks your microphone, and on macOS it asks for microphone permission for your terminal.

There are two ways to record:

  • Hold mode, the default. Hold Space while you talk, release to stop. There is a short warmup while Claude Code detects the held key.
  • Tap mode, with /voice tap. Tap Space to start, tap again to stop. The prompt sends itself if the transcript is at least three words.

The text streams into the input as you speak, so you can mix typing and talking in the same prompt. You can rebind the key in ~/.claude/keybindings.json. A modifier combination such as meta+k skips the warmup:

{
  "bindings": [
    {
      "context": "Chat",
      "bindings": { "meta+k": "voice:pushToTalk" }
    }
  ]
}

Two details are worth knowing. Transcription does not use Claude messages or tokens. And it is tuned for coding words: the docs list terms like regex, OAuth and localhost, and Claude Code adds your project name and git branch as recognition hints on its own.

Where /voice stops

The docs are clear about the limits, and they shape the workflow more than the features do.

It only types into Claude Code. The CLI prompt, plus the Claude Code VS Code extension. Your shell, your editor, Cursor’s agent chat, a GitHub review box or a Slack thread are out of reach.

Audio goes to Anthropic’s servers. In the docs’ words, “Audio is not processed locally.” If you work on a plane, on bad hotel Wi-Fi, or under a policy that keeps client audio off third party servers, that matters.

It needs a Claude.ai sign in. It is not available when Claude Code uses an Anthropic API key directly, Amazon Bedrock, Google Cloud’s Agent Platform or Microsoft Foundry. Organizations with HIPAA compliance enabled have it switched off.

It needs a local microphone. It does not work over SSH, in Claude Code on the web, or in VS Code Remote sessions such as Dev Containers and Codespaces.

It types what you said. The project name and branch hints help, but the docs describe no list of your own words to add. And nothing restructures a rambling minute of speech into a tidy prompt. The agent reads every “no wait, I mean”.

It records in bursts. Recording stops after 15 seconds of silence or two minutes in total. That is plenty for a follow up, tight for talking through a whole feature.

None of this makes /voice bad. It is a good built in feature with a narrow scope. The question is whether your day fits inside that scope.

When a system wide dictation app fits better

A Mac dictation app sits in the menu bar and types at your cursor in any app. That changes the workflow in three ways.

One hotkey everywhere. The same key works in Claude Code, Cursor, Codex, the GitHub web UI and your notes. You stop thinking about which tool has which voice feature. If you use more than one agent, see how to dictate prompts into Cursor for the same loop in an editor.

Your words, spelled right. A custom vocabulary lets you add the names that only exist in your repo: services, hooks, odd library names. They come out spelled the way you type them, in every app.

A cleaner prompt, not just a transcript. This is the part built in voice modes skip. When you think out loud you backtrack and repeat yourself. A prompt mode can turn that into a structured prompt before it pastes.

Akova, a Mac dictation app built for coding agents, does all three. It transcribes with on-device Whisper models, so dictation works offline. Its Prompt mode turns a spoken ramble into a structured prompt, using Apple Intelligence on macOS 26 or a local Ollama model on macOS 14 and 15. It needs macOS 14 Sonoma or later on Apple Silicon (M1 and later).

A workflow that uses both

You do not have to pick one. Here is a split that works.

  1. Quick replies inside a running session: /voice. “Yes, go ahead.” “Run the tests again.” “Use the existing helper instead.” Short, in Claude Code, already focused. Tap mode is ideal here, because it sends on its own.
  2. The first prompt of a task: the system wide app. This is where you talk for a minute about the goal, the files, the constraints and how to check the result. Restructuring and your vocabulary pay off most on long prompts.
  3. Everything outside Claude Code: the system wide app. Commit messages, review comments, Cursor, Codex, the ticket you are about to write.
  4. Offline or on a client project: the on-device app only. If audio must stay on the machine, keep /voice off for that project.

Give each a different key so they never fight. Claude Code defaults to Space. Pick a dictation hotkey your fingers find without looking, and leave Space to Claude Code. For the full setup inside Claude Code, see how to dictate prompts into Claude Code on your Mac.

Which should you use?

Claude Code /voiceSystem wide dictation app
Where it typesClaude Code CLI and its VS Code extensionAny app with a cursor
Where audio goesAnthropic’s serversDepends on the app. Akova: on your Mac
Works offlineNoAkova: yes
AccountClaude.ai sign inAkova: none
Your own word listNot described in the docsAkova: custom vocabulary
Restructures a rambleNoAkova: Prompt mode
CostIncluded, uses no tokensAkova: free tier, Lifetime once

Stay with /voice alone if Claude Code is your only agent, your prompts are short, you sign in with Claude.ai, and cloud transcription is fine for your work.

Add a system wide app if you also prompt in Cursor, Codex or a browser, you want audio to stay on your Mac, or your best prompts are the long ones you talk through. If privacy is the deciding point, read on-device vs cloud dictation for Mac developers.

Akova is free to start, and Prompt mode is free for 7 days after your first launch, with no card and no account. Lifetime is a one time purchase, see pricing.

Try both on the same task

Pick the next task you would hand to Claude Code. Say the first prompt through Akova in Prompt mode, then handle the follow ups with /voice in tap mode. By the end of the task you will know which part of your day each one belongs to.