Memory Keeper 是一款专为 OpenClaw Agent 生态设计的上下文备份工具,通过简洁的 CLI 界面将关键的内存文件(如 MEMORY.md、AGENTS.md、SOUL.md 等)复制到安全的归档位置,并可选地集成 Git 版本控制,实现 Agent 记忆的安全留存与跨环境迁移。
核心用法
该工具作为 Python 脚本运行,通过 --workspace 指定工作空间,--target 指定归档目录。它会自动识别并复制 memory/*.md、DESCRIPTION.md、HEARTBEAT.md 等关键上下文文件,保持原始目录结构。对于需要版本管理的场景,支持 --commit 和 --push 参数将备份自动提交到指定的 Git 远程仓库,形成可追溯的历史记录。使用时只需运行 python3 memory_sync.py --target ~/backup --commit --push 即可完成全套备份流程。
显著优点
首先,该工具仅依赖 Python 标准库(argparse、shutil、pathlib 等),无外部 pip 依赖,从根本上避免了供应链攻击风险。其次,跨平台兼容性强,可在任何支持 Python3 的环境中运行。再者,Git 集成设计优雅,用户可自由选择本地归档或远程备份,且所有 Git 操作均通过 subprocess 安全执行,配合完善的路径验证(使用 resolve() 标准化路径),有效防止路径遍历攻击。此外,工具提供 --allow-extra 参数支持自定义 glob 模式,灵活性高,且具备完善的错误处理和友好的提示信息。
潜在缺点与局限性
作为 T3 来源的个人项目,其长期维护稳定性虽无组织级保障,但代码完全开源可审计。功能层面,工具不提供内置加密机制,若备份包含敏感信息且目标位置安全性不足,可能存在数据泄露风险。Git 集成功能需要用户自行配置 SSH 密钥或 HTTPS 凭证,对不熟悉 Git 的用户有一定门槛。此外,目前缺少 --dry-run 预览模式,用户无法在实际执行前验证文件匹配范围,且 --allow-extra 的 glob 模式若配置不当可能匹配到非预期的敏感文件。
适合的目标群体
主要面向 OpenClaw/Claude 等 Agent 框架的重度用户,特别是需要定期备份对话上下文、系统提示词或个性配置文件的高级用户。适用于系统维护前的快照创建、工作空间迁移、多设备同步等场景。对于注重数据主权、希望将 AI 交互历史本地保存的隐私敏感用户尤为适合,同时也适合需要将 Agent 配置纳入版本控制的开发团队。
使用风险
常规风险包括:1) 目标目录权限配置不当可能导致备份文件被其他用户读取;2) 使用 --allow-extra 时若 glob 模式过于宽泛(如 **/*),可能意外复制包含密钥的敏感文件;3) Git 远程推送操作若配置不当,可能将内部上下文暴露到公共仓库,需谨慎验证 remote URL;4) 长期运行产生的日志文件(memory/YYYY-MM-DD.md)会持续累积,需定期清理以避免磁盘空间占用;5) 虽然代码本身无网络上传行为,但用户配置的恶意远程仓库可能导致数据泄露。