Skip to content

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

Режим планирования — это место, где агент думает, прежде чем что-то трогать. Он исследует проект только на чтение, пишет план и отдаёт его вам в интерфейсе ревью. Вы комментируете, он правит, вы одобряете — и только после этого начинается реализация.

С чего начать ​

bash
/plan                     # enter plan mode
/plan add rate limiting   # enter plan mode and plan that task

Или нажимайте shift+tab, пока в баннере не появится plan, или запустите с cmd --plan.

В режиме планирования агент может читать файлы, искать и рассуждать. Он не может редактировать файлы, выполнять shell-команды и применять патчи. Завершив работу, он записывает план в ~/.commandcode/plans/<name>.md и открывает ревью плана — просмотрщик в стиле GitHub, где одна строка всегда выделена, вы оставляете построчные комментарии и завершаете ревью одним из действий:

КлавишаДействие
ctrl+rSubmit review: отправить ваши комментарии обратно; агент правит план
ctrl+aApprove: начать реализацию
escCancel: план остаётся сохранённым; откройте его снова через /plans

Режимы разрешений ​

Режим планирования — одна из ступеней цикла режимов разрешений. shift+tab переключает между ними: default → accept-edits → plan → yolo → и снова default.

РежимПравки файловShell-командыКогда использовать
planЗапрещеныЗапрещеныИсследование, проектирование, ревью чувствительных сценариев
defaultЗапрос подтвержденияЗапрос подтвержденияКонтролируемые итерации, повседневный режим
accept editsПрименяются сразуВыполняются сразуПодход понятен, вы быстро итерируете

dont-ask стоит вне цикла. Он выбирается в настройках или через --permission-mode dont-ask, а shift+tab из него переводит в accept-edits и возвращает в обычный цикл. yolo (обход разрешений) — четвёртая ступень, после plan; --yolo (или --dangerously-skip-permissions) тоже запускает сессию сразу в нём.

Чтобы перейти сразу в нужный режим, не перебирая их по кругу, используйте /mode или его сокращения: /mode:default, /mode:accept-edits, /mode:plan.

Полное руководство: Режимы разрешений

Режимы — это только база. Полное руководство описывает синтаксис правил allow/ask/deny, лестницу решений, которую проходит каждый вызов инструмента, правила безопасности и полную таблицу решений по режимам и операциям.

WARNING

Yolo (обход разрешений) намеренно недоступен через /mode. Слэш-команды может вызывать сам агент, поэтому маршрут в него из середины сессии позволил бы модели отключить собственные запросы разрешений.

Command Code создаёт чекпоинт перед изменением файлов в любом режиме, поэтому запуск в accept edits всегда можно откатить.

Выбор режима ​

СитуацияРежим
Новая функциональность с неясным объёмомPlan
Отладка сложной проблемыPlan
Рефакторинг с изменением многих файловPlan
Ревью безопасностиPlan
Небольшое исправление багаAccept Edits
Рутинный рефакторингAccept Edits
Запуск тестов и их правкаAccept Edits
Быстрое исправление опечаткиAccept Edits

Обычный цикл: начать в plan, исследовать и согласовать подход, одобрить план, дать ему выполниться в accept edits, откатиться через чекпоинты, если что-то пошло не так.

Модель для каждой фазы ​

Планирование и реализация требуют разного: сильного рассуждающего, чтобы исследовать и проектировать, и быстрого дешёвого кодера, чтобы продраться через правки. Задайте модели planning и implementation, и Command Code будет переключаться между ними за вас:

  • Planning работает, пока сессия находится в режиме планирования: исследует кодовую базу и пишет план.
  • Implementation подключается в момент одобрения плана — посреди запуска, на следующем же ходу.
json
{
  "featureModels": {
    "planning": "zai-org/glm-5.3",
    "implementation": "deepseek/deepseek-v4-pro"
  }
}

Укажите это в ~/.commandcode/config.json или в любом слое settings.json, либо выберите в /config → Feature models → Planning / Implementation. Обе настройки необязательны; если модель не задана, используется модель сессии.

Строка статуса показывает текущую фазу: planning: GLM-5.3, затем implementing: DeepSeek V4 Pro (latest), а при одобрении выводится Plan handoff — now implementing with deepseek-v4-pro. Выход из режима планирования без одобрения (shift+tab, /mode:default или /mode:accept-edits) оставляет вас на модели сессии, а выбор чего-либо через /model снимает обе полосы до следующего раунда планирования.

Полное руководство: Модели планирования и реализации

Когда применяется каждая полоса, как она взаимодействует с /model, /effort и субагентами и что происходит, если модели нет в вашем тарифе.

Ревью планов ​

