/voice(ボイス)

スラッシュコマンド
/voice
ボイス
Claude Codeの入力欄を「Spaceキー長押し(または1回タップ)で喋った内容を文字起こしして入れる」モードに切り替えるスラッシュコマンド。録音そのものを始めるのではなく、Spaceキーの役割を録音ボタンに切り替える宣言コマンド。Claude.aiアカウントでログインしている必要がある(API keyやBedrock経由では使えない)。Claude Code v2.1.69以降が必要(tapモードはv2.1.116以降)

Claude Codeで長文の指示を入力するのが面倒な人向け

料理ブログの記事下書きをClaude Codeに頼むみたいに、長い指示文を毎回タイピングするのが面倒なとき、両手がふさがっていてキーボードを叩けないとき、または日本語の長文を口で言った方が速いと感じたときに <code>/voice</code> を叩いてモードを有効化し、その後Spaceキー長押し(または <code>/voice tap</code> でタップ式)で喋ると入力欄に文字起こしされる

長い指示を毎回タイピングで書くのが面倒なときに、口で喋った内容をそのまま入力欄に文字起こししてくれるスラッシュコマンドです。Claude Codeの入力フッターに「hold Space to speak」のヒントが出ている状態なら、もうSpaceキーを押しっぱなしにして喋るだけで打鍵が要らなくなります。

ただし条件があって、Claude.aiアカウントでログインしている必要があります。API key経由で動かしてるClaude Codeでは絵に描いた餅です。

噛み砕くと、口述筆記モードに切り替えるスイッチ

イメージとしては会議室のホワイトボードの横にある「マイクON / OFF」のスイッチに近い。スイッチを入れない限りSpaceキーは普通の空白文字としてしか働かないし、スイッチを入れた瞬間からSpaceが録音ボタンに化けます。

つまり /voice 自体は録音を始めるコマンドではなくて、「これからSpaceキーを録音用に使うよ」と宣言するモード切替コマンドです。ここを誤解すると、/voice を打たずにいきなりSpaceを押し続けて「あれ、空白しか入らないんだけど」となります。

大事な前提:Claude.aiアカウントでログインしていないと使えない

まず先にバージョン要件があります。/voice はClaude Code v2.1.69以降でないと動きません。tapモードを使うならv2.1.116以降が必要です。バージョンは claude --version で確認できます。古い場合は npm i -g @anthropic-ai/claude-code や使っているインストーラの更新コマンドで上げてください。

そして最大の落とし穴がこれです。API keyを設定して使っているClaude Code、Amazon Bedrock経由のClaude Code、Google Vertex AI経由のClaude Code、Microsoft Foundry経由のClaude Code、どれも /voice を打つと Voice mode requires a Claude.ai account というエラーが出ます。

解決方法はシンプルで、/login を打ってClaude.aiアカウントに切り替えるだけ。Pro/Maxプランのアカウントを持っていれば追加料金なしで使えます。音声の文字起こしはトークン消費しない=/usage の使用量カウンタにも乗らない仕様です。

「カルボナーラの作り方を5パートに分けて」を声で指示してみる

料理ブログを書いていて、「カルボナーラの作り方を5つのパートに分けて記事の下書きを作って」みたいな長い指示を毎回タイピングするのが面倒、という想定で実演します。

ステップ1: Claude.aiアカウントでログインしている状態か確認

ターミナルでClaude Codeを起動した後、入力欄に /login と打ってみる。すでにClaude.aiアカウントでログインしていれば「Already logged in」みたいな表示が出ます。API keyの設定で動いていた場合は、ここでブラウザが開いてClaude.aiにサインインする流れになります。

ステップ2: /voice でモードを有効化する

入力欄にこう打ちます。

/voice

初回はマイクの使用許可ダイアログがOS側から出るので「許可」を押します。macOSなら「システム設定 → プライバシーとセキュリティ → マイク」でターミナルアプリにチェックが入った状態になります。

成功すると入力フッターにこう表示されます。

