Demo 03:记忆
目标
模拟 resource 和 thread,让 Agent 在同一会话中记住学习偏好。
运行:
bash
npm run demo:03这一章解决什么问题
如果 Agent 每次都忘记上下文,它就只能做一次性问答。学习助手需要记住用户目标、偏好和已完成进度。
mermaid
flowchart TD
U[用户 user-001] --> T[thread mastra-course]
T --> M[MemoryStore]
M --> A[Agent 读取和写入]关键代码
ts
memory.remember({
resource: 'user-001',
thread: 'mastra-course',
key: 'preferredStyle',
value: '先图解,再代码',
})你应该观察
Demo 会先保存偏好,再用同一个 resource/thread 查询。输出中应该出现“先图解,再代码”。
给 AI 的提示词
text
请给教学版 Agent 加一个 MemoryStore。
要求:
- 使用 resource + thread 做隔离。
- 支持 remember 和 recall。
- Demo 里先保存偏好,再提问“我喜欢什么学习方式”。
- 输出 trace,证明读取的是同一个 thread。常见错误
| 错误 | 说明 |
|---|---|
| 只用 thread 不用 resource | 多用户时会混淆 |
| 每次生成随机 thread | 永远读不到旧记忆 |
| 把所有历史都塞进 prompt | 上下文会越来越重 |