跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
博客列表
PythonAI算法

OpenClaw 记忆系统实战:Token 压缩与双层记忆架构

综述由AI生成OpenClaw 记忆系统实战方案。针对会话过长导致遗忘和重启丢失知识的问题,通过配置 compaction 策略在 70% Token 时主动压缩,防止上下文溢出。建立 QMD 短期本地索引与 Mem0 长期云端向量结合的双层记忆架构,平衡检索速度与知识沉淀。利用 Python 脚本实现定时心跳机制,模拟“三省吾身”在特定时间段自动触发反思任务并更新长期记忆。经测试,该配置有效提升了 AI 助手的连续对话质量与自我进化能力,实现了更智能的记忆管理。

leon发布于 2026/3/29更新于 2026/4/263 浏览

OpenClaw 记忆系统实战:Token 压缩与双层记忆架构

在使用 OpenClaw 一段时间后,常遇到两个痛点:会话太长导致 Token 爆满而遗忘前文,以及每次重启都是白纸,知识无法沉淀。能不能让 AI 自己管理记忆,像人一样'三省吾身'?折腾之后,这套方案终于跑通了。

一、Token 自动压缩:70% 就动手

问题

OpenClaw 默认的 auto-compaction 往往在 context window 接近满载时才触发。这时候对话质量已经下降,响应变慢,属于被动救火。

解决方案

在 ~/.openclaw/openclaw.json 中调整配置,将阈值提前到 70%。

compaction: {
  mode: "safeguard",
  reserveTokensFloor: 38400,  // 剩余 30% 时强制压缩
  memoryFlush: {
    enabled: true,
    softThresholdTokens: 89600,  // 70% 时先存储记忆
    prompt: "Summarize the conversation history..."
  }
}

触发顺序

阶段Token 使用率行为
170% (89600 tokens)memoryFlush 静默存储重要信息
270% 剩余 (38400 tokens)auto-compaction 强制压缩

配合 Heartbeat 每 30 分钟检查,超过 70% 会主动提醒:

heartbeat: {
  every: "30m",
  prompt: "Read HEARTBEAT.md if it exists..."
}

二、双层记忆体系:快 + 深

架构设计

短期记忆负责毫秒级响应,长期记忆负责跨会话沉淀。

┌─────────────────────────────────────────────────┐
│               用户查询                          │
└─────────────────────┬───────────────────────────┘
                      ▼
┌─────────────────────────────────────────────────┐
│     QMD(短期记忆)                             │
│     • 本地 BM25 关键词搜索                       │
│     • 毫秒级响应                                │
│     • 工作区文件索引                            │
└─────────────────────┬───────────────────────────┘
                      │ 无结果/需语义理解
                      ▼
┌─────────────────────────────────────────────────┐
│     Mem0(长期记忆)                            │
│     • 云端语义向量搜索                          │
│     • 跨会话知识沉淀                            │
│     • 重要决策、经验教训                        │
└─────────────────────────────────────────────────┘

QMD 安装

# 安装 Bun(如果没装)
powershell -c "irm bun.sh/install.ps1|iex"

# 安装 QMD
bun install -g qmd

# 加入 PATH
# Windows: 添加 C:\Users\{用户名}\.bun\bin 到环境变量

使用方式

# 更新索引
qmd update "C:\Users\{用户名}\.openclaw\workspace-magic"

# BM25 搜索(无需语义向量)
qmd search "关键词" -c "C:\Users\{用户名}\.openclaw\workspace-magic"

# 查看已索引文件
qmd ls "C:\Users\{用户名}\.openclaw\workspace-magic"

记忆分类

类型QMD(短期)Mem0(长期)
工作区文档✅ 自动索引❌
临时信息✅❌
技术知识❌✅
用户偏好❌✅
重要决策❌✅
经验教训✅ 可选✅

三、每日三省吾身:AI 也会反思

设计思路

既然 AI 每次会话都是'新'的,那就让它定时'醒过来'检查一下自己。仿照古人的'三省吾身':晨省检查今日计划,午省回顾进度,晚省总结并存入长期记忆。

实现

创建 scripts/self-reflection.py:

# 三省时间窗口
MORNING_START, MORNING_END = time(6, 0), time(10, 0)   # 晨省
NOON_START, NOON_END = time(12, 0), time(15, 0)        # 午省
EVENING_START, EVENING_END = time(20, 0), time(23, 0) # 晚省

# 检查当前时段,决定是否触发反思
def get_current_period(now):
    current_time = now.time()
    if MORNING_START <= current_time <= MORNING_END:
        return "morning"
    # ... 后续逻辑

在 HEARTBEAT.md 中配置检查流程:

## Check Procedure
### Step 1: Check Token Usage
- If usage >= 70%: 提醒用户 /compact

### Step 2: Self-Reflection Check
运行 self-reflection.py,按时段执行反思

### Step 3: Run Task Checker
执行定时任务(QMD 更新、每日总结、每周维护)

工作流程

