目录
[⚠️ 重要安全提醒](#⚠️ 重要安全提醒)
[第三步:OpenClaw 备份设置成定时任务](#第三步:OpenClaw 备份设置成定时任务)
最近在养虾,但是如何解决切换服务器,如何将文件数据保留,并能方便在其他服务器更快跑起来,这就需要备份和版本管控,GitHub就是一个不错的选择。
⚠️ 重要安全提醒
你的opencalw中 credentials/ 文件夹中包含 API Keys 和敏感授权信息。请务必确保你的 GitHub 仓库 openclaw_local_backup 设置为 "Private"(私有),否则全世界都能用你的额度。
第一步:创建GitHub库
创建github库,一定要设置为私有

生成 GitHub Personal Access Token
然后通过SSH链接即可
第二步:初始化与环境清理
在 .openclaw 目录下执行,确保 Git 已经关联并排除掉不需要的垃圾文件
-
配置
.gitignore:防止日志和临时文件污染仓库。bashcat <<EOF > ~/.openclaw/.gitignore logs/ *.log *.bak* update-check.json .DS_Store EOF -
关联远程库(如果还没关联):
bashcd ~/.openclaw git init git remote add origin 你的github仓库名 git branch -M main
第三步:编写自动化备份脚本
我们将脚本命名为 /home/jry/.openclaw/backup-to-github.sh ,存放在*.openclaw*。
这里我只备份了*.openclaw* 中的credentials/ agents/ skills/ workspace/ extensions/文件夹、openclaw.json
|---------------|-------|------------------------------|------------------------------------------|
| 文件/文件夹 | 层级 | 核心作用 | 关键内容 |
| openclaw.json | 系统配置 | 系统的"总控制台",管理所有核心设置。 | 网关端口、AI模型、通信渠道(如飞书、企业微信、钉钉)等。 |
| credentials/ | 系统配置 | 存放API密钥、OAuth令牌等敏感信息。 | 飞书、Discord 等登录信息 |
| agents/ | 运行状态 | 记录与AI智能体的每一次对话及其元数据。 | 会话列表(sessions.json) 完整的对话历史记录(.jsonl文件)。 |
| skills/ | 能力扩展 | 存放所有已安装的技能(Skills),为AI增加新功能。 | 如搜索资讯、数据分析、网页搜索等功能的插件。 |
| workspace/ | AI的灵魂 | AI智能体的专属工作区和"大脑",存放其人格与记忆。 | SOUL.md(人设) USER.md(你的信息) memory/(长期记忆) |
bash
#!/bin/bash# 配置路径
TARGET_DIR="$HOME/.openclaw"
BACKUP_LOG="$TARGET_DIR/logs/backup.log"# 进入目录cd $TARGET_DIR || exit# 确保日志目录存在
mkdir -p logs
echo "--- Backup Start: $(date '+%Y-%m-%d %H:%M:%S') ---" >> $BACKUP_LOG# 显式添加你指定的文件夹和文件# 注意:如果目录不存在,git add 会跳过,不会报错
git add openclaw.json credentials/ agents/ skills/ workspace/ extensions/
# 检查是否有文件变动if git diff-index --quiet HEAD --; thenecho "No changes detected. Skipping commit." >> $BACKUP_LOGelse# 提交变动
git commit -m "Automated backup: $(date '+%Y-%m-%d %H:%M:%S')" >> $BACKUP_LOG# 推送到远程
git push origin master >> $BACKUP_LOG 2>&1
echo "Backup pushed to GitHub successfully." >> $BACKUP_LOGfiecho "--- Backup End ---" >> $BACKUP_LOG
第三步:OpenClaw 备份设置成定时任务
直接告诉它几点执行此脚本,备份即可
