はじめに
Claude Code には /voice という音声入力機能があり、話した内容をそのままプロンプトにできます。ただし WSL2 上で動かすと、最初は「録音ツールが見つからない」というエラーで止まりました。
この記事では、Windows 11 + WSL2 の環境で Claude Code の音声入力を使えるようにするまでの手順を、実際に出たエラーと対処を含めてまとめます。長い指示や、バグの経緯を説明するときにキーボードを打たずに済むのが目的です。
前提条件
音声入力を使うには、次の3つがそろっている必要があります(公式ドキュメント)。
| 項目 | 条件 |
|---|---|
| Claude Code のバージョン | v2.1.69 以降 |
| ログイン方法 | claude.ai アカウント(APIキー、Bedrock、Vertex では使えない) |
| WSL で使う場合 | WSLg が有効な WSL2(音声を PulseAudio 経由で扱うため) |
なお、音声はローカルのマイクから取り込むため、SSH 接続先や Web 版の Claude Code では使えません。WSLg が使えない環境(WSL1 など)では、Windows ネイティブで Claude Code を動かすよう案内されています。
手順1:バージョンを確認する
まずターミナルでバージョンを確認します。
claude --version
私の環境では 2.1.310 (Claude Code) と表示され、条件の v2.1.69 以降を満たしていました。
手順2:言語を日本語に設定する
音声入力は、Claude の応答言語と同じ language 設定を使って文字起こしします。設定していないと英語として聞き取られるため、日本語で話すなら先に変えておきます。
Claude Code のプロンプトで /config を開き、言語(language)を日本語に設定してください。
手順3:/voice を実行する(WSL でエラー)
Claude Code のプロンプトで /voice を実行すると音声入力が有効になります。初回はマイクのチェックが走り、成功すれば Voice mode enabled (hold) と表示されます。
ところが WSL2 上では、次のメッセージで止まりました。
Voice mode could not find a working audio recorder in WSL.
WSL2 with WSLg provides audio via PulseAudio — install SoX with its
PulseAudio backend (sudo apt install sox libsox-fmt-pulse) so Claude Code
can record through it.
If WSLg is not available (for example WSL1), run Claude Code in native
Windows instead.
要するに「WSL 内に録音ツールがない」ということです。WSLg が PulseAudio で音声を提供しているので、SoX(録音ツール)とその PulseAudio 用バックエンドを入れれば録音できる、という案内になっています。
手順4:WSLg が有効か確認する
SoX を入れる前に、WSLg が動いているかを確かめます。WSL のターミナルで次を実行します(Claude Code 内なら先頭に ! を付けても実行できます)。
ls /mnt/wslg
echo $PULSE_SERVER
/mnt/wslg の中に PulseServer などがあり、$PULSE_SERVER に unix:/mnt/wslg/PulseServer のような値が出れば WSLg は有効です。何も出ない場合は WSLg が使えていないので、Windows ネイティブで Claude Code を動かす方法を検討します。
手順5:SoX をインストールする
エラーメッセージの案内どおり、SoX と PulseAudio 用バックエンドを入れます。
sudo apt update
sudo apt install sox libsox-fmt-pulse
root ユーザーで作業している場合は sudo は不要です。
手順6:マイクのテスト
Claude Code に戻る前に、録音できるかを単体で確認しておくと切り分けが楽です。
rec -d test.wav trim 0 3
play test.wav
3秒録音して再生され、自分の声が聞こえれば OK です。無音の場合は、Windows の「設定 → プライバシーとセキュリティ → マイク」で「デスクトップ アプリがマイクにアクセスできるようにする」がオンになっているか確認してください。
使い方とまとめ
準備ができたら、Claude Code で再度 /voice を実行します。使い方は2つのモードがあります。
| モード | 有効にするコマンド | 動き |
|---|---|---|
| ホールド(既定) | /voice hold |
スペースキーを押している間だけ録音し、離すと文字起こしがプロンプト欄に入る。確認して Enter で送信 |
| タップ | /voice tap |
タップで録音し、文字起こしが3語以上あれば自動で送信される |
オフにするときは /voice off です。設定はセッションをまたいで保持されます。
WSL2 で使う場合のポイントは、WSLg が有効であることと、SoX(sox と libsox-fmt-pulse)を入れておくことの2点でした。エラーメッセージが具体的な対処まで書いてくれているので、まずはそれに従うのが近道です。
参考:Voice dictation(Claude Code 公式ドキュメント)
Views: 2
