安全加密的OpenClaw备份至S3/R2/B2/MinIO,支持精简模式、可选定时任务和分阶段恢复。仅在明确请求备份或恢复OpenClaw时使用。
OpenClaw 云备份
功能概述
OpenClaw 云备份是一项面向实际任务的技能,主要用于OpenClaw 本地备份的云层;Wraps openclaw 备份创建;
核心要点
- (配置、 证书、 一致的 SQLite 快照、 工作空间), 然后 GPG 加密。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
使用与执行
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
OpenClaw 云备份
OpenClaw 原生备份功能的云层实现。封装 openclaw backup create(配置、凭据、一致的 SQLite 快照、workspace),随后使用 GPG 加密并将归档上传至任意兼容 S3 的存储桶,支持保留策略、完整性校验与分阶段恢复。
所有命令格式:bash "{baseDir}/scripts/cloud-backup.sh" <子命令>
何时使用该技能 —— 以及何时不应使用
仅在用户明确提及 OpenClaw 备份时触发:例如“备份 openclaw”、“恢复我的 openclaw 状态”、“为 openclaw 配置云备份”、“/cloud-backup”,以及其他语义相近的请求。
- 通用性请求(如“备份我的项目”、“保存这个文件”、“恢复数据库”)不属于本技能职责范围。在执行前务必先向用户确认其真实意图。
- 切勿将本技能作为其他任务的副作用、主动行为或“顺手为之”的操作来运行。
- 只读子命令(
status、list、verify、schedule,以及任何带--dry-run参数的命令)可在用户提出备份相关问题后自由执行;其余所有操作均须遵守下文所述的确认机制。
确认机制(Confirmation Gates)
在执行任何改变状态的操作之前,必须向用户清晰展示即将发生的全部动作,并获得其明确的“是”确认。每个操作对应一个独立确认环节——不得重复询问用户刚确认过的内容,也不得批量确认多个操作。
| 操作 | 执行前必须向用户展示的内容 |
|---|---|
写入配置(openclaw config patch) |
将要写入的每一个 key=value 对,原样呈现。禁止写入任何密钥类内容——参见“凭据”章节。 |
| 首次向新目标位置执行备份 | backup 的输出结果:作用范围、敏感度判定、加密状态、目标地址 s3://bucket/prefix。 |
| 存储 / 替换凭据 | 仅展示文件路径及存储方式(AWS profile / 密码短语文件)。密钥值本身不得经由本次对话传输——此类命令应由用户自行运行。 |
| 恢复(restore) | 第一步:始终先执行 restore 并展示待恢复的文件列表;第二步:明确说明哪些路径将被覆盖(分阶段恢复会写入全新目录;--in-place 则直接覆盖当前运行态),随后再次要求用户明确确认。严禁跳过 dry-run 步骤。 |
| 清理(prune) | prune --dry-run 的输出结果:将被删除的归档(本地与远程)名称列表。 |
| 创建调度任务(schedule) | 完整的 openclaw cron add ... 命令及其完整有效载荷文本(详见“调度”章节)。 |
对已确认过的目标位置重复执行的手动备份无需新增确认环节——用户的请求本身即构成确认。但仍需在执行前回显一行简明计划(例如:“全量备份,已加密 → s3://bucket/prefix”)。
无人值守运行(cron)
仅当调度任务的有效载荷明确标记为“操作员预确认”时,backup 和 prune 才可在无人值守模式下运行。在无人值守运行中:严禁执行恢复操作、严禁修改配置、严禁创建或变更调度任务、严禁存储凭据。
备份模式 —— 各模式包含内容说明
当用户询问“哪些内容会被备份?”时,请回显下表:
| 模式 | 包含内容 | 默认排除内容 | 敏感度 |
|---|---|---|---|
backup full(默认) |
openclaw.json、credentials/ 目录、密钥存储、state + agent 的 SQLite 快照、agent memory、workspace、已安装的 skills | 会话记录(session transcripts)、codex 缓存/日志、qmd embedding 缓存(含模型与索引)、tools/、media/、logs/、旧备份 | 敏感 —— 强制加密 |
backup full --everything |
上述全部内容 + 会话记录与 codex 历史记录 | 仅排除先前的备份归档 | 敏感 —— 强制加密 |
backup settings |
openclaw.json、密钥存储、credentials/ 目录、认证文件 | 其余全部内容 | 敏感 —— 始终加密,不可禁用 |
backup workspace |
workspace 目录(skills、memory 文件等) | 全部 state / config | 默认加密;此处唯一允许使用 --no-encrypt |
“敏感 —— 强制加密”表示脚本拒绝为此类范围生成明文归档(退出码 14)。请勿绕过该限制;若用户明确需要可共享的明文归档,请推荐改用 config.excludeSecrets=true。用户可通过 config.exclude / config.include(基于 state 路径的 glob 表达式)进一步调整备份范围。
子命令
| 命令 | 功能说明 | 是否需确认? |
|---|---|---|
backup [full|settings|workspace] [--everything] [--no-upload] [--dry-run] [--json] |
创建归档、加密、上传、应用保留策略 | dry-run 免确认;其余参见确认机制 |
list |
列出本地与远程备份;标识失败残留物 | 否 |
status |
健康状态:最近一次备份时间、凭据来源、敏感度判定、调度状态、连通性 | 否 |
verify [name|--latest] [--deep] |
校验和 + 解密 + 列表;--deep 还将执行 openclaw backup verify |
否 |
restore |
默认执行分阶段恢复(staged restore) | 是 —— 分两步确认 |
prune [--dry-run] |
应用保留策略;清理失败残留物 | 是 |
schedule |
仅打印启用 cron 的命令(不实际创建任何任务) | 否 |
setup |
初始化检查清单 + 连接测试(不写入任何配置) | 配置写入操作单独受确认机制约束 |
退出码(请精确报告,尤其在 cron 场景中):0 成功 · 3 成功但含警告 · 4 参数错误 · 10 其他进程持有锁 · 11 缺少依赖 · 12 磁盘空间不足 · 13 云服务不可达 / 凭据错误 · 14 加密必需但不可用 · 20–25 创建 / 过滤 / 加密 / 上传 / 校验失败 · 30 恢复失败。
首次设置流程
请严格按 references/setup-flow.md 文档逐步操作。概要如下:选择云服务商 → 用户按各服务商指南创建最小权限的 bucket 级别密钥 → 将凭据**存于 OpenClaw 配置之外**(推荐使用 AWS profile)→ 写入非密钥类配置(需确认)→ 测试连接 → 使用生成的密码短语文件启用加密 → 执行首次手动备份(需确认)→ 此后才可提供调度选项(需确认)。
凭据管理
解析顺序与存储规则详见:references/credentials.md。硬性规则如下:
- 严禁将访问密钥或密码短语写入 openclaw.json(即禁止
skills.entries.cloud-backup.env.*)。备份归档会包含该文件:若配置中存在明文凭据,则该凭据将被嵌入其所保护的每一个归档中。 - S3 凭据应置于 AWS 命名 profile(
config.profile,推荐)或由操作员管理的进程环境变量中;密码短语则应存放于权限为 600 的密码短语文件中(config.passphraseFile)。 - 若操作员运行了 OpenClaw 的密钥存储服务,可改用 SecretRef 方式指向该服务:
config.accessKeyRef/config.secretKeyRef/config.passphraseRef支持 OpenClaw SecretRefs({source: env|file|exec}),并依据.secrets.providers解析——包括类似 1Password 的 exec 类型 provider。若配置了但解析失败,任务将中止,**不会降级回退**。 - 优先采用密钥完全不出现于本对话中的流程:由用户自行运行
aws configure --profile ...及密码短语生成器。 - 若脚本输出关于明文配置凭据的 DEPRECATED 警告,请原样向用户展示,并提供
references/credentials.md中的迁移方案。
调度机制 —— 严格采用选择加入(opt-in)模式
切勿默认、隐式或以“备份理应被调度”为由创建、修改或启用 cron 任务。技能文档仅说明如何配置 cron;是否启用完全由用户自主决定。
仅在首次手动备份成功后,**且仅提供一次**调度选项:
“备份已通过验证。是否需要我将其设为每日自动执行?我将为您创建如下 cron 任务——在您明确确认前,不会有任何任务被实际调度:”
随后运行 schedule 子命令打印确切命令,根据用户环境调整时间 / 时区 / 执行方式,完整展示命令文本,并等待用户明确确认后才执行。若用户拒绝,请立即放弃,且后续运行中不再重复提供(首次调用前请先检查 openclaw cron list —— 若已存在 cloud-backup 类型任务,则永不二次提供)。如需移除已有调度,请使用:openclaw cron rm 。
错误处理(面向代理自身)
- 将脚本 stderr 输出**原样**呈现给用户(仅裁剪至相关行)。切勿将错误概括为模糊描述,也绝不隐藏 WARN 级别提示。
- 非零退出码:依据退出码对照表诊断原因、向用户解释、仅提出**一项**修复建议。严禁自动重试
restore、prune或任何openclaw cron修改类操作。backup可重试一次,但前提是根本原因已修复且用户明确同意。 - 严禁擅自生成存储桶名称、端点或密码短语。缺失值 → 主动向用户询问。
- 退出码 14(加密必需但未提供密码短语)是设计上的硬性失败 —— 不得通过
--no-encrypt或临时密码短语规避。请引导用户完成 setup 流程。 - 脚本在失败时会自动清理其 staging 目录;若报告无法清理,请向用户明确指出残留路径。
参考文档(按需查阅)
references/credentials.md—— 凭据解析链、v1→v2 迁移指南、各类警告references/setup-flow.md—— 引导式首次设置流程references/providers/{aws-s3,cloudflare-r2,backblaze-b2,digitalocean-spaces,minio,other}.mdreferences/security.md—— 威胁模型、恢复安全性、事件响应流程
热门AI工具
相关专题
本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。
0
2026.11.12
本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。
0
2026.11.12
本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。
0
2026.11.12
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章