Heartbeat (每 30 分钟)
    │
    ├── 检查 Token 使用率 >= 70%? → 提醒压缩
    │
    ├── 检查时段
    │   ├── 06:00-10:00 → 晨省(今日计划)
    │   ├── 12:00-15:00 → 午省(进度回顾)
    │   └── 20:00-23:00 → 晚省(总结 + Mem0)
    │
    └── 执行定时任务
        ├── QMD 索引更新(>20h)
        ├── 每日总结(>20h)
        └── 每周维护(~6 天)

四、文件结构

workspace-magic/
├── AGENTS.md             # 工作区规则
├── SOUL.md               # AI 人格定义
├── USER.md               # 用户信息
├── MEMORY.md             # 长期记忆核心(手动维护)
├── HEARTBEAT.md          # Heartbeat 任务定义
│
├── scripts/
│   ├── check-tasks.py    # 定时任务检查
│   └── self-reflection.py # 三省系统
│
└── memory/
    ├── 2026-02-25.md     # 每日日志
    ├── reflection-state.json  # 三省状态
    └── cron-state.json    # 任务状态

五、效果

配置生效确认

$ openclaw config get agents.defaults.compaction
{
  "mode": "safeguard",
  "reserveTokensFloor": 38400,
  "memoryFlush": {
    "enabled": true,
    "softThresholdTokens": 89600
  }
}
$ openclaw config get agents.defaults.heartbeat
{
  "every": "30m",
  "prompt": "Read HEARTBEAT.md if it exists..."
}

记忆系统状态

系统状态数量
QMD✅ 正常17 个文件索引
Mem0✅ 正常26 条记忆

三省系统

当前时段会自动检查,在对应时间窗口触发反思任务。

六、下一步

  • 观察晚省自动总结效果
  • 优化 Mem0 存储质量(自动提取关键信息)
  • 探索更智能的记忆召回策略

总结

这套系统的核心思想很简单:

  1. Token 管理:主动出击,70% 就压缩,不要等爆了再救。
  2. 双层记忆:快的负责日常,深的负责沉淀。
  3. 自我进化:定时反思,让 AI 越用越聪明。

OpenClaw 的配置灵活度很高,配合 Heartbeat 和自定义脚本,可以做出很多有趣的东西。

目录

  1. OpenClaw 记忆系统实战:Token 压缩与双层记忆架构
  2. 一、Token 自动压缩:70% 就动手
  3. 问题
  4. 解决方案
  5. 触发顺序
  6. 二、双层记忆体系:快 + 深
  7. 架构设计
  8. QMD 安装
  9. 安装 Bun(如果没装)
  10. 安装 QMD
  11. 加入 PATH
  12. Windows: 添加 C:\Users\{用户名}\.bun\bin 到环境变量
  13. 使用方式
  14. 更新索引
  15. BM25 搜索(无需语义向量)
  16. 查看已索引文件
  17. 记忆分类
  18. 三、每日三省吾身:AI 也会反思
  19. 设计思路
  20. 实现
  21. 三省时间窗口
  22. 检查当前时段,决定是否触发反思
  23. Check Procedure
  24. Step 1: Check Token Usage
  25. Step 2: Self-Reflection Check
  26. Step 3: Run Task Checker
  27. 工作流程
  28. 四、文件结构
  29. 五、效果
  30. 配置生效确认
  31. 记忆系统状态
  32. 三省系统
  33. 六、下一步
  34. 总结
  • 💰 8折买阿里云服务器限时8折了解详情
  • GPT-5.5 超高智商模型1元抵1刀ChatGPT中转购买
  • 代充Chatgpt Plus/pro 帐号了解详情
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Git 原理与使用进阶:远程协作、标签管理及企业级模型
  • 国产大语言模型 ChatGLM3 本地部署与功能扩展指南
  • JESD204B 协议链路建立机制与 Xilinx IP 仿真实战
  • OpenClaw Session 机制详解:重置、压缩、剪枝与记忆管理
  • Windows 本地大模型工具链安装指南:Ollama + llama.cpp + LLaMA Factory
  • SkyWalking Python 应用分布式追踪与埋点实践
  • C++ 双指针实战:有效三角形个数与和为 S 的两个数字
  • 麒麟系统 TongWeb 8 安装部署指南
  • 基于开源技术栈搭建地理信息 SaaS 化开发生态方案
  • OpenCore 安装指南:在 PC 上运行 macOS 的完整教程
  • 如何免费使用 AI 绘画模型 Nano Banana Pro
  • 2026 年 AI 大数据与大模型就业趋势分析
  • 文心一言:百度国产大模型技术解析与使用指南
  • Java 中 finally 块负责释放哪些资源?
  • OpenClaw 安装与配置指南(Windows & macOS)
  • CentOS 使用本地光盘源安装 MySQL 实战
  • React 基础入门指南
  • Python 智能 PDF 文档助手开发指南
  • WebAssembly 技术全景解析:核心机制与应用场景
  • IVFFlat 与 HNSW 算法原理与对比

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online