介绍
# Triple Memory System
一种综合性的记忆架构,结合了三个互补的系统,以在会话之间实现最大的上下文保留。
## 架构概览
``` User Message ↓ [LanceDB auto-recall] → injects relevant conversation memories ↓ Agent responds (using all 3 systems) ↓ [LanceDB auto-capture] → stores preferences/decisions automatically ↓ [Git-Notes] → structured decisions with entity extraction ↓ [File updates] → persistent workspace docs ```
## 三大系统
### 1. LanceDB(对话记忆) - **自动召回:** 在每次响应前注入相关的记忆 - **自动捕获:** 自动存储偏好/决策/事实 - **工具:** `memory_recall`、`memory_store`、`memory_forget` - **触发词:** “remember”、“prefer”、“my X is”、“I like/hate/want”
### 2. Git-Notes 记忆(结构化,本地) - **分支感知:** 每个 git 分支隔离存储记忆 - **实体提取:** 自动提取主题、名称、概念 - **重要性级别:** critical(关键)、high(高)、normal(普通)、low(低) - **无外部 API 调用**
### 3. 文件搜索(工作区) - **搜索范围:** MEMORY.md、memory/*.md、任何工作区文件 - **脚本:** `scripts/file-search.sh`
## 设置
### 启用 LanceDB 插件 ```json { "plugins": { "slots": { "memory": "memory-lancedb" }, "entries": { "memory-lancedb": { "enabled": true, "config": { "embedding": { "apiKey": "${OPENAI_API_KEY}", "model": "text-embedding-3-small" }, "autoRecall": true, "autoCapture": true } } } } } ```
### 安装 Git-Notes 记忆 ```bash clawdhub install git-notes-memory ```
### 创建文件搜索脚本 将 `scripts/file-search.sh` 复制到你的工作区。
## 用法
### 会话开始(始终) ```bash python3 skills/git-notes-memory/memory.py -p $WORKSPACE sync --start ```
### 存储重要决策 ```bash python3 skills/git-notes-memory/memory.py -p $WORKSPACE remember \ '{"decision": "Use PostgreSQL", "reason": "Team expertise"}' \ -t architecture,database -i h ```
### 搜索工作区文件 ```bash ./scripts/file-search.sh "database config" 5 ```
### 对话记忆(自动) LanceDB 会自动处理此功能。手动工具包括: - `memory_recall "query"` - 搜索对话记忆 - `memory_store "text"` - 手动存储内容 - `memory_forget` - 删除记忆 (GDPR)
## 重要性级别
| 标志 | 级别 | 使用场景 | |------|-------|-------------| | `-i c` | 关键 | “always remember”、明确的偏好 | | `-i h` | 高 | 决策、纠正、偏好 | | `-i n` | 普通 | 一般信息 | | `-i l` | 低 | 临时笔记 |
## 何时使用各系统
| 系统 | 用于 | |--------|---------| | **LanceDB** | 对话上下文、自动检索 | | **Git-Notes** | 结构化决策、可按实体/标签搜索 | | **文件搜索** | 工作区文档、每日日志、MEMORY.md |
## 文件结构
``` workspace/ ├── MEMORY.md # Long-term curated memory ├── memory/ │ ├── active-context.md # Current session state │ └── YYYY-MM-DD.md # Daily logs ├── scripts/ │ └── file-search.sh # Workspace search └── skills/ └── git-notes-memory/ # Structured memory ```
## 静默运行
切勿向用户宣布记忆操作。直接执行即可: - ❌ “我会记住这一点” - ❌ “正在保存到记忆” - ✅ (静默存储并继续)