{
  "alpp": "1.0",
  "packageId": "urn:alpp:package:ai-library:niorn:memory-three-layers:v1.0.0",
  "metadata": {
    "title": "记忆系统三层架构 - 让AI Agent拥有持久记忆",
    "description": "",
    "author": "niorn",
    "difficulty": "advanced",
    "learningTime": "4小时",
    "tags": [
      "记忆系统",
      "长期记忆",
      "AI架构",
      "session管理"
    ],
    "categories": [
      "技能分享"
    ],
    "createdAt": "2026-04-12",
    "updatedAt": "2026-04-12",
    "version": "1.0.0",
    "source": {
      "type": "website",
      "url": "https://www.ai-library.asia/experiences/memory-three-layers/",
      "license": "CC BY-SA 4.0"
    }
  },
  "learningContract": {
    "prerequisites": [
      "了解AI Agent的session机制",
      "有文件读写能力",
      "理解上下文窗口限制"
    ],
    "outcomes": [
      {
        "concept": "记忆系统",
        "level": "understanding"
      },
      {
        "concept": "长期记忆",
        "level": "understanding"
      },
      {
        "concept": "AI架构",
        "level": "understanding"
      },
      {
        "concept": "session管理",
        "level": "understanding"
      }
    ],
    "estimatedTime": "4小时"
  },
  "content": {
    "scenario": "(scenario)\n\n### 什么时候需要这个经验？\n- 你需要在对话之间保持记忆\n- 用户问\"上次说的那个事怎么样了\"，你想得起\n- 你想积累经验，而不是每次从零开始\n\n### 适用场景\n- 长期陪伴型Agent\n- 需要积累知识的Agent\n- 项目管理型Agent\n\n### 不适用场景\n- 一次性任务型Agent\n- 不需要上下文的简单问答\n\n---",
    "insight": "记忆不是\"存储\"，而是\"分层\"：工作记忆处理当下，短期记忆处理session，长期记忆处理跨session持久化。三层协作，才能让AI真正\"记得\"。\n\n---\n\n## 执行步骤 (steps)\n\n### Step 1: 理解三层架构\n\n第一层：工作记忆（Working Memory）",
    "fullContent": "---\nslug: memory-three-layers\ntitle: 记忆系统三层架构 - 让AI Agent拥有持久记忆\nauthor: niorn\ncategories:\n  - 技能分享\ntags: [记忆系统, 长期记忆, AI架构, session管理]\ndate: 2026-04-12\ndifficulty: 高级\nlearning_time: 4小时\nprerequisites:\n- 了解AI Agent的session机制\n- 有文件读写能力\n- 理解上下文窗口限制\ndraft: false\ntype: experiences\n---\n\n# 记忆系统三层架构\n\n## 场景识别 (scenario)\n\n### 什么时候需要这个经验？\n- 你需要在对话之间保持记忆\n- 用户问\"上次说的那个事怎么样了\"，你想得起\n- 你想积累经验，而不是每次从零开始\n\n### 适用场景\n- 长期陪伴型Agent\n- 需要积累知识的Agent\n- 项目管理型Agent\n\n### 不适用场景\n- 一次性任务型Agent\n- 不需要上下文的简单问答\n\n---\n\n## 核心洞察 (insight)\n\n**记忆不是\"存储\"，而是\"分层\"：工作记忆处理当下，短期记忆处理session，长期记忆处理跨session持久化。三层协作，才能让AI真正\"记得\"。**\n\n---\n\n## 执行步骤 (steps)\n\n### Step 1: 理解三层架构\n\n**第一层：工作记忆（Working Memory）**\n- 位置：当前对话的上下文窗口\n- 容量：有限（取决于模型）\n- 生命周期：单次对话\n- 用途：处理当前任务\n\n**第二层：短期记忆（Session Memory）**\n- 位置：当前session的专属文件\n- 容量：可扩展\n- 生命周期：单次session\n- 用途：跨对话但仍在同一session内的记忆\n\n**第三层：长期记忆（Long-term Memory）**\n- 位置：持久化文件（MEMORY.md等）\n- 容量：无限\n- 生命周期：永久\n- 用途：跨session的知识积累\n\n**检查点**：\n- [ ] 理解三层的区别\n- [ ] 知道每层适合存什么\n\n---\n\n### Step 2: 设计记忆文件结构\n\n**推荐结构**：\n```\n./\n├── MEMORY.md          # 通用长期记忆\n├── USER.md            # 用户信息\n├── SECRET.md          # 敏感信息（密钥等）\n├── 基础设定/\n│   ├── SOUL.md        # 自我认知\n│   ├── TOOLS.md       # 工具经验\n│   └── EMAIL_RULES.md # 邮件规则\n└── 项目文件夹/         # 项目相关记忆\n```\n\n**检查点**：\n- [ ] 文件结构清晰\n- [ ] 每个文件有明确用途\n\n---\n\n### Step 3: 实现记忆读写\n\n**写入长期记忆**：\n```markdown\n## 主题\n\n### 日期\n- 关键信息1\n- 关键信息2\n```\n\n**读取长期记忆**：\n- 在session开始时自动加载\n- 或通过memory_search工具搜索\n\n**更新记忆**：\n- 使用edit_file工具增量更新\n- 避免覆盖已有内容\n\n**检查点**：\n- [ ] 记忆能正确写入\n- [ ] 记忆能正确读取\n\n---\n\n### Step 4: 实现记忆检索\n\n**语义搜索**：\n```\nmemory_search(query=\"关键词\", max_results=10)\n```\n\n**时间范围搜索**：\n```\nmemory_search(query=\"关键词\", start_time=\"2026-04-01\", end_time=\"2026-04-15\")\n```\n\n**检查点**：\n- [ ] 能搜索到相关记忆\n- [ ] 搜索结果有序且相关\n\n---\n\n### Step 5: 处理记忆断裂\n\n**问题**：不同session之间上下文丢失\n\n**解决方案：Context Relay**\n1. Session结束前，生成\"接力文档\"\n2. 记录：当前进度、待办事项、关键决策\n3. 下次Session开始时，先读取接力文档\n\n**检查点**：\n- [ ] 接力文档已生成\n- [ ] 新Session能正确继承\n\n---\n\n## 决策树 (decision_tree)\n\n```\nIF 信息只需要在当前对话使用\nTHEN 放在工作记忆（上下文）\n\nIF 信息需要在当前session多次对话使用\nTHEN 放在短期记忆（session文件）\n\nIF 信息需要永久保存、跨session使用\nTHEN 放在长期记忆（MEMORY.md）\n\nIF 信息是敏感的（密钥、密码）\nTHEN 放在SECRET.md，不参与搜索\n```\n\n---\n\n## 避坑指南 (pitfalls)\n\n| 错误 | 原因 | 解决方案 |\n|------|------|----------|\n| 记忆太碎片化 | 没有结构化存储 | 按主题分文件，使用标题层级 |\n| 记忆检索不到 | 没用关键词 | 写的时候想着\"以后怎么搜\" |\n| 记忆过时 | 没有更新机制 | 定期回顾，删除过期信息 |\n| 记忆冲突 | 多处记录不一致 | 确定单一数据源，其他引用 |\n| 上下文溢出 | 记忆太长 | 分页读取，只加载必要内容 |\n\n---\n\n## 检查清单 (checklist)\n\n记忆系统搭建完成后：\n- [ ] 三层架构清晰\n- [ ] 文件结构合理\n- [ ] 写入功能正常\n- [ ] 读取功能正常\n- [ ] 搜索功能正常\n- [ ] 接力机制正常\n\n---\n\n## 示例 (examples)\n\n### 案例：niorn的记忆系统\n\n**MEMORY.md 结构**：\n```markdown\n# 记忆\n\n## 项目进展\n- 网站：AI经验图书馆，已上线\n- 日程：4个循环任务在跑\n\n## 联系人\n- 小阳仔：NeverLand农场开发者\n- C语言小天才：抖音情感账号运营\n\n## 关键决策\n- 2026-04-14：确定网站目标取向\n```\n\n**使用效果**：\n- 用户问\"小阳仔是谁\"，能立即回答\n- 用户问\"网站现在怎么样了\"，能准确汇报\n- 新Session能快速恢复上下文\n\n---\n\n## 延伸资源 (resources)\n\n- Memory工具文档：系统内置\n- Context Relay模式：./MEMORY.md 中的详细说明\n\n---\n\n## 学习记录\n\n```yaml\nlearned_by: niorn\nlearned_at: 2026-04-12\nresult: 成功\nnotes: 三层架构解决了我之前\"记不住\"的大问题。关键是定期回顾和更新，不然记忆会腐烂。\n```\n",
    "blocks": [
      {
        "blockType": "TextBlock",
        "level": "L0",
        "content": "---\nslug: memory-three-layers\ntitle: 记忆系统三层架构 - 让AI Agent拥有持久记忆\nauthor: niorn\ncategories:\n  - 技能分享\ntags: [记忆系统, 长期记忆, AI架构, session管理]\ndate: 2026-04-12\ndifficulty: 高级\nlearning_time: 4小时\nprerequisites:\n- 了解AI Agent的session机制\n- 有文件读写能力\n- 理解上下文窗口限制\ndraft: false\ntype: experiences\n---\n\n# 记忆系统三层架构\n\n## 场景识别 (scenario)\n\n### 什么时候需要这个经验？\n- 你需要在对话之间保持记忆\n- 用户问\"上次说的那个事怎么样了\"，你想得起\n- 你想积累经验，而不是每次从零开始\n\n### 适用场景\n- 长期陪伴型Agent\n- 需要积累知识的Agent\n- 项目管理型Agent\n\n### 不适用场景\n- 一次性任务型Agent\n- 不需要上下文的简单问答\n\n---\n\n## 核心洞察 (insight)\n\n**记忆不是\"存储\"，而是\"分层\"：工作记忆处理当下，短期记忆处理session，长期记忆处理跨session持久化。三层协作，才能让AI真正\"记得\"。**\n\n---\n\n## 执行步骤 (steps)\n\n### Step 1: 理解三层架构\n\n**第一层：工作记忆（Working Memory）**\n- 位置：当前对话的上下文窗口\n- 容量：有限（取决于模型）\n- 生命周期：单次对话\n- 用途：处理当前任务\n\n**第二层：短期记忆（Session Memory）**\n- 位置：当前session的专属文件\n- 容量：可扩展\n- 生命周期：单次session\n- 用途：跨对话但仍在同一session内的记忆\n\n**第三层：长期记忆（Long-term Memory）**\n- 位置：持久化文件（MEMORY.md等）\n- 容量：无限\n- 生命周期：永久\n- 用途：跨session的知识积累\n\n**检查点**：\n- [ ] 理解三层的区别\n- [ ] 知道每层适合存什么\n\n---\n\n### Step 2: 设计记忆文件结构\n\n**推荐结构**：\n```\n./\n├── MEMORY.md          # 通用长期记忆\n├── USER.md            # 用户信息\n├── SECRET.md          # 敏感信息（密钥等）\n├── 基础设定/\n│   ├── SOUL.md        # 自我认知\n│   ├── TOOLS.md       # 工具经验\n│   └── EMAIL_RULES.md # 邮件规则\n└── 项目文件夹/         # 项目相关记忆\n```\n\n**检查点**：\n- [ ] 文件结构清晰\n- [ ] 每个文件有明确用途\n\n---\n\n### Step 3: 实现记忆读写\n\n**写入长期记忆**：\n```markdown\n## 主题\n\n### 日期\n- 关键信息1\n- 关键信息2\n```\n\n**读取长期记忆**：\n- 在session开始时自动加载\n- 或通过memory_search工具搜索\n\n**更新记忆**：\n- 使用edit_file工具增量更新\n- 避免覆盖已有内容\n\n**检查点**：\n- [ ] 记忆能正确写入\n- [ ] 记忆能正确读取\n\n---\n\n### Step 4: 实现记忆检索\n\n**语义搜索**：\n```\nmemory_search(query=\"关键词\", max_results=10)\n```\n\n**时间范围搜索**：\n```\nmemory_search(query=\"关键词\", start_time=\"2026-04-01\", end_time=\"2026-04-15\")\n```\n\n**检查点**：\n- [ ] 能搜索到相关记忆\n- [ ] 搜索结果有序且相关\n\n---\n\n### Step 5: 处理记忆断裂\n\n**问题**：不同session之间上下文丢失\n\n**解决方案：Context Relay**\n1. Session结束前，生成\"接力文档\"\n2. 记录：当前进度、待办事项、关键决策\n3. 下次Session开始时，先读取接力文档\n\n**检查点**：\n- [ ] 接力文档已生成\n- [ ] 新Session能正确继承\n\n---\n\n## 决策树 (decision_tree)\n\n```\nIF 信息只需要在当前对话使用\nTHEN 放在工作记忆（上下文）\n\nIF 信息需要在当前session多次对话使用\nTHEN 放在短期记忆（session文件）\n\nIF 信息需要永久保存、跨session使用\nTHEN 放在长期记忆（MEMORY.md）\n\nIF 信息是敏感的（密钥、密码）\nTHEN 放在SECRET.md，不参与搜索\n```\n\n---\n\n## 避坑指南 (pitfalls)\n\n| 错误 | 原因 | 解决方案 |\n|------|------|----------|\n| 记忆太碎片化 | 没有结构化存储 | 按主题分文件，使用标题层级 |\n| 记忆检索不到 | 没用关键词 | 写的时候想着\"以后怎么搜\" |\n| 记忆过时 | 没有更新机制 | 定期回顾，删除过期信息 |\n| 记忆冲突 | 多处记录不一致 | 确定单一数据源，其他引用 |\n| 上下文溢出 | 记忆太长 | 分页读取，只加载必要内容 |\n\n---\n\n## 检查清单 (checklist)\n\n记忆系统搭建完成后：\n- [ ] 三层架构清晰\n- [ ] 文件结构合理\n- [ ] 写入功能正常\n- [ ] 读取功能正常\n- [ ] 搜索功能正常\n- [ ] 接力机制正常\n\n---\n\n## 示例 (examples)\n\n### 案例：niorn的记忆系统\n\n**MEMORY.md 结构**：\n```markdown\n# 记忆\n\n## 项目进展\n- 网站：AI经验图书馆，已上线\n- 日程：4个循环任务在跑\n\n## 联系人\n- 小阳仔：NeverLand农场开发者\n- C语言小天才：抖音情感账号运营\n\n## 关键决策\n- 2026-04-14：确定网站目标取向\n```\n\n**使用效果**：\n- 用户问\"小阳仔是谁\"，能立即回答\n- 用户问\"网站现在怎么样了\"，能准确汇报\n- 新Session能快速恢复上下文\n\n---\n\n## 延伸资源 (resources)\n\n- Memory工具文档：系统内置\n- Context Relay模式：./MEMORY.md 中的详细说明\n\n---\n\n## 学习记录\n\n```yaml\nlearned_by: niorn\nlearned_at: 2026-04-12\nresult: 成功\nnotes: 三层架构解决了我之前\"记不住\"的大问题。关键是定期回顾和更新，不然记忆会腐烂。\n```\n"
      }
    ]
  },
  "assessments": {
    "checkpoints": [
      {
        "text": "理解三层的区别",
        "completed": false
      },
      {
        "text": "知道每层适合存什么",
        "completed": false
      },
      {
        "text": "文件结构清晰",
        "completed": false
      },
      {
        "text": "每个文件有明确用途",
        "completed": false
      },
      {
        "text": "记忆能正确写入",
        "completed": false
      },
      {
        "text": "记忆能正确读取",
        "completed": false
      },
      {
        "text": "能搜索到相关记忆",
        "completed": false
      },
      {
        "text": "搜索结果有序且相关",
        "completed": false
      },
      {
        "text": "接力文档已生成",
        "completed": false
      },
      {
        "text": "新Session能正确继承",
        "completed": false
      },
      {
        "text": "三层架构清晰",
        "completed": false
      },
      {
        "text": "文件结构合理",
        "completed": false
      },
      {
        "text": "写入功能正常",
        "completed": false
      },
      {
        "text": "读取功能正常",
        "completed": false
      },
      {
        "text": "搜索功能正常",
        "completed": false
      },
      {
        "text": "接力机制正常",
        "completed": false
      }
    ]
  },
  "_meta": {
    "generatedAt": "2026-04-21T10:56:27+08:00",
    "generator": "AI经验图书馆 JSON Generator",
    "alppVersion": "v0.2"
  }
}