前言¶
在 DeepSeek Harness(DSH)里,系统提示词通常只有一份固定的部署人设。当需要在同一会话里切换不同角色、风格或行为约束时,要么在部署人设里写得很长,要么只能重新创建 agent。这会让切换成本变高、容易引入冗余或混淆。
DSH 的理念是「一切皆插件」,社区已经有许多功能组件。本插件提供一份人设词的 CRUD 与切换能力:一份全局默认,外加每个会话可随时覆盖的临时人设。
插件简介¶
- 插件名:
dsh-persona-manager(npm 包名:@hxql/dsh-persona-manager) - 维护者:hxql666
- 仓库:https://github.com/hxql666/dsh-persona-manager
- 分类:趣味换装
- 许可证:MIT
- 当前版本:0.1.2
插件接管系统提示词的 deployment:persona-prefix 槽(order 0),在 DSH 的 prompt 组装流程中注入人设正文。切换人设不会往对话里插入任何提示行,下一条模型请求即生效。
核心功能¶
多人设 CRUD 与颜色标识¶
插件维护一份人设列表,每份人设包含:
- 名称(1–80 字符)
- 简介(≤300 字符)
- 正文(人设词,1–20000 字符)
- emoji(≤8 个字符)
- 颜色(6 位十六进制,可选预设色板或自定义取色器)
界面入口有两处:
- 设置页「人设管理」(列表 / 新建 / 编辑 / 删除 / 设为全局默认)
- 输入框工具栏左侧的「人设芯片」(显示当前人设 + 弹出浮层切换)
全局默认与会话级覆盖¶
- 全局默认:设置在
global.activePersonaId,对所有没有会话级覆盖的会话生效。 - 会话级覆盖:每条会话记录保存一个
personaId,覆盖该会话的人设。 - 跟随全局:删除会话级覆盖记录,回到全局默认。
- 不使用人设:显式写入
personaId: null,该会话不注入任何人设。
静默生效与数据存储¶
- 切换人设只写存储,不写对话。
- 下一条模型请求时,
systemPrompt服务重新组装 prompt,自动注入当前有效人设正文。 - 数据走 DSH 官方 JSON 存储后端
@deepseek-ai/dsh-storage-json,文件位于$DSH_HOME/storages/persona_manager.json。 - 若存储服务不可用,降级为内存存储,插件仍可加载,但重启后数据丢失。
种子人设¶
首次初始化时,如果人设列表为空且未 seed 过,插件会自动写入一份示例人设「鲸鱼娘 🐋」并设为全局默认,同时标记 global.seeded 为 true。该标记只写一次,之后即使删光所有人设也不会自动回灌。
安装与启用¶
插件通过 npm 或 GitHub 仓库安装,支持 Plugin Manager 或命令行。
方式一:命令行安装¶
# 普通 PowerShell(非管理员)
# npm 安装
dsh plugin --profile <profile-name> add @hxql/dsh-persona-manager
# GitHub 仓库安装
dsh plugin --profile <profile-name> add https://github.com/hxql666/dsh-persona-manager.git
# 本地目录安装
dsh plugin --profile <profile-name> add <本地路径>\dsh-persona-manager
安装成功后,建议重启 DSH 应用,以确保新插件模块被加载。
方式二:Plugin Manager 安装 bundle¶
通过 DSH 的 Plugin Manager 安装本 bundle,对应契约验收中的 plugin_manager install_bundle。
典型用法¶
- 安装并启用 bundle,打开 DSH。首次初始化时,会自动写入种子人设「鲸鱼娘 🐋」并设为全局默认。
- 打开 Settings → 人设管理,点击「新增人设」:
- 填写名称、emoji、颜色、简介、正文(人设词),保存。 - 在列表里点击「设为全局默认」,之后所有没有会话级覆盖的会话都使用该人设。
- 在任意会话中,点击输入框工具栏的人设芯片,选择一个人设,该会话立即改用它;选择「跟随全局(当前:X)」清除会话覆盖。
- 切换是静默的,下一条模型请求就会带上新人设正文。
适用场景与注意¶
- 适合需要在同一 DSH 实例里快速切换不同角色、风格或约束的开发者与使用者。
- 插件以当前 DSH 进程的权限运行,安装前应检查源码与许可证(MIT)。
- 目前 v1 版本不提供斜杠命令、给模型的 persona 工具、JSON/Markdown 导入导出、工作区级人设文件、多人设叠加、SSE 实时推送等功能。
短结尾¶
本插件提供一份轻量级的人设词管理方案:创建、保存并自由切换多份人设,支持全局默认与会话级覆盖。适合需要在不同角色或约束之间快速切换的场景。
- 目录页:https://www.skillhub.cn/plugins/hxql666/dsh-persona-manager
- GitHub:https://github.com/hxql666/dsh-persona-manager