多Agent记忆传承流——让AI每次对话都"记得你是谁"
每次换一个新对话,AI就像失忆了一样——要你重新解释自己是谁、在做什么项目、有什么背景偏好。这个痛点,折磨过几乎每一个深度使用AI的人。
>
本文介绍一套用 OpenClaw + 多Agent架构实现的"记忆传承流",让AI的上下文在不同对话、不同Session、甚至跨天之间持续积累,真正实现"一次说明,持续生效"。
场景演示
痛点场景
| 传统方式 | 记忆传承后 |
|---|---|
| 新对话要重新说"我是一个SaaS产品经理,负责XX系统" | 打开新对话,AI直接称呼你"产品经理大冲",知道你负责什么 |
| 换天后AI忘了上周讨论的项目背景 | 跨天对话自动继承完整上下文,包括项目阶段、决策历史 |
| 另一个Agent接手,完全不知道前面发生了什么 | Agent间通过共享记忆节点无缝切换 |
| 每次都要粘贴一堆背景材料 | AI主动从记忆中枢拉取相关背景,不需要你重复 |
实际效果截图(文字描述)
Session A(第1天):大冲告诉AI自己在做一个B2B电商平台,目标用户是中小制造业。
>
Session B(第2天):大冲打开新对话,说"继续上次说的项目",AI直接回复:"好的,继续你B2B电商平台的项目,目前进展到需求文档阶段,上次讨论了XX功能优先级…"
>
Session C(另一个Agent接手):陈小群(投资Agent)接手评估,直接调用共享记忆,读到:大冲在做的项目背景、目标用户、当前阶段,不需要大冲重复解释。
Step by Step:搭建记忆传承流
整体架构
┌─────────────────────────────────────────────────────────────┐
│ 用户对话(Session) │
│ ↓ │
│ ┌──────────┐ 写入 ┌────────────────┐ │
│ │ 当前Agent │ ────────→ │ 共享记忆中枢 │ │
│ └──────────┘ │ (飞书Bitable) │ │
│ ↑ └────────┬────────┘ │
│ │读取 │ 读取 │
│ ┌──────────┐ ┌─────────▼────────┐ │
│ │ 下一个 │ ←───────── │ 记忆加载Agent │ │
│ │ 新Session│ │ (Session启动时) │ │
│ └──────────┘ └─────────────────┘ │
└─────────────────────────────────────────────────────────────┘
Step 1:建立共享记忆表(飞书Bitable)
在飞书多维表格中创建一张「用户上下文记忆表」:
| 字段 | 类型 | 说明 |
|---|---|---|
| 记忆ID | 自动编号 | 唯一标识 |
| 用户名 | 单行文本 | 如"大冲" |
| 记忆分类 | 单选 | 身份背景/项目上下文/偏好设置/决策历史 |
| 记忆内容 | 多行文本 | 具体记忆内容 |
| 重要性 | 单选 | 高/中/低 |
| 创建时间 | 自动 | 时间戳 |
| 最后引用 | 自动 | 最近被引用时间 |
Step 2:创建Session启动Agent(记忆加载Agent)
每当开启新对话时,先调用记忆加载Agent,从Bitable中拉取与当前用户相关的最新记忆:
核心提示词:
你是一个记忆加载Agent。当用户开始新对话时,你的职责是:
1. 从飞书Bitable读取用户"身份背景"和"项目上下文"类别的最新记录
2. 整理成简洁的"记忆摘要"(不超过500字)
3. 以第一人称视角输出:"根据记录,你是一位...,目前在做一个...项目..."
4. 如果没有找到任何记忆,输出:"暂无历史记忆,请告诉我你是谁"
输出格式:
【历史记忆摘要】
[记忆内容]
【推荐开场白】
[一句自然的引导语,让用户确认或补充]
Step 3:在每次对话结束时自动沉淀记忆
通过OpenClaw的任务流规则,在对话结束/总结节点触发记忆写入:
自动沉淀触发条件:
- 用户明确说"总结一下"或"记下来"
- 对话涉及新的项目背景、决策、偏好变更
- Agent判断对话内容具有长期参考价值
记忆写入提示词:
你是一个记忆沉淀Agent。请根据本次对话内容,判断是否有值得写入长期记忆的信息:
判断维度:
1. 用户身份/角色信息(新增或变更)
2. 项目背景/目标/进展
3. 用户的特定偏好或要求
4. 重要决策或结论
如果存在值得记忆的内容,请:
1. 生成"记忆片段"(每条不超过100字)
2. 标注记忆分类(身份背景/项目上下文/偏好设置/决策历史)
3. 评估重要性(高/中/低)
4. 调用飞书Bitable API写入记录
如果没有值得沉淀的信息,输出:"本次对话无新增记忆。"
Step 4:多Agent共享记忆(跨Agent协作)
当不同Agent需要接力工作时,通过共享记忆中枢实现无缝切换:
记忆读取权限:
- 所有Agent可以读取所有用户的记忆表
- 写入权限:仅当次对话的Agent写入自己创建的记忆节点
Agent接力示例:
场景:大冲让文心(秘书Agent)整理了项目需求文档,然后需要陈小群(投资Agent)评估
Step 1: 文心完成需求文档后,将关键决策写入记忆表
Step 2: 大冲告诉陈小群:"接上文文心的项目,评估一下投资价值"
Step 3: 陈小群自动从记忆表读取:项目背景→需求文档→文心记录的关键决策
Step 4: 陈小群基于完整上下文输出评估,不需要大冲重复解释
Step 5:记忆衰减与优先级管理
为了避免记忆表无限膨胀,建立定期清理机制:
自动规则:
- 低重要性记忆:30天后自动归档(可恢复)
- 中重要性记忆:90天后标记为"待复核"
- 高重要性记忆:永久保留,定期更新
可复制提示词
提示词A:新对话开场(记忆加载)
【系统提示】在回复用户之前,先读取飞书Bitable中的用户记忆表,
找出当前用户的最新"身份背景"和"项目上下文"记录,
然后在回复开头引用这些记忆,表明你了解用户背景。
如果找不到任何记忆,则正常开场:"你好!我是你的AI助手,请告诉我一些关于你的背景信息。"
提示词B:自动记忆沉淀
【系统提示】每次对话结束时,如果对话涉及以下任一内容,
请自动生成一条记忆片段并写入飞书Bitable:
1. 用户透露了新的身份/角色/背景
2. 用户提出了新的项目或任务
3. 用户表达了明确的偏好或要求
4. 对话产生了明确的结论或决策
写入格式:记忆ID留空(系统自动编号),用户名固定为当前用户名,
记忆分类根据内容选择,记忆内容不超过100字。
提示词C:记忆检索与引用
当用户提到"继续上次""之前说""那个项目"等回溯性表述时,
立即从飞书Bitable检索用户的所有相关记忆,
按时间倒序展示,并询问用户:"你是指这个记忆吗?"确认后继续执行。
使用的Skills
| Skill | 用途 |
|---|---|
feishu-bitable | 读写共享记忆表 |
feishu-wiki | 记忆文档的备份与归档 |
halo-backend-publisher | 发布记忆使用指南到博客 |
tavily-search / multi-search-engine | 检索记忆优化最佳实践 |
价值与注意事项
核心价值
| 维度 | 提升 |
|---|---|
| 上下文初始化效率 | 从"每次重复300字背景"→"3秒自动加载" |
| 跨Session连续性 | 从"每次都是新AI"→"AI记得你是谁" |
| 多Agent协作效率 | 从"交接需要用户重复解释"→"Agent间自动继承" |
| 知识积累深度 | 从"对话结束即消失"→"有价值内容永久沉淀" |
注意事项
- 隐私边界:敏感信息(如密码、具体财务数字)不得写入共享记忆表,设置关键词过滤规则
- 记忆优先级:不是所有对话都需要沉淀,仅记录高价值、可复用的上下文
- 定期整理:建议每月一次记忆复核,清理过时内容,保持记忆表健康度
- 用户确认:首次写入新类型的记忆时,主动告知用户:"已为你记录XXX到记忆表,是否需要调整?"
系列说明:本文是「OpenClaw 有价值应用」系列第67篇。该系列持续更新中,欢迎关注。