问题描述
当前 QwenPaw 的记忆系统存在「只记录不提炼,踩了坑还会再踩」的问题,使记忆系统从「知识积累」退化成了「信息堆砌」。
现状分析
- 只记录不总结:agent 会不断往 MEMORY.md 或 memory/YYYY-MM-DD.md 追加信息,但缺乏定期的信息提炼和压缩
- 无状态管理:记录的问题和解决方案没有状态标记(未解决/已解决/已过时),无法区分有效经验和需要再讨论的问题
- 无关联索引:同类问题散落在不同日期的笔记中,没有跨时间维度的聚合能力
- 缺乏智能提醒:当 agent 再次遇到类似场景时,不会自动匹配历史经验
具体表现
1. 记忆膨胀无提炼
当前 MEMORY.md 内容分布:
- 个人上下文(身份/设备/服务地址)→ 有效
- 运维配置(定时任务/备份策略/API清单)→ 有效
- 技术规范 + 经验教训 → 有效但未提炼
- 旧版本 Bug 修复记录(5月18~22日)→ 冗余,未自动归档
2. 同类问题重复出现
- 5月5日:MySQL FROM_UNIXTIME 返回字符串导致时间列不识别 → 记录了
- 5月24日:PostgreSQL date 类型未转 timestamp 导致 No data → 再次踩坑
两次问题的根因相同(时间列格式问题),但系统没有自动关联提醒。
3. 无「已解决」生命周期
- 记录格式类似
### 2026-05-22:早报三大问题修复,但没有状态标记
- 3周后,无法判断这些问题是「当前仍有效」还是「已过时」
建议方案
1. 记忆状态管理
每条经验教训支持状态标记:
### Grafana 时间列转换
- tags: [grafana, postgres, sql]
- status: fixed (2026-05-24) # open / fixed / deprecated
- 问题: date 类型未转 timestamp 导致 No data
- 解决方案: date::timestamp 转换
- 关联: 2026-05-05 (MySQL FROM_UNIXTIME)
2. 自动知识提炼
系统提供 memory_condense 工具:
memory_condense(
tag="grafana",
since_days=30,
output="核心经验.md"
)
- 自动从每日笔记中提取关联信息
- 生成「核心经验」章节,替代原始记录
- 支持按标签聚合统计
3. 智能提醒 hook
当 agent 执行某操作时,系统自动匹配历史经验并提示:
# 示例:当 agents 创建 Grafana 看板时
if memory.match_by_tags("grafana", ["time_column", "date_conversion"]):
warn("⚠️ 您曾在 2026-05-05 和 2026-05-24 因时间列问题踩坑")
4. 定期压缩机制
- 每周/每月自动运行
memory_condense
- 将 30 天前的原始记录压缩为「历史参考」
- 保留核心经验,删除冗余细节
预期效果
| 能力 |
当前 |
改进后 |
| 同类问题发现 |
靠用户指出 |
系统自动提醒 |
| 记忆信息密度 |
膨胀到 700+ 行 |
稳定在 300-400 行 |
| 经验关联 |
手工查找 |
标签自动关联 |
| 信息时效性 |
无法判断 |
状态标记清晰 |
当前 workaround
- 手动搜索
memory_search 来进行经验查找
- 依赖用户在会话中指出来复用旧经验
- agent 在 AGENTS.md 中增加自觉检查提醒,但非系统强制
问题描述
当前 QwenPaw 的记忆系统存在「只记录不提炼,踩了坑还会再踩」的问题,使记忆系统从「知识积累」退化成了「信息堆砌」。
现状分析
具体表现
1. 记忆膨胀无提炼
当前 MEMORY.md 内容分布:
2. 同类问题重复出现
两次问题的根因相同(时间列格式问题),但系统没有自动关联提醒。
3. 无「已解决」生命周期
### 2026-05-22:早报三大问题修复,但没有状态标记建议方案
1. 记忆状态管理
每条经验教训支持状态标记:
2. 自动知识提炼
系统提供
memory_condense工具:3. 智能提醒 hook
当 agent 执行某操作时,系统自动匹配历史经验并提示:
4. 定期压缩机制
memory_condense预期效果
当前 workaround
memory_search来进行经验查找