前言¶
DeepSeek Harness (DSH) 的设计理念是“一切皆插件”。在实际开发中,编写清晰的提示词往往需要反复打磨。dsh-prompt-optimizer 插件旨在解决这一问题,它通过在 DSH Web 界面的输入框工具栏新增一个图标按钮,利用当前激活的模型对输入内容进行优化,并自动回填到输入框中。
插件定位¶
这是一个由 wmengxiang 维护的 DSH Web 插件,采用 MIT 许可证。它的核心作用是在 Web profile 的输入框工具行增加一个交互入口,通过调用当前默认模型,将用户输入的提示词改写得更加清晰和具体。
核心功能¶
- 一键优化:通过点击按钮触发优化流程,无需手动复制粘贴。
- 意图与语言保留:优化过程仅做清晰化和具体化处理,不改变原任务意图与语言风格。
- 交互反馈:按钮在悬停时显示提示文本;优化过程中按钮图标变为旋转加载状态,底部显示进度条。
- 空内容保护:当输入框为空时,按钮自动置灰,防止误操作。
- 流式生成:后端通过
ctx.llm.stream读取模型输出,实现流式回填。
安装与启用¶
通过 DSH CLI 安装该插件:
dsh plugin --profile web add "github:wmengxiang/dsh-prompt-optimizer#main"
安装完成后,重启 Web 界面,插件会随组合自动加载。若遇到 GitHub 源的 SSH 权限问题,可考虑使用本地路径安装或先发布至 npm。
使用步骤¶
- 在输入框中输入一段提示词。
- 点击输入框工具行左侧的图标按钮(悬停可查看“优化提示词”提示)。
- 等待优化完成,输入框内容会自动替换为优化后的结果。
- 使用优化后的提示词继续交互。
工作原理¶
该插件分为 Host 和 Client 两半。
- Host 半 (lib/index.js):注册 POST /api/prompt-optimizer 路由,接收输入文本,调用当前默认模型,通过 ctx.llm.stream 流式读取结果并返回。
- Client 半 (lib/client.js):利用 window.__ModuleLoader__.load 注册,向 conversation.input.left 槽位注入图标按钮,读取草稿内容,调用接口后通过 props.inputActions.setDraft 写回。
注意事项¶
- 插件使用当前激活的默认模型进行优化。在界面上切换模型会改变优化所用的模型。
- 若通过
github:源安装,pnpm 会默认使用 SSH 协议,需确保已配置 GitHub SSH 密钥。若未配置,建议改用本地路径安装或发布至 npm 后安装。
总结¶
该插件为 DSH Web 用户提供了便捷的提示词优化手段,通过流式生成和良好的交互反馈,提升了在 Web 界面下编写高质量提示词的效率。更多细节可查看 GitHub 仓库。