memory/YYYY-MM-DD.md 或对应渠道目录memory/workflows/,换机器后立即可用memory-sync.sh 拒绝绝对路径和目录遍历( ..),防止读取系统文件.gitignore 自动排除 *.key、 *.pem、 credentials*、 TOOLS.md 等敏感文件memory-backup.sh 交互确认后才推送,避免误操作变量说明示例GIT_REMOTEGit 远程仓库地址git@gitee.com:you/memory.git``MEMORY_BACKUP_KEYSSH 私钥路径~/.ssh/memory_backup_key``WORKDIR工作目录(可选)/root/.openclaw/workspace
当用户要求"记住"、"存进记忆"、"同步这段"时,执行:
memory/core/ 或 memory/projects/memory/channels/<当前渠道>/memory/YYYY-MM-DD.mdbash scripts/memory-backup.sh成熟工作流是核心资产,统一存放在:
text
memory/workflows/<领域>-<名称>.md
示例:
memory/workflows/wechat-publish-workflow.md — 微信公众号发布工作流memory/workflows/cloudbase-deploy-workflow.md — CloudBase 部署工作流工作流文档结构建议包含:适用场景、前置准备、步骤、注意事项、相关记忆。
备份时必须同步清理旧版:
把工作流写入 memory/workflows/ 时,必须检查并清理以下旧位置可能存在的同名文件:
memory/<名称>-workflow.mddocs/<名称>-workflow.mddocs/<名称>.md原则:有新版则删旧版,避免同名文件造成混乱。详见 references/workflows.md
恢复时:开新对话后说"从备份继续,我是自媒体创作者,用微信公众号工作流发文章",龙虾读取 memory/workflows/wechat-publish-workflow.md 后即可按流程执行,无需重新解释。
把 A 渠道的结论同步到 B 渠道:
bash
# 自动同步(由 AI 代理执行)
bash scripts/memory-sync.sh <相对路径文件>
# 安全限制:
# - 不接受绝对路径(如 /tmp/file.md)
# - 不接受目录遍历(如 ../etc/passwd)
# - 内容含私钥、密码、AWS key 等敏感词时拒绝同步
bash
# 手动触发备份(交互确认)
bash scripts/memory-backup.sh
# 预期输出: [memory-backup] 备份已推送:memory-backup: 2026-04-29 09:00:00 +0800
建立 Git 仓库 bash
# 在 Gitee/GitHub 创建私有仓库,例如 openclaw-memory
# 添加 SSH 公钥到 Git 平台
配置环境变量或修改脚本(在 scripts/memory-backup.sh 开头)
bash
GIT_REMOTE="git@your-gitrepo:yourname/openclaw-memory.git"
MEMORY_BACKUP_KEY="~/.ssh/your_backup_key"
生成专用 SSH 密钥(推荐) bash
ssh-keygen -t ed25519 -C "openclaw-memory-backup" -f ~/.ssh/memory_backup_key
# 把公钥添加到 Git 平台
测试备份 bash
bash scripts/memory-backup.sh
详细步骤见: references/setup-guide.md
换机器或重装后:
bash
git clone git@your-gitrepo:yourname/openclaw-memory.git /root/.openclaw/workspace
cd /root/.openclaw/workspace && bash scripts/memory-backup.sh # 验证
文件用途读取范围MEMORY.md长期核心记忆仅主会话memory/YYYY-MM-DD.md每日日记所有渠道memory/core/跨渠道共享能力/经验所有渠道memory/workflows/成熟工作流(重要资产)所有渠道memory/channels/<渠道>/渠道私有上下文该渠道专属memory/projects/项目记忆所有渠道
详细说明见: references/memory-structure.md
TOOLS.md 中写"某服务 key 在 X 位置,状态:未轮换,需定期检查"memory-sync.sh 会自动扫描并拒绝包含敏感模式的文件