Почему это важно именно вам
Весь курс мы наращивали автономию: агенты работают сами, задачи идут по расписанию, авторежим не спрашивает подтверждений. У этого есть обратная сторона, о которой честно стоит сказать: рано или поздно Claude сделает не то. Перепишет файл, который вы просили не трогать. Уйдёт по неверной ветке рассуждений и потянет за собой десять правок.
Вопрос не в том, случится ли это, а в том, сколько будет стоить откат. И здесь у Claude Code есть встроенная страховка, о которой знают не все: он снимает состояние ваших файлов перед каждым вашим сообщением. Это значит, что почти любую ошибку можно отмотать назад — не разбираясь, что именно поменялось, а просто вернувшись в точку, где всё было хорошо.
Для директора, который даёт системе всё больше свободы, это самая важная кнопка из всех, что мы разбирали.
Что это такое
Чекпойнт — снимок состояния файлов, который Claude Code делает автоматически перед каждым вашим сообщением. Хранится сотня последних снимков сессии; они сохраняются вместе с разговором, поэтому откатиться можно и после возобновления сессии. Живут столько же, сколько данные сессий — по умолчанию 30 дней.
/rewind — меню отката. Открывается командой или двойным нажатием Esc, когда строка ввода пуста. Показывает список ваших сообщений за сессию: выбираете точку и решаете, что с ней сделать.
Действий пять:
| Действие | Что происходит |
|---|---|
| Восстановить код и разговор | и файлы, и беседа возвращаются к выбранной точке |
| Восстановить разговор | беседа откатывается, файлы остаются как есть |
| Восстановить код | файлы откатываются, беседа остаётся |
| Сжать отсюда и дальше | часть разговора сворачивается в резюме, освобождая контекст |
| Сжать до этого места | сворачивается всё, что было раньше, поздние сообщения остаются |
Два пункта про код появляются только тогда, когда после выбранной точки действительно были правки файлов.
Откат разговора — это не только про ошибки
«Восстановить разговор, оставив код» — приём для другой задачи: работа сделана, но диалог оброс мусором из тупиковых веток. Вы откатываете беседу к чистому месту, а результат работы остаётся на диске. Контекст худеет, файлы целы.
Как работает на практике
Отмотать неудачную правку
Claude переписал документ не так, как вы хотели:
/rewind
или просто дважды Esc при пустой строке ввода. В меню выбираете своё сообщение перед неудачной правкой и берёте «восстановить код и разговор». Файлы возвращаются, разговор тоже, а текст вашего сообщения подставляется обратно в строку ввода — можно переформулировать и отправить заново.
Если в строке ввода был текст, двойной Esc сначала очистит его, а не откроет меню. Текст при этом не теряется: он уходит в историю ввода, и его можно вернуть стрелкой вверх.
Разгрузить контекст, не теряя работу
Сессия идёт третий час, контекст забит, но результат нужен. В меню /rewind выбираете момент, после которого началась вся полезная работа, и берёте «сжать до этого места». Ранняя часть беседы сворачивается в резюме, поздние сообщения остаются целыми. Это точечная альтернатива /compact, который сжимает всё подряд.
Сжатию можно задать фокус: подсветите пункт стрелками и впишите инструкцию в строку «add context» — например, «сохрани договорённости по формату отчёта».
Вернуться в разговор, стёртый /clear
Случайно очистили сессию? Если это произошло в том же запущенном Claude Code, в самом верху меню /rewind появится строка вида /resume <id> (previous session) — это ваш разговор до очистки. Работает, пока вы не вышли из программы; требуется версия 2.1.191 или новее.
Четыре вещи, которые откат не вернёт
Это главное, что нужно знать, чтобы не полагаться на чекпойнты вслепую.
- Изменения, сделанные командами в терминале.
rm,mv,cp, запуск скрипта — всё это чекпойнты не отслеживают. Откат вернёт только то, что Claude менял своими инструментами правки файлов. - Правки фоновых субагентов. Они работают за пределами чекпойнтов вашей сессии — включая фоновые скиллы и фоновый прогон проверки кода. Отменять их придётся через систему контроля версий.
- Изменения извне. Файлы, которые вы или другая сессия правили мимо этой сессии, не отслеживаются.
- Файлы по символическим ссылкам. Такие пути откат пропускает и честно предупреждает: «восстановил код, пропустил N файлов».
Что из этого следует практически
Чекпойнты — страховка от ошибок редактирования, а не от разрушительных команд. Именно поэтому в блоке 12 мы городили запрещающие правила и песочницу: rm -rf откатом не отменяется. Держите оба слоя: границы не дают сделать непоправимое, чекпойнты отменяют поправимое.
И если работа идёт в репозитории под контролем версий — коммит остаётся самой надёжной точкой отката. Чекпойнты удобнее (не нужно ничего делать заранее), но живут 30 дней и только внутри Claude Code.
Частые ошибки
Считать /rewind полной отменой. Он не трогает то, что сделали команды в терминале и фоновые агенты. Если Claude запускал скрипты — смотрите, что они наделали, отдельно.
Забывать про него в панике. Типичная реакция на неудачную правку — начать чинить руками или просить Claude «верни как было». Это дольше и грязнее, чем откатиться к точке.
Путать «восстановить разговор» и /branch. Откат меняет текущую сессию. Если нужно попробовать другой подход, сохранив исходную ветку целиком, — это /branch из Дня 36.
Полагаться на чекпойнты дольше месяца. Они уходят вместе с данными сессии по общему сроку хранения (по умолчанию 30 дней).
Не проверять, что откатилось. После восстановления кода бегло просмотрите файлы: пропущенные символические ссылки система назовёт в предупреждении, но заметить его нужно вам.
Когда нужно / когда нет
Откат уместен:
- Claude ушёл не туда и потянул за собой несколько правок;
- вы хотите переформулировать запрос с той же точки, а не поверх испорченного результата;
- контекст забит, но работу терять нельзя (сжатие части разговора).
Не поможет:
- после разрушительных команд в терминале;
- когда правки делал фоновый агент;
- когда прошло больше месяца или вы работаете в другой сессии.
Связь с другими уроками
День 19 — компакция. /rewind даёт точечное сжатие части разговора вместо сжатия всего подряд.
День 36 — ветки диалога. Откат правит текущую сессию, /branch создаёт параллельную и сохраняет исходную.
День 86–87 — разрешения и песочница. Границы против непоправимого, чекпойнты — против поправимого. Работают только вместе.
Задание на сегодня
- В рабочей сессии попросите Claude изменить какой-нибудь черновой файл.
- Нажмите
Escдважды при пустой строке ввода — откроется меню отката. - Выберите точку до правки и «восстановить код и разговор». Убедитесь, что файл вернулся, а ваш запрос подставился в строку ввода.
- Отдельно попробуйте «сжать до этого места» на длинной сессии и посмотрите, как изменилось заполнение контекста (
/context). - Проверьте границу: попросите Claude удалить тестовый файл командой в терминале, потом попробуйте откатиться. Убедитесь сами, что файл не вернулся, — это то ограничение, которое важно знать заранее.
Критерий «выполнено»: вы вернули файл к прежнему состоянию через /rewind и своими глазами увидели, что удаление командой откат не отменяет.
Резюме
- Claude Code снимает состояние файлов перед каждым вашим сообщением; хранится 100 последних чекпойнтов сессии, срок жизни — как у данных сессии (по умолчанию 30 дней).
/rewindили двойнойEscпри пустой строке открывает меню: восстановить код и разговор, только разговор, только код, сжать часть беседы.- После отката ваш исходный запрос возвращается в строку ввода — можно переформулировать и отправить заново.
- Если в том же запуске был
/clear, в меню появляется пункт возврата к стёртому разговору (от версии 2.1.191). - Чекпойнты не отслеживают: изменения от команд в терминале, правки фоновых субагентов, изменения извне и файлы по символическим ссылкам.
- Это страховка от ошибок редактирования, а не от разрушительных команд:
rm -rfотменяется не откатом, а запрещающими правилами и песочницей.