Voice mode enabled (hold). Hold Space to record. Dictation language: en (/config to change).

「Dictation language: en」と出ているのに注目。これは録音言語が英語のままという意味です。日本語で喋るつもりなら次のステップで言語を変えます。

ステップ3: 日本語で喋りたいので言語を切り替える

/config を打って設定画面を開き、languagejapanese に設定します。設定ファイルを直接いじる派なら、ユーザー設定ファイルに次のように書き足してもOK。

{
  "language": "japanese"
}

この設定はClaudeの返答言語と兼用です。録音言語だけ別に設定する仕組みはありません。

ステップ4: Spaceキーを押しっぱなしで指示を喋る

入力フッターに「hold Space to speak」と出ているのを確認してから、Spaceキーを押しっぱなしにします。最初の0.3秒くらいは「keep holding…」と出て温まり待ちになり、その後に波形のアニメーションが出始めて録音開始です。

このまま喋ります。

「カルボナーラの作り方を5つのパートに分けて、料理ブログ用の記事の下書きを作って。
食材リスト、下準備、麺を茹でる、ソース作り、仕上げの5パートで、各パートに見出しを付けて」

喋っている最中、入力欄にリアルタイムで薄い文字色で文字起こしが流れてきます。確定するとフォントが普通の色に戻ります。

ステップ5: Spaceキーを離して送信する

喋り終わってSpaceキーを離すと録音が止まり、文字起こしが入力欄に確定で挿入されます。あとはEnterを押せば送信。

毎回Enterを押すのが面倒なら、ユーザー設定ファイルにこれを足しておくと、Spaceを離した瞬間に3語以上あれば自動送信されます。

{
  "voice": {
    "enabled": true,
    "autoSubmit": true
  }
}

ステップ6: ここで初心者がやりがちな勘違い

「Spaceを1回タップしただけで録音が始まると思った」というパターン。これはtapモードに切り替えていない限り起きません。デフォルトのholdモードでは「Space長押し」が録音、「Space1回タップ」はただの空白入力です。1回タップで録音したい人は /voice tap で切り替えます。

ただしtapモードの初回タップは「入力欄が空のとき」にしか録音開始しません。何か文字を打ち込んだ後でSpaceをタップすると、ただの単語区切りの空白として扱われます。この仕様は誤発火を防ぐためのもので、慣れると合理的です。

つまり /voice は何をしてくれるのか

  • やってくれる: Spaceキーを録音ボタンに切り替えて、喋った内容を入力欄に文字起こしする。20言語に対応していて日本語もOK。タイピングと録音を1つのプロンプトの中で混ぜられる
  • やってくれない: 録音そのものは /voice がやるわけではなく、有効化した後にSpaceキーを押した時点で初めて録音が動く。/voice を打っただけでは何も録られない
  • 意味が薄い場面: API keyやBedrock経由でClaude Codeを動かしているとき(そもそも使えない)。SSHでリモートサーバに繋いでそこのClaude Codeを操作しているとき(マイクは手元にあるので無理)

使いどころ3シナリオ

シナリオ1: 料理ブログの長い指示を毎回タイピングしたくないとき

「カルボナーラの作り方を5パートに分けて、各パートに見出しと200字程度の説明を入れて、最後に失敗しがちなポイントを3つ書いて」みたいな100字超えの指示は、タイピングだと30秒くらいかかります。/voice hold でモードを有効にしてSpace長押しで喋れば、10秒で終わります。"autoSubmit": true も入れておけば、口を閉じた瞬間に勝手に送信されて手はキーボードから離れたまま。料理を作りながら指示を出せます。

シナリオ2: 家計簿アプリのコード修正で「あの関数のあの部分」を口で説明したいとき

ファイル名や関数名はタイピングの方が速いことが多いんですが、修正方針の説明は文章になるので口の方が速い。「/voice tap でモードに入る → ファイル名と関数名はタイピング → 修正方針はSpaceタップで口述 → もう一度Spaceタップで送信」という混在型が刺さります。tapモードは温まり待ちがなくてレスポンスが速いので、こういう細切れの使い方に向いています。

