前言¶
DeepSeek Harness(DSH)本身只会自动加载 AGENTS.md/CLAUDE.md,没有任何界面;记忆要靠第三方插件,而它们的面板是独立入口。这个插件把两件事收进同一个页面。
这是什么¶
dsh-personal-settings 是给 DeepSeek Harness 加一个「个性化」设置页:一个地方管长期指令和长期记忆。
- 维护者:XEsx630
- 分类:记忆
- 当前版本:0.1.1
- License:MIT
它解决的问题是:改全局指令需要自己找文件、自己编辑;看有哪些记忆需要翻 ~/.dsh/memory;自动提炼记忆需要改 YAML 后重启。
核心功能¶
指令管理¶
直接编辑 $DSH_HOME/AGENTS.md,也就是每个新会话自动注入的那份。
保存后:
- 新会话第一步就带上
- 当前会话在下一次文件操作后由内置的 dsh-agent-instructions 重新读取
右下角的字节数是按文件估算的,参考预算是 65,536 字节;超过 80% 进度条转琥珀色。
记忆管理¶
浏览、搜索、新建、编辑、删除 dsh-auto-memory 存下的记忆,外加一个自动提炼开关。
列表按「固定优先 → 更新时间」排序,支持按关键词和全局/工作区筛选。点一行进入独立编辑页:
- 名称只能是
a-z0-9-,创建后不可改(它就是文件名) - 描述必填,会进
MEMORY.md索引 - 类型决定列表里的色点:用户 / 反馈 / 项目 / 参考
- 「固定」的记忆在注入预算紧张时优先保留
自动记忆¶
页面顶部的开关控制 dsh-auto-memory 的 autoSummarize:
- 打开后,会话结束时后台用当前模型从对话里提炼值得长期保留的事实,最多 5 条
- 开关写的是 profile 的
cordis.patch.yml,然后调用 cordis loader 只重启auto-memory这一个条目,不用重启整个 DSH - 加载器不可用时会退回「重启后生效」,配置本身已经落盘,不会丢
数据位置¶
| 内容 | 路径 |
|---|---|
| 全局指令 | $DSH_HOME/AGENTS.md |
| 记忆文件 | $DSH_HOME/memory/_user/*.md、$DSH_HOME/memory/--<项目>--/*.md |
| 记忆索引 | 同目录 MEMORY.md |
| 注入审计 | $DSH_HOME/memory/audit.jsonl |
全是普通 Markdown,能手改、能进 git。
安装与启用¶
需要 DSH 0.2.x。记忆部分依赖 dsh-auto-memory,先装它:
dsh plugin --profile desktop add dsh-auto-memory
dsh plugin --profile desktop add "github:XEsx630/dsh-personal-settings"
或者用本地目录:
dsh plugin --profile desktop add "file:/path/to/dsh-personal-settings"
装完重启 DSH,设置里会出现「个性化」。
去掉 dsh-auto-memory 自带的侧边栏入口(可选)¶
dsh-auto-memory 会挂一个自己的「记忆」侧边栏面板,和本插件的记忆标签重复。想合并成一个入口,用仓库里的脚本做一份只保留宿主的副本:
node scripts/headless-memory.mjs desktop
它会复制已安装的包、删掉 lib/client.js 和 package.json 里的 dsh.client,然后打印两条替换安装的命令。宿主能力(索引注入、memory_* 工具、/api/auto-memory/*、自动提炼)全部保留。
典型用法¶
修改全局指令¶
在设置页的「指令」标签,直接编辑 $DSH_HOME/AGENTS.md。保存后,新会话会自动带上这份指令。
管理记忆¶
在设置页的「记忆」标签:
- 搜索或筛选记忆(支持关键词、全局/工作区)
- 点击某条记忆进入编辑页
- 填写名称(
a-z0-9-)、描述、类型 - 勾选「固定」以在预算紧张时优先保留
启用自动提炼¶
在设置页的「记忆」标签顶部,打开「自动提炼」开关。会话结束时,后台会从对话中提炼最多 5 条值得长期保留的事实。
适用场景与注意¶
适合需要统一管理全局指令和长期记忆的 DSH 用户,尤其是经常需要调整 agent 行为、维护大量上下文信息的场景。
务必以当前 DSH 进程权限运行,安装前应检查源码与许可证。
限制与已知问题¶
- 记忆标签依赖
dsh-auto-memory的宿主接口。只装本插件时,记忆相关功能会显示「读取失败」,指令标签不受影响 - 自动提炼在 agent 被释放时触发(切会话、关会话、退出应用),不是每轮都跑;只读对话里的 user / assistant 文本,不读工具调用与输出
- 客户端的文案目前只有中文
- 开关的热重载依赖 cordis loader 的运行时更新接口,属于内部 API,DSH 大版本升级时可能需要跟着调整
短结尾¶
dsh-personal-settings 把全局指令和长期记忆收进同一个设置页,减少切换成本,适合需要统一管理上下文和长期记忆的 DSH 用户。
- 目录页:https://www.skillhub.cn/plugins/XEsx630/dsh-personal-settings
- GitHub:https://github.com/XEsx630/dsh-personal-settings