后台记忆整理(Dream)
Dream 从已完成的会话中提取有用知识,写入工作区记忆。它使用模型,在私有后台会话中运行,默认关闭。
开启 Dream
Section titled “开启 Dream”启用 Dream 插件后,打开设置 → 扩展 → Dream,开启记忆整理。同时需要可用的 memory.session 服务提供方;内置 Memory 插件提供这项服务。如果无法通过服务读取当前工作区记忆,Dream 会跳过本次运行。
| 设置 | 含义 | 默认值 |
|---|---|---|
enabled | 允许后台整理 | false |
interval_days | 两次成功运行之间的最少天数,范围 1–365 | 7 |
min_sessions | 触发所需的不同候选会话数量,范围 1–100 | 5 |
model_alias | 私有会话使用的可选模型 | 留空,继承父会话 |
设置和运行状态保存在插件自己的工作区存储中,修改后即生效,不需要编辑核心配置。
一次成功完成的对话轮次会把所在会话加入候选集合。同一会话继续成功完成轮次时,只更新时间戳,不重复增加候选数量。插件自己的后台会话(包括 Dream 自身的运行和 Memory 的任务)不会成为候选。插件在轮次完成后和定时器触发时检查候选。
自动运行需要 Dream 已开启、候选数量达标,且距离上次成功运行已达到设置的间隔。同一时间只启动一次整理;失败后还有一小时的重试退避。
Dream 先读取当前 project_memory 索引;如果可选的 memory.notebook 服务可用,还会读取用户笔记本的健康报告:索引占注入上限的比例、索引里指向不存在文件的链接、没有收进索引的主题文件,以及按读取次数排序的未验证笔记。随后,Dream 把最近的候选会话分叉为私有会话,并列出最新的至多 20 个候选会话。它不把全部原始对话塞进一次提示,而是用 history_search 和 history_read 到这些会话中查找证据。
成功后,Dream 只移除本次审阅过的会话。超出本批的较早候选,以及运行期间新完成的会话,会留到下一次运行。失败或中断的运行会保留全部候选。每次运行的最终报告显示在设置页的上次报告中。
整理提示要求模型按顺序做三件事:
- 对照原始对话和当前仓库核实已有条目,修正或删除错误、过时的内容。核实过的笔记本条目写上
verified日期和sources依据。 - 整合多次会话中反复出现的长期决策、约定、工具限制和经验,合并重复条目。
- 让两个索引保持精简:细节移到主题页,并修复报告中的健康问题。
工作区知识通过 session_memory 写入 project_memory。只有审阅的会话表明笔记本条目有误或已过时,才修改它。提示禁止修改源码,也不允许保存密钥、原始会话、临时进度、PR 编号和提交哈希。
这些是给模型的要求,不代表每条生成的记忆都正确。请检查工作区记忆,及时修正不需要的内容。删除一条记忆,并不能保证后续会话永远不会再次保存类似信息。
费用与生命周期
Section titled “费用与生命周期”每次运行都会把分叉上下文、当前工作区记忆、笔记本健康报告和查阅到的历史发送给所选模型,可能产生费用,并写入后续会话会读取的信息。只有在工作区适合这种后台处理时才开启 Dream。
禁用或卸载插件会停止定时器。重新加载时会恢复已保存的设置和状态;中断的运行会记为失败,不会永远停留在运行中。处理敏感工作前,请阅读安全模型。