Voice mode requires /voice toggle on every new session despite voiceEnabled: true
Description
Voice mode does not activate on new session start even though voiceEnabled: true is set in settings.json. The audio subsystem doesn't initialize — holding spacebar types spaces instead of recording.
Workaround: Run /voice (turns off) then /voice again (turns on) — this forces re-initialization and voice works for the rest of the session.
Steps to Reproduce
- Set
"voiceEnabled": truein~/.claude/settings.json - Open a new Claude Code session
- Hold spacebar → types spaces instead of activating voice recording
- Run
/voice→ disables voice - Run
/voiceagain → enables voice, now holding spacebar works correctly
Expected Behavior
Voice mode should be fully active on session start when voiceEnabled: true is in settings — no manual toggle needed.
Actual Behavior
- New sessions: spacebar types spaces (voice not initialized)
- Already-running sessions where
/voicewas toggled: spacebar works correctly - Requires off/on toggle (
/voice× 2) every new session
Environment
- OS: macOS (Darwin 25.1.0)
- Claude Code model: Opus 4.6
- Settings:
"voiceEnabled": trueconfirmed in settings.json - Microphone: Works fine after toggle — not a permissions issue
Additional Context
This happens consistently on every new session — not intermittent. The setting persists correctly in the config file, but the audio subsystem doesn't initialize from it on startup. The /voice toggle forces the initialization that should happen automatically.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