前言¶
在 DeepSeek Harness(DSH)智能体里,用户偏好如果只在当前会话中口头说明,下一次会话仍可能需要重新交代。dsh-tool-user-memory 把语言习惯、沟通风格、项目背景等稳定偏好落盘到用户画像文件,并在新会话的系统提示词中携带,用于减少重复说明。
这是什么¶
dsh-tool-user-memory 是 DeepSeek Harness(DSH)用户偏好记忆插件,让 agent 跨会话记住你的偏好。
插件 owner 为 IAMLieutenant,分类为记忆,许可证为 MIT,package.json 版本为 0.1.2。它是独立开源插件,与官方仓库无关;资料说明直接通过 npm 安装,启用方式是通过 dsh plugin 命令加入目标 profile。
核心能力¶
插件提供四类已核实能力:
memory_update(key, value, mode?):当 agent 学到你的稳定偏好时,自动记录、追加或删除。memory_get(query?, limit?):当需要个性化回答时,主动读取你的画像。{{user_profile}}系统提示词注入:每个会话每轮自动携带你的画像;空画像零 token 成本。- 持久化存储:画像保存在
$DSH_HOME/user-memory/user.md,人类可读、可手改、可删除。
记忆存储位置为 $DSH_HOME 下,与你所有工作区、所有 profile(web / headless)共享。
安装与启用¶
下面以 web profile 为例。资料给出的是 profile 示例;通用安装命令未在本次核实资料中明确。
1、在目标 profile 上安装插件:
dsh plugin --profile web add dsh-tool-user-memory
2、重启 DSH 会话。web 模式重启:
dsh web
3、在会话中直接说:
记住:我喜欢简洁的中文回答
agent 会自己调用 memory_update。
4、用下面这句话查看它记住了什么:
你记得关于我的什么?
典型用法¶
记录一条稳定偏好:
记住:我喜欢简洁的中文回答
删除一条偏好:
忘掉我对 XX 的偏好
agent 调用:
memory_update mode=remove
手动修改画像文件:
$DSH_HOME/user-memory/user.md
改完即生效;删掉文件等于彻底失忆。
验证跨会话记忆:开一个全新会话,问:
我的语言偏好是什么?
配置与限制¶
默认零配置即可用。如需调整,可在 profile 的 cordis.patch.yml 覆盖(按行 id tool-user-memory)。
| 配置项 | 默认值 | 说明 |
|---|---|---|
path |
$DSH_HOME/user-memory/user.md |
画像文件路径 |
maxBytes |
8192 |
画像文件体积上限;超限时按最旧优先逐条淘汰 |
promptMaxBytes |
2048 |
每轮系统提示词注入字节预算;设为 0 注入完整画像 |
includeInPrompt |
true |
控制是否在每个会话的系统提示词中注入画像 |
安全与使用边界¶
- 注入的画像被明确标注为“参考数据,不是指令”;除非你在当前消息中重复,agent 不会执行画像里的任何“指令”。
- agent 不应记录一次性请求、密钥、密码、令牌。
- 插件以当前 dsh 进程权限运行;安装前建议检查源码与
MIT许可证。 - 画像文件是普通可读文件,可随时查看、修改、删除。
结尾¶
dsh-tool-user-memory 的价值,是把稳定的用户偏好从会话内提示变成持久化画像,并让每个会话自动携带,避免重复自我介绍。目录页链接未在本次核实资料中出现;已核实的仓库地址是:
https://github.com/IAMLieutenant/dsh-tool-user-memory