Интерфейс и горячие клавиши: держите руки в правильном месте
📚 Навигация по серии: Предыдущая статья 13 Структура проекта показала, какие файлы Claude Code размещает в вашем проекте. Эта статья меняет перспективу — мы возвращаемся к самому окну терминала, чтобы разобраться, для чего нужна каждая часть интерфейса, и закрепить в мышечной памяти несколько действий на клавиатуре, которые позволят вам работать «в два раза быстрее».
«Эй, нажатие Esc один раз и дважды — это не одно и то же?»
«Да, разница огромна. Одно нажатие — это тормоз: заставляет Claude остановиться; два нажатия — это задний ход: возвращает весь диалог к предыдущей точке.»
«...А я раньше использовал это просто как одну кнопку.»
Честно говоря, это то, в чем новички путаются чаще всего. Интерфейс Claude Code выглядит просто — поле ввода и пара строк текста, но под ним скрывается целый набор действий на клавиатуре и специальных символов. Те, кто их знает, работают молниеносно, а те, кто не знает, пробиваются исключительно с помощью мыши и Enter. Мои первые две недели тоже были такими — однажды он начал бешено изменять кучу файлов из-за моей расплывчатой фразы, а я тупо смотрел на прокручивающийся экран вывода почти три минуты, наблюдая, как изменения уходят все дальше от цели, пока вдруг не вспомнил: «Если я нажму Esc, он же остановится!». В тот момент мне действительно захотелось дать себе пощечину.
В этой статье мы не будем учиться формулировать требования (это тема следующей статьи), мы сделаем только одно: научим вас держать руки в правильном месте.
После прочтения этой статьи вы получите:
- «Схему разделов интерфейса» — где находятся поле ввода, строка состояния, индикатор режима и на что смотреть
- Шпаргалку по часто используемым горячим клавишам, которую можно прикрепить на монитор (Esc, Ctrl+C, Ctrl+D, Shift+Tab, стрелка вверх...)
- Понимание того, как использовать два специальных префикса
@и!в поле ввода, плюс краткое объяснение того, для чего нужны/и# - Как правильно осуществлять многострочный ввод (в эту ловушку попадают очень многие)
01 Сначала поймем этот экран: на какие части делится интерфейс
Начнем с вывода: в интерфейсе Claude Code вам нужно запомнить только три части — поле ввода, строку состояния и индикатор режима / разрешений. Остальные прокручивающиеся области — это то, где он «разговаривает» с вами, их не нужно изучать специально.
Аналогия: панель приборов автомобиля. При вождении вам не нужно знать все индикаторы, но руль, рычаг переключения передач и указатель уровня топлива нужно находить с первого взгляда. То же самое и с интерфейсом — запомните основную рабочую область и несколько ключевых показателей, и можно ехать.
claude после запуска, снизу вверх компоновка выглядит примерно так:

