Checkpoints und `/rollback` — Das Sicherheitsnetz für dein Projekt
Built-in Plugins — Ready-to-Use Enhancements — easy-to-understand guide based on official docs (updated 2026-08-09)
Checkpoints und /rollback — Das Sicherheitsnetz für dein Projekt
Schon mal einem KI-Agenten bei einer Änderung zugeschaut und gedacht: „Moment, das wollte ich gar nicht“? Das kennen wir alle. Deshalb hat Hermes Agent jetzt ein eingebautes Sicherheitsnetz: Checkpoints. Stell sie dir wie Speicherpunkte in einem Videospiel vor — Schnappschüsse deines Projekts, die vor riskanten Aktionen erstellt werden und mit einem einzigen Befehl wiederhergestellt werden können.
Was sind Checkpoints?
Checkpoints sind automatische Schnappschüsse deines Projekts, die vor destruktiven Operationen erstellt werden. Wenn der Agent dabei ist, Dateien zu löschen, Code zu überschreiben oder riskante Terminalbefehle auszuführen, speichert er zuerst den aktuellen Zustand. Später kannst du zu jedem dieser Schnappschüsse zurückkehren.
Das Beste daran? Die echte .git-Historie deines Projekts wird nie angefasst. Hermes verwendet einen gemeinsamen Shadow-Store unter ~/.hermes/checkpoints/store/ — ein separates Git-Repository, das alles organisiert und projektübergreifend dedupliziert.
Erste Schritte: Checkpoints aktivieren
Checkpoints sind opt-in ab Version 2. Die meisten Nutzer brauchen sie nie, und der Speicher kann mit der Zeit wachsen — also ist die Standardeinstellung „aus“.
Für eine einzelne Sitzung aktivieren:
hermes chat --checkpoints
Oder global in ~/.hermes/config.yaml aktivieren:
checkpoints:
enabled: true
Wann erstellt Hermes einen Checkpoint?
Hermes erstellt automatisch Schnappschüsse vor:
- Datei-Tools —
write_fileundpatch - Destruktive Terminalbefehle —
rm,rmdir,cp,install,mv,sed -i,truncate,dd,shred, Output-Umleitungen (>), sowiegit reset/clean/checkout
Keine Sorge vor Spam — der Agent erstellt höchstens einen Checkpoint pro Verzeichnis und Runde, damit lange Sitzungen übersichtlich bleiben.
/rollback in der Sitzung verwenden
Sobald Checkpoints aktiviert sind, hast du mächtige Slash-Befehle direkt im Chat:
| Befehl | Funktion |
|---|---|
/rollback |
Alle Checkpoints mit Änderungsstatistiken auflisten |
/rollback <N> |
Zu Checkpoint N zurückkehren, eigene manuelle Änderungen bleiben erhalten |
/rollback <N> --all |
Vollständige Wiederherstellung — überschreibt auch eigene manuelle Änderungen |
/rollback diff <N> |
Änderungen zwischen Checkpoint N und jetzt anzeigen |
/rollback <N> <file> |
Eine einzelne Datei aus Checkpoint N wiederherstellen |
So sieht das Auflisten von Checkpoints aus:
📸 Checkpoints für /pfad/zum/projekt:
1. 4270a8c 2026-03-16 04:36 vor patch (1 Datei, +1/-0)
2. eaf4c1f 2026-03-16 04:35 vor write_file
3. b3f9d2e 2026-03-16 04:34 vor terminal: sed -i s/old/new/ config.py (1 Datei, +1/-1)
/rollback <N> zu Checkpoint N zurückkehren (behält eigene Änderungen)
/rollback <N> --all vollständige Wiederherstellung, überschreibt auch eigene Änderungen
/rollback diff <N> Änderungen seit Checkpoint N anzeigen
/rollback <N> <file> einzelne Datei aus Checkpoint N wiederherstellen
Den Store von der Shell aus verwalten
Außerhalb einer Sitzung kannst du die CLI verwenden, um deinen Checkpoint-Store zu inspizieren und zu verwalten:
hermes checkpoints # Größe, Projektanzahl, Aufschlüsselung anzeigen
hermes checkpoints status # Wie oben
hermes checkpoints list # Alias für status
hermes checkpoints prune # Erzwungene Bereinigung: Waisen, veraltete Daten, Größenlimit
hermes checkpoints clear # Alles löschen (fragt vorher nach)
hermes checkpoints clear-legacy # Alte v1-Migrationsarchive entfernen
Beispielausgabe:
Checkpoint-Basis: /home/du/.hermes/checkpoints
Gesamtgröße: 142,3 MB
store/ 138,1 MB
legacy-* 4,2 MB
Projekte: 12
WORKDIR COMMITS LETZTE ÄNDERUNG STATUS
/home/du/code/hermes-agent 20 2h her live
/home/du/code/experiments/rl-runner 8 1d her live
/home/du/code/old-prototype 3 9d her orphan
Konfigurationsoptionen
Feinjustierung der Checkpoints in ~/.hermes/config.yaml:
checkpoints:
enabled: false # Hauptschalter (Standard: false)
max_snapshots: 20 # Maximale Checkpoints pro Projekt
max_total_size_mb: 500 # Hartes Limit für die Gesamtgröße des Stores
max_file_size_mb: 10 # Dateien größer als das werden übersprungen
# Automatische Wartung (standardmäßig aktiv)
auto_prune: true
retention_days: 7
min_interval_hours: 24
Alles deaktivieren?
checkpoints:
enabled: false
auto_prune: false
Wie es unter der Haube funktioniert
Wenn Hermes erkennt, dass ein Tool dabei ist, Dateien zu verändern, passiert Folgendes:
- Das Projekt-Root für diese Datei wird ermittelt
- Der gemeinsame Shadow-Store wird initialisiert oder wiederverwendet
- Änderungen werden gestaged, ein Tree wird aufgebaut und in eine projektspezifische Ref committet (
refs/hermes/<projekt-hash>)
Diese Refs bilden deine Checkpoint-Historie, bereit zur Inspektion und Wiederherstellung über /rollback.
Abschließende Gedanken
Checkpoints geben dir ein beruhigendes Gefühl, wenn der Agent an deinem Code arbeitet. Ob du experimentierst, refaktorierst oder einfach nur ein Sicherheitsnetz willst — /rollback hat deinen Rücken. Aktivier es, vergiss es und schlaf ruhig, denn du weißt: Du kannst immer alles rückgängig machen.
Viel Spaß beim Coden — und denk dran: Speicherpunkte existieren nicht ohne Grund!
📖 Offizielle Dokumentation
この記事は Hermes Agent のOffizielle Dokumentationに基づいています:Offizielle Dokumentation › user-guide/features/plugins