Ревью плана превращает план в полноценный постоянный артефакт, который можно читать, комментировать, править и одобрять, вместо блока текста, который уезжает вверх по экрану.

  • Один режим: REVIEW. Читайте построчно, комментируйте любую строку, завершайте действие-глаголом. Отдельного «режима редактирования» нет: правки плана идут через ваш $EDITOR.
  • Планы сохраняются. Каждый план записывается в ~/.commandcode/plans/ как markdown и индексируется, поэтому отмена ревью никогда не выбрасывает план.
  • Комментарии — это артефакты ревью, а не текст плана. Они живут в отдельном сайдкаре и попадают к агенту только внутри промпта; в документ плана они никогда не записываются.
  • Раунды ревью. Когда агент правит план, следующий раунд сравнивается с предыдущим: изменённые строки подсвечиваются зелёным, так что вы перечитываете только то, что реально изменилось.
  • Детерминированность. Страховка на уровне харнесса гарантирует, что ревью будет предложено, даже если слабая модель написала план и просто остановилась.

Как это работает ​

text
 you: "plan a rate limiter"
       │
       ▼
┌─────────────────────┐
│  PLAN MODE          │  read-only
│  explore · design   │  writes <name>.md
└──────────┬──────────┘
           │ exit_plan_mode
           ▼
┌─────────────────────┐
│  PLAN REVIEW        │ ◀───────┐
│  read · comment     │         │
└──┬───────────────┬──┘         │
   │               │            │
   │ ctrl+r        │ ctrl+a     │
   │ submit        │ approve    │
   ▼               ▼            │
┌────────────┐  ┌───────────┐   │
│  agent     │  │ IMPLEMENT │   │
│  revises   │  └───────────┘   │
└──────┬─────┘                  │
       └── another round ───────┘

 esc → plan saved, not-implemented
 reopen any time with /plans

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

text
┌ Plan review · rate-limiter.md · v2 ─┐
│                                     │
│  5  ● 1. Add a token-bucket mw.     │
│     ↳ why not a sliding window?     │
│  6    2. Store buckets in Redis.    │
│  7    3. Return 429 + Retry-After.  │
│                                     │
│  ─────────────────────────────────  │
│  REVIEW  1 pending · round 2        │
│  Submit review (1)          ctrl+r  │
│  Approve                    ctrl+a  │
│  Cancel                     esc     │
└─────────────────────────────────────┘

● помечает прокомментированную строку, а ↳ — ваш комментарий, прикреплённый под ней. В пересмотренном раунде изменённые строки подсвечиваются зелёным. Строка подсказок в самом низу содержит остальное: печатайте и нажмите Enter, чтобы оставить комментарий, ctrl+n/ctrl+p — чтобы переходить между изменениями, ? x ! — для быстрых комментариев, ctrl+g — чтобы отредактировать план.

Четыре способа попасть в ревью ​

Все они открывают одну и ту же поверхность, привязанную к плану, написанному в текущей сессии.

  1. Завершение режима планирования. Агент пишет план и вызывает exit_plan_mode, что открывает ревью плана как поверхность одобрения: план и есть запрос на одобрение. Одобрение здесь может ещё и переключить вас в режим accept edits, чтобы реализация пошла без дополнительных подтверждений.
  2. Явный запрос. Вне режима планирования скажите «review plan» / «open plan review». Агент вызывает инструмент plan_review, который открывает панель для последнего файла плана, вместо того чтобы вываливать план обратно стеной текста.
  3. /plan-review. Сразу переходит к ревью последнего плана этой сессии.
  4. /plans. Открывает полноэкранный браузер планов: все планы этой и прошлых сессий, со значками статуса, количеством комментариев и поиском. /plans <name> сразу открывает план по имени.

Автоматическая страховка. Некоторые модели пишут файл плана и останавливаются, так и не показав его. Когда запуск естественно завершается с планом, который был написан, но не прошёл ревью (в режиме default или plan), харнесс сам показывает панель ревью. Одобрение продолжает запуск с инструкцией реализовать план; отказ позволяет запуску завершиться, чтобы вы могли скорректировать курс. Режимы, означающие «не прерывай меня» (accept edits, yolo и dont-ask), страховку пропускают.

Чтение и комментирование ​

Просмотрщик рендерит план как документ: заголовки, код, цитаты и таблицы стилизуются построчно. Длинные строки переносятся по комфортной для чтения ширине (80 колонок, когда есть место, иначе 60), а не обрезаются.

Навигация:

КлавишаДействие
↑ / ↓Перейти на одну строку; после последней строки курсор попадает на действия ревью
PgUp / PgDn (Fn+↑/↓ на Mac)Прокрутить на экран вверх/вниз, как в less
Home / End (Fn+←/→ на Mac)Перейти к первой/последней строке
ctrl+n / ctrl+pПереходить между помеченными строками: вашими комментариями и изменёнными строками в пересмотренном плане

Комментирование — в стиле Figma: начните печатать на строке, и черновик откроется прямо под ней, ровно там, где он окажется после закрепления.

