返回顶部
s

soul-backup-skill灵魂备份技能

Backup and restore OpenClaw workspace SOUL files with versioning, validation, and sanitized openclaw.json handling.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.2.1
安全检测
已通过
288
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

soul-backup-skill

SOUL 备份技能

备份和恢复 OpenClaw 工作区 SOUL 文件(SOUL.md、USER.md、AGENTS.md、IDENTITY.md、TOOLS.md、HEARTBEAT.md、BOOTSTRAP.md),支持版本控制、验证和回滚功能。

目的

保护关键工作区配置文件免遭意外删除、损坏或错误配置。实现快速恢复和版本历史追踪。

备份内容

工作区根目录的核心 SOUL 文件:

  • - SOUL.md — 智能体个性与使命
  • USER.md — 用户档案与偏好
  • AGENTS.md — 智能体指令与工作流
  • IDENTITY.md — 智能体身份配置
  • TOOLS.md — 本地工具配置
  • HEARTBEAT.md — 定时任务配置
  • BOOTSTRAP.md — 初始化指令

配置备份策略:

  • - openclaw.json 通过脱敏副本 openclaw.sanitized.json 包含
  • 敏感字段被遮盖(token、key、secret、password 等)
  • 恢复时还原非敏感结构;密钥可在新工作流中自动恢复,或根据需要手动重新填写

使用方法

备份当前 SOUL 文件

bash

创建带时间戳的备份


node scripts/backup.mjs

创建命名备份

node scripts/backup.mjs --name 迁移前

创建带描述的备份

node scripts/backup.mjs --desc 重大重构前

列出备份

bash

列出所有备份


node scripts/list.mjs

显示详细信息

node scripts/list.mjs --verbose

从备份恢复

bash

恢复最新备份


node scripts/restore.mjs

按时间戳恢复特定备份

node scripts/restore.mjs --timestamp 2026-03-05T00-51-30

按名称恢复特定备份

node scripts/restore.mjs --name 迁移前

试运行(预览但不执行)

node scripts/restore.mjs --dry-run

验证备份完整性

bash

验证所有备份


node scripts/validate.mjs

验证特定备份

node scripts/validate.mjs --timestamp 2026-03-05T00-51-30

备份结构

backups/
├── 2026-03-05T00-51-30/
│ ├── manifest.json # 备份元数据
│ ├── SOUL.md
│ ├── USER.md
│ ├── AGENTS.md
│ ├── IDENTITY.md
│ ├── TOOLS.md
│ ├── HEARTBEAT.md
│ └── BOOTSTRAP.md
├── 2026-03-05T01-15-42/
│ └── ...
└── named/
├── pre-migration/
│ └── ...
└── stable-v1/
└── ...

清单格式

每个备份包含一个 manifest.json:

json
{
timestamp: 2026-03-05T00:51:30.123Z,
name: 迁移前,
description: 重大重构前,
workspace: /Users/m1/.openclaw/workspace-hunter,
files: {
SOUL.md: {
size: 1234,
hash: sha256:abc123...,
exists: true
},
USER.md: {
size: 567,
hash: sha256:def456...,
exists: true
}
},
created_by: hunter,
openclaw_version: 1.0.0
}

恢复工作流

标准恢复

  1. 1. 列出可用备份:node scripts/list.mjs
  2. 预览恢复:node scripts/restore.mjs --timestamp --dry-run
  3. 执行恢复:node scripts/restore.mjs --timestamp
  4. 验证:手动检查工作区文件

紧急恢复

如果工作区损坏且脚本无法运行:

bash

从备份目录手动恢复


