Контрольные точки и `/rollback` — страховочная сетка вашего проекта
Built-in Plugins — Ready-to-Use Enhancements — easy-to-understand guide based on official docs (updated 2026-08-09)
Контрольные точки и /rollback — страховочная сетка вашего проекта
Вы когда-нибудь наблюдали, как ИИ-агент вносит изменение, и думали: «Стоп, я не это имел в виду»? С каждым бывало. Именно поэтому Hermes Agent теперь включает встроенную страховочную сетку: контрольные точки. Думайте о них как о точках сохранения в видеоигре — снимки вашего проекта, сделанные перед рискованными операциями, готовые к восстановлению одной командой.
Что такое контрольные точки?
Контрольные точки — это автоматические снимки вашего проекта, создаваемые перед разрушительными операциями. Если агент собирается удалить файлы, перезаписать код или выполнить рискованные команды в терминале, он сначала сохраняет текущее состояние. Позже вы можете откатиться к любому из этих снимков.
Самое приятное? История .git вашего реального проекта никогда не затрагивается. Hermes использует общее теневое хранилище в ~/.hermes/checkpoints/store/ — отдельный git-репозиторий, который держит всё организованным и дедуплицированным между проектами.
Начало работы: включение контрольных точек
Контрольные точки опциональны начиная с v2. Большинству пользователей они не нужны, а хранилище может расти со временем, поэтому по умолчанию они выключены.
Включение для одной сессии:
hermes chat --checkpoints
Или глобально в ~/.hermes/config.yaml:
checkpoints:
enabled: true
Когда Hermes создаёт контрольную точку?
Hermes автоматически делает снимки перед:
- Файловыми инструментами —
write_fileиpatch - Разрушительными командами терминала —
rm,rmdir,cp,install,mv,sed -i,truncate,dd,shred, перенаправлением вывода (>), а такжеgit reset/clean/checkout
Не беспокойтесь о спаме — агент создаёт не более одной контрольной точки на директорию за ход, так что длинные сессии остаются чистыми.
Использование /rollback в сессии
Как только контрольные точки включены, вы получаете мощные слэш-команды прямо в чате:
| Команда | Что делает |
|---|---|
/rollback |
Показать все контрольные точки со статистикой изменений |
/rollback <N> |
Восстановить контрольную точку N, сохранив ваши ручные правки |
/rollback <N> --all |
Полное восстановление — перезаписывает и ваши ручные правки |
/rollback diff <N> |
Предпросмотр изменений между контрольной точкой N и текущим состоянием |
/rollback <N> <file> |
Восстановить один файл из контрольной точки N |
Вот как выглядит список контрольных точек:
📸 Контрольные точки для /path/to/project:
1. 4270a8c 2026-03-16 04:36 перед patch (1 файл, +1/-0)
2. eaf4c1f 2026-03-16 04:35 перед write_file
3. b3f9d2e 2026-03-16 04:34 перед terminal: sed -i s/old/new/ config.py (1 файл, +1/-1)
/rollback <N> восстановить контрольную точку N (сохраняет ваши ручные правки)
/rollback <N> --all полное восстановление, перезаписывает и ваши ручные правки
/rollback diff <N> предпросмотр изменений с контрольной точки N
/rollback <N> <file> восстановить один файл из контрольной точки N
Управление хранилищем из оболочки
Вне сессии используйте CLI для просмотра и управления хранилищем контрольных точек:
hermes checkpoints # Показать размер, количество проектов, разбивку
hermes checkpoints status # То же самое
hermes checkpoints list # Псевдоним для status
hermes checkpoints prune # Принудительная очистка: осиротевшие данные, устаревшие данные, лимит размера
hermes checkpoints clear # Удалить всё (сначала спросит)
hermes checkpoints clear-legacy # Удалить старые архивы миграции v1
Пример вывода:
База контрольных точек: /home/you/.hermes/checkpoints
Общий размер: 142.3 MB
store/ 138.1 MB
legacy-* 4.2 MB
Проектов: 12
WORKDIR COMMITS LAST TOUCH STATE
/home/you/code/hermes-agent 20 2h ago live
/home/you/code/experiments/rl-runner 8 1d ago live
/home/you/code/old-prototype 3 9d ago orphan
Параметры конфигурации
Тонкая настройка контрольных точек в ~/.hermes/config.yaml:
checkpoints:
enabled: false # главный переключатель (по умолчанию: false)
max_snapshots: 20 # максимум контрольных точек на проект
max_total_size_mb: 500 # жёсткий лимит общего размера хранилища
max_file_size_mb: 10 # пропускать файлы больше этого размера
# Автообслуживание (включено по умолчанию)
auto_prune: true
retention_days: 7
min_interval_hours: 24
Хотите отключить всё?
checkpoints:
enabled: false
auto_prune: false
Как это работает под капотом
Когда Hermes обнаруживает, что инструмент собирается изменить файлы, он:
- Определяет корень проекта для этого файла
- Инициализирует или переиспользует общее теневое хранилище
- Индексирует изменения, строит дерево и коммитит в ссылку проекта (
refs/hermes/<project-hash>)
Эти ссылки формируют вашу историю контрольных точек, готовую к просмотру и восстановлению через /rollback.
Заключение
Контрольные точки дают вам спокойствие, когда вы позволяете агенту работать с вашим кодом. Экспериментируете ли вы, рефакторите или просто хотите страховку — /rollback прикроет вашу спину. Включите, забудьте и спите спокойно, зная, что всегда можно отменить.
Удачного кодинга — и помните, точки сохранения существуют не просто так!
📖 Официальная документация
Эта статья основана на официальной документации Hermes Agent :Официальные документы › user-guide/features/plugins