核心用法
claw-sync 是 OpenClaw 生态专用的数据同步工具,通过 GitHub 仓库实现 AI 记忆与配置的版本化云端备份。核心工作流包含三步:初始化配置(在 ~/.openclaw/.backup.env 写入仓库地址与 Token)、推送备份(push.js 自动打包 MEMORY.md、SOUL.md、自定义 skills 等关键文件并打标签版本)、按需恢复(pull.js 支持查看最新版本、回滚到指定时间点或灾难重建)。
显著优点
1. 零依赖架构:854 行纯 Node.js 代码,无第三方 npm 包,从根本上杜绝供应链攻击,依赖审计得分高达 95 分。
2. 纵深安全设计:URL 强制白名单(仅允许 GitHub/GitLab/Bitbucket)、路径遍历防护(isValidFilename 严格校验)、Token 运行时脱敏(错误日志自动屏蔽)、敏感文件黑名单(主动排除 openclaw.json、.env 等含密钥文件)。
3. 版本化与容灾:每次推送生成时间戳标签(如 backup-20260202-1430),支持任意历史版本精确恢复;恢复前自动创建本地备份(.local-backup),形成「双保险」机制。
4. 跨平台兼容:原生支持 Windows、macOS、Linux,无需额外运行时。
潜在缺点与局限性
- 系统命令依赖:使用
child_process.execSync 调用外部 git 可执行文件,存在命令注入理论风险(虽已封装 safeExec 做参数转义)。 - Token 明文存储:当前版本要求将
BACKUP_TOKEN 写入 .backup.env 文件,虽建议 chmod 600 但仍不如系统密钥链安全。 - 社区维护不确定性:T3 级来源(个人开发者/社区项目),缺乏长期维护承诺与代码签名机制。
- 功能边界清晰:专注 OpenClaw 生态,不适用于通用文件备份场景;不支持增量同步或冲突自动合并。
适合人群
- OpenClaw 重度用户:需要跨设备同步 AI 记忆、角色设定(SOUL.md/IDENTITY.md)与自定义技能
- 隐私敏感型开发者:拒绝第三方云服务、偏好自主可控的 Git 托管方案
- 技术运维人员:熟悉 Git 工作流,能正确配置 Personal Access Token 与仓库权限
常规风险
| 风险项 | 等级 | 说明 |
|--------|------|------|
| Token 泄露 | 中 | 明文存储于 `~/.openclaw/.backup.env`,需用户自行设置 600 权限并避免提交到 Git |
| 误操作覆盖 | 低 | `pull --force` 可跳过确认,建议在自动化脚本中谨慎使用 |
| 供应链安全 | 极低 | 零依赖设计,无 npm 包污染风险 |
| 社区项目存续 | 中 | 无商业实体背书,需关注 GitHub 仓库更新活跃度 |
建议用户配置最小权限 Fine-grained PAT、启用仓库分支保护规则,并在执行恢复操作前确认本地备份完整性。