🧠 记忆系统
YingClaw 的持久记忆系统让 AI 在跨会话之间保持连续性——越用越懂你的偏好、习惯和工作上下文。
四种记忆类型
| 类型 | 有效期 | 用途 | 注入方式 |
|---|---|---|---|
core | 永久 | 核心事实、项目决策、编码约定 | 每会话自动注入 |
user | 永久 | 用户偏好、个人信息、沟通风格 | 每会话自动注入 |
daily | 7 天 | 会话笔记、阶段性成果 | 按需查询 |
conversation | 自动管理 | 对话系统自动保存 | 系统管理 |
core — 永久核心记忆
用于存储不常变化的关键信息:
- 项目技术栈和架构决策
- 团队编码规范和约定
- 环境配置要点
- 工作流和流程约定
每条 core 记忆建议 100 字符以内,保持简洁。
user — 永久用户记忆
记录用户个人偏好:
- 编程语言偏好("用户偏好 Rust 而非 Go")
- 沟通风格("用户喜欢简洁回复,不要冗长解释")
- 常用工具和工作习惯
daily — 短期会话记忆
适合阶段性信息:
- 当天的任务进展
- 临时调试记录
- 短期项目状态
daily 记忆 7 天后自动过期,无需手动清理。
conversation — 系统自动管理
由系统自动保存的对话历史,请勿手动操作此类型。
核心工具
memory_store — 保存记忆
memory_store key="user_language" content="用户偏好 Rust 和 TypeScript" category="user"
| 参数 | 类型 | 说明 |
|---|---|---|
key | string | 唯一标识符,建议语义化命名 |
content | string | 记忆内容,简洁明了 |
category | string | 类型:core / user / daily |
memory_recall — 查询记忆
memory_recall query="编程语言偏好" limit=5
按关键词搜索已保存的记忆,返回按相关度排序的结果。
memory_forget — 删除记忆
memory_forget key="outdated_setting"
删除指定 key 的记忆,适用于信息过时或需要纠正的场景。
记忆原则
| 原则 | 说明 |
|---|---|
| 一条一事实 | 每条记忆只存一个事实,不要混合多个信息 |
| 100 字符内 | 保持简洁,便于注入和检索 |
| 用户优先 | 用户偏好和纠正信息优先级最高 |
| 不存临时 | 临时任务进度、会话状态不存入记忆 |
| 及时更新 | 信息过时立即用 memory_forget + memory_store 更新 |
使用示例
记住用户偏好
> "我更喜欢用 TypeScript 而不是 JavaScript"
→ memory_store key="lang_pref" content="用户偏好 TypeScript 而非 JavaScript" category="user"
保存项目环境信息
> "这个项目使用 Rust 2024 edition,最低 MSRV 是 1.75"
→ memory_store key="rust_project_config" content="Rust 2024 edition, MSRV 1.75" category="core"
纠正后更新
> "不对,我之前说的 API 地址是旧的了,现在用 v2"
→ memory_forget key="api_base_url"
→ memory_store key="api_base_url" content="API 地址已更新为 v2 端点" category="core"
注意事项
- 不要在群聊环境中加载私人记忆
- 凭据、密钥等敏感信息不应存入记忆
- 定期检查
core和user记忆,清理过时条目
下一步
记忆让 YingClaw 更懂你,接下来学习 🛠️ 技能系统 扩展能力边界。