Режим в Cursor нужен не для красоты, а чтобы ты заранее выбрал: мы сейчас пишем код, читаем код, планируем, или разбираемся, почему всё сломалось.
Я регулярно ловлю себя на одной и той же ошибке: открываю Agent, пишу задачу, а потом удивляюсь, что он полез менять файлы, хотя я вообще-то хотел сначала понять, где тут что лежит. Режимы это простой способ убрать этот шум.
Проверено: 2026-08. Desktop 3.17.19.
Agent: когда отдаёшь работу
Agent стоит включать, когда ты готов делегировать выполнение: поиск файлов, правки, запуск команд, доведение задачи до результата.
Суть: это режим, в котором Cursor пытается «сделать» задачу, а не просто ответить на вопрос. Он читает репозиторий, меняет несколько файлов и показывает список правок.
Типичная ошибка: просить Agent «объясни архитектуру» и получить правки в неожиданных местах. Если сначала нужно разобраться, лучше начать с Ask.
Как я обычно формулирую: одна цель, один критерий готовности, и явное «не трогай X». Тогда зона поражения меньше, и ревью идёт быстрее.
Ask: когда в репозиторий писать нельзя
Ask нужен, когда тебе важно получить ответы, но важно не трогать файлы вообще.
Суть: это режим «чтения и объяснений». Cursor исследует код и отвечает, но не пишет правки. Удобно для ориентации в чужом проекте, аудита, и когда ты сам ещё не уверен, что именно менять.
Грабли: Ask хорошо объясняет, но не за тебя принимает продуктовые решения. Если вопрос заканчивается «окей, правь», переключайся обратно в Agent.
Plan: сначала карта, потом код
Plan хорош, когда задача не маленькая и ты хочешь сначала увидеть план атаки, а уже потом дать добро на правки.
Суть: Cursor сначала составляет план, который можно прочитать и поправить, и только после твоего подтверждения переходит к реализации.
Когда это реально спасает: много файлов, несколько валидных подходов, или ты чувствуешь, что сейчас начнётся бесконечная серия «а давай ещё вот это». План в таком случае дешевле исправить словами, чем правками в коде.
Debug: когда уже сломалось
Debug нужен, когда «не работает» и ты хочешь, чтобы Cursor сначала нашёл причину, а не лечил симптомы.
Суть: режим заточен под расследование. Он опирается на ошибки, стектрейсы, логи и гипотезы, и только потом предлагает точечную правку.
Как не промахнуться: вставь в сообщение конкретную ошибку или кусок лога. Если описать баг как «всё падает», Cursor будет гадать, а ты будешь раздражаться (и заслуженно).
Как переключить режим
Переключение, по ощущениям, лучше воспринимать как выбор «контракта» между тобой и Cursor: что он имеет право делать прямо сейчас.
Через панель Agent: в IDE открыть и закрыть боковую панель можно Cmd + L (Windows: Ctrl + L) или Cmd + I (Windows: Ctrl + I). Обе комбинации рабочие. Дальше режим меняется выпадающим списком или Cmd + .. Если ты в Agents Window, чат не справа: это другое окно.
Быстро с клавиатуры: по документации режимы можно прокручивать по кругу через Shift + Tab.
Mode Menu: по документации есть меню режимов на Cmd + . (Windows: Ctrl + .).
Нюанс контекста: в документации отдельно сказано, что у каждого режима свой контекст. На практике это похоже на «новую ветку разговора». Хорошо, когда нужно разделить темы, плохо, если ты рассчитывал, что Debug помнит всю длинную историю из Agent.
Модель в шапке: минимум, чтобы не тыкать вслепую
Выбор модели это не про «лучшую», а про предсказуемость поведения. Мне помогает простое правило: на одну задачу держать одну модель и менять её только если явно упёрся в ограничения.
В таблице шорткатов Cursor есть варианты перебора моделей, но я бы не превращал это в спорт. Лучше сначала зафиксировать режим и формулировку задачи, и только потом думать, что менять.
Главный вывод
Если режим выбран правильно, Cursor становится спокойнее: Agent делает, Ask объясняет, Plan выравнивает ожидания до кода, Debug сначала ищет причину. А если режим выбран случайно, ты начинаешь спорить не с задачей, а с интерфейсом.
Я бы начал с одного привычного сценария: Ask для ориентирования, потом Plan для больших задач, и только потом Agent на реализацию. Debug оставь на момент, когда реально больно.
Discussion
No comments yet - start the thread.