Memory Manager 是一个外部持久化记忆系统,用于在自主编程会话之间维持知识,避免每次会话都从零开始。它把学到的经验、错误处理方式和项目事实保存到磁盘,供后续会话检索复用。
主要能力 系统区分四种记忆类型:
- 情景记忆(EPISODIC):记录过往事件与结果,例如“上次部署时发生了什么”,以及会话摘要。
- 程序记忆(PROCEDURAL):记录已学会的技能与模式,例如“如何设置数据库迁移”,以及可用的代码模式。
- 语义记忆(SEMANTIC):记录关于项目的事实性知识,例如“数据库使用 PostgreSQL”,以及架构决策。
- 因果记忆(CAUSAL):记录错误到解决方案的链条,例如“403 错误 → 添加 User-Agent 头”,属于自我修复模式。
使用方式 通过 Python 脚本调用 MemoryManager。基本用法是导入并实例化: from scripts.memory_manager import MemoryManager memory = MemoryManager(project_dir)
存储一条记忆: memory.store( key="auth_solution", value="Added User-Agent header to fix 403", memory_type="causal" )
存储因果链(错误→解决方案): memory.store_causal_chain( error="403 Forbidden on API call", solution="Add User-Agent header to requests" )
检索相似错误: solutions = memory.get_similar_errors("403 error calling API") 返回形如 [{"error": "403 Forbidden...", "solution": "Add User-Agent..."}] 的结果。
存储位置 记忆文件保存在项目目录下: project/ └── .claude/ └── memory/ ├── episodic.json ├── procedural.json ├── semantic.json └── causal.json
因果记忆模式 传统错误处理中,错误发生后响应不明确。使用因果记忆后,可形成链条:错误 403 Forbidden → 记忆 [403] → [缺少 User-Agent] → [添加头] → [成功],从而在响应中说明“正在添加 User-Agent 头(从之前的错误中学到)”。
集成点
- error-recoverer:使用因果记忆进行自我修复。
- context-compactor:将摘要存入情景记忆。
- coding-agent:存储程序模式。
参考资料与脚本 参考资料包括 references/MEMORY-TYPES.md(类型详细文档)和 references/RETRIEVAL-PATTERNS.md(搜索模式)。脚本包括 scripts/memory_manager.py(核心 MemoryManager)、scripts/semantic_store.py(基于关键词的存储)、scripts/causal_memory.py(错误→解决方案链)、scripts/knowledge_base.py(项目知识)。
适用场景 适合需要跨会话保持上下文的自主编程代理,用于记录错误模式、检索已学解决方案、管理因果记忆链,以及保存项目知识与代码模式。
限制 资料未提供关于收费、价格、平台支持范围、性能指标或具体效果的数据,这些信息暂未提供。