Copy That
Claude Code · voice dictation error

Claude Code voice not working? Every error and its fix.

Find the message Claude Code shows you below. Each one points to a different cause, and most take under a minute to fix.

Quick fix
  1. /voice needs you signed in with a Claude.ai account. It isn’t available with an API key, Bedrock, Vertex or Foundry.
  2. It records on the machine Claude Code runs on, so it doesn’t work over SSH, in VS Code Remote or in cloud sessions.
  3. After a lid close, a device change or an update, start a new session.
Every cause, and its fix
  1. Unknown command: /voice or Voice mode requires a Claude.ai account

    You’re not signed in with Claude.ai, or an API key or provider setting takes precedence. Run /login, remove ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN or apiKeyHelper, and restart Claude Code.

    From the Claude Code docs.

  2. Voice mode is disabled by your organization’s policy

    An administrator turned voice off. Ask them, or use a dictation tool outside Claude Code.

    From the Claude Code docs.

  3. Microphone access is denied

    Allow your terminal (or VS Code) in System Settings → Privacy & Security → Microphone. If it isn’t listed, reset its permission, quit it with ⌘Q and reopen it.

    # Terminal: com.apple.Terminal · iTerm2: com.googlecode.iterm2
    # Ghostty: com.mitchellh.ghostty · Warp: dev.warp.Warp-Stable · VS Code: com.microsoft.VSCode
    tccutil reset Microphone com.apple.Terminal
    
    # Not sure of the bundle ID? Ask macOS:
    osascript -e 'id of app "iTerm"'

    From the Claude Code docs.

  4. No audio detected from microphone

    Recording captured silence. Usually the session is tied to a device or binary that changed: start a new session. Every cause and fix →

  5. No speech detected

    Audio arrived but no words were recognized: move closer, cut noise, set your language in /config. More →

  6. Voice input is failing repeatedly and has been paused

    Three failures in ten seconds: usually no microphone (SSH, container) or denied permission. More →

  7. Voice connection failed or Voice stream error: WebSocket upgrade rejected

    The recording didn’t reach the transcription service. Check your network; with a 4xx status, run /login again and check for a VPN or proxy in the way.

    From the Claude Code docs.

  8. Voice mode requires SoX for audio recording or could not find a working audio recorder in WSL

    Linux and WSL only. Install SoX; on WSL also its PulseAudio format.

    sudo apt-get install sox                    # Linux
    sudo apt install sox libsox-fmt-pulse       # WSL with WSLg

    From the Claude Code docs.

  9. Holding Space just types spaces

    If spaces pile up, voice is off: run /voice hold. If only one or two appear, key repeat is off in your OS: use /voice tap instead. In tap mode, the prompt must be empty for the first tap to start recording.

    From the Claude Code docs.

As of October 2026. From Claude Code’s docs and its GitHub issues.

Or skip the Mac microphone

Use your iPhone or Apple Watch as the mic.

Copy That records on your iPhone or Apple Watch, transcribes on your Mac with Whisper, and pastes into Claude Code. Lids, AirPods, input devices and microphone permissions on the Mac stop mattering, because the Mac never records anything.

Voice dictation for Claude Code →

Questions
Does Claude Code voice work with an API key, Bedrock or Vertex?
No. Voice dictation needs a Claude.ai account login. Copy That works with any login, because it just pastes text into Claude Code.
Is Claude Code voice dictation processed locally?
No. Audio is streamed to Anthropic for transcription, and your project name and git branch are sent as hints. It doesn’t use tokens or count toward usage limits. Copy That transcribes on your Mac with Whisper.
Can I use Claude Code voice in VS Code Remote or over SSH?
No, voice records on the machine Claude Code runs on. Copy That pastes into whatever terminal is in front of you on your Mac, including one that is connected over SSH.
Is there a way to avoid these errors entirely?
Use a microphone that isn’t the Mac’s. Copy That records on your iPhone or Apple Watch, transcribes on your Mac with Whisper and pastes into Claude Code, so input devices, lids and microphone permissions on the Mac don’t matter.
Also works with