前言¶
在 DeepSeek Harness(DSH)里跑多 provider、多模型时,同一段系统提示往往很难兼顾:有的模型需要更短的任务收束,有的希望单独加一句约束,而改全局 system prompt 又会动到工具说明和权限边界。社区插件 dsh-model-behavior(维护者 ssuper1,分类:模型推理)走另一条路:在请求真正路由到 {provider, model} 之后,只追加一段可配置的行为文本,不替换核心系统提示,也不改工具说明或执行代码。
这是什么¶
一句话定位:面向 DSH 的 Model-aware behavior prompt injection——按 provider 分组、组内逐模型勾选,并支持多条编号提示词与逐模型专属追加。
- 目录页:https://www.skillhub.cn/plugins/ssuper1/dsh-model-behavior
- 源码与说明:https://github.com/ssuper1/dsh-model-behavior
- 当前 package 版本:0.2.0,许可证 MIT(非官方插件,与 DeepSeek 官方无隶属关系)
核心功能¶
下面介绍 README 中已写明、且实现节有对应机制的能力。
匹配与范围¶
- 按 provider 分组选择是否对本规则生效;分组展开后列出当前已注册模型,每个模型前有复选框。
- 默认组内全选:表示该分组下包括以后新增的模型都会触发本规则;取消勾选则把该模型排除;全部取消勾选时内部用
__none__标记,与「未启用该分组」区分。 - 规则级 「全局仅应用模型 ID」 对已选分组一起生效;「排除模型 ID」 优先级最高。三处(分组勾选、包含、排除)同时存在时取交集;模型 ID 精确匹配,不支持通配符。
- 可分别限定 主会话、子代理;多条规则按面板顺序一起追加,模型是否遵循仍取决于模型本身。
提示词与逐模型覆盖¶
- 每条规则底部有 1 号提示词(默认,不可删);可 「+ 新增提示词窗口」 增加 2 号、3 号…,各自可编辑、可删除。
- 每个模型行右侧 「提示词」 可勾选要用哪几号;多号时按编号顺序用空行拼接;下方文本框是只对该模型的追加内容。
- 面板内可 实时预览 当前草稿对某个 provider/model 的最终注入文本。
- 动态上下文注册为
required: true、interpolate: false:在completepersona 还原后仍保留;提示词里的{{...}}原样输出,不做插值。
宿主侧行为¶
宿主在 agent/request waterfall 的 prepend 阶段记录 agent 到最终 {provider, model} 的路由,并在每次请求刷新上下文时按该路由计算追加文本。这样拿到的是本次请求真正使用的 provider/model,而不是会话头里可能过期的值。
安装与启用¶
需要已安装 DSH 桌面端;peerDependencies 要求 @deepseek-ai/dsh >=0.2.1-rc.2 <0.3。
从 GitHub 安装(资料原文命令,github:owner/repo 语法):
dsh plugin --profile <profile> add github:ssuper1/dsh-model-behavior
将 <profile> 换成你的 profile 名,例如 web。桌面端使用的 desktop profile 是保留名:npm 版 CLI 会拒绝管理它,需用桌面端自带的同名命令执行,或在插件市场里搜索安装。
手动安装(可选):把仓库放到 <profile>/node_modules/dsh-model-behavior,在 <profile>/package.json 的 dependencies 增加 "dsh-model-behavior": "file:<仓库绝对路径>",并在 dsh.profile.bundles 追加 "dsh-model-behavior"。仓库根目录的 node install-local.mjs --profile <desktop|名称|绝对路径> 可自动完成上述步骤并备份 manifest。
安装后必须重启桌面端(不会热加载新增 bundle),再进入 「设置 → 模型行为提示」,或从插件管理打开本插件的配置行。
典型用法¶
- 用面板总开关或单条规则开关控制是否生效。
- 勾选目标 provider 分组,在组内取消不需要的模型;需要时填写 全局仅应用 / 排除 的模型 ID。
- 编辑 1 号(及可选的 2、3 号…)提示词;在模型行选择编号组合,必要时填写该模型专属追加文本;用预览确认最终注入内容。
- 选择规则作用于主会话还是子代理,保存。已载入插件在后续请求读取新配置;已发出的请求不受影响。
只想临时停用可用面板总开关;彻底移除需从 dependencies 与 dsh.profile.bundles 去掉 dsh-model-behavior 后重启(安装脚本会留下 package.json.before-model-behavior-<时间戳>.bak 备份)。
适用场景与注意¶
适合谁:在同一 DSH profile 里混用多个 provider/模型,希望对部分模型追加「收束任务」「少废话」等行为建议,又不想改全局 system prompt 的开发者。
务必注意:
- 插件以当前 DSH 进程的权限运行;安装前请自行查看源码与 MIT 许可证,确认追加内容符合你的安全与合规要求。
- 社区目录 SkillHub 与 GitHub 仓库均为社区维护,与 DeepSeek / 幻方无官方从属关系。
- README 说明:仓库含 30 项 Node 测试与
test-runtime.mjs接线测试,不是真实模型请求的端到端验证。
结尾¶
dsh-model-behavior 把「按 provider / 模型谁该多一段行为提示」做成可编辑规则:分组勾选、多号提示词、逐模型专属文本与预览,且只追加动态上下文。需要安装命令与字段含义时,以 GitHub README 为准;在目录页 SkillHub 可找到同一插件的入口信息。