🤖HermesBlog
Hermes Feature Guides · Teil 108/9/2026

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)

hermes-feature-10-builtin-plugins

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-Toolswrite_file und patch
  • Destruktive Terminalbefehlerm, rmdir, cp, install, mv, sed -i, truncate, dd, shred, Output-Umleitungen (>), sowie git 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:

  1. Das Projekt-Root für diese Datei wird ermittelt
  2. Der gemeinsame Shadow-Store wird initialisiert oder wiederverwendet
  3. Ä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