Voice dictation: persistent "No audio detected" in agent overview and resumed sessions — tap toggle double-fires (start + stop within ~330 ms); fresh session works fine
Status Open
Reported on v2.1.226
Maintainer reply None cached
Activity 0 comments · opened Aug 10, 2026
Environment
- Claude Code version: 2.1.226 (latest at time of writing, installed via Homebrew npm package)
- OS: macOS 26.5.2 (build 25F84), Apple Silicon (MacBook Air, arm64)
- Terminal: Terminal.app
- Voice mode:
/voice tap, dictation languagede - SoX installed (
/opt/homebrew/bin/rec), but the native module is used: debug log showsaudio-capture-napi loaded
Problem
Voice dictation consistently fails with:
No audio detected from microphone. Check that the correct input device is selected and that Claude Code has microphone access.
The message is misleading — microphone, permission, and input level are all fine (verified below). The failure occurs:
- Always when triggering voice from the agent overview (multiple background agents running, voice key pressed in the overview screen).
- Also inside a single agent session entered from that overview, and in the long-running main session resumed via
claude --continue. Restarting via/exit+claude --continueand fully quitting Terminal (Cmd+Q) did not help. - Not in a freshly started
claude --debugsession in a new Terminal tab — there, voice works end-to-end (transcript assembled and injected).
Debug log evidence
From ~/.claude/debug/<session-id>.txt of the working fresh session, the first tap shows the suspected mechanism — the toggle fires twice, stopping the recording ~330 ms after start with an empty transcript:
21:51:57.928Z [DEBUG] [voice] toggle: starting recording
21:51:57.933Z [DEBUG] [voice] Starting recording session, connecting voice stream
21:51:57.933Z [DEBUG] [voice] startRecording called, platform=darwin
21:51:58.038Z [DEBUG] [voice_stream] Connecting to wss://api.anthropic.com/api/ws/speech_to_text/voice_stream?...
21:51:58.254Z [DEBUG] [voice] toggle: finishing recording <-- 326 ms after start, no second tap intended
21:51:58.254Z [DEBUG] [voice] finishRecording: stopping recording, transitioning to processing
21:51:58.258Z [DEBUG] [voice] Recording stopped
21:51:58.259Z [DEBUG] [voice] Final transcript assembled (0 chars)
A recording that ends after ~330 ms with 0 chars is exactly what surfaces as "No audio detected" (hadAudioSignal: false).
The immediately following second attempt in the same session worked normally:
21:51:58.770Z [DEBUG] [voice] toggle: starting recording
...
21:51:59.690Z [DEBUG] [voice] onReady: flushing 75 buffered chunks (25576 bytes) as 1 coalesced frame(s)
21:52:01.149Z [DEBUG] [voice] onTranscript: isFinal=false (5 chars)
...
21:52:02.540Z [DEBUG] [voice] Accumulated final transcript (37 chars)
21:52:06.410Z [DEBUG] [voice] Final transcript assembled (37 chars)
21:52:06.411Z [DEBUG] [voice] Injecting transcript (37 chars)
Ruled out
- Microphone permission: granted for Terminal.app (System Settings shows it enabled; recordings from the same shell succeed).
- Recording chain:
rec -q /tmp/t.wav trim 0 3while speaking, from the same Terminal, captures a healthy signal (sox … stat: Maximum amplitude 0.569, RMS 0.105). - Input device / level: system default input is the built-in MacBook Air microphone, input volume 100. (Virtual devices from Teams/Zoom exist but are not the default.)
- Stale process: full Terminal quit (Cmd+Q) and restart did not change the behavior in the affected session.
Steps to reproduce
- Run a session with several background agents and open the agent overview.
- Enable
/voice tap. - Tap the voice key once in the overview (or in an agent session entered from the overview) and speak.
- Error "No audio detected from microphone" appears; debug log shows the recording was stopped a few hundred ms after start without user input.
Expected
A single tap starts recording and keeps recording until the user taps again; voice works the same in the agent overview and in resumed sessions as it does in a fresh session.