OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  clawdbot-skill-update:全面的 Clawdbot 技能备份、更新与恢复套件

clawdbot-skill-update:全面的 Clawdbot 技能备份、更新与恢复套件

 
  release ·  2026-02-18 21:16:55 · 3 次点击  · 0 条评论  

名称: clawdbot-skill-update
描述: 包含动态工作空间检测的完整备份、更新与恢复工作流
主页: https://github.com/pasogott/clawdbot-skill-update
元数据: {"clawdbot":{"emoji":"💾","requires":{"bins":["bash","jq","tar","git"]},"tags":["backup","restore","update","multi-agent"]}}


Clawdbot 更新技能

为 Clawdbot 安装提供完整的备份、更新与恢复工作流。

仓库信息

  • GitHub: https://github.com/clawdbot/clawdbot
  • 上游仓库: origin/main
  • 本地克隆路径: ~/code/clawdbot (默认)

功能描述

此技能为 Clawdbot 提供了一个完整、模块化的更新工作流,并具备动态工作空间检测功能,涵盖:
- 配置文件
- 代理状态与会话
- 凭证与认证令牌
- 所有代理工作空间(从配置自动检测)
- 定时任务与沙盒
- Git 仓库状态

核心特性

动态工作空间检测 - 从配置文件中读取工作空间路径
多代理支持 - 自动处理多个代理
安全回滚 - 完整的恢复能力
Git 集成 - 跟踪版本与远程仓库
验证检查 - 包含更新前后的检查
试运行 - 备份前预览

文件清单

  • config.json - 技能配置(仓库 URL、路径)
  • backup-clawdbot-dryrun.sh - 试运行预览脚本(不进行实际更改)
  • backup-clawdbot-full.sh - 动态完整备份脚本
  • restore-clawdbot.sh - 动态恢复脚本
  • validate-setup.sh - 更新前后验证脚本
  • check-upstream.sh - 检查可用更新
  • UPDATE_CHECKLIST.md - 分步更新清单
  • QUICK_REFERENCE.md - 快速命令参考
  • SKILL.md - 本文档
  • README.md - 快速入门指南

动态特性

备份与恢复脚本现在具备以下能力:
- 从 ~/.clawdbot/clawdbot.json 读取工作空间路径
- 支持任意数量的代理
- 优雅处理缺失的工作空间
- 根据代理 ID 生成安全的文件名

使用时机

当被要求执行以下操作时,触发此技能:
- "更新 clawdbot"
- "升级到最新版本"
- "更新前备份 clawdbot"
- "从备份恢复 clawdbot"
- "回滚 clawdbot 更新"

使用方法

1. 预览备份(试运行)

~/.skills/clawdbot-update/backup-clawdbot-dryrun.sh

显示内容:
- 将被备份的文件
- 预估备份大小
- 工作空间检测结果
- 可用磁盘空间
- 将被跳过的文件

不会创建或修改任何文件!

2. 创建完整备份

~/.skills/clawdbot-update/backup-clawdbot-full.sh

备份内容:
- ~/.clawdbot/clawdbot.json (配置)
- ~/.clawdbot/sessions/ (会话状态)
- ~/.clawdbot/agents/ (多代理状态)
- ~/.clawdbot/credentials/ (认证令牌)
- ~/.clawdbot/cron/ (定时任务)
- ~/.clawdbot/sandboxes/ (沙盒状态)
- 所有代理工作空间(动态检测!)
- Git 提交与状态

输出目录: ~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS/

3. 更新 Clawdbot

遵循更新清单:

cat ~/.skills/clawdbot-update/UPDATE_CHECKLIST.md

关键步骤:
1. 创建备份
2. 停止网关
3. 拉取最新代码
4. 针对破坏性变更调整配置
5. 运行诊断
6. 测试功能
7. 以守护进程方式启动网关

4. 从备份恢复

~/.skills/clawdbot-update/restore-clawdbot.sh ~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS

恢复内容:
- 所有配置
- 所有状态文件
- 所有工作空间
- (可选)Git 版本

重要说明

多代理设置

此技能专为多代理设置设计,支持:
- 拥有独立工作空间的多个代理
- 沙盒配置
- 提供商路由(WhatsApp/Telegram/Discord/Slack 等)

v2026.1.8 版本的破坏性变更

