前言¶
在 DeepSeek Harness 里给智能体写提示词,常见做法是先在别处打磨好再贴进输入框,或者在 DSH 里反复手改草稿。这两条路都能用,但都会把「写草稿」和「把草稿改清楚」拆成两段操作。
Nyco1d/dsh-prompt-optimizer 把优化步骤放进对话输入区:在输入框旁增加魔法棒按钮,把当前草稿送去模型改写,结果在浮层里与原文左右对比;只有你点「采用」才会写回输入框。下面介绍它的定位、安装方式和日常使用。
这是什么¶
- 维护者:Nyco1d
- 分类:模型推理(社区目录归类)
- 仓库:Nyco1d/dsh-prompt-optimizer
- 目录页:https://www.skillhub.cn/plugins/Nyco1d/dsh-prompt-optimizer(社区插件站点,与 DeepSeek / 幻方无官方从属关系)
插件在 DSH 会话输入框左侧挂接按钮,通过 Host 侧路由调用你已配置的模型通道做提示词优化,不依赖本机安装独立的 Prompt Optimizer 桌面应用,也不需要额外 API key。
核心功能¶
依据项目 README,当前版本(package.json 标注 0.2.0)提供这些能力:
- 一键优化:左键点魔法棒,将当前草稿送去优化,浮层内并排显示原文与结果。
- 不自动覆盖:优化结果不会直接替换草稿;可「采用」写回、「再优化一次」或「丢弃」。
- 两种内置模式:消息优化(大致保持一句话长度)、结构化重写(扩写成角色设定类文本)。
- 模型可控:默认跟随 DSH 当前选中的默认模型;也可在设置面板里指定任意已配置模型。
- 零配置启动:走 DSH 自有模型通道,一般无需单独配置密钥。
- 自定义模式:可在配置文件
customModes中追加自己的 system 模板(见下文)。
交互形态上受 linshenkx/prompt-optimizer 启发,但本仓库代码与内置模板为独立实现(MIT);未内嵌第三方 AGPL 项目的官方模板原文。
安装与启用¶
DeepSeek Harness 采用插件扩展能力;可在应用内插件市场搜索,或使用 README 中的安装命令。
市场安装:在 DSH 插件市场里搜索 prompt-optimizer 安装。
从 GitHub 安装(将 <profile> 换成你的 profile 名):
# 从 GitHub 仓库安装(会取默认分支最新代码)
dsh plugin --profile <profile> add Nyco1d/dsh-prompt-optimizer
# 或装一个打好的发布包
dsh plugin --profile <profile> add https://github.com/Nyco1d/dsh-prompt-optimizer/releases/download/v0.2.0/dsh-prompt-optimizer-nyco1d-0.2.0.tgz
桌面端请在应用内 设置 → 插件 里安装,不要用命令行(profile 由应用管理)。
运行环境(engines 声明):
- DeepSeek Harness
>=0.2.0-rc.1 - Node.js
^22.19.0 || >=24.0.0
安装前建议浏览仓库源码与 LICENSE(MIT)。插件在 DSH 进程权限下运行,与其他 DSH 插件相同。
典型用法¶
装好并启用后,在对话输入框旁使用魔法棒:
| 操作 | 效果 |
|---|---|
| 左键点魔法棒 | 优化当前草稿,弹出左右对比浮层 |
Shift + 左键点魔法棒 |
直接打开设置面板 |
| 右键点魔法棒 | 打开设置面板(模式 / 模型) |
设置面板里可切换优化模式、搜索并指定模型;选择立刻生效,无需重启 DSH。
配置默认写在 ~/.dsh/prompt-optimizer.json(根目录可由环境变量 DSH_HOME 改变)。多数情况下用设置面板即可,不必手改文件。
若需自定义模板,在 customModes 中追加条目,例如:
{
"mode": "context-message-optimize",
"provider": "",
"model": "",
"customModes": [
{
"id": "my-mode",
"name": "我的模板",
"description": "一句话说明这个模板干什么",
"system": "你负责……(这里写 system prompt)"
}
]
}
字段要求:id 必填且勿与内置模式重名;system 必填;name / description 仅用于界面。改完后在设置面板里重新打开一次即可看到新模式(Host 侧每次请求会重读配置)。若修改仓库内 templates/builtin.js 的内置模板,需重启 DSH 才生效。
工作原理(简要)¶
README 中的结构如下,便于排查问题:
浏览器(client.js)
├─ 挂到 conversation.input.left 的魔法棒按钮
├─ 用 slot props 的 useInput 读草稿、inputActions.setDraft 写回
└─ fetch 到 Host 的 /prompt-opt/*
Host(index.js)
├─ ctx.webServer 注册四条 JSON 路由
└─ ctx.llm.stream 用 DSH 已配置的模型跑优化
无进程外依赖、无外部服务、无遥测;改 client.js 界面后刷新页面即可。
适用场景与注意¶
适合:常在 DSH 里写 Agent / 对话提示词,希望在同一界面完成「草稿 → 优化 → 对比 → 采纳」的开发者;已配置好 DSH 模型通道、希望复用同一套推理资源的情况。
注意:
- 与「仅重整原始提示词」的简单逻辑不同,本插件通过模型按模式改写内容,会产生 token 消耗。
- 内置模板与 linshenkx 官方 AGPL 模板不是同一份文本;若要官方模板体系与更多桌面端能力,应直接使用原项目,或通过
customModes自行导入(属个人使用行为)。 - 社区目录星标等元数据以站点展示为准;仓库当前 README 侧重功能与安装,未附带用户案例或性能数据,本文不另作补充。
结尾¶
dsh-prompt-optimizer 把提示词优化嵌进 DeepSeek Harness 输入流程:对比后再采纳,模式与模型可在设置面板中调整,并支持 customModes 扩展。