Raz
Raz — Claude Code 用音声インターフェース
Claude Code に音声で話しかけられます。Claude が音声で応答します。すべてが Mac 上でローカルに動作します — クラウド API も、サブスクリプションも不要で、データがマシンの外に出ることもありません。
Raz(アラム語の רָז、「明かされた神秘」に由来)は、音声合成に kokoro-mlx、聴取に mlx-whisper を使用して、Claude Code に声と耳を与えます。どちらも Apple Silicon 向けに最適化されています。
仕組み
You speak (hold Right Option key) ──► Whisper transcribes ──► text goes to Claude
Claude responds ──► auto-speak reads the response aloud through your speakersこれだけです。Raz をオンにすると、Claude と音声で会話できます。コードブロックと表は静かにスキップされ、散文のみが読み上げられます。
Related MCP server: Voice MCP
必要なもの
要件 | 理由 |
Apple Silicon Mac(M1/M2/M3/M4) | kokoro-mlx と mlx-whisper は Apple Silicon でのみ動作します |
Python 3.12 | 固定バージョン — kokoro-mlx が要求します |
これと統合する CLI | |
Python パッケージマネージャー(すべてを処理します) | |
jq | CLI の JSON 処理( |
セットアップ
セットアップ全体は約5分で完了します。すべての手順はコピー&ペーストです。
ステップ 1: クローンとインストール
git clone https://github.com/Mateob6/claude-voice-interaction.git
cd claude-voice-interaction
uv syncこれによりコードがダウンロードされ、すべての Python 依存関係(kokoro-mlx、mlx-whisper、FastAPI、pynput など)が分離された仮想環境にインストールされます。
ステップ 2: CLI のインストール
mkdir -p ~/.local/bin
ln -sf "$(pwd)/scripts/raz" ~/.local/bin/raz
chmod +x scripts/raz scripts/start_server.sh scripts/stop_server.sh~/.local/bin が PATH に含まれていることを確認してください。含まれていない場合:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc動作を確認します:
raz helpステップ 3: MCP サーバーの登録
これにより、Claude Code は 10 個の組み込みツール(speak、音声の変更、リスニングの開始/停止など)を通じて Raz を制御できます:
claude mcp add raz -- uv run --directory "$(pwd)" python -m raz.mcp_serverステップ 4: 自動読み上げの設定
このフックにより、Claude の応答が自動的に読み上げられます。Claude Code の設定に追加してください:
cat ~/.claude/settings.jsonファイルが存在する場合は hooks セクションを追加してください。存在しない場合は作成してください:
{
"hooks": {
"Stop": [
{
"matcher": "*",
"hooks": [
{
"type": "command",
"command": "/FULL/PATH/TO/claude-voice-interaction/hooks/stop_hook.sh",
"timeout": 30
}
]
}
]
}
}重要: /FULL/PATH/TO/claude-voice-interaction を、リポジトリをクローンした実際のパスに置き換えてください。プロジェクトディレクトリ内で pwd を実行すると確認できます。
ステップ 5: 初回実行
raz startこれにより、次の 2 つが起動します:
TTS サーバー(テキスト読み上げ)— kokoro-mlx モデルをロードします(初回は約10秒)
STT デーモン(音声認識)— Right Option キーを監視します
次のように表示されるはずです:
=== Starting Raz ===
Starting Raz TTS server (background) on port 8787...
Raz ready!
Starting STT daemon (lang=es)...
Loading Whisper model. ready!
PID: 12345テストします:
raz say "Hello, I can speak now"音声が聞こえれば、すべて正常に動作しています。Raz を停止するには:
raz stopRaz の使い方
音声セッションを開始
raz start # start voice + mic
raz stop # stop everything
raz status # check what's runningClaude と話す(プッシュトーク)
キーボードの Right Option(⌥) を押し続けます
メッセージを話します
キーを離します
話した内容が文字起こしされ、Claude Code に貼り付けられます
録音開始時には Tink 音、停止時には Pop 音が聞こえます。
初回のみ: macOS がターミナルアプリへのアクセシビリティ権限を要求します。許可してください — pynput がホットキーをグローバルに検出するために必要です。
初回の押下時: Whisper モデルは初回使用時にロードされます(約3秒)。以降は文字起こしがほぼ瞬時に行われます。モデルは 5 分間アイドル状態が続くと、メモリ解放のために自動的にアンロードされます。
音声を変更
raz voice af_heart # switch to English female (best quality)
raz voice em_alex # switch to Spanish male (default)
raz voice bm_fable # switch to British storyteller
raz voices # see all 54 voices速度を調整
raz speed 1.5 # faster
raz speed 0.8 # slower
raz speed 1.0 # normalワンショット文字起こし
音声を録音し、文字起こしをクリップボードにコピーします(デーモンなし):
raz listen # Spanish (default)
raz listen en # English
# Press Ctrl+C when done speakingキーボードショートカットを設定(オプション)
グローバルキーボードショートカットで、任意のアプリから Raz のオン/オフを切り替えます:
raz shortcut install次にショートカットを割り当てます:
システム設定 → キーボード → キーボードショートカット → サービス → 一般
「Activar Raz」 を見つけます
「ショートカットを追加」をクリックし、好みのキーコンビネーション(例: ⌃⌘R)を押します
これで、そのキーコンビネーションで、macOS の通知付きでどこからでも Raz のオン/オフを切り替えられます。
音声
10 言語・54 の音声。主なもの:
ID | 言語 | 性別 | 特徴 |
| スペイン語 | ♂ | デフォルト。 自然で明瞭 |
| スペイン語 | ♀ | 温かみがあり表現豊か |
| 英語 | ♀ | 総合的に最高品質 |
| 英語 | ♂ | 深みがあり明瞭 |
| イギリス英語 | ♂ | 読み聞かせ向きの声 |
| フランス語 | ♀ | 明瞭で自然 |
| イタリア語 | ♀ | 温かくメロディアス |
| 日本語 | ♀ | 標準 |
| マンダリン | ♀ | 元気な声 |
| ポルトガル語 | ♀ | 自然 |
全一覧: raz voices
設定
自動読み上げモード
モード | 動作 |
| 散文を読み上げ、コードと表を静かにスキップします (デフォルト) |
| すべてを読み上げます |
| 自動読み上げは行いません — 明示的な |
raz mode smart # recommended
raz mode auto # hear everything
raz mode off # silent, use speak() when needed言語の自動検出
Raz はテキストがスペイン語か英語かを自動検出し、それに応じて音声を切り替えます。em_alex(スペイン語の男性)を設定しており、Claude が英語で応答した場合、Raz はその応答の間だけ自動的に am_adam(英語の男性)に切り替え、その後元に戻します。
STT の言語
プッシュトークデーモンはデフォルトでスペイン語を使用します。別の言語で起動する場合:
raz stt start en # English
raz stt start es # Spanish (default)アーキテクチャ
Claude Code
├── MCP tools (10) ──► localhost:8787 (TTS: kokoro-mlx)
│ ──► raz.stt.daemon (STT: control)
├── Stop hook ──► localhost:8787/auto-speak
├── STT daemon (pynput + mlx-whisper) ──► clipboard ──► paste
└── CLI (raz) ──► unified lifecycleコンポーネント | 機能 | メモリ |
TTS サーバー | スピーカーからテキストを読み上げます(FastAPI + kokoro-mlx) | ~730 MB |
STT デーモン | Right Option を監視し、Whisper で文字起こしします | アイドル時 ~2 MB、Whisper ロード時 ~4 GB |
MCP サーバー | Claude Code が Raz を制御するための 10 個のツール | Claude Code 内で動作 |
停止フック | Claude の応答を取得して TTS に送信します | bash スクリプト、メモリなし |
STT デーモンは、最初のキー押下時に Whisper を遅延ロードし、5 分間アイドル状態が続くと約 4 GB のメモリを解放するために自動的にアンロードします。
トラブルシューティング
「Right Option が反応しない」
ターミナルアプリにはアクセシビリティ権限が必要です。システム設定 → プライバシーとセキュリティ → アクセシビリティ に移動し、ターミナル(iTerm2、Terminal.app など)を追加してください。
「raz start が 'Loading Whisper model' でハングする」
初回実行時には Whisper モデル(約 800 MB)がダウンロードされます。インターネット接続を確認してください。モデルは初回ダウンロード後にキャッシュされます。
「ポート 8787 がすでに使用中」
別の Raz インスタンスが実行されています。終了してください:
raz stop
# If that doesn't work:
pkill -f "raz.tts_server"「デーモンが停止しない」
pkill -f "run_daemon"「音声が出力されない」
Mac の音声出力が正しく設定されているか確認してください(システム設定 → サウンド)。Raz はデフォルトの出力デバイスから再生します。
CLI リファレンス
raz start # Start Raz (voice + mic)
raz stop # Stop Raz
raz on / raz off # Enable/disable Raz
raz status # Show Raz status
raz say "text" # Speak text
raz listen [lang] # Record → transcribe → clipboard
raz voice NAME # Change voice
raz voices # List all 54 voices
raz mode MODE # smart | auto | off
raz speed N # 0.5–2.0
raz stt start|stop # Mic only
raz tts start|stop # Voice only
raz shortcut install|remove # Keyboard shortcutMCP ツール
MCP サーバーとして登録すると、Claude Code は次の 10 個のツールを利用できます:
ツール | 機能 |
| テキストを読み上げます |
| 音声を変更します |
| すべての音声を一覧表示します |
| 自動読み上げモードを変更します |
| 読み上げ速度を変更します |
| TTS を有効/無効にします |
| Raz のステータスを確認します |
| プッシュトークを開始します |
| プッシュトークを停止します |
| マイクのステータスを確認します |
ライセンス
This server cannot be deployed
Maintenance
Related MCP Connectors
Let cloud agents talk to you: progress updates spoken on your Mac, and replies you send back.
No-data MCP handoff for local Claude Code to Codex harness moves. $49 lifetime.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
Mac & Windows: let ChatGPT, Claude & Cursor use your email, calendar, iMessage, Teams, files.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables hands-free voice conversations with Claude using real-time speech recognition and text-to-speech on macOS. Creates a self-sustaining conversation loop where Claude can autonomously listen, respond, and continue the interaction without keyboard input.MIT
- FlicenseNot gradedqualityDmaintenanceEnables voice interaction with Claude Code through local speech-to-text (Whisper) and text-to-speech (Supertonic), allowing verbal input/output without external API calls.2-
- AlicenseNot gradedqualityDmaintenanceEnables bidirectional voice interaction for Claude Code using local speech-to-text and text-to-speech models optimized for Apple Silicon. It provides tools to listen to user speech via microphone and speak responses aloud through system speakers.16Apache 2.0
- -licenseNot gradedqualityNot gradedmaintenanceA voice-enabled interface for Claude Desktop that supports speech-to-text input and text-to-speech output via ElevenLabs, turning Claude into a voice assistant.1-