Raz
Raz — голосовой интерфейс для Claude Code
Общайтесь с Claude Code голосом. Claude отвечает вслух. Всё работает локально на вашем Mac — никаких облачных API, никаких подписок, данные не покидают ваш компьютер.
Raz (от арамейского רָז, «раскрытая тайна») даёт Claude Code голос и слух: kokoro-mlx отвечает за речь, а mlx-whisper — за распознавание. Обе модели оптимизированы для 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
Что вам понадобится
Требование | Зачем |
Mac на Apple Silicon (M1/M2/M3/M4) | kokoro-mlx и mlx-whisper работают только на Apple Silicon |
Python 3.12 | Зафиксированная версия — kokoro-mlx требует именно её |
CLI, с которым этот проект интегрируется | |
Менеджер пакетов Python (делает всё сам) | |
jq | Обработка JSON для CLI ( |
Установка
Вся установка занимает около 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 управлять Raz через 10 встроенных инструментов (speak, смена голоса, запуск/остановка прослушивания и т. д.):
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Эта команда запускает два процесса:
TTS-сервер (текст-в-речь) — загружает модель kokoro-mlx (~10 секунд при первом запуске)
STT-демон (речь-в-текст) — следит за нажатием правой клавиши 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 stopИспользование Raz
Начало голосового сеанса
raz start # start voice + mic
raz stop # stop everything
raz status # check what's runningРазговор с Claude (push-to-talk)
Удерживайте клавишу 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Затем назначьте сочетание:
System Settings → Keyboard → Keyboard Shortcuts → Services → General
Найдите пункт «Activar Raz» (озвучка в списке Services)
Нажмите «Add Shortcut» и введите нужную комбинацию (например, ⌃⌘R)
Теперь эта комбинация будет переключать Raz из любого места, с уведомлением macOS.
Голоса
54 голоса — в 10 языках. Яркие представители:
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)
Демон push-to-talk по умолчанию слушает испанскую речь. Запустить его с другим языком:
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 МБ |
STT-демон | Слушает правый Option, распознаёт через Whisper | ~2 МБ в простое, ~4 ГБ при загруженном Whisper |
MCP-сервер | Предоставляет Claude Code 10 инструментов для управления Raz | работает внутри Claude Code |
Stop-хук | Перехватывает ответ Claude Code и передаёт его в TTS | bash-скрипт, памяти не занимает |
STT-демон загружает Whisper лениво (при первом нажатии) и автоматически выгружает модель через 5 минут бездействия, освобождая ~4 ГБ памяти.
Решение проблем
«Правая клавиша Option не работает»
Вашему терминальному приложению нужно разрешение специальных возможностей (Accessibility). Откройте «Системные настройки → Приватность и безопасность → Специальные возможности» и добавьте ваш терминал (iTerm2, Terminal.app и т. д.).
«raz start зависает на «Loading Whisper model»»
При первом запуске загружается модель Whisper (~800 МБ). Проверьте подключение к интернету. После первого запуска модель уже находится в кэше.
«Порт 8787 уже занят»
Выполняется другой экземпляр Raz. Остановите его:
raz stop
# If that doesn't work:
pkill -f "raz.tts_server"«No daemon doesn't stop»
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 shortcutИнструменты MCP
При подключении как MCP-сервер Claude Code получает следующие 10 инструментов:
Tool | Описание |
| Озвучить текст голосом |
| Сменить голос |
| Показать все голоса |
| Изменить режим автоозвучания |
| Изменить скорость речи |
| Включить/выключить TTS |
| Проверить статус Raz |
| Запустить push-to-talk |
| Остановить push-to-talk |
| Проверить статус микрофона |
Лицензия
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-