Как управлять долгими сессиями

Урок 1 из 10 курса «Claude Code в действии (новая версия 2026)»: официальный курс Anthropic Academy (Антропик) на русском языке. Этот урок бесплатный.

Видео: «Как управлять долгими сессиями»

Поручить Claude быструю задачу просто. Вы просите, он делает, вы проверяете результат. Но с долгими задачами всё иначе. Рефакторинг в десятке файлов или разработка новой функции может занять несколько часов. И чем чаще приходится поправлять Claude по ходу работы, тем дольше всё тянется.

Хорошая новость: у вас есть много инструментов, которые помогают Claude в таких долгих сессиях. По сути всё сводится к двум привычкам: определить объём работы до того, как Claude начнёт, и направлять его в процессе. Разберём обе.

Сначала определите объём работы в plan mode

Прежде чем Claude напишет хотя бы одну строку, попросите его составить план. В plan mode (режиме планирования) Claude проводит исследование только на чтение. Он читает код, выясняет, что нужно изменить, и передаёт вам план на проверку.

Получив план, действительно прочитайте его, а не пробегите глазами. Чем подробнее план, тем меньше сюрпризов возникнет, когда Claude начнёт его выполнять. Если что-то не так или чего-то не хватает, просто попросите Claude добавить это в нужное место. Доработать план намного быстрее, чем запустить Claude в надежде на лучшее, а потом разгребать последствия.

Направляйте Claude во время работы

Когда Claude уже работает, у вас есть несколько способов удерживать его в нужном направлении. Первый из них: компактизация.

Compact

Compact кратко пересказывает ваш диалог, использует этот пересказ как новый контекст и удаляет старые сообщения. Так освобождается контекстное окно, и Claude может продолжать. Риск в том, что при пересказе потеряется что-то важное и Claude собьётся с курса.

Поэтому не запускайте /compact просто так. Добавьте после команды указания, как Claude следует составить пересказ. Например, если отладку вы закончили давно, а сейчас вас интересуют только некоторые изменения в API, так и напишите:

/compact Focus on the --version flag implementation

Всё, что вы пишете после команды, определяет, что останется в пересказе. Это ваш руль для управления контекстом.

Rewind

Если Claude пошёл по неверному пути, не нужно выводить его обратно новыми запросами. Rewind (откат) возвращает вас к последней контрольной точке. Каждый ваш запрос создаёт контрольную точку, к которой можно вернуться. Чтобы открыть меню, дважды нажмите Escape в пустой строке ввода.

В меню отката есть несколько вариантов:

  • Restore code and conversation: откатить и код, и диалог одновременно.
  • Restore conversation: откатить только переписку.
  • Restore code: откатить только файлы.
  • Summarize from here: кратко пересказать всё, что было после контрольной точки. Отлично подходит, если вы отвлеклись на побочный разговор и хотите просто освободить место.
  • Summarize up to here: кратко пересказать всё, что было до контрольной точки. Удобно, когда был долгий этап подготовки, который хочется сжать, а части с реализацией нужно сохранить полностью.

Дайте Claude работать самостоятельнее

Всё сказанное выше предполагает, что вы активно участвуете: наблюдаете и поправляете. Если нужно больше автономности, есть goal и loop.

Goal

Goal задаёт условие завершения. Вы описываете, как выглядит результат «готово», и Claude продолжает работать ход за ходом, пока быстрый оценщик не подтвердит, что условия выполнены. Он не остановится в первый же момент, когда ему покажется, что работа закончена.

Например:

/goal all tests in src/billing pass, and the type checker reports zero errors

Чтобы отменить цель, выполните /goal clear. Важное ограничение: оценщик читает только стенограмму сессии. Поэтому ваше условие должно проверяться по тому выводу, который Claude действительно выдаёт, например по результатам запуска тестов.

Loop

Loop запускает запрос с определённым интервалом между ходами: фиксированным или подбираемым самим Claude. Используйте его, чтобы опрашивать что-то внешнее, например прогон CI или деплой, и реагировать, когда состояние меняется.

Чтобы остановить loop, просто нажмите Escape.

Параллельная работа в worktrees

Метафора руля до сих пор подразумевала один руль в одной машине. Но когда над одной кодовой базой работают несколько агентов, два руля в одной машине вам не нужны. Это небезопасно. Две сессии Claude, которые борются за одни и те же файлы, приводят к конфликтам.

Здесь помогают worktrees (рабочие деревья git). Вместо того чтобы сессии мешали друг другу, каждая получает собственное независимое дерево файлов.

Поскольку у каждого агента своё дерево, они не могут затереть изменения друг друга. Когда сессия завершается, чистый worktree удаляется автоматически.

Есть один полезный файл, о котором стоит знать. Файл .worktreeinclude в корне репозитория перечисляет игнорируемые git файлы, которые нужно копировать в каждый worktree. Это удобно, например, для файла с переменными окружения или локального конфига, которые нужны в каждом worktree, но которые вы не хотите добавлять в систему контроля версий.

Подведём итог

Работа с долгими сессиями Claude Code сводится к нескольким привычкам:

  1. Сначала определите объём работы, потом направляйте.
  2. Управляйте компактизацией, чтобы в пересказе осталось важное.
  3. Используйте меню отката, чтобы вернуть Claude на курс, когда он отклоняется.
  4. Задавайте goal, когда вам проще описать результат «готово», чем шаги к нему.
  5. Выполняйте параллельную работу в worktrees.

Следуйте этим привычкам, и вы сможете доверить Claude долгий прогон, не контролируя каждый его шаг.

Полезные гиды