Install
openclaw skills install @anyjohn/hermes-backup-restoreBack up and restore Hermes Agent data — config, secrets, skills, sessions, memories, cron, profiles. Creates portable tar.gz archives with SQLite consistent snapshots, JSON manifest, and integrity verification. Use when: "back up hermes", "restore hermes", "migrate hermes to new machine", "hermes backup", "hermes restore", "hermes 数据备份", "hermes 数据恢复".
openclaw skills install @anyjohn/hermes-backup-restorePortable backup and restore scripts for Hermes Agent data.
Scripts: scripts/hermes-backup.sh and scripts/hermes-restore.sh (relative to skill root).
GitHub: https://github.com/anyJohn/hermes-backup-restore
config.yaml, .env, auth.json)sqlite3 .backup for consistent snapshots)Excludes: source code, caches, locks, sockets, logs, runtime ephemera.
# Default backup to ~/hermes-backup-<hostname>-<timestamp>.tar.gz
./scripts/hermes-backup.sh
# Custom output path
./scripts/hermes-backup.sh -o /path/to/backup.tar.gz
# Include hermes-agent source code
./scripts/hermes-backup.sh --full
# Back up only a specific profile
./scripts/hermes-backup.sh --profile work
# Preview what would be backed up
./scripts/hermes-backup.sh --dry-run
# Restore everything
./scripts/hermes-restore.sh backup.tar.gz
# Preview
./scripts/hermes-restore.sh backup.tar.gz --dry-run
# Merge (don't overwrite existing)
./scripts/hermes-restore.sh backup.tar.gz --merge
# Auto-stop running gateway
./scripts/hermes-restore.sh backup.tar.gz --force
# Restore into a profile
./scripts/hermes-restore.sh backup.tar.gz --profile work
# Custom target dir
./scripts/hermes-restore.sh backup.tar.gz -t /target/path
# Machine A: backup
./scripts/hermes-backup.sh -o /tmp/my-backup.tar.gz
# Transfer
scp /tmp/my-backup.tar.gz user@machineB:/tmp/
# Machine B: restore
./scripts/hermes-restore.sh /tmp/my-backup.tar.gz --force
After restoring on a new machine, re-authenticate if API keys or OAuth tokens are machine-specific:
hermes setup # or hermes model
sqlite3 .backup to avoid WAL corruptionPRAGMA integrity_checkchmod 600 after restore--dry-run for safe previewbash 4.0+rsynctarsqlite3 (recommended — falls back to raw copy if unavailable)python3 (for manifest parsing during restore, optional)MIT