КлавишаДействие
ввод + EnterОткрыть черновик на выбранной строке, затем закрепить его
Enter на прокомментированной строкеОткрыть комментарий для правки
пусто + EnterУдалить комментарий
?Быстрый комментарий: «Why? Explain the reasoning behind this.»
xБыстрый комментарий: «Cut this — remove it from the plan.»
!Быстрый комментарий: «Risky — double-check this before implementing.»
esc (во время набора)Отменить черновик

Закреплённые комментарии показывают маркер ● на полях и строку ↳ comment под строкой. Они сохраняются на диск вместе с планом, поэтому переживают закрытие просмотрщика и даже завершение сессии.

Редактирование плана происходит в вашем редакторе: ctrl+g передаёт файл плана в $EDITOR (или $VISUAL), а просмотрщик перезагружается, когда вы его закрываете.

Завершение ревью ​

Действие можно вызвать аккордом из любого места или перейти на него стрелками и нажать Enter.

ДействиеАккордЧто делает
Submit reviewctrl+rАгент берёт ваши ожидающие комментарии, правит план и снова показывает его на новый раунд. Показывается, только когда есть ожидающие комментарии.
Approve (поверхность одобрения)ctrl+aВыполняет план и начинает реализацию — на вашей модели реализации, если она задана.
Execute plan (поверхность браузера)ctrl+eВыполняет план как есть; в браузере /plans это и есть одобрение.
Cancel / BackescЗавершает ревью. В режиме планирования план остаётся сохранённым, и вы продолжаете его дорабатывать; из браузера возвращает к списку.

Если вы нажимаете Approve, когда комментарии ещё ожидают, Command Code спрашивает, а не угадывает:

text
Approve (•) with N comments as notes ( ) original plan · discard comments

With comments as notes отправляет их отдельным ходом пользователя: неблокирующие заметки, по которым агент реализует план. Original plan одобряет план начисто и отбрасывает комментарии. ←/→ переключает, Enter подтверждает, esc возвращает назад.

Раунды ревью и версионирование ​

Каждый раз, когда вы нажимаете Submit review, Command Code:

  1. Сохраняет снимок текущего плана в ~/.commandcode/plans/versions/<name>-v<N>.md.
  2. Увеличивает версию плана и очищает ожидающие комментарии (все они были переданы агенту одним промптом).
  3. Даёт агенту переписать план, перезаписывая живой файл.

Когда пересмотренный план возвращается (версия > 1), просмотрщик сравнивает его со снимком предыдущего раунда. Изменённые строки подсвечиваются зелёным, а строка значка сообщает round N · M lines changed, так что второе ревью означает перечитывание только того, что реально изменилось. ctrl+n/ctrl+p переходят между этими изменёнными строками.

Где живут планы ​

text
~/.commandcode/plans/<descriptive-name>.md      ← the plan markdown (written by the agent)
~/.commandcode/plans/plans-index.json           ← titles, status, comments, versions
~/.commandcode/plans/versions/<name>-v<N>.md    ← prior review-round snapshots

Каждый план несёт статус:

  • pending: написан, но ещё не прошёл ревью.
  • approved: вы одобрили план и перешли к реализации.
  • not-implemented: вы отменили ревью; план сохранён для чтения, комментирования и правок позже.

Поскольку отменённый план записывается, а не выбрасывается, планирование никогда не ощущается одноразовым: откройте его снова в любой момент через /plans. Запись в ~/.commandcode/plans/*.md никогда не запрашивает разрешение ни в одном режиме, и это исключение действует только для .md-файлов в этом каталоге, так что каталог планов не может служить заменой скретчпаду.

Справочник ​

Слэш-команды ​

КомандаОписание
/plan [task]Войти в режим планирования; /plan <task> планирует эту задачу
/plans [name]Просматривать, ревьюить и аннотировать сохранённые планы; /plans без аргументов открывает браузер
/plan-reviewРевью последнего плана этой сессии
/mode [default|accept-edits|plan]Показать или переключить режим разрешений
/mode:planПереключиться в режим планирования (только чтение, без побочных эффектов)
/mode:accept-editsПереключиться в режим accept edits
/mode:defaultПереключиться в режим default

Флаги CLI ​

ФлагОписание
--planЗапуск в режиме планирования
--accept-editsЗапуск в режиме accept edits
--permission-mode <mode>default, plan, accept-edits, yolo или dont-ask (auto-accept, bypass и устаревший standard принимаются как алиасы)
--yoloОбойти все запросы разрешений (запустить сессию в режиме yolo)

Инструменты ​

ИнструментОписание
enter_plan_modeПереключает в режим планирования (с вашим подтверждением) для исследования только на чтение
exit_plan_modeПоказывает план на одобрение при выходе из режима планирования. Допустим только в режиме планирования
plan_reviewОткрывает панель ревью по запросу вне режима планирования. В ленте отображается как PLAN(review)

См. также ​

Источник

Сверено с оригиналом 13 ноября 2026.