Appearance
Контрольные точки
Koda CLI включает в себя функцию контрольных точек, которая автоматически сохраняет снимок состояния вашего проекта до любых модификаций файлов, выполненных инструментами с поддержкой ИИ. Это позволяет безопасно экспериментировать и применять изменения кода, зная, что можно мгновенно вернуться к состоянию до запуска инструмента.
Как это работает
Когда вы подтверждаете инструмент, который изменяет файловую систему (например, write_file или replace), CLI автоматически создает "контрольную точку". Эта контрольная точка включает:
- Снимок Git: Коммит делается в специальном, теневом репозитории Git, расположенном в вашем домашнем каталоге (
~/.koda/history/<project_hash>). Этот снимок фиксирует полное состояние файлов вашего проекта в этот момент. Он не вмешивается в ваш собственный репозиторий Git проекта. - История разговоров: Весь разговор, который у вас был с агентом до этого момента, сохраняется.
- Вызов инструмента: Конкретный вызов инструмента, который должен был быть выполнен, также сохраняется.
Если вы хотите отменить изменения или просто вернуться назад, вы можете использовать команду /restore. Восстановление контрольной точки:
- Вернет все файлы в вашем проекте к состоянию, зафиксированному в снимке.
- Восстановит историю разговоров в CLI.
- Повторно предложит первоначальный вызов инструмента, позволяя вам запустить его снова, изменить или просто проигнорировать.
Все данные контрольной точки, включая снимок Git и историю разговоров, хранятся локально на вашей машине. Снимок Git хранится в теневом репозитории, а история разговоров и вызовы инструментов сохраняются в файл JSON в временном каталоге вашего проекта, обычно расположенном по адресу ~/.koda/tmp/<project_hash>/checkpoints.
Включение функции
Функция контрольных точек отключена по умолчанию. Чтобы включить её, вы можете использовать флаг командной строки или отредактировать файл settings.json.
Использование флага командной строки
Вы можете включить контрольные точки для текущего сеанса, используя флаг --checkpointing при запуске Koda CLI:
bash
koda --checkpointingИспользование файла settings.json
Чтобы включить контрольные точки по умолчанию для всех сеансов, вам нужно отредактировать файл settings.json.
Добавьте следующий ключ в ваш settings.json:
json
{
"checkpointing": {
"enabled": true
}
}Использование команды /restore
После включения контрольные точки создаются автоматически. Для их управления вы используете команду /restore.
Список доступных контрольных точек
Чтобы увидеть список всех сохраненных контрольных точек для текущего проекта, просто запустите:
/restoreCLI отобразит список доступных файлов контрольных точек. Эти имена файлов обычно состоят из временной метки, имени файла, который подлежит изменению, и имени инструмента, который должен был быть запущен (например, 2025-06-22T10-00-00_000Z-my-file.txt-write_file).
Восстановление конкретной контрольной точки
Чтобы восстановить ваш проект до определенной контрольной точки, используйте файл контрольной точки из списка:
/restore <checkpoint_file>Например:
/restore 2025-06-22T10-00-00_000Z-my-file.txt-write_fileПосле выполнения команды ваши файлы и разговор будут немедленно восстановлены до состояния, в котором они были при создании контрольной точки, и первоначальный запрос инструмента снова появится.