シナリオ3: 子育てや料理しながら片手でClaude Codeを操作したいとき

両手がふさがっている状況だとそもそもタイピングできない。/voice tap で1タップ録音モードにしておけば、Spaceキー1回押すだけで録音開始できます。15秒の無音か2分経過で自動停止する仕様なので、止め忘れて延々録音が続く心配もありません。3語以上ならそのまま自動送信されるので、「次の手順教えて」と短く言って送るような使い方ができます。

初心者が踏みやすい落とし穴

  • Claude Codeのバージョンが古いと /voice 自体が認識されない。v2.1.69未満ではコマンドが存在しない。claude --version で確認して、古ければ更新する
  • tapモードはv2.1.116以降でないと使えない。v2.1.69〜v2.1.115のバージョンだとholdモードしか動かない
  • API key経由のClaude Codeでは使えないVoice mode requires a Claude.ai account エラーが出る。/login でClaude.aiアカウントに切り替える必要がある
  • SSHで繋いだリモートサーバのClaude Codeでは使えない。マイクは手元のパソコンにあるので、リモート側のClaude Codeは聞けない。VS Code RemoteのSSH接続・Dev Containers・Codespaces環境も同じ理由で使えない
  • WSL1では使えない。WSLgがないと音声が通らない。WSL2をMicrosoft Store経由でインストールした場合はWSLgが同梱されているが、WSL1には含まれない。WSL1環境ならWindows native版のClaude Codeを使う
  • /voice を打たずにSpaceを押しても録音は始まらない。まずモード有効化、それからSpace。順番を逆にすると延々と空白だけが入力される
  • tapモードで入力欄に文字が残っているとSpaceで録音始まらない。tapモードの初回タップは入力欄が空のときだけ録音開始する仕様。文字を消してから再タップ
  • 言語設定が空だと日本語で喋っても英語で文字起こしされるlanguage が未設定だと英語にfallbackする。/configjapanese を設定する
  • holdモードは押しっぱなし開始に0.3秒くらいの温まり待ちがある。最初の数文字分のSpaceが入力欄に入って、録音開始時に自動で消える。気になる人は /voice tap か、キー設定で meta+k みたいな組み合わせキーに変えると温まり待ちなしで開始できる
  • 音声データはAnthropicのサーバに送られて文字起こしされる。ローカル処理ではない。社内規定で音声を外部送信できない人は使えない

書き方

/voice [hold|tap|off]

やってみるとこうなる

入力

/voice hold

出力例

Voice mode enabled (hold). Hold Space to record. Dictation language: en (/config to change).

このページに出てきた言葉

Claude.aiアカウント
claude.ai にメールアドレスでサインアップして作る個人アカウント。Pro/Maxプランの契約もこれに紐づく。<code>/voice</code> はこのアカウントでログインしている時だけ動く
API key
Anthropicの開発者管理画面で発行する英数字の鍵。トークン量に応じて料金を払う使い方をするときに必要。<code>/voice</code> はこの方式では使えない
holdモード
Spaceキーを押している間だけ録音されるモード。<code>/voice</code> の既定の動作。離した瞬間に文字起こしが入力欄に入る
tapモード
Space1回タップで録音開始、もう1回タップで録音停止+自動送信されるモード。<code>/voice tap</code> で切り替える。Claude Code v2.1.116以降で使える
autoSubmit
ユーザー設定ファイルに <code>"autoSubmit": true</code> を入れると、Spaceを離した瞬間に3語以上あれば自動でEnter送信される設定
WSLg
Windows Subsystem for Linuxで音声入出力を扱えるようにする仕組み。WSL2+Microsoft Store経由でWSLを入れた場合は同梱されている。WSL1では <code>/voice</code> が動かない

関連項目

公式ドキュメント

https://code.claude.com/docs/en/voice-dictation

-

← 戻る