Install
openclaw skills install backup-to-r2Set up and run complete, encrypted, off-site backups of an OpenClaw install to Cloudflare R2 via restic, plus portable restore. Use when the user wants to back up, protect, restore, or migrate their OpenClaw config, agents, and credentials.
openclaw skills install backup-to-r2This skill helps the user create complete, encrypted, off-site backups of their OpenClaw installation and restore them on any machine. It backs up everything OpenClaw's built-in .bak misses: credentials, agents, workspace, and cron — not just openclaw.json.
openclaw doctor --fix) and wants protection going forward.openclaw backup create --verify produces a verified .tar.gz containing config, credentials, agents, workspace, and cron. restic then encrypts and deduplicates it locally and uploads to Cloudflare R2. Retention keeps 7 daily + 4 weekly + 6 monthly snapshots.
./restic/restic.exe)..env.example → .env and fill RESTIC_REPOSITORY, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY..restic-pass with a strong password. Critical: this is the only key to the encrypted backups — store it safely and separately. Without it, restore is impossible.restic init.Never commit
.envor.restic-pass. They are git-ignored. Never print their contents.
.\backup.ps1
This runs openclaw backup create --verify, uploads via restic to R2, prunes old snapshots, and removes the local tar. Logs go to logs/.
.\test-restore.ps1
Downloads the latest snapshot, extracts it, and validates with openclaw backup verify. Does not touch the live .openclaw.
Copy the portable/ folder (with restic/restic.exe, .env, .restic-pass) to the target machine and run:
.\portable\restore-portable.ps1
It stops the gateway, pulls the latest backup from R2, and installs to %USERPROFILE%\.openclaw, preserving the current .openclaw as .openclaw.backup-<date> first.
Register a Task Scheduler job that runs backup.ps1 daily with -StartWhenAvailable so it catches up if the PC was off. See the README for the exact Register-ScheduledTask command.
.restic-pass somewhere safe before relying on backups..env/.restic-pass themselves..openclaw as a timestamped backup, so a restore is reversible.