关键变更:
- DM 限制:私聊(DM)现在默认为 pairing 策略,而非开放
- 群组telegram.groupswhatsapp.groups 现在变为允许列表
- 沙盒:默认作用域从隐式更改为 "agent"
- 时间戳:代理信封中的时间戳现在采用 UTC 格式

备份验证

备份后,务必验证:

BACKUP_DIR=~/.clawdbot-backups/pre-update-YYYYMMDD-HHMMSS
cat "$BACKUP_DIR/BACKUP_INFO.txt"
ls -lh "$BACKUP_DIR"

应包含:
- ✅ clawdbot.json
- ✅ credentials.tar.gz
- ✅ workspace-*.tar.gz (每个代理一个)

必需的配置更改

示例:将 WhatsApp 切换为配对策略:

jq '.whatsapp.dmPolicy = "pairing"' ~/.clawdbot/clawdbot.json | sponge ~/.clawdbot/clawdbot.json

示例:设置显式沙盒作用域:

jq '.agent.sandbox.scope = "agent"' ~/.clawdbot/clawdbot.json | sponge ~/.clawdbot/clawdbot.json

工作流程

标准更新流程

# 1. 检查更新
~/.skills/clawdbot-update/check-upstream.sh

# 2. 验证当前设置
~/.skills/clawdbot-update/validate-setup.sh

# 3. 试运行
~/.skills/clawdbot-update/backup-clawdbot-dryrun.sh

# 4. 备份
~/.skills/clawdbot-update/backup-clawdbot-full.sh

# 5. 停止网关
cd ~/code/clawdbot
pnpm clawdbot gateway stop

# 6. 更新代码
git checkout main
git pull --rebase origin main
pnpm install
pnpm build

# 7. 运行诊断
pnpm clawdbot doctor --yes

# 8. 测试
pnpm clawdbot gateway start  # 前台运行以进行测试

# 9. 部署
pnpm clawdbot gateway stop
pnpm clawdbot gateway start --daemon

回滚流程

# 快速回滚
~/.skills/clawdbot-update/restore-clawdbot.sh <备份目录>

# 手动回滚
cd ~/code/clawdbot
git checkout <旧提交>
pnpm install && pnpm build
cp <备份目录>/clawdbot.json ~/.clawdbot/
pnpm clawdbot gateway restart

更新后测试

功能测试

  • [ ] 提供商私聊功能正常(检查配对策略)
  • [ ] 群组提及响应正常
  • [ ] 输入指示器正常工作
  • [ ] 代理路由正常工作
  • [ ] 沙盒隔离正常工作
  • [ ] 工具限制已生效

新功能检查

pnpm clawdbot agents list
pnpm clawdbot logs --tail 50
pnpm clawdbot providers list --usage
pnpm clawdbot skills list

监控

# 实时日志
pnpm clawdbot logs --follow

# 或使用 Web UI
open http://localhost:3001/logs

# 检查状态
pnpm clawdbot status
pnpm clawdbot gateway status

故障排除

常见问题

网关无法启动:

pnpm clawdbot logs --grep error
pnpm clawdbot doctor

认证错误:

# OAuth 配置文件可能需要重新登录
pnpm clawdbot providers login <提供商>

沙盒问题:

# 检查沙盒配置
jq '.agent.sandbox' ~/.clawdbot/clawdbot.json

# 检查每个代理的沙盒
jq '.routing.agents[] | {name, sandbox}' ~/.clawdbot/clawdbot.json

紧急恢复

如果出现问题:

# 1. 停止网关
pnpm clawdbot gateway stop

# 2. 完全恢复
LATEST_BACKUP=$(ls -t ~/.clawdbot-backups/ | head -1)
~/.skills/clawdbot-update/restore-clawdbot.sh ~/.clawdbot-backups/$LATEST_BACKUP

# 3. 重启
pnpm clawdbot gateway start

安装

通过 ClawdHub

clawdbot skills install clawdbot-update

手动安装

git clone <仓库地址> ~/.skills/clawdbot-update
chmod +x ~/.skills/clawdbot-update/*.sh

许可证

MIT - 详见 LICENSE

作者

Pascal Schott (@pasogott)

为 Clawdbot 贡献
https://github.com/clawdbot/clawdbot

3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor