Режим планирования¶
Режим планирования (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), и опубликованный план заменяется целиком.