前言¶
在 DeepSeek Harness 中管理提示词时,常见的做法是将预设文本直接填入输入框。这会污染输入框内容,并导致对话记录与模型实际接收到的内容不一致。dsh-prompt-injector 解决了这个问题,它将预设注入操作移至 Host 侧,在消息发送前的 agent/pre-step 阶段将内容拼接到消息首部。
插件简介¶
这是 DeepSeek Harness 的一个 Web 插件,用于在发送时将可复用的提示词预设注入到消息首部,支持仅注入下一条或每轮都注入。插件由 yukk4159-bit 维护,采用 MIT 许可证。
安装与启用¶
插件为 bundle 形态,无需构建即可安装。执行以下命令添加插件:
dsh plugin --profile web add "github:yukk4159-bit/dsh-prompt-injector"
安装完成后,需要重启该 profile 才能在界面中看到相关 UI。
核心功能¶
- Host 侧注入:在消息发送前的
agent/pre-step阶段注入,不污染输入框内容。 - 双模式注入:支持「只注入下一条」(默认)和「每轮都注入」。
- 预设管理:通过 UI 管理预设库,支持标签过滤和搜索。
- 消息内触发:支持在消息正文中使用
{{id}}触发预设注入。 - 配置化:支持自定义注入位置、模板和分隔符。
- HTTP 接口:通过
/prompt-injector/...路由与 Host 进程通信,同步会话选择。
使用方法¶
- 创建预设:在设置页创建一个预设,保存后重启 profile。预设库持久化保存在 profile 的
cordis.patch.yml文件中。 - 选择预设:点击预设按钮选择预设和注入模式。支持「只注入下一条」(默认)或「每轮都注入」。
- 发送消息:正常输入文字并发送,预设内容会自动拼接到消息最前面。
- 消息内触发:在消息正文中输入
{{id}}(id为预设 ID),发送后该条消息会被注入对应预设。
配置说明¶
- enabled:总开关,默认为
true。 - position:注入位置,默认为
prefix(消息首部),可选suffix(消息尾部)。 - template:预设正文外的包装模板,支持
{{name}}、{{id}}、{{text}}。 - separator:预设块与用户文字之间的连接串,默认为两个换行。
- defaultPresetId:兜底预设 ID,留空表示不注入。该预设按定义是每轮都注入。
注意事项¶
- 会话选择:「只注入下一条」的选择保存在 Host 进程内存中,重启后清空。
- 依赖版本:依赖 Node.js 版本 >= 22.5。
- 权限:插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
结尾¶
该工具解决了在 DeepSeek Harness 中复用提示词的需求,同时保持了输入框的整洁和对话记录的准确性。更多细节与源码请访问 GitHub。