DeepSeek Harness 插件:Prompt Forge

前言

写提示词常遇到「能跑但不够好」的情况:结构松散、验收标准模糊、可执行性差。DSH 提供了插件化架构,把这类能力沉淀成插件。Prompt Forge 就是一个在输入框旁加一个按钮的插件,点击后按一套可替换的「提示词心法」把草稿改写成更可执行的结构,结果按行返回供你选择。

插件定位

  • 名称:Prompt Forge(dsh-prompt-forge)
  • 维护者:wlllyj
  • 解决的问题:把口语化的草稿改写成「目标 + 可外部验证的验收标准」的结构,避免「不要啰嗦」这类形容词式约束,改用可逐条核对的判据。
  • 类型:DSH 插件,归类为模型推理。

核心功能

插件只做一件事:把你在输入框里写的草稿改写成一个更结构化的提示词。改写结果不会自动覆盖草稿,而是按行返回,你可以勾选「替换草稿」「追加到末尾」或直接关闭。

改写

在输入框左侧会出现一个 ✦ Prompt 按钮。点一下,面板在输入框上方弹出,同时自动开始改写。

改写稿会包含:

  • 目标:复述你原本想做的事。
  • 验收标准:可逐条核对的硬约束,例如数量、字段、格式、是否可直接使用等。
  • 必要背景/交付格式:根据草稿复杂度自动补充。

改写稿的结构随任务复杂度变化,不套固定模板。

结果处理

结果按行返回,每行可以单独勾选:

  • 取消勾选:不使用该行。
  • 全选:使用所有返回行。
  • 清空:清空选择。

底部有「重新改写」按钮,换一版后重新展示。

设置

面板内有两个页签:

  • 改写:上面的改写功能。
  • 设置:配置改写参数。

设置项包括:

  • temperature:改写温度,范围 0–2,默认 1。值越高越敢替你补判据,也更容易出现措辞浮动。
  • askFirst:布尔开关。开时改写稿要求对方先提出 3 个「内行必问」的问题再动手;关时改写成「我据此推断的前提 / 仍需确认的点」。
  • doctrinePath:自定义规则文件路径,留空则使用仓库里的 doctrine.md,支持绝对路径或相对插件目录的路径。

设置保存后立即生效,写入你的 profile 的 cordis.patch.yml,无需重启。

机器复查

每条结果在服务端会先经过一次机器复查,检查节数、字数、条目数、形容词式判据、是否只复述目标、列点是否编号。不合格的结果会带着整改要求重写一次。

插件刻意不做的:

  • 不向模型暴露任何工具,agent 不会自动调用它。
  • 不写会话记录、不落盘草稿,草稿只发给你在 DSH 里配置的模型服务商。
  • 不替你决定用哪个模型,改写永远跟随当前对话的模型。

安装与启用

前置条件:

  • DSH:>= 0.2.1-rc.1 < 0.3.0(在 0.2.1-rc.3 上验证)。需要 conversation.input.left / conversation.input.dock 插槽与 configEditor 服务。
  • Node.js:^22.19.0 或 >= 24.0.0(在 24.21.0 上验证)。
  • pnpm:任意近期版本。
  • git:任意近期版本。

插件目前未发布到 npm,需要从源码目录或打包后的 .tgz 装入你的 DSH profile。

方式 A:从源码目录安装(推荐)

git clone https://github.com/wlllyj/dsh-prompt-forge.git
cd dsh-prompt-forge
pnpm install

然后在 DSH 里把这个目录装成插件。在 DSH 桌面版/Web 版中,插件安装由插件管理器完成,等价于 agent 侧工具 plugin_manager 的 install_bundle:

在 DSH 会话里对 agent 说:

把 <你克隆下来的 dsh-prompt-forge 目录绝对路径> 用 plugin_manager install_bundle 装成插件

装完刷新页面(F5),输入框左侧会出现 ✦ Prompt。

方式 B:打包成 tgz 再装

git clone https://github.com/wlllyj/dsh-prompt-forge.git
cd dsh-prompt-forge
pnpm install
pnpm pack      # 生成 dsh-prompt-forge-<version>.tgz

把生成的 .tgz 路径交给 plugin_manager install_bundle,同样刷新页面。

方式 C:直接装预构建的 tgz(不用装 Node/pnpm)

每次发版都会把打好包的 tgz 挂在 GitHub Release 上:

curl -L -o dsh-prompt-forge-0.10.1.tgz \
  https://github.com/wlllyj/dsh-prompt-forge/releases/download/v0.10.1/dsh-prompt-forge-0.10.1.tgz

