前言¶
在 DSH 中,每个会话默认是独立的。模型在对话结束后会遗忘之前的上下文,这意味着你必须重复解释你的原则、红线和工作方式。dsh-user-mirror 旨在解决这个问题。它让模型在思考过程中主动识别可复用的判断依据,跨会话复用,并按 token 预算注入回系统提示。
插件定位¶
这是一个 DSH 插件,核心作用是让模型记住用户的“怎么想”(原则、红线、工作方式、审美),而不是“说过什么”(事实、路径、账号)。
插件通过模型在 think 链中的主动判断,调用工具记录判断依据。数据存储在本地,并在下次组装系统提示时按 token 预算注入。
核心功能¶
-
从 think 链学习并记录
模型在推理过程中意识到用户表达了可复用的判断依据时,会调用工具记录下来,并附带理由。 -
跨会话复用记忆
记录的原则、红线、工作方式会在后续会话中自动注入到系统提示中,无需重复输入。 -
记忆 tab 画像展示
在记忆 tab 中以画像形式展示:一句话速写、四类分区(原则、红线、工作方式、审美)、强度字重(字重代表被印证次数)。 -
30 天遗忘机制
采用半衰期衰减策略(默认 30 天)。未被印证的记忆会随时间衰减,避免记忆无限膨胀。 -
按 token 预算注入
注入系统提示时按 token 预算控制,而非简单按条数塞入,防止上下文溢出。 -
工具调用
提供mirror_remember(text, kind, reason)和mirror_forget(text, reason)两个工具。
安装与配置¶
安装前请确认已安装 Node.js。
npx @deepseek-ai/dsh plugin --profile <你的 profile> add @dsh-plugins/dsh-user-mirror
环境要求:仅支持提供 storageDomain 和 webServer 的 web profile。headless profile 会因缺少这两个服务而失败。
安装后,在 cordis.patch.yml 中可以覆盖默认参数:
- insert:
- id: dsh-mirror
name: dsh-user-mirror
config:
maxPreferences: 20 # 记忆容量上限(条数)
halfLifeDays: 30 # 半衰期(天),越久越弱
maxTokens: 500 # 注入的 token 预算
sectionOrder: 160 # system prompt 里的位置(越小越靠前)
使用方式¶
-
记录记忆
模型会自动调用工具。你也可以在配置中让模型记录特定类型的偏好。 -
撤回记忆
如果记错了,可以通过工具或界面撤回。 -
清空数据
删除dsh_mirrordomain 即可清空本地存储的偏好数据。
已知限制与注意事项¶
- 无查询工具:v0.6 版本移除了查询工具,目前只能写不能查。如果记错,需要等待衰减或等待同主题的新说法覆盖。
- 中文同义句缺陷:已知中文同义句换词(例如“回复一律用中文”与“一律中文回复”)可能被误判为两条不同的记忆。
- 数据范围:只记录判断依据(原则/红线/工作方式/审美),不记录事实(路径、账号、服务器地址等)。
- 依赖加载:运行时依赖
ai-orb,但不会被打进 bundle,通过同源加载。
生态信息¶
- 维护者:webkubor
- 许可证:MIT
- 目录:https://www.skillhub.cn/plugins/webkubor/dsh-mirror
- GitHub:https://github.com/webkubor/dsh-mirror