Ce face /rollback
/rollback restaurează fișierele proiectului dintr-un checkpoint. Checkpoint-urile sunt opționale și dezactivate implicit: le pornești pentru o sesiune cu hermes chat --checkpoints sau global cu checkpoints.enabled: true în ~/.hermes/config.yaml.
Când sunt active, Hermes face o captură înaintea uneltelor de fișiere (write_file, patch) și înaintea comenzilor distructive de terminal (rm, mv, cp, sed -i, truncate, redirecționări >, git reset / clean / checkout etc.), cel mult una pe director per tură. Capturile stau într-un depozit git „umbră” comun, ~/.hermes/checkpoints/store/; .git-ul proiectului nu este atins.
Fără argument, comanda listează checkpoint-urile cu statistici. /rollback N restaurează checkpoint-ul N păstrând editările tale manuale și anulează și ultima tură de chat; --all suprascrie și editările manuale.
Sintaxă și opțiuni
| Opțiune / Parametru | Descriere |
|---|---|
(fără argument) |
Lista checkpoint-urilor cu statistici de modificări. |
<N> |
Restaurează checkpoint-ul N, păstrând editările manuale. |
<N> --all |
Restaurare completă, inclusiv peste editările manuale. |
diff <N> |
Diferența dintre checkpoint-ul N și starea curentă. |
<N> <fișier> |
Restaurează un singur fișier. |
Exemple practice
Exemplul 1: Lista checkpoint-urilor
Exemplul de ieșire din documentația oficială.
/rollback
Rezultat
📸 Checkpoints for /path/to/project:
1. 4270a8c 2026-03-16 04:36 before patch (1 file, +1/-0)
2. eaf4c1f 2026-03-16 04:35 before write_file
3. b3f9d2e 2026-03-16 04:34 before terminal: sed -i s/old/new/ config.py (1 file, +1/-1)
/rollback <N> restore to checkpoint N (keeps your hand-edits)
/rollback <N> --all full restore, overwriting your hand-edits too
/rollback diff <N> preview changes since checkpoint N
/rollback <N> <file> restore a single file from checkpoint N
Exemplul 2: Verifici întâi, restaurezi un singur fișier
/rollback diff 3
/rollback 3 config.py
Exemplul 3: Checkpoint-uri pentru o sesiune
hermes chat --checkpoints
Greșeli frecvente și bune practici
- Te bazezi pe
/rollbackfără să fi activat checkpoint-urile. Fără ele nu există nimic de restaurat. - Folosești
--allfără/rollback diff <N>înainte. Suprascrie și editările tale. - Lași depozitul să crească.
hermes checkpoints pruneși setărilemax_total_size_mb/retention_daysîl țin în limite.