Перейти к содержанию

Режим планирования

Режим планирования (plan mode) — это режим работы агента, в котором рабочая область доступна только для чтения. Агент исследует проект, а результатом его работы становится опубликованный план — список шагов, который отображается в панели плана.

Это полезно, когда вы хотите сначала согласовать подход: агент не изменит файлы и не запустит команды с побочными эффектами, пока план не утверждён.

Включение режима

Включить режим планирования можно двумя способами:

  • командой /plan — при необходимости сразу с запросом: /plan Найди способ ускорить тесты и предложи план;
  • клавишей Shift + Tab — она переключает режимы по циклу: обычный режим → авто-принятие правок → режим планирования.

Текущий режим отображается в нижней части интерфейса.

Режим планирования и подтверждения

При входе в режим планирования режим подтверждения переключается на обычный: политика подтверждений не имеет смысла, когда все инструменты записи заблокированы. При выходе из режима ранее выбранный режим подтверждения возвращается.

Ограничения режима

В режиме планирования агенту доступны только инструменты чтения:

  • чтение файлов, листинг директорий, поиск по файлам и glob-поиск;
  • загрузка веб-страниц и веб-поиск;
  • поиск по документации;
  • активация навыков.

Shell-команды разрешены только read-only: например, git log, git diff, ls, grep, cat. Пайпы между такими командами допустимы, но перенаправление вывода, подстановки и всё, что пишет, устанавливает или ждёт интерактивного ввода, блокируется.

Пока режим включён, агент не может создавать, изменять, удалять, перемещать и переименовывать файлы.

Публикация плана

План считается опубликованным только после вызова агентом специального инструмента update_plan. Перечисление шагов обычным текстом в ответе планом не считается — панель плана показывает только опубликованный план.

Каждый вызов update_plan заменяет план целиком, поэтому агент присылает полный список шагов каждый раз. В режиме планирования все шаги имеют статус pending — статусы выполнения появляются только после запуска реализации.

После публикации агент сообщает, что план готов, и ждёт вашего решения.

Панель плана

Опубликованный план отображается в панели плана над полем ввода:

  • заголовок показывает состояние плана: готов, выполняется или завершён;
  • счётчик показывает текущий шаг в формате «шаг N из M»;
  • шаги подсвечиваются по статусу: pending, in_progress, completed.

Длинный план (более 8 шагов) после старта реализации автоматически сворачивается: видны активный шаг и пара ближайших. Полностью развернуть или свернуть панель можно сочетанием Ctrl + B.

Когда план готов, CLI показывает диалог с выбором действия: начать реализацию, продолжить редактирование плана или закрыть диалог.

Запуск реализации

Начать реализацию можно одним из способов:

  • командой /plan implement — первый незавершённый шаг получит статус in_progress, режим переключится на агента, и работа начнётся;
  • переключением в обычный режим агента — Shift + Tab или /plan exit;
  • утвердительным ответом в диалоге после публикации плана.

Пока план не запущен, агент не начнёт реализацию сам, даже если вы ответите «да» в свободной форме: однозначные подтверждения вроде «да», «давай» распознаются, но любое другое сообщение агент воспримет как запрос на правку плана.

Во время реализации агент поддерживает план в актуальном состоянии: завершённый шаг получает статус completed, следующий — in_progress. Одновременно может выполняться только один шаг.

Прервать выполнение можно клавишей Esc. Чтобы вернуться к прерванной работе, снова выполните /plan implement — продолжение начнётся с активного шага.

Команды режима

Команда Что делает
/plan [запрос] включает режим планирования и отправляет запрос, если он указан
/plan show показывает текущий план
/plan implement запускает реализацию плана или возобновляет прерванную работу
/plan clear удаляет план, не меняя текущий режим
/plan exit выходит из режима планирования в обычный режим агента

Режим планирования в ACP-клиентах

В ACP-клиентах, например Zed, режим планирования работает так же, но запуск реализации выполняется кнопкой в панели плана самого клиента, а не командой CLI. Панель плана клиента тоже можно править: клиент отправляет новый список шагов запросом session/set_plan (см. справочник ACP), и опубликованный план заменяется целиком.