> ## Documentation Index
> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Голосовой ввод

> Произносите свои запросы в Claude Code CLI с помощью удержания или нажатия для записи голоса.

Произносите свои запросы вместо того, чтобы печатать их в Claude Code CLI. Ваша речь транскрибируется в реальном времени в поле ввода запроса, поэтому вы можете смешивать голос и печать в одном сообщении. Включите диктовку с помощью `/voice`, затем либо удерживайте клавишу во время речи, либо нажмите один раз для начала и снова для отправки.

<Note>
  Голосовой ввод требует Claude Code v2.1.69 или более поздней версии. Режим нажатия требует v2.1.116 или более поздней версии. Проверьте вашу версию с помощью `claude --version`.
</Note>

Диктовка также работает в [представлении агента](/ru/agent-view#peek-and-reply). Удерживайте или нажимайте вашу клавишу push-to-talk, пока сфокусирован ввод диспетчера или ответ в панели просмотра, чтобы диктовать в фоновый сеанс.

<h2 id="requirements">
  Требования
</h2>

Голосовой ввод передает вашу записанную речь на серверы Anthropic для транскрибирования. Аудио не обрабатывается локально. Для этого требуется все следующее:

* **Учетная запись Claude.ai**: служба преобразования речи в текст доступна только при аутентификации с помощью учетной записи Claude.ai и недоступна, когда Claude Code настроен на использование ключа Anthropic API напрямую, Amazon Bedrock, Google Vertex AI или Microsoft Foundry.
* **Организация без включенного соответствия HIPAA**: `/voice` показывает `Voice mode is disabled by your organization's policy`, когда применяется это ограничение.
* **Локальный микрофон**: голосовой ввод не работает в удаленных окружениях, таких как [Claude Code в веб-браузере](/ru/claude-code-on-the-web) или сеансы SSH.
* **WSLg, если вы запускаете Claude Code в WSL**: WSLg включен в WSL2 при установке из Microsoft Store на Windows 10 или 11. Если WSLg недоступен, например на WSL1, запустите Claude Code в собственной Windows.

Транскрибирование не потребляет сообщения Claude или токены и не учитывается в пределах, показанных в `/usage`. См. [использование данных](/ru/data-usage), чтобы узнать, как Anthropic обрабатывает ваши данные.

Запись аудио использует встроенный собственный модуль на macOS, Linux и Windows. На Linux, если собственный модуль не может загрузиться, Claude Code переходит на `arecord` из ALSA utils или `rec` из SoX. Если ни один из них недоступен, `/voice` выводит команду установки для вашего менеджера пакетов.

Расширение Claude Code [VS Code](/ru/vs-code) также поддерживает голосовой ввод с тем же требованием учетной записи Claude.ai. Оно недоступно в сеансах VS Code Remote, включая SSH, Dev Containers и Codespaces, потому что микрофон находится на вашем локальном компьютере, а расширение работает на удаленном хосте.

<h2 id="enable-voice-dictation">
  Включение голосового ввода
</h2>

Запустите `/voice` для включения диктовки. При первом включении Claude Code выполняет проверку микрофона. На macOS это вызывает системный запрос разрешения микрофона для вашего терминала, если он никогда не был предоставлен.

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

`/voice` принимает необязательный аргумент режима:

| Команда       | Эффект                                                        |
| :------------ | :------------------------------------------------------------ |
| `/voice`      | Переключить включение или выключение, сохранить текущий режим |
| `/voice hold` | Включить в [режиме удержания](#hold-to-record)                |
| `/voice tap`  | Включить в [режиме нажатия](#tap-to-record-and-send)          |
| `/voice off`  | Отключить                                                     |

Голосовой ввод сохраняется между сеансами. Установите его непосредственно в [файле пользовательских настроек](/ru/settings) вместо запуска `/voice`:

```json theme={null}
{
  "voice": {
    "enabled": true,
    "mode": "tap"
  }
}
```

Пока голосовой ввод включен, нижний колонтитул ввода показывает подсказку `hold space to speak` (удерживайте пробел для речи), когда запрос пуст. Подсказка отражает ваше текущее сочетание клавиш `voice:pushToTalk` и обновляется, если вы [переназначите клавишу диктовки](#rebind-the-dictation-key). Текст подсказки одинаков в обоих режимах и не отображается, если у вас настроена [пользовательская строка состояния](/ru/statusline).

Транскрибирование настроено для словаря кодирования в обоих режимах. Распространенные термины разработки, такие как `regex`, `OAuth`, `JSON` и `localhost`, распознаются правильно, а название вашего текущего проекта и имя ветки git автоматически добавляются как подсказки распознавания.

<h2 id="hold-to-record">
  Удержание для записи
</h2>

Режим удержания — это push-to-talk: запись выполняется, пока вы удерживаете клавишу, и останавливается при отпускании. Это режим по умолчанию.

Удерживайте `Space` для начала записи. Claude Code обнаруживает удерживаемую клавишу, отслеживая быстрые события повтора клавиш от вашего терминала, поэтому перед началом записи есть краткий период прогрева. Нижний колонтитул показывает `keep holding…` во время прогрева, затем переключается на живую форму волны после активации записи.

Первые несколько символов повтора клавиши печатаются в ввод во время прогрева и автоматически удаляются при активации записи. Одиночное нажатие `Space` все еще печатает пробел, так как обнаружение удержания срабатывает только при быстром повторении.

<Tip>
  Чтобы пропустить прогрев, переключитесь на [режим нажатия](#tap-to-record-and-send) с помощью `/voice tap` или [переназначьте на комбинацию модификаторов](#rebind-the-dictation-key), такую как `meta+k`. Комбинации модификаторов начинают запись при первом нажатии клавиши.
</Tip>

Ваша речь появляется в запросе по мере того, как вы говорите, затемненная до завершения транскрибирования. Отпустите `Space` для остановки записи и завершения текста. Транскрибирование вставляется в позицию вашего курсора, и курсор остается в конце вставленного текста, поэтому вы можете смешивать печать и диктовку в любом порядке. Удерживайте `Space` снова для добавления еще одной записи или сначала переместите курсор для вставки речи в другое место в запросе:

```
> refactor the auth middleware to ▮
  # hold Space, speak "use the new token validation helper"
> refactor the auth middleware to use the new token validation helper▮
```

По умолчанию отпускание клавиши вставляет транскрибирование и ждет, пока вы нажмете `Enter`. Установите `"autoSubmit": true` в объекте настроек `voice` для автоматической отправки запроса при отпускании клавиши, при условии, что транскрибирование содержит не менее трех слов.

<h2 id="tap-to-record-and-send">
  Нажатие для записи и отправки
</h2>

Режим нажатия переключает запись одним нажатием клавиши: нажмите один раз для начала, говорите, затем нажмите снова для отправки запроса. Нет прогрева, и вам не нужно удерживать клавишу.

Включите режим нажатия с помощью `/voice tap`. Когда поле ввода запроса пусто, нажмите `Space` для начала записи. Нижний колонтитул показывает живую форму волны во время записи. Нажмите `Space` снова для остановки.

Claude Code вставляет транскрибирование и автоматически отправляет запрос, когда транскрибирование содержит не менее трех слов. Более короткие транскрибирования вставляются, но не отправляются, поэтому случайное нажатие не отправляет случайное слово.

Порог в три слова учитывает слова для языков, написанных без пробелов. Начиная с версии v2.1.195, японские, китайские и тайские транскрибирования считают отдельные слова, поэтому они автоматически отправляются в режиме нажатия и в режиме удержания с `autoSubmit`. Более ранние версии считали транскрибирование без пробелов одним словом и никогда не отправляли его автоматически.

Первое нажатие начинает запись только при пустом поле ввода запроса, поэтому вы все еще можете нормально печатать пробелы при составлении сообщения. Второе нажатие останавливает запись независимо от содержимого ввода. Запись также автоматически останавливается после 15 секунд молчания или двух минут в целом.

<h2 id="change-the-dictation-language">
  Изменение языка диктовки
</h2>

Голосовой ввод использует тот же [параметр `language`](/ru/settings), который управляет языком ответов Claude. Если этот параметр пуст, диктовка по умолчанию использует английский язык. В расширении VS Code, если `language` пуст, диктовка использует параметр `accessibility.voice.speechLanguage` VS Code перед переходом на английский язык по умолчанию.

<Accordion title="Поддерживаемые языки диктовки">
  | Язык          | Код  |
  | :------------ | :--- |
  | Чешский       | `cs` |
  | Датский       | `da` |
  | Нидерландский | `nl` |
  | Английский    | `en` |
  | Французский   | `fr` |
  | Немецкий      | `de` |
  | Греческий     | `el` |
  | Хинди         | `hi` |
  | Индонезийский | `id` |
  | Итальянский   | `it` |
  | Японский      | `ja` |
  | Корейский     | `ko` |
  | Норвежский    | `no` |
  | Польский      | `pl` |
  | Португальский | `pt` |
  | Русский       | `ru` |
  | Испанский     | `es` |
  | Шведский      | `sv` |
  | Турецкий      | `tr` |
  | Украинский    | `uk` |
</Accordion>

Установите язык в `/config` или непосредственно в настройках. Вы можете использовать либо [код языка BCP 47](https://en.wikipedia.org/wiki/IETF_language_tag), либо название языка:

```json theme={null}
{
  "language": "japanese"
}
```

Если ваш параметр `language` отсутствует в списке поддерживаемых, `/voice` предупредит вас при включении и вернется к английскому языку для диктовки. Текстовые ответы Claude не затрагиваются этим возвратом.

<h2 id="rebind-the-dictation-key">
  Переназначение клавиши диктовки
</h2>

Клавиша диктовки привязана к `voice:pushToTalk` в контексте `Chat` и по умолчанию установлена на `Space`. Одна и та же привязка управляет обоими режимами удержания и нажатия. Переназначьте ее в [`~/.claude/keybindings.json`](/ru/keybindings):

```json theme={null}
{
  "bindings": [
    {
      "context": "Chat",
      "bindings": {
        "meta+k": "voice:pushToTalk",
        "space": null
      }
    }
  ]
}
```

Действие `voice:pushToTalk` использует одну клавишу за раз. Когда вы привязываете пользовательскую клавишу, она заменяет привязку по умолчанию `Space` вместо добавления второго триггера, поэтому строка `"space": null` в этом примере предназначена для ясности и может быть опущена без изменения поведения.

В режиме удержания избегайте привязки простой буквенной клавиши, такой как `v`, так как обнаружение удержания зависит от повтора клавиши, и буква печатается в запрос во время прогрева. Используйте `Space` или комбинацию модификаторов, такую как `meta+k`, для начала записи при первом нажатии клавиши без прогрева. Режим нажатия не имеет прогрева, поэтому работает большинство клавиш.

Некоторые клавиши не доставляются в приложения терминала и вообще не могут быть привязаны. Например, `Caps Lock` показывает ошибку, если вы попытаетесь привязать его. См. [настройка сочетаний клавиш](/ru/keybindings) для полного синтаксиса привязки клавиш и списка зарезервированных сочетаний.

<h2 id="troubleshooting">
  Устранение неполадок
</h2>

Распространенные проблемы, когда голосовой ввод не активируется или не записывает:

* **`Voice mode requires a Claude.ai account`**: вы аутентифицированы с помощью ключа API или стороннего поставщика. Запустите `/login` для входа с помощью учетной записи Claude.ai.
* **`Voice mode is disabled by your organization's policy`**: голосовой ввод отключен политикой вашей организации, как описано в [Требования](#requirements). Обратитесь к администратору вашей организации, чтобы подтвердить, доступен ли голосовой ввод для вашей организации.
* **`Microphone access is denied`**: предоставьте разрешение микрофона вашему терминалу в системных параметрах. На macOS перейдите в System Settings → Privacy & Security → Microphone и включите приложение вашего терминала, затем запустите `/voice` снова. На Windows перейдите в Settings → Privacy & security → Microphone и включите доступ к микрофону для приложений рабочего стола, затем запустите `/voice` снова. Если ваш терминал не указан в параметрах macOS Microphone, см. [Терминал не указан в параметрах macOS Microphone](#terminal-not-listed-in-macos-microphone-settings).
* **`No audio recording tool found`** на Linux: собственный модуль аудио не может загрузиться и резервный вариант не установлен. Установите SoX с помощью команды, показанной в сообщении об ошибке, например `sudo apt-get install sox`.
* **`Voice mode requires a microphone, but SoX could not open an audio capture device`**: SoX установлен, но хост не имеет устройства захвата аудио, например безголовый сервер или контейнер. Запустите Claude Code на машине с микрофоном. {/* min-version: 2.1.195 */}Начиная с версии 2.1.195, Claude Code на Linux выводит это сообщение в такой ситуации; более ранние версии просили вас установить SoX даже когда он уже был установлен.
* **`Voice mode could not find a working audio recorder in WSL`**: WSLg маршрутизирует аудио через PulseAudio вместо устройства ALSA, поэтому SoX требует явной установки его бэкенда PulseAudio. Запустите `sudo apt install sox libsox-fmt-pulse`. Установка только `sox` подтягивает бэкенд ALSA, который не может записывать на WSL, потому что нет устройства `/dev/snd`.
* **`Voice input is failing repeatedly and has been paused`**: голосовой ввод столкнулся с несколькими сбоями при запуске подряд и прекратил попытки новых сеансов до тех пор, пока один не будет успешным. Это обычно означает, что микрофон или звуковой стек на этом хосте не может захватить аудио, например безголовый сервер, удаленная оболочка без передачи аудио или запрещенное разрешение микрофона. Подтвердите работающее устройство ввода, исправьте основную причину из записей выше, затем снова активируйте голосовой ввод.
* **Ничего не происходит при удержании `Space` в режиме удержания**: смотрите на поле ввода запроса, пока вы удерживаете. Если пробелы продолжают накапливаться, голосовой ввод, вероятно, отключен; запустите `/voice hold` для включения. Если появляется только один или два пробела, а затем ничего, голосовой ввод включен, но обнаружение удержания не срабатывает. Обнаружение удержания требует, чтобы ваш терминал отправлял события повтора клавиш, поэтому он не может обнаружить удерживаемую клавишу, если повтор клавиш отключен на уровне ОС. Переключитесь на режим нажатия с помощью `/voice tap`, чтобы избежать требования повтора клавиш.
* **Нажатие `Space` печатает пробел вместо записи в режиме нажатия**: первое нажатие начинает запись только при пустом поле ввода запроса. Сначала очистите ввод или проверьте, что вы находитесь в режиме нажатия, запустив `/voice tap`.
* **`No audio detected from microphone`**: запись началась, но захватила молчание. Подтвердите, что правильное устройство ввода установлено по умолчанию в системе и что его уровень ввода не отключен и не близок к нулю. На Windows откройте Settings → System → Sound → Input и выберите ваш микрофон. На macOS откройте System Settings → Sound → Input.
* **`No speech detected`**: аудио достигло сервиса транскрибирования, но слова не были распознаны. Говорите ближе к микрофону, уменьшите фоновый шум и подтвердите, что ваш [язык диктовки](#change-the-dictation-language) соответствует языку, на котором вы говорите.
* **Транскрибирование искажено или на неправильном языке**: диктовка по умолчанию использует английский язык. Если вы диктуете на другом языке, установите его в `/config` сначала. См. [Изменение языка диктовки](#change-the-dictation-language).

<h3 id="terminal-not-listed-in-macos-microphone-settings">
  Терминал не указан в параметрах macOS Microphone
</h3>

Если приложение вашего терминала не отображается в System Settings → Privacy & Security → Microphone, нет переключателя, который вы можете включить. Сбросьте состояние разрешения для вашего терминала, чтобы следующий запуск `/voice` вызвал свежий запрос разрешения macOS.

<Steps>
  <Step title="Сброс разрешения микрофона для вашего терминала">
    Запустите `tccutil reset Microphone <bundle-id>`, заменив `<bundle-id>` идентификатором вашего терминала: `com.apple.Terminal` для встроенного Terminal или `com.googlecode.iterm2` для iTerm2. Для других терминалов найдите идентификатор с помощью `osascript -e 'id of app "AppName"'`.

    <Warning>
      Вы можете запустить `tccutil reset Microphone` без bundle ID, но это отзывает доступ к микрофону у каждого приложения на вашем Mac, включая приложения, такие как Zoom или Slack. Каждое приложение должно будет повторно запросить доступ при следующем использовании, поэтому не запускайте его во время активного вызова.
    </Warning>
  </Step>

  <Step title="Закройте и перезапустите ваш терминал">
    macOS не будет повторно запрашивать процесс, который уже запущен. Закройте приложение терминала с помощью Cmd+Q, а не просто закройте его окна, затем откройте его снова.
  </Step>

  <Step title="Вызовите свежий запрос">
    Запустите Claude Code и запустите `/voice`. macOS запрашивает доступ к микрофону; разрешите его.
  </Step>
</Steps>

<h2 id="see-also">
  См. также
</h2>

* [Настройка сочетаний клавиш](/ru/keybindings): переназначьте `voice:pushToTalk` и другие действия клавиатуры CLI
* [Настройка параметров](/ru/settings): полный справочник для ключей `voice`, `language` и других параметров
* [Интерактивный режим](/ru/interactive-mode): сочетания клавиш, режимы ввода и управление сеансом
* [Команды](/ru/commands): справочник для `/voice`, `/config` и всех других команд
