名称: git-crypt-backup
描述: 使用 git-crypt 加密,将 Clawdbot 工作区与配置备份至 GitHub。适用于每日自动备份或手动备份/恢复操作。
使用 git-crypt 加密敏感文件,将 Clawdbot 工作区 (~/clawd) 和配置 (~/.clawdbot) 自动备份至 GitHub。
# 在 GitHub 上创建两个私有仓库:
# - <用户名>/clawdbot-workspace
# - <用户名>/clawdbot-config
# 安装 git-crypt
brew install git-crypt # macOS
# apt install git-crypt # Linux
# 工作区仓库
cd ~/clawd
git init
git-crypt init
git remote add origin git@github.com:<用户名>/clawdbot-workspace.git
# 配置仓库
cd ~/.clawdbot
git init
git-crypt init
git remote add origin git@github.com:<用户名>/clawdbot-config.git
工作区 .gitattributes:
SOUL.md filter=git-crypt diff=git-crypt
USER.md filter=git-crypt diff=git-crypt
HEARTBEAT.md filter=git-crypt diff=git-crypt
MEMORY.md filter=git-crypt diff=git-crypt
memory/** filter=git-crypt diff=git-crypt
配置 .gitattributes:
clawdbot.json filter=git-crypt diff=git-crypt
.env filter=git-crypt diff=git-crypt
credentials/** filter=git-crypt diff=git-crypt
telegram/** filter=git-crypt diff=git-crypt
identity/** filter=git-crypt diff=git-crypt
agents/**/sessions/** filter=git-crypt diff=git-crypt
nodes/** filter=git-crypt diff=git-crypt
配置 .gitignore:
*.bak
*.bak.*
.DS_Store
logs/
media/
browser/
subagents/
memory/
update-check.json
*.lock
mkdir -p ~/clawdbot-keys
cd ~/clawd && git-crypt export-key ~/clawdbot-keys/workspace.key
cd ~/.clawdbot && git-crypt export-key ~/clawdbot-keys/config.key
⚠️ 请妥善保管这些密钥(建议存入 1Password、iCloud 钥匙串、U 盘等安全位置)
cd ~/clawd && git add -A && git commit -m "首次备份" && git push -u origin main
cd ~/.clawdbot && git add -A && git commit -m "首次备份" && git push -u origin main
运行 scripts/backup.sh:
~/clawd/skills/git-crypt-backup/scripts/backup.sh
也可设置 cron 定时任务,实现每日自动备份。
# 1. 克隆仓库
git clone git@github.com:<用户名>/clawdbot-workspace.git ~/clawd
git clone git@github.com:<用户名>/clawdbot-config.git ~/.clawdbot
# 2. 使用密钥解锁
cd ~/clawd && git-crypt unlock /path/to/workspace.key
cd ~/.clawdbot && git-crypt unlock /path/to/config.key
| 仓库 | 加密文件 | 明文文件 |
|---|---|---|
| workspace | SOUL/USER/HEARTBEAT/MEMORY.md, memory/** | AGENTS.md, IDENTITY.md, TOOLS.md, drafts/** |
| config | clawdbot.json, .env, credentials/, sessions/ | cron/jobs.json, settings/** |