1. Use Claude Code’s native voice mode first
Update Claude Code, open an interactive session, and run /voice. The default hold mode uses Space as push-to-talk after a brief key-repeat warmup.
Claude Code inserts the finalized transcript at the cursor. By default, you can review it before pressing Enter.
- Run claude --version and update if required.
- Run /voice or /voice hold.
- Hold Space, speak, release, review, and submit.
2. Use tap mode when holding a key is awkward
Run /voice tap to start and stop recording with a tap. Anthropic documents automatic submission for sufficiently long transcripts in tap mode, so choose it only when that behavior matches your preference.
You can also rebind voice:pushToTalk in Claude Code’s keybindings file.
3. Understand the native privacy and environment boundary
Anthropic states that Claude Code streams recorded audio to its servers for transcription; audio is not processed locally. Native voice requires Claude.ai authentication and is unavailable for API-key, Bedrock, Vertex AI, or Microsoft Foundry configurations.
Anthropic also says native dictation does not work in remote environments such as Claude Code on the web or SSH sessions because the microphone must be available locally.
4. Use IraVoice only for the distinct workflow
Use IraVoice when the speech-to-text stage needs to run on your own computer, when you work over SSH or with an API-key, Bedrock, or Vertex AI setup that native voice does not support, or when names keep coming out wrong. IraVoice 1.2.2 runs on macOS 13+ on Apple silicon, Windows 10 or 11 (64-bit), and Linux (beta) and recognizes speech on-device with NVIDIA Parakeet; the microphone is on your computer, so it types into a local terminal window even when Claude Code runs on a remote host over SSH, although code names come only from a project on your own computer.
Hold Right Command on a Mac or Right Ctrl on Windows (Ctrl+Space on Linux) with the Claude Code prompt focused, speak, and release. IraVoice finds the Git project Claude Code is working in and types its code names the way the code spells them: “use effect” becomes useEffect and “pipeline dot swift” becomes Pipeline.swift. It keeps only names, never source text, skips secrets and dependency folders, and nothing leaves the computer.
IraVoice types the prompt at the cursor and, by default, does not press Enter, so you review it before Claude Code acts. Esc cancels a dictation, and typing any other key while holding cancels too, so ⌘C still works.