前言¶
在 DSH 里,若把「用户是谁、希望助手怎么说话」写成 skill,通常要由 agent 自己判断这一轮是否加载。上下文一长,这类风格约束往往被跳过,规范写了,多数轮次却不生效。
dsh-plugin-user-persona 走另一条路:向 system-prompt 注册名为 user-persona 的小节,text 为函数,每次提示组装时重新求值,不依赖 skill 是否被选中。下面介绍它做什么、怎么装、怎么用,以及验证时能指望什么。
这是什么¶
dsh-plugin-user-persona 由维护者 tf961656585 发布,在社区目录中归类为 趣味换装。一句话定位:为 DSH 提供预设身份与 0–100 权重,把组合后的画像文本注入系统提示,且每一轮对话都会带上。
插件版本在 package.json 中为 0.2.0,协议为 MIT。
为什么用 system-prompt 而不是 skill¶
README 归纳了设计动机:
- 每轮都在,不需要触发条件;
- 调整权重后下一轮即生效,不必重启插件;
- 与 skill 目录的加载逻辑无关。
共享框架里还固定了一条成本表述口径:不用天/周/人日,按「本轮能否收口、要几个切片、每个切片交付什么、验收做什么」说明;只有明确对外报价时才换算成人类工期。这条会随画像注入,影响助手在估算与拆任务时的说法。
核心功能¶
面板「用户画像」¶
装好后,左侧栏图标进入 用户画像:
- 五种预设身份:产品经理、设计与体验、开发与技术、业务与创始人、学习者;
- 每条身份一条 0–100 权重滑条,0 表示关闭该身份;
- 权重最高者决定主说话方式,其余有权的身份各贡献一行补充;
- 权重分档:1–39 轻度、40–69 中等、70–100 完整(详略与强制程度不同);
- 页面底部 实时显示真正注入的文本;
- 状态行说明该小节是否已进入提示组装(读取
systemPrompt.assemble()的实际结果,而非插件自我声明)。
HTTP 接口¶
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /plugin/user-persona/state |
预设、权重、当前注入文本 |
| POST | /plugin/user-persona/save |
保存 { weights: { id: 0-100 } } |
| GET | /plugin/user-persona/verify |
检查该小节是否真的进入提示组装 |
状态持久化¶
权重与相关状态写在:
$DSH_PROFILE_DIR/user-persona.json
无 profile 时依次退回 $DSH_HOME,再退回 ~/.dsh。
安装与启用¶
在 DSH 的插件安装界面填写下列之一,装完后 重启 DSH,左侧栏应出现「用户画像」。
github:tf961656585/dsh-plugin-user-persona
也可填写该仓库在本机的 绝对路径(与填 GitHub 坐标二选一,以你本机部署方式为准)。
插件在 当前 DSH 进程权限 下运行。安装前请自行查看仓库源码与 MIT 许可证,确认符合你的环境与合规要求。
典型用法¶
- 打开「用户画像」,按你的角色拖动各身份权重(例如以「开发与技术」为主、辅以「产品经理」)。
- 观察底部预览:组合后的注入文本应随滑条即时变化。
- 确认状态行为「已进入系统提示」类提示(以界面实际文案为准)。
- 若需程序化读写,可对
/plugin/user-persona/state、/plugin/user-persona/save、/plugin/user-persona/verify按上表调用。
保存权重示例(请求体形状以 README 为准):
{
"weights": {
"<预设身份 id>": 70
}
}
各预设的 id 以 GET /plugin/user-persona/state 返回为准,勿臆造键名。
验证步骤¶
README 给出四条可操作的检查:
- 面板能打开,滑条可拖动并显示百分比;
- 底部预览文本随滑条变化;
- 状态行显示「已进入系统提示」(或等价成功状态);
- 新开一轮对话,回复的开头/结尾结构应体现所选画像。
第 4 条 只能由人主观判断。插件能证明文本进了系统提示,不能保证模型一定按画像口吻执行;排查问题时可用 GET /plugin/user-persona/verify 对照组装结果。
适用场景与注意¶
适合:希望助手长期以固定角色画像回答(产品、设计、业务、学习等混合权重),又不想把规范押在 skill 触发上;需要在 UI 里直观看「最终进了 prompt 的字符串」的 DSH 用户。
注意:
- 依赖 DSH 的
system-prompt与 Web 侧栏注入(package.json中dsh.client为platform: web,并注入布局与侧栏模块); - 社区目录 skillhub.cn 为独立生态站点,与 DeepSeek / 幻方无官方从属关系;DSH 理念是「一切皆插件」,本插件是其中一枚可选组件。
同系列插件(README 所列):产品经理看板、本机进程、技能管理、同步委派。
结尾¶
dsh-plugin-user-persona 把「用户是谁」从可跳过的 skill 约束,改成每轮必算的 user-persona 系统小节,并用滑条权重与底部预览把不透明 prompt 摊开。需要安装坐标、接口与验证清单时,以仓库 README 为准。