How it works
Voice input is handled by three components working together:services/voice.ts— streams audio from the microphone and sends it to the speech-to-text engine in real time.hooks/useVoiceIntegration.tsx— the React hook (99 KB) that manages voice state, keyterm detection, and integration with the prompt input system.voice/voiceModeEnabled.ts— the feature gate that checks whetherVOICE_MODEis active before initializing voice components.
Using voice mode
Activate voice input
Press and hold the voice activation keybinding. The status bar updates to show that the microphone is active.
Speak your prompt
Dictate your prompt naturally. Transcribed text appears in the input field in real time so you can follow along.
Keyterm detection
The voice integration hook includes a keyterm detection layer. You can configure a wake word or activation phrase; when Claude Code hears it, voice capture starts automatically without requiring a key press. This is useful for hands-free workflows where the terminal is visible but the keyboard is not immediately accessible.Platform requirements
Voice mode relies on system audio APIs for microphone access. The following conditions apply:- macOS — fully supported; audio capture uses native macOS APIs.
- Linux — supported when a compatible audio subsystem (ALSA or PulseAudio) is available.
- Windows (WSL) — microphone passthrough from the Windows host to WSL may require additional configuration depending on your WSL version.