Voice typing for Claude Code on Mac
Talk to Claude Code from any Mac terminal. Claude Code's /voice streams audio to Anthropic; Sayburst transcribes on your Mac and works with API keys and SSH.
Free for 7 days, then $29 once ($49 for three Macs). No subscription. Apple silicon Mac, macOS 14 or later.
Yes, you can talk to Claude Code instead of typing, and you have two good ways to do it on a Mac. Claude Code ships its own /voice dictation, which is free and live but sends your audio to Anthropic and only works with a Claude.ai sign-in. Sayburst does the same job from outside the terminal: hold fn, explain the change you want, let go, and a clean prompt lands at Claude Code's cursor, transcribed on your Mac.
Prompts are where voice pays off most. The context you'd skip typing ("it only fails in CI", "don't touch the migrations") is the context that gets you a better diff.
Claude Code /voice vs Sayburst
Facts about /voice come from Anthropic's Claude Code voice dictation docs, checked October 31, 2026.
| Claude Code /voice | Sayburst | |
|---|---|---|
| Where speech is transcribed | Anthropic's servers (streamed) | On your Mac |
| Sign-in it needs | Claude.ai account only | None |
| Works with API key, Bedrock or other providers | — | ● |
| Works over SSH | — | Yes, types into your local terminal |
| Push-to-talk key | Hold Space (rebindable) | Hold fn (or right ⌥, right ⌘, a mouse button) |
| Languages | 20 | 25 with Parakeet, 99 with Whisper |
| Text appears | Live, as you speak | When you let go (overlay shows words live) |
| Also works in Slack, GitHub, your editor | — | ● |
| Price | Included, no tokens used | $29 once after a 7-day trial |
When /voice is the better pick: you're signed in with a Claude.ai plan, you're fine with your audio going to Anthropic, and you only want to talk to Claude Code. It's already there, it's tuned for coding terms, and it adds your project and branch names as hints automatically.
When Sayburst fits better: your Claude Code runs on an API key, Bedrock or a company gateway (where /voice isn't available), you work on remote boxes over SSH, your audio shouldn't leave the Mac, or you want one shortcut for the terminal, the PR description and the Slack message about it.
How to set it up
- Install Sayburst and allow Microphone and Accessibility. Accessibility is what lets it type into Terminal, iTerm2, Ghostty, Warp or the terminal inside your editor. The speech model downloads once.
- Give your terminal its own mode. In Sayburst's settings, set Clean for your terminal app so prompts are punctuated and filler-free. Use Raw if you want exactly what you said. Leave auto-send off at first, so you can read each prompt before pressing Return.
- Start Claude Code, hold fn at the prompt, talk, let go. The prompt appears in the input box. Check it, press Return. For a long brief, tap fn once, talk as long as you need, and tap again.
If you also turned on /voice, both can live side by side: /voice listens for Space in Claude Code, Sayburst listens for fn everywhere.
What a spoken prompt turns into
Debugging, with a change of mind halfway through. What you say:
"Um, the checkout tests pass locally but fail in CI. Look at the Stripe webhook handler first, I think it's the, the retry logic, actually no, start with the signature check. And don't touch the migration files."
What lands in Claude Code:
The checkout tests pass locally but fail in CI. Look at the Stripe webhook handler first, starting with the signature check. Don't touch the migration files.
A review request in plain words. "Before I merge this, read through the diff and tell me if anything here could break the iOS client, especially the date formats we send back" goes in exactly as said, punctuated. That's a prompt most people would shorten to "review this" when typing.
Names spelled your way. Add your stack to Vocabulary (Supabase, Drizzle, Tailwind, your service names) and "drizzle schema" stops coming out as "drizzle scheme a". Our guide to custom vocabulary shows how to set that up for a codebase.
Talk to Claude Code without sending your voice anywhere. Free for 7 days.
Download SayburstWhat leaves your Mac
- Your voice stays on the Mac. Sayburst transcribes locally and never uploads audio, so nothing goes to Anthropic until you press Return.
- Cleanup runs locally too, including the optional on-device Sayburst Writer. If you connect a cloud writer with your own API key, only text goes to it.
- Your prompt then goes to Claude the same way a typed prompt does, under your Anthropic data settings.
This is the difference from /voice, where the recording itself is streamed to Anthropic for transcription. For more on the trade-off, see local vs cloud dictation.
Tips for Claude Code by voice
- Say the why, not just the what. "Rename this because the mobile team reads it as a boolean" gets better results than "rename this". Talking makes the extra sentence free. More habits in talking to AI is faster than typing to it.
- Use replacements for things you say often. Map "the staging URL" to the real address or "our lint command" to the exact command you want Claude Code to run.
- Pick a key that doesn't fight your terminal. If fn is awkward on your keyboard, use right ⌥ or a mouse side button as the dictation key.
- Auto-send when you trust it. Sayburst can press Return after inserting, per app. Turn it on for your terminal once you're comfortable sending prompts unread.
- Recover a missed prompt. If focus jumped to another window, press ⌃⌥⌘V to paste the last dictation.
The same setup works in Claude in the browser or desktop app, and our guide to dictation for developers covers commits, reviews and docs.
Limits
Sayburst types text; it doesn't run Claude Code commands or approve tool calls for you. It inserts the prompt when you let go rather than streaming it in live. It pastes into the focused window and restores your clipboard afterwards. It needs an Apple silicon Mac on macOS 14 or later; if you run Claude Code on Windows or Linux locally, /voice is your built-in option there.
Hold fn, talk, and clean text lands where your cursor is. Free for 7 days.
Download SayburstQuestions people ask
Does Claude Code have voice input?
Yes. Run /voice in the Claude Code CLI and hold Space to talk. It needs a Claude.ai sign-in and streams your audio to Anthropic for transcription; it isn't available with an API key, Bedrock or other third-party providers, or over SSH.
Can I use speech to text in Claude Code with an API key?
Not with /voice, which requires a Claude.ai account. Sayburst doesn't care how Claude Code is authenticated: it types into your terminal like a keyboard, so it works with API keys, Bedrock and every other setup.
Does Sayburst send my code or voice anywhere?
Sayburst transcribes on your Mac and never uploads audio. The prompt you send is then handled by Claude Code and Anthropic as usual.
Can Claude Code read its answers out loud?
Claude Code's voice feature is dictation only, and Sayburst is speech to text only too. To hear a reply, select it and use macOS Speak selection (Option-Esc by default, turned on in Accessibility settings).
Does voice typing work when Claude Code runs on a remote machine?
Claude Code's /voice doesn't work in SSH or cloud sessions because the microphone is local. Sayburst types into your local terminal window, so dictation reaches a remote session the same way your keystrokes do.