核心用法
Triple Memory 是一套复合型 Agent 记忆架构,通过三层互补系统实现最大化的上下文保持能力。第一层 LanceDB 负责对话记忆的自动召回与捕获,在每次响应前注入相关历史记忆,并自动识别"remember""prefer"等触发词存储偏好决策。第二层 Git-Notes Memory 提供分支隔离的结构化记忆,支持实体提取与四级重要性标注(critical/high/normal/low),完全本地运行无外部 API 依赖。第三层 File Search 通过 Shell 脚本搜索工作区的 MEMORY.md、memory/*.md 等文档。
使用流程上,会话启动时需执行 git-notes-memory 的 sync 命令,重要决策通过带标签和重要性标记的 remember 命令存储,日常对话记忆由 LanceDB 自动处理。系统强调"静默操作"原则,所有记忆行为在后台完成,不向用户宣告。
显著优点
1. 分层架构设计合理:三层系统各司其职,LanceDB 处理非结构化对话流、Git-Notes 管理结构化决策、文件搜索覆盖文档知识,形成完整的记忆闭环
2. 自动化程度高:LanceDB 的 auto-recall 和 auto-capture 大幅减少手动记忆操作,触发词机制符合自然对话习惯
3. Git 原生集成:分支隔离的记忆机制特别适合开发场景,不同功能分支可维护独立的决策上下文
4. 隐私友好选项:Git-Notes 完全本地运行,敏感决策可避开云端 API
5. 实体与标签体系:支持多维度检索,告别纯向量相似度的黑盒召回
潜在缺点与局限性
1. 部署复杂度高:需同时配置 LanceDB 插件、安装 Git-Notes Skill、部署 file-search 脚本,三步缺一不可
2. 外部依赖较重:LanceDB 依赖 OpenAI Embedding API,产生持续成本且受网络稳定性影响
3. 静默操作的双刃剑:虽然用户体验流畅,但用户无法感知记忆是否成功存储,关键决策可能因触发词未命中而丢失
4. 文件搜索脚本脆弱:硬编码 8 秒超时、固定临时路径、缺乏输入验证,在高并发或复杂查询场景可能失效
5. 记忆冲突未解决:三层系统独立运行,同一信息可能在不同层级重复存储或产生版本冲突
适合的目标群体
- 长期项目型 Agent 开发者:需要跨数周甚至数月保持上下文的产品管理、架构设计场景
- 多分支协作团队:Git-Notes 的分支隔离特性完美匹配 Git Flow 工作流
- 隐私敏感型企业用户:可将核心决策完全保留在本地 Git-Notes 层
- 复杂决策追踪需求:法律合规、医疗记录等需要明确审计链的场景
使用风险
1. 命令注入风险:file-search.sh 直接将用户输入拼接到 shell 命令,恶意构造的查询可能执行任意代码
2. API 密钥泄露:LanceDB 配置需明文存储 OpenAI API Key,存在配置泄露风险
3. 临时文件竞争:固定 /tmp 路径可能被本地其他进程抢占或篡改
4. Embedding 成本失控:auto-capture 机制在长时间对话中可能产生大量向量存储,费用累积难以预估
5. 记忆雪崩效应:过度积极的 auto-recall 可能在长会话中注入过多历史上下文,导致 token 消耗激增和响应质量下降