cd /Users/m1/.openclaw/workspace-hunter
cp -r soul-backup-skill/backups/LATEST_TIMESTAMP/* .

恢复后回滚

每次恢复都会自动创建恢复前备份:

bash

恢复创建:backups/pre-restore-2026-03-05T01-20-00/


回滚操作:


node scripts/restore.mjs --timestamp pre-restore-2026-03-05T01-20-00

自动化

Cron 计划(推荐)

添加到 OpenClaw 心跳或系统 cron:

bash

每天凌晨 2 点备份


0 2 * cd /Users/m1/.openclaw/workspace-hunter/soul-backup-skill && node scripts/backup.mjs --name daily-$(date +\%Y-\%m-\%d)

每周日凌晨 3 点备份

0 3 0 cd /Users/m1/.openclaw/workspace-hunter/soul-backup-skill && node scripts/backup.mjs --name weekly-$(date +\%Y-W\%V)

部署前钩子

bash

部署变更前


cd /Users/m1/.openclaw/workspace-hunter/soul-backup-skill
node scripts/backup.mjs --name pre-deploy-$(git rev-parse --short HEAD)

验证检查

验证脚本检查:

  • - 清单完整性(有效 JSON,必填字段)
  • 文件存在性(清单中列出的所有文件都存在)
  • 哈希验证(SHA-256 校验和匹配)
  • 工作区路径一致性
  • 时间戳格式有效性

故障场景与恢复

场景 1:意外删除 SOUL.md

bash

立即恢复


node scripts/restore.mjs --file SOUL.md

或完全恢复

node scripts/restore.mjs

场景 2:错误配置变更

bash

预览将要恢复的内容


node scripts/restore.mjs --dry-run

恢复先前版本

node scripts/restore.mjs --timestamp

场景 3:备份损坏

bash

验证所有备份


node scripts/validate.mjs

查找最后一个完好备份

node scripts/list.mjs --verbose

从最后一个完好备份恢复

node scripts/restore.mjs --timestamp

场景 4:完全丢失工作区

bash

重新创建工作区目录


mkdir -p /Users/m1/.openclaw/workspace-hunter

克隆备份技能

cd /Users/m1/.openclaw/workspace-hunter git clone soul-backup-skill

恢复最新备份

cd soul-backup-skill node scripts/restore.mjs

最佳实践

  1. 1. 重大变更前备份:重构 SOUL 文件前始终创建命名备份
  2. 定期验证:每周运行 validate.mjs 及早发现损坏
  3. 保留 30 天备份:每月清理旧备份
  4. 测试恢复流程:每季度练习恢复操作
  5. 记录自定义变更:使用 --desc 标志说明创建备份的原因
  6. 版本控制:考虑将备份目录提交到 git 以实现异地冗余

安全说明

  • - 备份包含敏感配置(TOOLS.md 中的 API 密钥,USER.md 中的用户信息)
  • 备份目录权限应与工作区相同
  • 不要将备份提交到公共仓库
  • 如果工作区包含密钥,考虑加密备份目录

依赖项

  • - Node.js 18+
  • 无外部 npm 包(使用内置 crypto、fs、path)

故障排除

备份目录未找到

  • - 在技能目录中运行 mkdir -p backups

权限被拒绝

  • - 检查工作区目录权限:ls -la ..
  • 确保备份脚本有执行权限:chmod +x scripts/*.mjs

验证时哈希不匹配

  • - 文件在备份创建后被修改
  • 备份可能已损坏 — 使用之前的备份

恢复失败:文件冲突

  • - 使用 --force 标志覆盖现有文件
  • 或在恢复前手动移动冲突文件

未来增强

  • - [ ] 压缩(gzip 备份以节省空间)
  • [ ] 远程备份同步(S3、Dropbox、rsync)
  • [ ] 差异备份(仅变更文件)
  • [ ] 备份保留策略(自动清理旧备份)
  • [ ]

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 soul-backup-skill-1776206470 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 soul-backup-skill-1776206470 技能

通过命令行安装

skillhub install soul-backup-skill-1776206470

下载

⬇ 下载 soul-backup-skill v1.2.1(免费)

文件大小: 49.18 KB | 发布时间: 2026-4-15 13:02

v1.2.1 最新 2026-4-15 13:02
Clarify in SKILL.md that config is backed up as openclaw.sanitized.json with redaction

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部