DeepSeek Harness 插件:dsh-prompt-injector(通用每轮上下文注入)

前言

在 DeepSeek Harness (DSH) 的 Web 配置文件开发中,若仅依靠 Persona 或 System 层面的规则来约束模型,在长会话中往往不可靠:模型会逐渐遗忘这些规则,即使规则写得再明确(例如“每次编码前刷新代码图谱”、“遇到事实问题先查 Wiki”),在后续轮次中也可能静默失效。

dsh-prompt-injector 解决了这个问题。它复用了 dsh-mem0-plugins 中的记忆召回机制,将其通用化:你可以在设置页面维护一个提示词列表,插件会在每次对话轮次中,将这些提示词以“Context injection”通知行的形式注入到模型上下文的前置位置。这确保了关键规则或提醒在每一轮都能被模型“看到”,从而提高执行的一致性。

插件定位

  • 名称:runfali/dsh-prompt-injector
  • 维护者:runfali
  • 许可:MIT
  • 核心能力:为 DSH Web 配置提供通用的每轮上下文注入机制,支持通过 UI 管理注入内容,且不侵入 DSH 源码。

核心功能

该插件主要提供以下能力:

  1. 每轮注入:在 agent/pre-step 阶段,当检测到新输入时,将所有已启用的提示词追加到本轮上下文中,作为一条折叠的“Context injection”通知行。
  2. 触发模式:
    • everyTurn(默认):每次对话轮次都注入。
    • postCompaction:在上下文压缩/摘要生成后注入一次。
  3. 全局开关:通过 enabled 配置项控制全局注入开关。
  4. 简略轮次过滤:默认开启 skipTrivial,会自动跳过“好的/嗯/收到/继续/ok/thanks”等简略确认语,避免干扰实质性对话。
  5. 提示词管理 UI:支持在 DSH 设置页面直接添加、删除、编辑提示词,并单独控制每行的启用状态。
  6. 仅提醒,不执行:插件本身不调用任何工具,不执行任何检查,仅负责将文本注入上下文,决策权完全在模型。
  7. 零侵入:不修改 DSH 源码,仅依赖两个较小的运行时包。

安装与配置

插件以标准 DSH Bundle 插件形式发布。

安装命令:

dsh plugin add

配置方式:
安装后,在 DSH 的设置页面即可找到该插件的配置卡片。你可以在此管理提示词列表:
* 标题:用于 UI 展示的行标题。
* 内容:实际注入的提示词文本。
* 开关:每行可独立启用或禁用。
* 触发模式:选择 everyTurn 或 postCompaction。
* 过滤:确认 skipTrivial 是否开启。

工作原理

插件在 agent/pre-step 挂载点运行,向 decision.messages 追加消息。注入的消息格式如下:

  • Role:user
  • Source:
    • kind: plugin:dsh-prompt-injector(使用插件自己的命名空间,符合 V4 消息规范)
    • form: notice
    • summary: 插件的行标题

DSH UI 会将这类消息渲染为折叠的“Context injection”通知行,模型在规划回复时即可看到这些前置信息。

安全与依赖

  • 运行时依赖:插件仅声明了三个 peerDependencies,均由 DSH 宿主提供:
    • @deepseek-ai/dsh-settings
    • @deepseek-ai/schemastery
    • react
  • 权限边界:
    • 无网络访问权限。
    • 无子进程创建权限。
    • 无文件系统写入权限。
    • 任何注入错误都被隔离,不会导致整个对话轮次崩溃。
  • 要求:
    • DSH 版本:>=0.1.2-alpha.3
    • Node.js 版本:^22.19.0 || >=24.0.0

适用场景

此插件适合需要在每一轮对话中反复强调特定约束或规则的开发者。例如:
* 在编码任务中反复提醒模型“先查图谱再写代码”。
* 在复杂问答中反复提醒模型“遵循安全红线清单”。
* 在长对话中强制刷新特定的上下文摘要。

插件的设计哲学是“提醒而非执行”,它将规则下沉到上下文中,让模型在生成最终回复时自行判断何时执行。

结语

dsh-prompt-injector 通过将通用化的上下文注入机制集成到 DSH 的工作流中,解决了长会话中规则遗忘的问题。其零侵入的设计和基于 UI 的管理方式,使其易于维护和调试。

  • GitHub 仓库:https://github.com/runfali/dsh-prompt-injector
  • 插件目录:https://www.skillhub.cn/plugins/runfali/dsh-prompt-injector
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