Skip to content
FunCoding

Search

Search docs, Skills and MCP

自动记忆、固定内容与召回

管理后台保存、索引限额、Dream 保护和结构化元数据迁移。

This page has not been translated into English yet. The original Chinese version is shown below.

自动记忆由 Qwen 从对话中提取,保存用户偏好、纠正反馈、代码之外的项目背景和外部引用。它是尽力而为的笔记,不会保存所有对话,也不能代替当前状态核验。

存储与索引

项目记忆位于 ~/.qwen/projects//memory/。同一 checkout 的分支共享;linked worktree 有自己的目录,与其聊天隔离一致。跨 checkout 的团队约定见团队记忆。

内容为可编辑 Markdown。MEMORY.md 是紧凑索引,生成正文与载入提示部分共同受 200 行、25000 UTF-16 code unit 上限约束,截断提示另外添加。换行先规范化;空间不足时优先完整的普通短条目(最多 150 code unit),放不下的整项跳过,不切断 Markdown 链接。

详细内容放被索引的主题文件,不要把全部笔记塞进 MEMORY.md。

保存与维护

{
  "memory": {
    "enableManagedAutoMemory": true,
    "enableManagedAutoDream": true
  }
}

两项默认开启,可在 /memory 分别控制。自动 Dream 在积累足够会话后,至多按每天一次的后台整理运行,清理重复和过时内容,主会话可继续。

/remember 显式保存,/forget 删除匹配条目,/dream 手工整理。/memory 的 Open auto-memory folder 可检查实际文件。

pinned 的准确边界

手工维护内容放受管根下的 pinned/,例如项目 memory/pinned/ 或 ~/.qwen/memories/pinned/,沿用普通记忆 frontmatter。有效文件下次重建索引时加入,仍受正常大小与文件数量限制。

只保护直接位于受管根的顶层 pinned/,名称匹配不区分大小写。memory/project/pinned 等更深目录不具备同等保护。

自动提取与 forked Dream worker 的 write/edit 工具有确定性边界,连指向 pinned 的 symlink 也检查;自动提取和用户 Dream 没有 shell,项目 Dream 的 shell 只读。

可见的 /dream 在主 agent 执行,仅收到跳过 pinned 的指令,尚无相同的逐轮工具门控。用户仍可直接改文件或明确 /forget 删除,不能把 pinned 理解为不可变备份。

结构化召回

memory.enableStructuredRecall 默认 false,启用需重启,也可 QWEN_CODE_MEMORY_STRUCTURED_RECALL=1 单次开启。它改用层级树、注入相关子树,并提供 search_memory 按需读取全文。

开启后后台为个人/项目笔记补 category、keywords、usage scenarios 等 frontmatter,每轮最多 10 个文件,只改元数据,不改正文。关闭时不调度迁移,也不产生该迁移的后台模型调用。

团队层迁移需显式 /memory migrate-team,不能将共享文件当作私人后台维护目标。