一键备份 OpenClaw、Claude Code、Cursor 等 AI Agent 工作区至 GitHub 私有仓库
工作空间 GitHub 备份是一项面向实际任务的技能,主要用于一次性单击 AI Agent 工作空间的备份解决方案到一个私人 GitHub 仓库;// 快速启动;
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
面向 AI Agent 工作区的一键式备份方案,支持将数据备份至私有 GitHub 仓库。
首次配置: 告诉我 “setup GitHub backup”,我将引导你完成交互式向导!
已配置完成: 直接说 “backup now” 即可立即触发一次备份。
| 模式 | 触发方式 | 说明 |
|---|---|---|
| 手动模式 | “setup backup” | 通过交互式问答完成配置 |
| 自动模式 | 完成配置后启用 | 由 OpenClaw Cron 调度执行 |
| 文件/目录 | 说明 |
|---|---|
skills/ |
所有已安装的 skill |
memory/ |
每日记忆文件 |
AGENTS.md |
Agent 配置文件 |
SOUL.md |
AI 身份定义 |
USER.md |
用户信息 |
IDENTITY.md |
AI 身份信息 |
TOOLS.md |
本地工具配置 |
HEARTBEAT.md |
心跳任务定义 |
| 配置文件 | 如 README.md、SYNC.md 等 |
| 匹配模式 | 说明 |
|---|---|
.clawhub/ |
ClawHub 缓存目录 |
.openclaw/ |
运行时数据 |
node_modules/ |
依赖包目录 |
*.log |
日志文件 |
*.tmp |
临时文件 |
.DS_Store |
系统文件 |
| API Keys | 环境变量中的敏感信息(不参与备份) |
当用户说出 “setup GitHub backup” 时,依次提出以下问题:
请提供你的 GitHub 用户名。
等待用户回答(例如:“johnsmith”)
你希望为备份仓库起什么名字? 建议名称:
ai-workspace-backup或agent-workspace
等待用户回答
现在我们来生成一个 GitHub Token:
- 访问 https://github.com/settings/tokens
- 点击 “Generate new token (classic)”
- 注意:Token 名称建议设为
backup-token- 勾选
repo权限(对私有仓库拥有完全控制权)- 点击 “Generate token”
- 复制并在此处粘贴生成的 Token
等待用户提供 Token(格式示例:ghp_xxx)
你希望自动备份每天在什么时间运行?
- A) 凌晨 3:00(夜猫子时段)
- B) 上午 7:00(清晨时段)
- C) 中午 12:00(正午时段)
- D) 下午 6:00(傍晚时段)
或直接告诉我你偏好的时间(例如:“每天下午 5 点”)
等待用户选择
配置摘要如下:
- GitHub 用户名:[username]
- 仓库名称:[repo-name]
- 备份时间:[time]
请回复 “confirm” 或 “yes” 开始配置;若需修改,请指出具体项。
确认后将执行以下步骤:
# 立即备份 "backup now" "backup immediately" "run backup now" # 查看状态 "backup status" "when did we last backup" "show backup status" # 恢复工作区 "restore from GitHub" "recover workspace" # 修改配置 "change backup time" "pause auto backup"
当用户或其它 AI Agent 说出以下任一短语时,本 skill 将被激活:
| 问题 | 原因 | 解决方案 |
|---|---|---|
| “Permission denied” | Token 无效 | 重新生成 Token,并确保勾选 repo 权限范围 |
| “Repository not found” | 仓库名称错误 | 检查拼写是否正确 |
| “Push failed” | 网络连接异常 | 检查网络连通性 |
| “Cron not running” | 配置错误 | 运行 openclaw cron list 查看当前定时任务 |
# 查看远程仓库配置 git remote -v # 使用新 Token 重置远程地址 git remote set-url origin https://x-access-token:TOKEN@github.com/user/repo.git # 查看当前 Cron 任务列表 openclaw cron list # 手动执行一次备份 cd /root/.openclaw/workspace git add skills/ memory/ AGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md HEARTBEAT.md README.md SYNC.md .gitignore git commit -m "Backup: $(date +%Y-%m-%d)" git push origin main
如果你是另一个正在使用本 skill 的 AI Agent,请参考以下流程:
openclaw cron add 添加调度任务git log -1 查看最近一次备份提交时间示例 Cron 配置命令:
openclaw cron add --name "workspace-backup" --cron "0 3 * * *" --message "Execute workspace backup" --agent main
当用户需要从备份中恢复工作区时,请按以下步骤操作:
# 1. 克隆备份仓库 git clone https://github.com/[username]/[repo].git /tmp/restore # 2. 恢复文件 cp -r /tmp/restore/* ~/.openclaw/workspace/ # 3. 重新配置环境变量 # (敏感信息不在备份中,需手动补充)
由 Jeremy 为 OpenClaw 社区开发。已发布至 ClawHub,供所有人自由使用与改进。