OpenClaw · Skill
Restic Home Backup Safe
Define and deliver a production-ready restic backup setup for ~/ with encryption, deduplication, automated scheduling, and restore testing.
Install
Start with the primary install command. Alternate entrypoints are included below for ClawHub and OpenClaw CLI users.
Primary command
clawhub install moep90/restic-home-backup-safeClawHub installer
npx clawhub@latest install moep90/restic-home-backup-safeOpenClaw CLI
openclaw skills install moep90/restic-home-backup-safeDirect OpenClaw install
openclaw install moep90/restic-home-backup-safeWhat this skill does
Define and deliver a production-ready restic backup setup for ~/ with encryption, deduplication, automated scheduling, and restore testing.
Why it matters
Combines repository initialization, script generation, systemd unit deployment, and restore validation in one workflow rather than requiring the user to wire these together manually.
Typical use cases
- Schedule daily encrypted backups of ~/Documents and ~/Projects
- Migrate home directory backup from rsync to restic with deduplication
- Set up weekly prune and monthly integrity checks via systemd timers
- Test and verify restore from a specific restic snapshot to a temp directory
- Harden an existing restic setup with proper credential file permissions
Source instructions
Restic Home Backup
Define and deliver a production-ready restic backup setup for ~/ with encryption, deduplication, automated scheduling, and restore testing.
Skill contract
- Name:
restic-home-backup - Problem solved: Provide reliable, encrypted, versioned backups of a Linux home directory with operational safety and repeatable recovery.
- Inputs:
- Backup target type (
local disk,sftp,s3,b2, etc.) - Repository endpoint/path
- Secret handling method (env file or password file)
- Schedule preferences (daily backup, weekly prune, monthly check)
- Exclude patterns
- Backup target type (
- Outputs:
- Installed and initialized restic repository
- Backup/prune/check scripts
- systemd service/timer units
- Validation evidence (snapshots + test restore)
- Short operator runbook
- Safety boundaries (must never violate):
- Never print secrets or tokens in chat/log output.
- Never delete snapshots/repositories without explicit user confirmation.
- Never weaken permissions on credential files (
chmod 600minimum). - Never claim backup success without checking command exit status and snapshot listing.
- Never apply system changes implicitly: require explicit
--apply(or explicit user confirmation) before writing to/etc,/usr/local/bin, or/etc/systemd/system.
Workflow
1) Assess and confirm backup contract
Collect the minimum required values before changes:
- Source path (default
/home/<user>) - Destination repo and transport
- Retention policy (for example:
7d/4w/12m) - Preferred schedule in local timezone
If any critical value is missing, ask targeted questions.
2) Scaffold backup implementation
Use these resources:
scripts/bootstrap_restic_home.shto generate deterministic setup artifacts. It is PLAN-ONLY by default and requires explicit--applyfor system changes. Optional flags control timer enablement, repository initialization, and initial backup run.references/ops-checklist.mdfor day-2 operations and troubleshooting.
Create:
/etc/restic-home.env(root-readable only)/usr/local/bin/restic-home-backup.sh/usr/local/bin/restic-home-prune.sh/usr/local/bin/restic-home-check.shrestic-home-backup.service/.timerrestic-home-prune.service/.timerrestic-home-check.service/.timer
3) Harden and validate
Run and verify:
restic snapshots- One immediate backup run
- One restore smoke test to temporary directory
restic check(or scheduled monthly deep check)
Validate failure behavior:
- Wrong password
- Unreachable repository
- Permission denied on env file
Report exact failing command + short corrective action.
4) Package and publish via ClawHub CLI (when requested)
When user requests publication:
- Validate skill quality and structure.
- Package skill.
- Publish with
clawhubCLI. - Verify install from registry in a clean environment.
Keep publish actions explicit and auditable.
Response style requirements
Use descriptive language with concrete operational detail:
- Name the exact file path, service name, and command.
- State what changed and how to verify it.
- End multi-step tasks with explicit completion status.