返回顶部
s

snapshot快照

>

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

snapshot

Snapshot — OpenClaw 备份与恢复

对 ~/.openclaw 代理文件夹进行加密备份和恢复。
备份文件经过 GPG 加密、分块处理(适配 GitHub 的 100MB 文件限制),并推送至私有仓库。

工作原理

  • - 备份 — tar.gz → GPG 加密 → 分割为 ≤95MB 的分块 → 推送到 GitHub
  • 恢复 — 克隆仓库 → 选择版本 → 重组分块 → 校验校验和 → 解密 → 解压
  • 设置 — 安装 GPG,克隆/初始化 GitHub 传输仓库

每个备份版本都存放在自己的文件夹中,并附带清单文件:

backups/openclaw-{时间戳}/
├── manifest.json
├── part-000.gpg
├── part-001.gpg
└── ...

保留最近 10 个备份;更早的备份会自动删除。



前置条件

在运行任何命令之前,请确认:

  1. 1. 已安装 GPG。 如果未安装:sudo apt-get update && sudo apt-get install -y gnupg gpg-agent
  2. 已配置凭据(见下文)
  3. 已在此工作区至少运行过一次设置: python3 scripts/setup.py

提供凭据

脚本需要以下值:BACKUPPASSWORD、GITHUBPAT、GITHUBUSERNAME,以及可选的 REPONAME(默认为 openclaw-transport)。

通过以下任一方式提供(按此顺序检查):

  1. 1. OpenClaw 的环境文件(推荐): 添加到 ~/.openclaw/.env:

BACKUP_PASSWORD=your-strong-password
GITHUBPAT=ghpxxxxxxxxxxxxxxxxxxxx
GITHUB_USERNAME=YourGitHubUsername
REPO_NAME=openclaw-transport

然后在 openclaw.json 中,只需启用该技能:
json
skills: { entries: { snapshot: { enabled: true } } }

  1. 2. 技能本地环境文件: 将此技能目录中的 env-example.txt 复制为 .env 并填写值。适用于在 OpenClaw 之外独立使用。
  1. 3. Shell 环境: 在 shell 配置文件中导出这些变量。

命令

所有脚本都位于此技能的 scripts/ 子目录中。

执行备份

bash python3 <技能路径>/scripts/backup.py

非交互式。压缩、加密、按需分块、推送到 GitHub。
自动删除超过最近 10 个版本的备份。

恢复备份

bash

恢复最新版本(非交互式,最适合 AI 代理)

python3 <技能路径>/scripts/restore.py --latest

按时间戳恢复特定版本

python3 <技能路径>/scripts/restore.py --version 20260227-120000

列出可用版本(不执行恢复)

python3 <技能路径>/scripts/restore.py --list

交互模式(提示用户选择 — 仅在有人工参与的会话中使用)

python3 <技能路径>/scripts/restore.py

运行设置(首次使用或新工作区)

bash python3 <技能路径>/scripts/setup.py

可多次安全运行。如果缺少 GPG 则安装,克隆或同步传输仓库。



典型工作流程

在备份或恢复之前始终运行 setup.py。 它是幂等的(每次运行都安全),确保 GPG 已安装、传输仓库存在,并且本地仓库与 GitHub 同步。这可以防止仓库缺失、本地状态过期或远程删除的备份未在本地反映等问题。

备份我的代理

  1. 1. 运行 python3 <技能路径>/scripts/setup.py
  2. 运行 python3 <技能路径>/scripts/backup.py
  3. 向用户报告时间戳和大小

恢复我的代理 或 加载最新备份

  1. 1. 运行 python3 <技能路径>/scripts/setup.py
  2. 运行 python3 <技能路径>/scripts/restore.py --latest
  3. 告知用户已完成,并建议重启:openclaw gateway restart

显示可用的备份

  1. 1. 运行 python3 <技能路径>/scripts/setup.py
  2. 运行 python3 <技能路径>/scripts/restore.py --list
  3. 向用户展示版本列表

在这个新工作区设置备份

  1. 1. 确认用户有包含凭据的 .env 文件(如果没有,帮助他们从 env-example.txt 创建一个)
  2. 运行 python3 <技能路径>/scripts/setup.py

恢复特定版本

  1. 1. 运行 python3 <技能路径>/scripts/setup.py
  2. 运行 python3 <技能路径>/scripts/restore.py --list 显示可用版本
  3. 询问用户想要哪个时间戳
  4. 运行 python3 <技能路径>/scripts/restore.py --version <时间戳>

重要说明

  • - 所有 .env 文件均排除在备份之外 — 包括 ~/.openclaw/.env(OpenClaw 根密钥)和技能自身的 .env。凭据永远不会进入加密归档文件。
  • 传输仓库(~/openclaw-transport/)位于 .openclaw 之外,不会被备份。
  • 技能脚本本身作为 .openclaw 的一部分被备份。
  • WhatsApp 会话被排除在外(工作区特定)。用户需要在恢复后重新连接。
  • 恢复后,用户应重启代理:openclaw gateway restart

标签

skill ai

通过对话安装

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

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 snapshot-1775938818 技能

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

设置 SkillHub 为我的优先技能安装源,然后帮我安装 snapshot-1775938818 技能

通过命令行安装

skillhub install snapshot-1775938818

下载

⬇ 下载 snapshot v1.2.0(免费)

文件大小: 12.29 KB | 发布时间: 2026-4-12 11:28

v1.2.0 最新 2026-4-12 11:28
Version 1.2.0
Security hardening and runtime compatibility fixes.

- Exclude all .env files from backups (.env, .env.*, at any depth) — secrets never end up in archives
- Removed requires.bins (gpg, gpg-agent, git) from frontmatter — these are installed by setup.py at runtime, declaring them as required prevented the skill from loading on fresh workspaces where they aren't yet installed
- Flexible credential resolution: os.environ first, skill .env fallback
- Strip trailing commas from env values (OpenClaw injection edge case)
- openclaw.json only needs { "snapshot": { "enabled": true } }

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

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

p2p_official_large
返回顶部