Backups
Purpose
How Hermes’s own configuration/state gets backed up, and what’s missing.
Current mechanism
hermes backupCLI (verified viahermes backup --help): creates a zip of the entire Hermes config, skills, sessions, and data (excludes the hermes-agent codebase itself).--quick/-q: fast snapshot of just critical state (config,state.db,.env,auth,cron)--label/-l: label for a quick snapshot--output/-o: custom output path (default~/hermes-backup-<timestamp>.zip)
- Config keys (
updates:section of~/.hermes/config.yaml):pre_update_backup: false— Hermes does not automatically back up before self-updatesbackup_keep: 5— retention count (applies to config.yaml.bak* rotation seen during updates, e.g. in update-hermes-safely)non_interactive_local_changes: stash
Evidence on disk (2026-07-22)
- One manual full backup exists:
/home/hermes/hermes-backup-2026-07-22-180830.zip(~235 MB), same day as wiki creation. /home/hermes/wiki-personal-backups/holds an earlier snapshot of the wiki itself (SCHEMA.md,current-state.md,index.md,log.mdfrom 17:34, before later same-day wiki edits) — see backup-wiki./home/hermes/hermes-wiki/exists but is empty — likely a staging/rename artifact from wiki setup, not an active backup target.- A dedicated memory-backup script exists:
/home/hermes/.hermes/scripts/mnemosyne-backup.sh— see mnemosyne.
Known gaps
- No scheduled backup job found:
crontab -l -u hermesreturns empty, and no systemd timer referenceshermesorbackup. The one full backup on disk appears to have been triggered manually, not on a schedule. pre_update_backup: falsemeans an in-placehermes updatewill not auto-snapshot first — the manual step in update-hermes-safely step 1 is currently the only safety net.