Skills workspace-backup
Automated workspace backup to GitHub — git-based with auto-generated commit messages, proper .gitignore, and restore procedures. Cron-friendly for hands-free backup. Use for backing up your OpenClaw workspace, skills, memory, and configuration.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/aiwithabidi/workspace-backup" ~/.claude/skills/clawdbot-skills-workspace-backup && rm -rf "$T"
manifest:
skills/aiwithabidi/workspace-backup/SKILL.mdsource content
💾 Workspace Backup
Automated git-based backup of your OpenClaw workspace to GitHub. Designed to run as a cron job or on-demand.
Features
- One-command backup with auto-generated commit messages
- Smart
for OpenClaw workspaces.gitignore - Timestamp + changed files summary in commits
- Restore from any point in history
- Cron-friendly (no TTY required)
Setup
1. Initialize the backup repo
cd ~/.openclaw/workspace git init git remote add origin git@github.com:YOUR_USER/YOUR_REPO.git
2. Ensure SSH keys are configured
The script uses SSH for push. Make sure your deploy key or SSH key is available.
3. Run the backup
bash {baseDir}/scripts/backup.sh
4. Schedule as cron job
In OpenClaw, create a cron job:
{ "name": "workspace-backup", "schedule": "0 */6 * * *", "command": "bash /home/node/.openclaw/workspace/skills/workspace-backup/{baseDir}/scripts/backup.sh", "description": "Backup workspace to GitHub every 6 hours" }
Or via system crontab:
0 */6 * * * cd /home/node/.openclaw/workspace && bash skills/workspace-backup/{baseDir}/scripts/backup.sh >> /tmp/backup.log 2>&1
Restore Procedures
Restore entire workspace to latest backup
cd ~/.openclaw/workspace git fetch origin git reset --hard origin/main
Restore a specific file from history
git log --oneline -- path/to/file # find the commit git checkout <commit-hash> -- path/to/file # restore it
Restore to a specific point in time
git log --oneline --before="2026-02-01" # find commit near that date git checkout <commit-hash> # detached HEAD at that point # Copy what you need, then: git checkout main
View what changed between backups
git log --oneline -10 git diff <older-hash> <newer-hash> --stat
.gitignore
The backup script auto-creates a
.gitignore if missing, excluding:
— Python virtual environments.venv/
— Local databases and data files.data/
— Secret environment variables.env
— Node.js dependenciesnode_modules/
— Python bytecode__pycache__/
— Compiled Python files*.pyc
— macOS metadata.DS_Store
Script Reference
| Script | Description |
|---|---|
| Main backup script — add, commit, push |
Credits
Built by M. Abidi | agxntsix.ai YouTube | GitHub Part of the AgxntSix Skill Suite for OpenClaw agents.
📅 Need help setting up OpenClaw for your business? Book a free consultation