前言¶
在 DeepSeek Harness(DSH)里和助手对话时,常见情况是:一句话里目标、范围或验收标准没说清,助手只能猜着做,来回改几轮才对齐。自己先写长提示词可以缓解,但每条消息都手工扩写成本高,也容易漏掉「不确认就没法开工」的歧义(改哪个按钮、用哪种策略、跑在哪个环境等)。
下面介绍社区插件 dsh-prompt-clarifier(维护者 Duanyy0813,分类:工作流):在输入区增加「提示词优化」按钮,在消息真正发给助手之前,按会话上下文做一次旁路分析与改写;必要时先向你提问,再把合并后的指令交给助手执行。原始输入仍保留在对话里,改写结果作为本轮指令使用。
这是什么¶
dsh-prompt-clarifier 是一个 DSH bundle 插件:通过 package.json 的 dsh.bundle.patch 指向 cordis.patch.yml,向 Host 插入 prompt-clarifier 插件行,并注册浏览器端 client(按钮、面板在网页端)。当前 npm 包版本为 0.3.6,许可证 MIT。
- 目录页:https://www.skillhub.cn/plugins/Duanyy0813/dsh-prompt-clarifier
- 源码与说明:https://github.com/Duanyy0813/dsh-prompt-clarifier
核心功能¶
输入前改写¶
消息发出前做一次旁路分析,把含糊输入补成更明确的指令(目标、范围、验收标准)。改写结果作为本轮指令交给助手;已发送的历史消息不会被修改。
歧义优先澄清¶
缺少决定性信息、无法合理开工时,先弹出提问卡片:选项可点选,也可填「自定义回答…」。答案并入本轮指令。配置项 askBlocking 为 true 时会阻塞等待;提问等待超过 askTimeoutMs(默认 180000 ms)则按假设继续,不卡死回合。设为 false 时只改写、不提问。
主对话中的工具卡片¶
进度在同一张「提示词优化」卡片里累积:1/3 读取上下文 → 2/3 模型分析 → 3/3 澄清提问 → 结果。回合进行中可见;回合结束后收进「思考过程」折叠区。进度不塞进模型上下文,也不打断对话流。
失败不中断¶
模型报错、超时或返回无法解析时,卡片追加错误说明;本轮按原始输入继续执行。分析失败不会中断你的回合。
界面行为摘要¶
按钮位于输入区控制行:输入框下方、模型选择器左侧。
| 操作 | 行为 |
|---|---|
| 左键单击 | 立即分析当前输入(与 AUTO 开关无关) |
| 右键单击 | 切换 提示词优化·自动 ↔ 提示词优化·关闭,并吞掉浏览器右键菜单 |
| 悬停 | 显示 提示词优化(开启) / 提示词优化(关闭) |
自动开启时文案为 提示词优化·自动(蓝色渐变底);关闭时为 提示词优化·关闭(置灰)。分析进行中为 提示词优化 加呼吸圆点,按钮临时禁用。
插件不会在你还在输入时提前分析:只有消息真正发出后才进入优化流程(打字、换行、输入法组字都不算发送)。
安装与启用¶
前置条件:已安装 DeepSeek Harness(桌面端或 Web GUI),Node.js ≥ 20。
命令行一键安装¶
装到当前 profile 时,将 desktop 换成 web 或 tui 即可:
dsh plugin --profile desktop add dsh-prompt-clarifier
指定版本示例:
dsh plugin --profile desktop add dsh-prompt-clarifier@0.3.6
没有 dsh CLI 的环境,可在 DSH 里让助手安装,实质是对助手说「安装插件:dsh-prompt-clarifier」,由 plugin_manager 的 install_bundle 完成与命令行相同的安装与启用。官方准则:不要手工改 profile 的 package.json / cordis.patch.yml,也不要在 profile 目录里跑 pnpm。
安装后可在 设置 → 插件(Plugin list) 启用或停用插件行,或移除 bundle。
生效与验证¶
- Host 侧(
index.js、cordis.patch.yml)改动需重启 Harness;客户端(client.js)改动刷新页面即可。 - 重启或刷新后,输入区应出现
提示词优化·自动按钮。 - 右键切换关闭/开启,发一条足够长的消息,主对话里应出现「提示词优化」卡片并累积三个阶段。
典型用法¶
自动模式¶
- 保持按钮为
提示词优化·自动(默认),正常输入并发送;自动模式默认只处理不少于 10 字的消息(见配置minChars)。 - 发送前插件按上下文分析并改写;主对话出现卡片,依次显示各阶段。
- 无歧义:改写稿作为本轮指令执行,面板可查看「建议的优化版本」。
- 有歧义:在提问卡片中选答案并确认,回答并入本轮指令。
手动分析与面板¶
自动关闭时,仅在左键点击按钮后分析当前草稿。面板支持:
- 查看「建议的优化版本」,替换草稿(写回输入框)或复制;写回失败时可「查看要粘贴的文本」。
- 出错时显示原因,可重试。
配置要点¶
配置写在包的 cordis.patch.yml(安装后位于 profile 的 loader 层),改完需重启 Harness。
| 键 | 默认 | 说明 |
|---|---|---|
enabled |
true |
插件总开关 |
auto |
true |
按钮初始是否自动优化(界面上可右键切换) |
askBlocking |
true |
歧义时是否阻塞提问 |
minChars |
10 |
自动模式最短输入长度 |
maxInputChars |
8000 |
超过则跳过分析 |
contextItems |
5 |
采样最近消息条数 |
contextItemChars |
280 |
每条上下文字符上限 |
timeoutMs |
45000 |
单次旁路分析超时 |
maxOutputTokens |
2048 |
分析输出 token 预算 |
askTimeoutMs |
180000 |
提问等待上限 |
showProgress |
true |
卡片是否显示 1/3、2/3、3/3 |
fastProvider / fastModel |
'' |
两项都填才走快速路由;留空用选择器当前模型 |
autoFast |
false |
自动模式是否也走快速路由 |
完整键说明见仓库 README「配置」一节。
适用场景与注意¶
适合:经常在 DSH 里用自然语言派活、希望发送前自动补全目标与范围,又希望在关键歧义上先确认再执行的工作流。
注意:
- 旁路分析会调用你选中的(或配置的 fast)模型,有额外延迟与 token 消耗;大段粘贴超过
maxInputChars会被跳过。 - 插件以当前 DSH 进程权限运行;安装前建议阅读源码与 MIT 许可证,确认行为符合你的环境策略。
- SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系;包从 npm 安装,星标与版本以 GitHub / npm 为准。
结尾¶
dsh-prompt-clarifier 把「发送前提示词优化 + 阻塞性歧义澄清」做成输入区的一键能力:默认自动、可右键关闭,失败时回退原始输入,不拖垮整轮对话。需要试用或跟进 issue 时,可从目录页或 GitHub 仓库入手。