前言¶
在 DeepSeek Harness(DSH)里做长期对话或接群聊时,常见做法是往系统提示里堆人设、往仓库里写 AGENTS.md,或依赖会话级上下文。这些方式要么需要你 upfront 填表,要么记忆跟会话走、换工作区就断档,也很难逐条核对「模型凭什么这么记」。dsh-persona-panel 是维护者 mihomooo 发布的「记忆」类插件:人设卡、用户画像、事件与日记按工作区分开存,面板里每条能看来历、能撤回,模型通过工具读写,而不是让你先扮演一个固定角色。
这是什么¶
一句话:给 DSH 的记忆面板——人设、画像、事件、日记各存一份,按工作区分开;每条带原话与改动史,可审查、可撤回。数据在本地 ~/.dsh/persona-panel/,不联网;卸载插件不删库,重装可续用。当前 package 版本为 0.7.3,MIT 许可证;要求 Harness 0.2.x(用到 webServer.register、slots.inject、systemPrompt.section)。
社区目录页:skillhub.cn 条目。源码与说明:GitHub mihomooo/dsh-persona-panel。
三条设计原则¶
- 不向你索取人设。 没有「请先设定角色」表单;同一件事出现两次以上才落一条,特征在相处里长出来。
- 不按会话记,按工作区记。 默认可为空;要跟过去用「复制…」或「共生」(两工作区共用一份,可随时切断)。共生时名字、称呼、开关、词库、事件上限跟那份数据走。
- 你能看见每一条怎么来的。 删人设分阶段(不满 → 降 → 删);面板也可直接删。日记只读,宿主拒绝对其
updateEntry/delEntry/persona_forget。
面板入口与四块内容¶
| 位置 | 作用 |
|---|---|
| 侧栏「记忆」 | 全宽主面板:工作区列表、三块内容、右侧来历抽屉 |
| 设置 → 记忆 | 同一面板 |
| 工作区会话菜单「⋯」 | 直达该工作区记忆(工作区列表行「⋯」无插件插槽) |
| 会话内浮卡 | 全手动挡有待决条目时,右下角询问 |
四块抽屉加称呼:
| 抽屉 | 内容 | 写入方 |
|---|---|---|
| 人设卡(self) | 大类(强度)+ 人格补充(可标「硬」) | 模型归纳或手动 |
| 画像(user) | 对你的印象,一条一句 | 模型,多聊才总结 |
| 事件(event) | 约定、工程事件(eventKind=work)等 |
模型;到期会提;默认容量 20(0=不限) |
| 日记(diary) | 模型第一人称自述,带日期 | 模型;面板只读,不设条数上限 |
| 称呼(setting) | 互称 | 说出口即改,不受全手动拦 |
工程里的坑与教训 README 要求写进项目 AGENTS.md 或仓库文档,而不是塞进事件抽屉。事件可标 ★,星标不占容量。
记忆如何进上下文(0.7.0 起)¶
人设和画像每一轮都在最前;事件和日记只在会话第一轮读(日记优先最近 21 天,受约 35000 字符预算;事件多则按 100/80/60% 窗口)。常驻段额外带三天内要到日子的事。细节想不起来时模型调 persona_recall(全量、不截断);可按 query 分词模糊查(含日期片段)。同一会话第二轮起,相关系统提示段需逐字节稳定,以利缓存。
四档记录与两个开关¶
| 挡位 | 模型能否自写 |
|---|---|
| 全手动(默认) | 不能;先进「待你决定」,点「留着」才落 |
| 半自动 | 能,改人设需你点头 |
| 自动 | 能,直接写 |
| 只读 | 只注入,谁都不写 |
「启用」关 = 不注入不显示;「记录」关 = 不新增,已有仍在。只关记录 ≠ 忘。
四个工具¶
| 工具 | 用途 |
|---|---|
persona_recall |
读全部记忆,不截断 |
persona_remember |
记 self / user / event / diary / setting;带 who 记到群友分支 |
persona_forget |
改或删(人设分阶段删) |
persona_ask_keep |
不确定时进「待你决定」 |
提示侧要求模型带着底色说话,不念清单、不提「人设卡/记忆/面板」。
多用户画像(默认关)¶
面向 QQ/群聊等场景:主画像外可开「别人」分支,按名或别名搜。默认「启用」「记录」都关,群友话不落盘;打开后事件可带 who 字段。
人格档案与归档¶
「归档…」不销毁,进入「人格档案」列表;可找回、复制到其他工区、「覆盖并替换…」(非空会先问是否归档)。「回忆并写入」向当前工作区正在开的会话发指令,让模型按四类各写几条——无对话上下文时会明说,不编造;会话未开则叫不醒。
安装与启用¶
--profile 必须写在 add 前面,否则 CLI 报 required option '--profile <name>' not specified。
Release 压缩包(推荐,无需 git):
dsh plugin --profile <profile> add https://github.com/mihomooo/dsh-persona-panel/releases/latest/download/dsh-persona-panel.tgz
源码(需要 git):
dsh plugin --profile <profile> add https://github.com/mihomooo/dsh-persona-panel
装完会自动把 dsh-persona-panel 加进 profile 的 dsh.profile.bundles;升级再跑同一条命令即可。零依赖,无需编译。插件市场条目见 awesome-dsh-plugin PR #9584;npm 尚未发布,Discover 搜索依赖已发布 npm,发版前应用内可能搜不到,列表页与上述命令仍可用。
典型用法¶
- 安装后从侧栏「记忆」或会话「⋯」打开面板,选工作区,查看人设/画像/事件/日记与右侧来历。
- 默认全手动:模型通过
persona_ask_keep或待决浮卡,你在会话里点「留着」后入库。 - 需要把当前对话沉淀进记忆且会话已开:用面板「回忆并写入」,模型先
persona_recall再写,避免重复。 - 换项目时在工作区菜单用「复制…」或人格档案里「副本复制 / 共生转移」;数据仍在
~/.dsh/persona-panel/db.json(每日首次写入前备份最近 7 天)。
适用场景与注意¶
适合需要长期、可审计、按工作区隔离的人设与用户印象,以及约定与工程推进类事件;不适合把插件当成唯一工程经验库(坑应进 AGENTS.md)。插件以当前 DSH 进程权限读写本地目录,安装前请自行审阅 源码与 MIT 许可证。
已知边界:「回忆并写入」只看当前会话上下文;全手动待决不点则一直等;imports 下人设原文暂无自动清理。
结尾¶
dsh-persona-panel 把「在这个工作区里慢慢长成有脾气的东西」做成可看的本地数据与面板,而不是一次性角色扮演。目录页见 skillhub.cn/plugins/mihomooo/dsh-persona-panel,细节与截图见 GitHub README。