Openclaw-skills gitclaw-backup
GitHub backup for OpenClaw workspace. Use when user says "同步", "备份", "backup", "sync", "push to github", or asks about backup status/history/failures. Manages git-based full backup of ~/.openclaw to GitHub.
install
source · Clone the upstream repo
git clone https://github.com/blessonism/openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/blessonism/openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/gitclaw-backup" ~/.claude/skills/blessonism-openclaw-skills-gitclaw-backup && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/blessonism/openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/gitclaw-backup" ~/.openclaw/skills/blessonism-openclaw-skills-gitclaw-backup && rm -rf "$T"
manifest:
gitclaw-backup/SKILL.mdsource content
GitClaw Backup
Full backup of
/home/node/.openclaw/ to GitHub via git.
Quick Reference
- Repo:
https://github.com/blessonism/openclaw-backup.git - Branch:
main - Script:
/home/node/.openclaw/gitclaw/auto_backup.sh - Cron:
— 每天 UTC 16:00 (北京时间 0:00)daily-workspace-backup - Exclude rules:
/home/node/.openclaw/.gitignore
Manual Sync
Run the backup script directly:
bash /home/node/.openclaw/gitclaw/auto_backup.sh
Script behavior:
- Lock-based (prevents concurrent runs)
- Stages all changes (
), respectsgit add -A.gitignore - Skips commit if no changes
- Pushes to
origin main - Logs to
/home/node/.openclaw/gitclaw/backup.log
Post-Sync Response
After a successful sync, always include a clickable link to the latest commit in your reply:
# Get the latest commit short hash cd /home/node/.openclaw && git log --oneline -1
Then format the response like:
✅ 同步完成 — 查看 commit
- If no changes were detected, report "无变更,跳过" (no link needed).
- If the push failed, report the error and suggest troubleshooting steps.
Check Status
# Last backup log tail -5 /home/node/.openclaw/gitclaw/backup.log # Git status (uncommitted changes) cd /home/node/.openclaw && git status --short # Recent commits cd /home/node/.openclaw && git log --oneline -5
Exclude Files from Backup
Edit
/home/node/.openclaw/.gitignore — standard gitignore syntax.
Current notable exclusions:
workspace/images/, workspace/node_modules/, workspace/.micromamba/, workspace/bin/, large binary files.
Troubleshooting
- "already running" in log → stale lock at
, remove it:/home/node/.openclaw/gitclaw/lock/rmdir /home/node/.openclaw/gitclaw/lock - Push rejected → likely force-push or diverged history on remote; check with
git log --oneline -5 origin/main - Auth failure → credentials in
; verify with~/.git-credentialsgit credential fill <<< "host=github.com"