GitHub 仓库备份技能 - 将 OpenClaw 工作空间自动或手动备份至 GitHub 私有仓库。支持自动定时备份和手动交互式配置,引导完成 Token 配置、仓库创建、首次备份及定时任务设置。用途:(1) 首次设置 (2) 日常备份。
GitHub 仓库备份是一项面向实际任务的技能,主要用于自动将工作空间备份到 GitHub 私有仓库的完整解决方案;"设置 GitHub 备份";
"立即备份";立即执行一次备份;"查看备份状态";检查备份状态;手动模式:交互式配置向导;当用户说"设置 GitHub 备份"时,进入交互式问答:;问题 1:GitHub 用户名;
请告诉我你的 GitHub 用户。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
自动将工作空间备份到 GitHub 私有仓库的完整解决方案。
| 触发词 | 模式 | 说明 |
|---|---|---|
| "设置 GitHub 备份" | 手动 | 运行交互式配置向导 |
| "自动备份到 GitHub" | 自动 | 设置定时任务 |
| "立即备份" | 手动 | 立即执行一次备份 |
| "查看备份状态" | 手动 | 检查备份状态 |
当用户说"设置 GitHub 备份"时,进入交互式问答:
请告诉我你的 GitHub 用户名是什么?
等待用户回答(如:ziqi-jin)
你想用什么名字创建备份仓库? 建议:
jeremy-agents-backup或openclaw-backup
等待用户回答
现在需要生成 GitHub Token:
- 访问 https://github.com/settings/tokens
- 点击 "Generate new token (classic)"
- Note 填写:
backup-token- 勾选
repo权限- 点击生成,然后复制 Token 给我
等待用户粘贴 Token(验证 Token 格式:ghp_ 开头)
选择每天自动备份的时间:
- A) 凌晨 3:00
- B) 早上 7:00
- C) 中午 12:00
- D) 下午 6:00
或者输入你希望的具体时间(如:每天下午 5 点)
等待用户选择或输入
配置确认:
- GitHub 用户名:[用户名]
- 仓库名:[仓库名]
- 备份时间:[时间]
确认请回复"确认"或"yes",修改请回复具体要改的部分
用户确认后,执行初始化并设置定时任务。
当用户选择自动模式或确认配置后:
git add AGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md HEARTBEAT.md skills/ memory/ git commit -m "Initial backup: $(date +%Y-%m-%d)" git push origin main
openclaw cron add --name "github-backup" --cron "0* * *" --message "执行 GitHub 备份" --agent main
当用户说"立即备份"或"现在备份"时:
cd /root/.openclaw/workspace git add AGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md HEARTBEAT.md skills/ memory/ git commit -m "Manual backup: $(date +%Y-%m-%d_%H:%M)" git push origin main
完成后告诉用户备份结果。
当用户说"备份状态"或"上次备份什么时候"时:
cd /root/.openclaw/workspace git log -1 --format="最后备份: %cd" git status git remote -v
显示:
| 问题 | 原因 | 解决 |
|---|---|---|
| Token 无效 | token 过期或权限不足 | 重新生成有 repo 权限的 token |
| 仓库不存在 | 仓库名拼写错误 | 检查仓库名是否正确 |
| Push 失败 | 没有权限或网络问题 | 检查 token 权限和网络 |
| 定时不执行 | cron 配置错误 | 用 openclaw cron list 检查 |
# 检查远程仓库 git remote -v # 重新设置远程 git remote set-url origin https://x-access-token:TOKEN@github.com/user/repo.git # 查看 cron 任务 openclaw cron list # 手动运行备份 bash ~/.openclaw/workspace/skills/github-backup/scripts/backup.sh
✅ 会备份
skills/ - 所有已安装的技能memory/ - 记忆文件AGENTS.md - Agent 配置SOUL.md - AI 身份USER.md - 用户信息IDENTITY.md - 身份信息TOOLS.md - 工具配置HEARTBEAT.md - 心跳任务README.md, SYNC.md - 文档❌ 不会备份
.clawhub/ - 缓存.openclaw/ - 运行时node_modules/ - 依赖*.log - 日志*.tmp - 临时文件用户需要恢复时说"从 GitHub 恢复":
# 1. 克隆仓库 git clone https://github.com/[user]/[repo].git /tmp/restore # 2. 恢复文件 cp -r /tmp/restore/* ~/.openclaw/workspace/ # 3. 重新配置环境变量 # (因为敏感信息不在备份中)
触发本技能的关键词: