Claude Code now ships with a native /voice command, which performs speech to text (poorly) within the Claude Code CLI. Nevertheless, this feature is not available in WSL by default because Claude Code isn’t able to detect audio input.
To fix this, we bridge ALSA → PulseAudio:
- Install the required utils:
sudo apt install libasound2-plugins pulseaudio-util alsa-utils - Create or edit
~/.soundrc:touch ~/.soundrc # create nano ~/.soundrc # edit - Then paste:
pcm.default pulse ctl.default pulse pcm.!default pulse ctl.!default pulseNote: if you followed the
nano ~/.soundrccommand blindly, save and exit the editor withctrl+sthencrtl+x. - Verify it works:
arecord -L # should list devices via PulseAudio aplay -L # same for playback
Then restart Claude Code and try /voice again. The ALSA plugin routes all ALSA calls through PulseAudio, so apps that check for ALSA devices will find them.
