/save: Sitzungen als JSON, Markdown oder HTML exportieren — sogar aus dem Chat

Es ist Freitagnachmittag. Drei Stunden lang hast du mit Hermes einen Produktionsfehler gejagt — Logs durchforstet, an der Konfiguration geschraubt, ein Dutzend Debug-Runden gedreht — und endlich ist das Problem gelöst. Als Nächstes willst du die ganze Untersuchung in ein Dokument für deine Kollegin verwandeln oder in deiner Wissensdatenbank ablegen. Wenn dir dafür nur bleibt, den Terminal Bildschirm für Bildschirm abzufotografieren, bleibt dieses mühsam erworbene Wissen für immer im Scrollback gefangen. So muss es nicht sein: Mit /save exportiert Hermes die gesamte Sitzung in einer Zeile in eine Datei — JSON, Markdown oder HTML, und optional lassen sich Geheimnisse vorher entfernen (redact), bevor irgendetwas die Platte berührt.
Was /save ist
/save ist Hermes’ Exportbefehl innerhalb der Sitzung: Tippst du ihn in einer Konversation ein, wird der komplette Austausch in eine Datei geschrieben. Den einfachen JSON-Snapshot gibt es schon länger, doch ein kürzliches Upgrade (Mitte August 2026 in main gemergt, PR #86806) hat daraus ein plattformübergreifendes Exportwerkzeug gemacht:
/save json— ein vollständiger Sitzungs-Snapshot mit Nachrichten, Tool-Aufrufen und Metadaten. Er ist die maschinenlesbare „Source of Truth“, ideal für Backups und Migration;/save md— ein gut lesbares Markdown-Transkript, das du direkt in Doku, Notizen oder eine Nachricht an dein Team einfügen kannst;/save html— eine eigenständige Single-File-HTML-Seite, die ohne jede Abhängigkeit in jedem Browser aufgeht — am einfachsten zu teilen.
Die drei Formate decken die drei häufigsten Bedürfnisse ab: archivieren, lesen, teilen. Und das Ganze funktioniert nicht nur im Terminal: Auf Messenger-Plattformen wie Telegram, Discord oder Slack schickst du dem Agent einfach /save md und er liefert die exportierte Datei direkt zurück in den Chat — dein vollständiges Protokoll, direkt auf dem Handy.
So verwendest du es
Im Terminal sieht die Syntax so aus:
/save <json|md|html> [filename] [redact]
Ein paar praktische Beispiele:
/save # ohne Argumente: zeigt die komplette Nutzungshilfe
/save json # vollständiger Snapshot, automatisch benannt, gespeichert unter ~/.hermes/sessions/saved/
/save md # Markdown-Transkript
/save html my-report.html # eigener Dateiname, Single-File-HTML
/save json backup redact # API keys und Geheimnisse vor dem Schreiben erzwungen redigieren (force-redact)
Zwei Details sollte man kennen: Dateinamen werden auf ihre letzte Pfadkomponente bereinigt, ein Path-Traversal ist also nicht möglich; und wenn du keinen Namen angibst, wird einer für dich generiert. In der CLI landen exportierte Dateien unter ~/.hermes/sessions/saved/.
redact: aufräumen vor dem Export
Sitzungen sammeln schnell Geheimnisse an — beim Debuggen hast du einen API key eingefügt, in einem Config-Ausschnitt ein Token gezeigt, und all das steht im Transkript. Wenn du das unverändert exportierst, gibst du damit praktisch die Schlüssel aus der Hand.
Genau dafür gibt es das Flag redact: Vor dem Schreiben läuft der Export durch einen Force-Mode-Redaction-Durchlauf, der alles bereinigt, was wie ein API key, Token oder Passwort aussieht. Hermes redigiert Geheimnisse in Tool-Ausgaben übrigens schon standardmäßig (security.redact_secrets), und /save redact legt an der Export-Grenze noch eine zweite Schutzschicht darüber. Wer eine Sitzung mit anderen teilt, spart sich mit der Gewohnheit, immer redact zu setzen, eine Menge Ärger.
Weiter gehen: Batch-Export und die anderen Export-Befehle
Wenn du mehr als nur die aktuelle Sitzung brauchst, hat die CLI hermes sessions export im Angebot — das verarbeitet mehrere Sitzungen auf einmal:
# Export nach JSONL (das Standardformat)
hermes sessions export backup.jsonl
# Export als Markdown in ein Verzeichnis
hermes sessions export out/ --format md
# Export als Claude Code trace und Upload in den Hugging Face Trace Viewer
hermes sessions export --format trace --upload
--format akzeptiert jsonl, md, qmd, html und trace. Das Format trace erzeugt Claude Code JSONL und schiebt es zusammen mit --upload in den Agent Trace Viewer von Hugging Face zur visuellen Analyse (dafür wird ein HF_TOKEN benötigt); --no-redact überspringt die erzwungene Redaktion — aber nur, nachdem du den Inhalt manuell geprüft hast.
Außerdem: Verwechsle /save nicht mit /export. /save exportiert die aktuelle Sitzung, während /export ein ganzes Profile archiviert (Config, Skills und Theme, verpackt als tar.gz für Migration und Weitergabe). Verschiedene Aufgaben, verschiedene Befehle.
Ein paar Dinge, die du wissen solltest
- Exportieren berührt die Sitzung nicht: Jede Nachricht wird ohnehin schrittweise in der lokalen SQLite-Sitzungsdatenbank gespeichert,
/saveerzeugt also nur einen Snapshot — die Sitzung bleibt jederzeit mithermes --resume <id>fortsetzbar. - Der plattformübergreifende json/md/html-Export ist neu: Der komplette Drei-Formate-Export ist am 15. August 2026 in main gelandet; in v0.20.1 und älteren Releases war
/savenur ein CLI-seitiger JSON-Snapshot. Einhermes updateholt den neuesten Stand (oder warte auf das nächste Release) — dann steht dir die volle Funktionalität zur Verfügung. - Welches Format? Archivieren, migrieren oder Tools füttern →
json. Lesen und in Dokumente einfügen →md. Mit jemandem teilen, der es im Browser öffnet →html.
Fazit
/save gehört zu den Befehlen, an die man nicht denkt — bis man sie einmal benutzt hat und nicht mehr zurück kann: Nach einer langen Debug-Sitzung den Verlauf archivieren, eine Konversation für das Meeting-Dokument in Markdown verwandeln, einem Kollegen ein teilbares HTML-Protokoll in die Hand drücken. Zusammen mit redact für saubere Geheimnisse und Chat-Plattformen, die dir die Datei direkt zurückliefern, befreit er das in deinen Sitzungen gespeicherte Wissen aus dem Terminal — Archivieren und Organisieren, Wiederherstellen und Migrieren wird so einfach wie das Verschicken einer Nachricht. Weitere Details zu Befehlen findest du in der Referenz zum Befehl hermes sessions oder in unseren Versionshinweisen zu v0.20.0.