- Поле ввода: самая нижняя строка, перед которой обычно стоит символ приглашения
>. Это ваша единственная точка входа для общения с Claude: ввод текста, вставка кода, ввод специальных команд — все происходит здесь. - Строка состояния / подвал: несколько строк мелкого текста прямо над и под полем ввода. Здесь отображается некоторая контекстная информация — например, в какой директории вы находитесь, есть ли фоновые задачи, а если в вашей ветке есть открытый PR, официальная документация гласит, что в подвале также будет отображаться кликабельная ссылка «PR #номер», а цвет подчеркивания указывает на статус проверки (зеленый = одобрено, желтый = ожидает проверки, красный = запрошены изменения, серый = черновик).
- Индикатор режима / разрешений: сообщает вам, находитесь ли вы сейчас в «обычном режиме», «режиме планирования (plan)» или «автоматическом принятии изменений (acceptEdits)». За этим нужно следить внимательнее всего — он определяет, будет ли Claude спрашивать вас перед тем, как начать действовать.
Есть сценарий, в котором новички особенно легко паникуют: экран внезапно искажается или наполовину пустеет. Не думайте, что все сломалось. Официально предусмотрена специальная комбинация клавиш Ctrl+L для принудительной перерисовки экрана, при этом ввод и история диалога сохраняются. Я сам чаще всего сталкиваюсь с этим, когда запускаю Claude в tmux, переключаюсь на другое окно по делам, а когда возвращаюсь — весь экран в кракозябрах. В первый раз я действительно подумал, что сессия зависла, и уже потянулся перезапускать, но потом узнал, что Ctrl+L все очищает — теперь, когда экран искажается, я нажимаю ее рефлекторно.
💡 Вкратце: для начала работы достаточно запомнить три части интерфейса: «поле ввода + строка состояния + индикатор режима». Если экран исказился, не паникуйте, используйте
Ctrl+Lдля перерисовки.
02 Часто используемые горячие клавиши: как переключение передач и клаксон, привыкнете — не нужно смотреть вниз
Это суть данной статьи.
Аналогия: рычаг переключения передач и клаксон в машине. Новичок за рулем постоянно поглядывает на передачи, а опытный водитель по положению руки знает, на какой он передаче, и нажимает на клаксон не глядя — потому что эти действия вошли в мышечную память и не отвлекают внимание. Горячие клавиши — то же самое: первые три дня вы будете нажимать их по таблице, а когда привыкнете, ваши руки не будут отрываться от клавиатуры, а глаза будут следить только за выводом.
Следующая таблица полностью сверена с официальными interactive-mode.md / keybindings.md, и в ней собрано то, что новички будут использовать каждый день. Рекомендую сделать скриншот и прикрепить его на край монитора — через неделю вы все запомните:
| Горячая клавиша | Действие | Когда нажимать |
|---|---|---|
Esc | Прерывает текущий ответ Claude или вызов инструмента | Он сбился с пути / вы передумали, использовать как тормоз |
Esc Esc (при пустом поле ввода) | Открывает меню возврата, перепрыгивает к предыдущей точке | Хотите отменить предыдущий раунд, сдать назад к сохранению |
Ctrl+C | Прерывание; если прерывать нечего: первый раз очищает ввод, второй раз — выходит | Хотите удалить наполовину набранный текст |
Ctrl+D | Выход из сессии Claude Code | Работа закончена, закрываем дверь и уходим |
Shift+Tab | Циклическое переключение режимов разрешений (default / acceptEdits / plan...) | Хотите, чтобы он «сначала спланировал, но не трогал» или «развязать ему руки для самостоятельных изменений» |
↑ / ↓ (стрелки вверх / вниз) | Прокрутка истории команд (когда курсор на краю) | Повторная отправка предыдущей команды без необходимости набирать ее заново |
Ctrl+L | Перерисовка экрана (сохраняет ввод и историю) | Экран исказился / наполовину пуст |
Ctrl+R | Обратный поиск по истории команд | Хотите найти «ту длинную команду с прошлого раза» |
Ctrl+O | Переключение подробного представления транскрипции | Хотите посмотреть, какие конкретно инструменты он вызывал |
Выделим три наиболее часто путаемые вещи и объясним их отдельно:
Esc один раз vs два раза: тормоз или задний ход
В официальной документации об этом написано предельно ясно, переводим на человеческий язык:
- Одно нажатие
Esc= нажать на тормоз. Если Claude отвечает или вызывает инструмент, одно нажатие останавливает его в текущем моменте, уже выполненная часть сохранится, и вы можете добавить фразу, чтобы перенаправить его. - Два нажатия
Esc= задний ход. Но есть условие — поле ввода должно быть пустым. Если при пустом поле дважды нажать Esc, появится меню возврата (это контрольные точки / откат, о которых говорилось в главе 07), позволяющее вернуться к предыдущему состоянию.
⚠️ Это самая большая ловушка (официально описанная): если в поле ввода есть текст, двойное нажатие Esc означает «очистить этот текст и сохранить его в черновиках истории», а не открыть меню возврата. Поэтому для возврата сначала очистите поле ввода.
Новички часто спотыкаются на этом — набрали полфразы в поле ввода, хотят вернуться, неистово жмут Esc, в итоге текст пропадает, а меню не появляется, и они в полном недоумении. Поняв это, все становится просто: сначала очистите, затем дважды нажмите Esc.
Ctrl+C vs Ctrl+D: очистка сцены или уход со сцены
Обе эти комбинации имеют оттенок «остановки», но это совершенно разные вещи:
Ctrl+C= очистка без ухода. Если выполняется задача, она прерывается; если задач нет, первое нажатие очищает текст в поле ввода, а выход происходит только при втором нажатии подряд.Ctrl+D= прямой выход. Одно нажатие сразу завершает всю сессию (отправляется сигнал EOF).
Кстати, малоизвестный факт: эти две комбинации в официальной документации четко отмечены как «зарезервированные горячие клавиши», они жестко закодированы и не могут быть переназначены (в эту же группу входит Ctrl+M, так как в терминале он равен Enter). Поэтому поведение Ctrl+C / Ctrl+D одинаково в любом терминале и любой системе, используйте их без опасений.
Shift+Tab: переключение «спрашивать вас или нет» в один клик
Shift+Tab, пожалуй, самая часто используемая горячая клавиша в повседневной работе, без вариантов. Она циклически переключает между несколькими режимами разрешений:
- default (по умолчанию): останавливается и спрашивает вас перед изменением файлов.
- acceptEdits (автоматическое принятие изменений): операции редактирования больше не запрашивают подтверждения для каждого файла, используется для ускорения работы.
- plan (режим планирования): только предлагает план, но ничего не делает, подходит для согласования идей перед большими изменениями.
- А также другие режимы, которые вы включили дополнительно (например,
auto/bypassPermissions).
Режим разрешений (Permission Mode) — это, проще говоря, тот самый переключатель: «спрашивать ли вас перед тем, как стажер начнет действовать».
Нажатие Shift+Tab переключает их по кругу, а строка состояния в реальном времени показывает, в каком режиме вы находитесь. Что именно делает каждый из этих режимов и как их настраивать, подробно описано в главе 20 «Конфигурация разрешений», здесь вам нужно запомнить только одно: хотите сменить режим — просто крутите Shift+Tab.
(Особенность платформ: официально отмечено, что в некоторых конфигурациях Windows (старые терминалы без поддержки режима VT, старые среды выполнения Node / Bun) эта клавиша по умолчанию — Alt+M, а не Shift+Tab. Если она не работает, попробуйте ее.)
💡 Вкратце: одно
Esc— тормоз, два — задний ход,Ctrl+C— очистка,Ctrl+D— выход,Shift+Tab— переключение «спрашивать ли». Впечатайте эти четыре комбинации в мышечную память, и вы уже наполовину профи.
03 Специальные префиксы в поле ввода: @ и ! — это два острых ножа
Уметь нажимать клавиши недостаточно. Поле ввода Claude Code на самом деле «умное» — ввод определенных символов в начале строки запускает совершенно другое поведение. В официальной документации в разделе «Быстрые команды» это четко расписано, а для новичков наиболее полезны эти два: @ и !.
Аналогия: ввод @ в клавиатуре телефона автоматически вызывает список контактов. Вам не нужно помнить полное имя, просто введите @, и появится список кандидатов для выбора. @ в Claude Code работает точно так же, только выбираете вы файлы.
@: точное указание файла / директории
Ввод @ непосредственно в поле ввода активирует автодополнение пути к файлу — появится список файлов в текущем проекте для выбора, затем вы можете ввести несколько букв для фильтрации и выбрать нужный.
Зачем это использовать? Потому что это самый точный способ «приколотить» конкретный файл к вашей фразе. Например, если вы хотите, чтобы он посмотрел определенный файл:
@src/auth.ts 这里的登录逻辑有没有问题?При таком вводе Claude точно знает, какой файл вы имеете в виду, ему не нужно угадывать или искать по всему проекту. При написании сложных команд без @ практически не обойтись — когда проект большой, файлов с одинаковыми именами много, и если сказать простым языком «тот файл auth», он часто ошибается, а указание через @ исключает любую двусмысленность.
!: выполнить shell-команду напрямую, не беспокоя Claude
Если в начале поля ввода поставить !, а за ним написать команду, вы войдете в режим Shell (режим Bash): эта команда будет выполнена непосредственно в вашем терминале, без интерпретации или одобрения Claude, а вывод после выполнения будет добавлен в контекст диалога.
! git status! ls -laКогда эта штука полезна? Когда вы хотите попутно взглянуть на состояние репозитория, но не хотите гонять Claude ради этого и тратить token'ы. Например, на середине работы вы хотите проверить текущий статус git, просто вводите ! git status, результат появляется мгновенно, и Claude тоже «видит» этот вывод, поэтому следующая фраза может продолжать диалог с учетом этого состояния.
Несколько полезных деталей, упомянутых официально:
- Чтобы выйти из режима Shell: нажмите
Esc,BackspaceилиCtrl+Uв пустой строке приглашения. - Он поддерживает автодополнение на основе истории: если нажать
Tabпри наполовину введенной команде, она может быть дополнена из ранее выполненных команд!в этом проекте.
А как насчет / и #?
Возможно, вы видели их где-то еще, давайте проясним в двух словах, чтобы не путаться:
/(начинается со слэша) = вызов команды / Skill. Ввод/вызывает длинный список доступных команд (/help,/clearи т.д.). Эта система команд со слэшем содержит много материала, и мы оставим ее для отдельного подробного разбора в главе 36 «Слэш / Команды», для этой статьи достаточно знать, что «/— это вход для команд».#(начинается с решетки) = исторически существовало использование «начинать с#для быстрой записи в память (CLAUDE.md)», но поведение различается в разных версиях. То, как Claude Code «запоминает» ваши предпочтения и как писать CLAUDE.md, является основной темой главы 18 «Руководство по использованию CLAUDE.md» и главы 25 «Система памяти», там мы поговорим об этом системно. Здесь мы не будем вдаваться в подробности, чтобы вы не столкнулись с несоответствием версий при нажатии.
Если собрать четыре префикса вместе для сравнения, вы их не перепутаете:
| Начальный символ | Что вызывает | Вкратце | Будет ли подробно рассматриваться в этой статье |
|---|---|---|---|
@ | Автодополнение пути к файлу | Точное указание файла | ✅ Обсуждалось выше |
! | Режим Shell | Прямой запуск bash, вывод идет в контекст | ✅ Обсуждалось выше |
/ | Меню команд / Skill | Вход для команд управления сессией | ❌ Оставлено для главы 36 |
# | (Связан с памятью, зависит от версии) | Запись информации в CLAUDE.md | ❌ Оставлено для глав 18 / 25 |
💡 Вкратце:
@для указания файлов,!для быстрого запуска команд — это инструменты на каждый день; для/и#есть отдельные главы, в этой статье достаточно просто знать об их существовании.
04 Многострочный ввод: нажатие Enter всегда отправляет сообщение, что делать
Это частое «место затыка», поговорим о нем отдельно.
Возникает проблема: вы хотите дать Claude довольно длинную команду в несколько строк, но при нажатии Enter для перехода на новую строку сообщение просто отправляется — отправляется половина фразы. Восемь из десяти новичков попадаются на это в первую неделю.
Причина очень проста: по умолчанию в поле ввода Enter — это «отправить», а не «новая строка». Для перехода на новую строку нужно использовать другую комбинацию. Официально предложено несколько способов, от «наименее зависимого от терминала» до «самого удобного»:
| Способ | Как нажимать | Область применения |
|---|---|---|
| Экранирование обратным слэшем | Сначала введите \, затем нажмите Enter | Работает во всех терминалах, если не помните другие — запомните этот |
| Управляющая последовательность | Ctrl+J | Работает в любом терминале без настройки |
| Shift+Enter | Shift+Enter | iTerm2, WezTerm, Ghostty, Kitty, Warp, Apple Terminal, Windows Terminal готовы к использованию из коробки |
| Option+Enter (macOS) | Option+Enter | В macOS сначала нужно настроить клавишу Option как Meta |
Надежная привычка: достаточно намертво запомнить \ + Enter — потому что это «работает во всех терминалах», и вам не придется переучиваться при смене компьютера или терминала. Когда вы остановитесь на каком-то определенном терминале, можете попробовать более удобный Shift+Enter.
Если вы используете VS Code, Cursor, Alacritty, Zed, Devin Desktop и подобные (их встроенные терминалы по умолчанию не поддерживают перенос строки через Shift+Enter), официально предложено решение раз и навсегда: запустите /terminal-setup для автоматической установки привязки переноса строки.
Есть еще более удобный способ: если вам неудобно писать длинные команды в маленьком поле ввода, вы можете нажать Ctrl+G и писать напрямую в вашем текстовом редакторе по умолчанию, после сохранения текст вернется обратно. При написании сложных требований на десятки строк с форматированием обычно так и делают — это намного удобнее, чем упорно стучать по клавиатуре в терминале.
💡 Вкратце: Enter по умолчанию — это «отправить», а не «перенос строки»; для переноса строки универсально запомните
\+Enter, длинные команды пишите прямо в редакторе черезCtrl+G.
05 Практика: за три минуты попробуем все эти клавиши
Просто смотреть без практики — завтра все забудется. Ниже приведен минимальный процесс проверки, который не зависит от сложных проектов и может быть запущен в любой папке. Откройте терминал и следуйте инструкциям.
Шаг первый: зайдите в любую папку с файлами и запустите
cd ~/Desktop
claudeОжидание: появится экран приветствия, в самом низу — поле ввода (перед ним >).
Шаг второй: попробуем режим Shell !
Введите в поле ввода (обратите внимание, что ! должен быть в самом начале):
! echo hello-shortcutsНажмите Enter. Ожидание: терминал напрямую выведет hello-shortcuts, и эта команда с выводом будет записана в диалог — это доказывает, что режим Shell работает, и Claude не был потревожен для «интерпретации».
Шаг третий: попробуем листать историю ↑
Когда поле ввода пустое, нажмите стрелку вверх ↑ один раз.
Ожидание: та самая команда ! echo hello-shortcuts вернется в поле ввода в неизменном виде. Это и есть история команд, повторная отправка не требует повторного набора. Нажмите Esc или Ctrl+U, чтобы очистить строку.
Шаг четвертый: попробуем переключить режим через Shift+Tab
Нажмите Shift+Tab один раз, потом еще раз, и еще раз.
Ожидание: индикатор режима в строке состояния циклически меняется между default / acceptEdits / plan (переключается между теми режимами, которые у вас включены). Если вы видите, что строка меняется, значит, вы переключаете правильно. Нажмите еще несколько раз, чтобы вернуться к default.
Шаг пятый: попробуем многострочный ввод
Наберите одну букву, затем нажмите \, потом Enter, и наберите вторую строку:
第一行 \
第二行Ожидание: \ + Enter переместил курсор на следующую строку, а не отправил «первую строку». Все верно.
Шаг шестой: выход
Нажмите Ctrl+D.
Ожидание: прямой выход из Claude Code, возврат в обычный терминал.
Пройдя эти шесть шагов, вы лично проверили все, о чем говорилось в этой статье: !, историю, Shift+Tab, многострочный ввод и выход.
⚠️ Возможный нюанс: если в macOS вы обнаружите, что сочетания с клавишей Option, такие как Option+Enter, не работают, это значит, что в терминале клавиша Option не настроена как Meta. Это проблема настроек терминала, а не баг Claude — \ + Enter работает всегда, используйте пока его.
💡 Вкратце: пройдите эти шесть шагов своими руками, чтобы закрепить в мышечной памяти
!, историю↑,Shift+Tab, перенос строки\+Enterи выходCtrl+D— это запомнится лучше, чем прочтение таблицы десять раз.
06 Продвинутый совет: все клавиши можно изменить
В заключение оставим зацепку. Все вышеперечисленные клавиши являются значениями по умолчанию, но Claude Code поддерживает пользовательские горячие клавиши — если вам кажется, что какая-то кнопка неудобна, вы можете ее изменить.
Согласно официальной документации (требуется версия v2.1.18 или выше, проверьте с помощью claude --version), запустите:
/keybindingsЭто создаст / откроет файл ~/.claude/keybindings.json, где вы сможете переназначить клавиши. Однако некоторые клавиши изменить нельзя — упомянутые ранее Ctrl+C и Ctrl+D являются жестко закодированными зарезервированными клавишами.
Совет новичкам: не спешите менять. Конфигурация по умолчанию была тщательно продумана разработчиками. Сначала привыкните к ней, и только когда вы четко почувствуете: «Я нажимаю эту кнопку каждый день, но ее расположение неудобно», тогда и меняйте. Обычно должно пройти около месяца использования, прежде чем вы действительно захотите изменить какую-то клавишу, до этого момента значений по умолчанию будет вполне достаточно.
💡 Вкратце: если клавиши неудобны, их можно изменить через
/keybindings, но новичкам стоит сначала освоить настройки по умолчанию и не возиться с конфигурацией с самого начала.
07 Итоги
В этой статье мы не учили вас, как формулировать требования, а специально обучали тому, как держать руки в правильном месте — куда смотреть в интерфейсе, как нажимать клавиши и как использовать специальные символы.
Соберите основные действия в таблицу и положите в карман:
| Что вы хотите сделать | Нажмите это |
|---|---|
| Остановть его (сохранив сделанное) | Esc |
| Вернуться к предыдущей точке (сначала очистить поле ввода) | Esc Esc |
| Очистить ввод / выйти | Ctrl+C / Ctrl+D |
| Переключить режим «спрашивать ли» | Shift+Tab |
| Прокрутка / поиск по истории команд | ↑ / Ctrl+R |
| Перерисовать искаженный экран | Ctrl+L |
| Указать файл | @ |
| Быстро выполнить команду | ! |
| Перенос строки при многострочном вводе | \ + Enter |
Теперь вы должны уметь: с первого взгляда распознавать поле ввода, строку состояния и индикатор режима в интерфейсе; использовать Esc для точного торможения, Shift+Tab для переключения режимов разрешений; использовать @ для указания файлов, ! для запуска команд; больше не попадаться в ловушку «Enter отправляет половину фразы». Когда вы освоите эти действия, ваше взаимодействие с Claude Code изменится с «постоянного переключения между мышью и клавиатурой» на «руки не отрываются от клавиатуры» — именно здесь кроется разница в эффективности.
Следующая статья 15 «Как задавать вопросы и давать инструкции» — руки теперь на правильном месте, дальше дело за «ртом». Тот, кто умеет спрашивать, решает задачу в три фразы, а тот, кто не умеет, пять раз перекидывается репликами и все равно сбивается с пути. В следующей статье мы обсудим: как именно разговаривать с Claude, чтобы он слушал точно и делал правильно?