前言¶
DeepSeek Harness(DSH)支持通过插件扩展系统提示词的处理方式。在进行多智能体开发或调试不同对话风格时,频繁手动复制粘贴提示词或重启应用会降低调试效率。dsh-persona-dafeiyu 提供了一个集中式的人设库管理方案,内置了常用人设,并支持导入自定义人设,通过动态函数实现无重启切换。
核心功能¶
该插件主要解决人设切换繁琐的问题,核心能力如下:
- 内置人设:提供大肥鱼、阿茶、听澜三个固定人设。这些人设写死在代码中,不可删除或覆盖。
- 自定义导入:支持通过文件(.md/.txt)或直接粘贴文本导入新的人设。导入后可在设置页进行管理(重命名、删除、启用/停用)。
- 生效范围:支持“全局”和“会话”两种模式。全局模式下所有会话共用当前人设;会话模式下每个对话可以独立选择一个人设。
- 即时切换:人设文本是动态函数,切换人设后,下一个请求立即生效,无需重启 DeepSeek Harness。
- 按需加载:状态接口仅返回人设元数据(如简介)。点击“查看全文”才会拉取具体提示词内容,避免接口数据量过大。
安装与启用¶
前置条件:
* Node.js ≥ 20
* DeepSeek Harness (DSH) ≥ 0.2.0-rc.1(兼容 0.2.0-rc.2)
安装命令(需替换 <profile> 为你的 profile 名称):
dsh plugin --profile <profile> add dsh-persona-dafeiyu
安装完成后,插件会自动注册为独立的 dafeiyu:persona 段落。
使用方法¶
安装并启用插件后,在 DSH 的设置页面中会新增一个名为“大肥鱼”的小节。在这里可以查看当前人设、切换人设、启用/停用人设,或导入新的人设。
在输入框上方的小条上,可以切换“全局”与“会话”模式。切换到“会话”模式后,人设名变为可点击的开关,点击即可为当前会话挑选一个人设(默认为“跟随全局”)。
导入新的人设时,支持上传 .md、.markdown 或 .txt 文件,也可以直接粘贴文本到设置页并点击“导入”。
技术细节¶
- 动态求值:人设的
text字段注册为动态函数,每次提示词组装时都会重新求值,因此切换人设无需重启。 - 持久化存储:人设库文件保存在
<DSH_HOME>/storages/dsh-persona-dafeiyu/personas.json。 - 接口设计:提供
/api/dsh-persona-dafeiyu/status获取元数据,提供/api/dsh-persona-dafeiyu/persona?id=<id>按需获取全文。
结语¶
dsh-persona-dafeiyu 通过人设库的方式,将系统提示词的管理从手动粘贴转变为可视化的列表管理,并利用动态函数实现了无缝切换,适合需要在多个预设人设之间频繁切换的开发者。