Настраиваемые сочетания клавиш требуют Claude Code v2.1.18 или более поздней версии. Проверьте вашу версию с помощью claude --version.
Claude Code поддерживает настраиваемые сочетания клавиш. Запустите /keybindings для создания или открытия файла конфигурации в ~/.claude/keybindings.json.
Файл конфигурации
Файл конфигурации keybindings — это объект с массивом bindings. Каждый блок указывает контекст и карту нажатий клавиш на действия.
Изменения в файле keybindings автоматически обнаруживаются и применяются без перезагрузки Claude Code.
| Поле | Описание |
|---|
$schema | Необязательный URL JSON Schema для автодополнения редактора |
$docs | Необязательный URL документации |
bindings | Массив блоков привязок по контексту |
Этот пример привязывает Ctrl+E к открытию внешнего редактора в контексте чата и отменяет привязку Ctrl+U:
{
"$schema": "https://www.schemastore.org/claude-code-keybindings.json",
"$docs": "https://code.claude.com/docs/ru/keybindings",
"bindings": [
{
"context": "Chat",
"bindings": {
"ctrl+e": "chat:externalEditor",
"ctrl+u": null
}
}
]
}
Контексты
Каждый блок привязки указывает контекст, где применяются привязки:
| Контекст | Описание |
|---|
Global | Применяется везде в приложении |
Chat | Основная область ввода чата |
Autocomplete | Меню автодополнения открыто |
Settings | Меню параметров (закрытие только с помощью Escape) |
Confirmation | Диалоги разрешений и подтверждений |
Tabs | Компоненты навигации по вкладкам |
Help | Меню справки видимо |
Transcript | Средство просмотра стенограммы |
HistorySearch | Режим поиска истории (Ctrl+R) |
Task | Выполняется фоновая задача |
ThemePicker | Диалог выбора темы |
Attachments | Навигация по панели изображений/вложений |
Footer | Навигация по индикатору нижнего колонтитула (задачи, команды, diff) |
MessageSelector | Выбор сообщения в диалоге перемотки и резюме |
DiffDialog | Навигация по средству просмотра diff |
ModelPicker | Уровень усилий выбора модели |
Select | Универсальные компоненты выбора/списка |
Plugin | Диалог plugin (обзор, обнаружение, управление) |
Доступные действия
Действия следуют формату namespace:action, например chat:submit для отправки сообщения или app:toggleTodos для отображения списка задач. Каждый контекст имеет определённые доступные действия.
Действия приложения
Действия, доступные в контексте Global:
| Действие | По умолчанию | Описание |
|---|
app:interrupt | Ctrl+C | Отменить текущую операцию |
app:exit | Ctrl+D | Выход из Claude Code |
app:toggleTodos | Ctrl+T | Переключить видимость списка задач |
app:toggleTranscript | Ctrl+O | Переключить подробную стенограмму |
Действия истории
Действия для навигации по истории команд:
| Действие | По умолчанию | Описание |
|---|
history:search | Ctrl+R | Открыть поиск истории |
history:previous | Up | Предыдущий элемент истории |
history:next | Down | Следующий элемент истории |
Действия чата
Действия, доступные в контексте Chat:
| Действие | По умолчанию | Описание |
|---|
chat:cancel | Escape | Отменить текущий ввод |
chat:killAgents | Ctrl+X Ctrl+K | Завершить всех фоновых агентов |
chat:cycleMode | Shift+Tab* | Циклический перебор режимов разрешений |
chat:modelPicker | Cmd+P / Meta+P | Открыть выбор модели |
chat:fastMode | Meta+O | Переключить быстрый режим |
chat:thinkingToggle | Cmd+T / Meta+T | Переключить расширенное мышление |
chat:submit | Enter | Отправить сообщение |
chat:undo | Ctrl+_ | Отменить последнее действие |
chat:externalEditor | Ctrl+G, Ctrl+X Ctrl+E | Открыть во внешнем редакторе |
chat:stash | Ctrl+S | Спрятать текущий запрос |
chat:imagePaste | Ctrl+V (Alt+V на Windows) | Вставить изображение |
*На Windows без режима VT (Node <24.2.0/<22.17.0, Bun <1.2.23) по умолчанию используется Meta+M.
Действия автодополнения
Действия, доступные в контексте Autocomplete:
| Действие | По умолчанию | Описание |
|---|
autocomplete:accept | Tab | Принять предложение |
autocomplete:dismiss | Escape | Закрыть меню |
autocomplete:previous | Up | Предыдущее предложение |
autocomplete:next | Down | Следующее предложение |
Действия подтверждения
Действия, доступные в контексте Confirmation:
| Действие | По умолчанию | Описание |
|---|
confirm:yes | Y, Enter | Подтвердить действие |
confirm:no | N, Escape | Отклонить действие |
confirm:previous | Up | Предыдущий вариант |
confirm:next | Down | Следующий вариант |
confirm:nextField | Tab | Следующее поле |
confirm:previousField | (не привязано) | Предыдущее поле |
confirm:cycleMode | Shift+Tab | Циклический перебор режимов разрешений |
confirm:toggleExplanation | Ctrl+E | Переключить объяснение разрешения |
Действия разрешений
Действия, доступные в контексте Confirmation для диалогов разрешений:
| Действие | По умолчанию | Описание |
|---|
permission:toggleDebug | Ctrl+D | Переключить информацию отладки разрешения |
Действия стенограммы
Действия, доступные в контексте Transcript:
| Действие | По умолчанию | Описание |
|---|
transcript:toggleShowAll | Ctrl+E | Переключить отображение всего содержимого |
transcript:exit | Ctrl+C, Escape | Выход из просмотра стенограммы |
Действия поиска истории
Действия, доступные в контексте HistorySearch:
| Действие | По умолчанию | Описание |
|---|
historySearch:next | Ctrl+R | Следующее совпадение |
historySearch:accept | Escape, Tab | Принять выбор |
historySearch:cancel | Ctrl+C | Отменить поиск |
historySearch:execute | Enter | Выполнить выбранную команду |
Действия задачи
Действия, доступные в контексте Task:
| Действие | По умолчанию | Описание |
|---|
task:background | Ctrl+B | Переместить текущую задачу в фон |
Действия темы
Действия, доступные в контексте ThemePicker:
| Действие | По умолчанию | Описание |
|---|
theme:toggleSyntaxHighlighting | Ctrl+T | Переключить подсветку синтаксиса |
Действия справки
Действия, доступные в контексте Help:
| Действие | По умолчанию | Описание |
|---|
help:dismiss | Escape | Закрыть меню справки |
Действия вкладок
Действия, доступные в контексте Tabs:
| Действие | По умолчанию | Описание |
|---|
tabs:next | Tab, Right | Следующая вкладка |
tabs:previous | Shift+Tab, Left | Предыдущая вкладка |
Действия вложений
Действия, доступные в контексте Attachments:
| Действие | По умолчанию | Описание |
|---|
attachments:next | Right | Следующее вложение |
attachments:previous | Left | Предыдущее вложение |
attachments:remove | Backspace, Delete | Удалить выбранное вложение |
attachments:exit | Down, Escape | Выход из панели вложений |
Действия нижнего колонтитула
Действия, доступные в контексте Footer:
| Действие | По умолчанию | Описание |
|---|
footer:next | Right | Следующий элемент нижнего колонтитула |
footer:previous | Left | Предыдущий элемент нижнего колонтитула |
footer:openSelected | Enter | Открыть выбранный элемент нижнего колонтитула |
footer:clearSelection | Escape | Очистить выбор нижнего колонтитула |
Действия выбора сообщения
Действия, доступные в контексте MessageSelector:
| Действие | По умолчанию | Описание |
|---|
messageSelector:up | Up, K, Ctrl+P | Переместиться вверх в списке |
messageSelector:down | Down, J, Ctrl+N | Переместиться вниз в списке |
messageSelector:top | Ctrl+Up, Shift+Up, Meta+Up, Shift+K | Перейти в начало |
messageSelector:bottom | Ctrl+Down, Shift+Down, Meta+Down, Shift+J | Перейти в конец |
messageSelector:select | Enter | Выбрать сообщение |
Действия diff
Действия, доступные в контексте DiffDialog:
| Действие | По умолчанию | Описание |
|---|
diff:dismiss | Escape | Закрыть средство просмотра diff |
diff:previousSource | Left | Предыдущий источник diff |
diff:nextSource | Right | Следующий источник diff |
diff:previousFile | Up | Предыдущий файл в diff |
diff:nextFile | Down | Следующий файл в diff |
diff:viewDetails | Enter | Просмотреть детали diff |
diff:back | (зависит от контекста) | Вернуться в средстве просмотра diff |
Действия выбора модели
Действия, доступные в контексте ModelPicker:
| Действие | По умолчанию | Описание |
|---|
modelPicker:decreaseEffort | Left | Уменьшить уровень усилий |
modelPicker:increaseEffort | Right | Увеличить уровень усилий |
Действия выбора
Действия, доступные в контексте Select:
| Действие | По умолчанию | Описание |
|---|
select:next | Down, J, Ctrl+N | Следующий вариант |
select:previous | Up, K, Ctrl+P | Предыдущий вариант |
select:accept | Enter | Принять выбор |
select:cancel | Escape | Отменить выбор |
Действия plugin
Действия, доступные в контексте Plugin:
| Действие | По умолчанию | Описание |
|---|
plugin:toggle | Space | Переключить выбор plugin |
plugin:install | I | Установить выбранные plugins |
Действия параметров
Действия, доступные в контексте Settings:
| Действие | По умолчанию | Описание |
|---|
settings:search | / | Перейти в режим поиска |
settings:retry | R | Повторить загрузку данных об использовании (при ошибке) |
Действия голоса
Действия, доступные в контексте Chat при включённой диктовке голосом:
| Действие | По умолчанию | Описание |
|---|
voice:pushToTalk | Space | Удерживайте для диктовки запроса |
Синтаксис нажатия клавиш
Модификаторы
Используйте клавиши-модификаторы с разделителем +:
ctrl или control - клавиша Control
alt, opt или option - клавиша Alt/Option
shift - клавиша Shift
meta, cmd или command - клавиша Meta/Command
Например:
ctrl+k Одна клавиша с модификатором
shift+tab Shift + Tab
meta+p Command/Meta + P
ctrl+shift+c Несколько модификаторов
Прописные буквы
Отдельная прописная буква подразумевает Shift. Например, K эквивалентна shift+k. Это полезно для привязок в стиле vim, где прописные и строчные клавиши имеют разные значения.
Прописные буквы с модификаторами (например, ctrl+K) рассматриваются как стилистические и не подразумевают Shift — ctrl+K то же самое, что ctrl+k.
Аккорды
Аккорды — это последовательности нажатий клавиш, разделённые пробелами:
ctrl+k ctrl+s Нажмите Ctrl+K, отпустите, затем Ctrl+S
Специальные клавиши
escape или esc - клавиша Escape
enter или return - клавиша Enter
tab - клавиша Tab
space - пробел
up, down, left, right - клавиши со стрелками
backspace, delete - клавиши удаления
Отмена привязки сочетаний по умолчанию
Установите действие на null для отмены привязки сочетания по умолчанию:
{
"bindings": [
{
"context": "Chat",
"bindings": {
"ctrl+s": null
}
}
]
}
Зарезервированные сочетания
Эти сочетания не могут быть переназначены:
| Сочетание | Причина |
|---|
| Ctrl+C | Жёстко закодированное прерывание/отмена |
| Ctrl+D | Жёстко закодированный выход |
| Ctrl+M | Идентично Enter в терминалах (оба отправляют CR) |
Конфликты терминала
Некоторые сочетания могут конфликтовать с мультиплексорами терминала:
| Сочетание | Конфликт |
|---|
| Ctrl+B | Префикс tmux (нажмите дважды для отправки) |
| Ctrl+A | Префикс GNU screen |
| Ctrl+Z | Приостановка процесса Unix (SIGTSTP) |
Взаимодействие с режимом vim
Когда включен режим vim (/vim), keybindings и режим vim работают независимо:
- Режим vim обрабатывает ввод на уровне текстового ввода (движение курсора, режимы, движения)
- Keybindings обрабатывают действия на уровне компонента (переключение задач, отправка и т. д.)
- Клавиша Escape в режиме vim переключает INSERT в NORMAL режим; она не запускает
chat:cancel
- Большинство сочетаний Ctrl+клавиша проходят через режим vim в систему keybindings
- В режиме vim NORMAL
? показывает меню справки (поведение vim)
Валидация
Claude Code проверяет ваши keybindings и показывает предупреждения для:
- Ошибок разбора (неверный JSON или структура)
- Неверных имён контекстов
- Конфликтов зарезервированных сочетаний
- Конфликтов мультиплексоров терминала
- Дублирующихся привязок в одном контексте
Запустите /doctor для просмотра любых предупреждений keybindings.