把下载到的 .tgz 路径交给 plugin_manager install_bundle,然后刷新页面。

安装后自检

  1. 输入框左侧出现 ✦ Prompt 胶囊(与已有的其它输入框按钮并排)。
  2. 设置 → 插件里能看到 dsh-prompt-forge,状态为启用。
  3. 点击按钮 → 面板出现在输入框上方并立刻开始改写,两个页签可切换。

命令行自检(<port> 换成你 DSH Web 服务端口,桌面版常见为 31021):

curl -s http://127.0.0.1:<port>/promptforge/config

返回 {"ok":true,"value":{"values":{...},"defaults":{...}}} 即宿主半边已就位。

典型用法

  1. 在输入框写下草稿(哪怕一句话也行)。
  2. 点 ✦ Prompt:面板弹出来,同时自动开始改写(没有「生成改写」按钮,点按钮就是开始)。
  3. 等结果按行列出来;不想要的取消勾选,想保留多条就全选。右下角 重新改写 可以换一版。
  4. 点 替换草稿(用选中的行覆盖草稿)或 追加到末尾(保留原草稿,把选中内容接在后面),或直接 关闭。

切到「设置」页签不会丢掉当前改写结果;再点一次 ✦ Prompt 关闭面板。

示例

草稿(21 字):

把这段会议记录整理成三条待办,明天发群里。

点「改写提示词」后(127 字、2 节,实测会在 130–180 字间浮动):

目标

把这段会议记录整理成三条待办,明天发群里。

验收标准

  1. 先只向我提三个「内行必问」的问题;我回答后,你再动手。
  2. 恰好三条,每条一行,包含:动作、负责人、截止时间。
  3. 记录里没写明的负责人或时间,标「【待补】」,不要猜测。

直接调接口(脚本/自动化用)

printf '%s' '{"text":"把这段会议记录整理成三条待办,明天发群里。"}' > body.json
curl -s -X POST http://127.0.0.1:<port>/promptforge/optimize \
  -H 'content-type: application/json' --data-binary @body.json

返回:

{"ok":true,"value":{"text":"…","parts":[{"heading":"目标","body":"…"}],"provider":"<provider>","model":"<model>"}}

配置说明

全部配置都在面板的「设置」页签里,改完点 保存 即生效。

字段 默认 范围 说明
temperature 1 0–2 改写温度;越高越敢替你补判据,也更容易出现措辞浮动
askFirst true 布尔 开=改写稿要求对方先问 3 个问题再动手;关=改成写出「我据此推断的前提 / 仍需确认的点」
doctrinePath "" 路径 自定义规则文件;留空用仓库里的 doctrine.md,支持绝对路径或相对插件目录的路径

模型不可配置:改写永远使用当前对话的模型(宿主 agentDefaultModel.currentSelection()),避免同一份提示词在不同模型下改出两套风格。

篇幅预算(自动,不占配置项):

草稿字数 改写上限
< 40 字(tiny) ≤ 150 字、≤ 2 节
< 200 字(small) ≤ 240 字、≤ 3 节
< 800 字(normal) ≤ 900 字、≤ 4 节
≥ 800 字(large) ≤ 字数 × 1.4、≤ 5 节

规则文件:把 doctrine.md 整份替换成团队规范即可;也可以只把 doctrinePath 指向另一个文件(比如放在共享盘上),插件每次请求都会重新读取,不需要重启或重装。规则文件缺失或读不到时回退到内置副本。

适用场景与注意

适合:

  • 需要把口语化草稿结构化的人。
  • 希望提示词包含可外部验证的验收标准的人。
  • 想要按行选择、决定用哪些改写结果的人。

注意:

  • 插件以当前 DSH 进程权限运行,安装前建议查看源码与许可证(MIT)。
  • 改写依赖当前对话的模型,模型不可用或超时会导致改写失败。
  • 规则文件是中文写的,英文草稿的产出语言请根据实际情况测试。

结语

Prompt Forge 是一个在输入框旁加一个按钮、把草稿按提示词心法改写并按行返回的工具。它不自动覆盖草稿,而是让你在面板里按行选择替换或追加,同时提供了温度、先问再答开关、自定义规则文件路径等配置项,改写结果还会经过机器复查。如果你需要把口语化的提示词草稿改写成更可执行的结构,可以在 DSH 里安装这个插件。

  • 目录页:https://www.skillhub.cn/plugins/wlllyj/dsh-prompt-forge
  • GitHub:https://github.com/wlllyj/dsh-prompt-forge
羽毛球分组比赛记分
小程序二维码

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

小夜