dsh-prompt-craft
在 DSH 输入框里给草稿按一下 ✨,把它改写成以目标为导向的提示词:先认出你真正想达成的结果,再抬升立意(更广的视野、更深的假设与成功标准)——先看 diff,再逐段接受。
dsh-prompt-craft 是 DeepSeek Harness 的提示词增强插件:在输入框工具行加一个 ✨ 按钮(模型选择器左侧),点一下就把当前草稿交给模型改写,结果以内嵌面板的形式展示,带人类可读的差异对比、逐段勾选、继续追问。
界面
输入框工具行里的 ✨(模型选择器左侧),有草稿时会点亮:

点一下,面板出现在输入框上方、与输入框左右对齐:外圈是浅蓝渐变描边,顶部是「真正的目标」和「立意升维」说明,下面默认停在「对比」视图:

勾选想要的改动、应用后写回输入框,随时可以撤销:

写回输入框的就是更精炼的版本——同样的要求,字数更少:

截图来自 v0.2.2 的真实运行(DeepSeek-V4.1-Flash,deepseek-flash),未做后期美化。
为什么是「以目标为导向」
只把话说清楚,往往还是拿不到真正想要的结果。本插件先处理目标,再处理措辞:
- 先认出真正的目标:草稿只是一句「帮我写个脚本」时,模型先判断你要的结果是什么(跑通一次、还是要能维护?),把它写成一句话放进
goal,再让提示词服务于它; - 立意更高:从「完成这个任务」抬到「解决这个问题 / 创造这个价值」,但只抬到你的意图与领域允许的范围,不臆造需求;
- 视野更广:受众是谁、进入什么上下文、上下游有什么约束、哪些东西不能坏、真正的风险与备选方案;
- 思考更深:隐含假设摊开、定义「做好」的标准、说明结果会被怎么检验、点明最关键的取舍;
- 忠于本意:不编造事实、不加你没暗示的要求;缺关键信息时先问你,而不是替你猜。
增强结果面板会把「真正的目标」和「立意升维」(从 X 抬到 Y)直接显示出来,你能看到它为什么这么改。
真实效果(v0.2.2,deepseek-flash 实测)
草稿只有一句:
帮我写个脚本,把项目里的图片压缩一下
增强后面板顶部给出:
- 真正的目标:拿到一个可直接运行的脚本,把项目里的图片体积压小、画质可接受,并知道如何运行和核对效果。
- 立意升维:
- 从「写个脚本」到「可运行、可核对、可复用的压缩脚本」:补上语言、目录、格式、输出位置与运行命令;
- 把「压缩一下」变成验收标准:逐张打印前后体积与总压缩率,效果可验证;
- 补上风险边界:覆盖原图须先备份、跳过已压缩文件,避免误损项目素材。
- 主要改动里会写明压缩幅度(例如「原句 25 字 → 约 125 字,仍在单行草稿 150 字上限内」)。
改写后的提示词(全文,125 字):
写一个可运行的脚本,把项目里的图片压到尽量小且画质可接受。需:用
<语言/版本>;扫描<目录>下<格式>;<有损/无损>,目标质量<数值>;结果写到<输出目录>,改原图须先备份;跳过已压缩文件;逐张打印前后体积与总压缩率;末尾附运行命令。
和只让它「把话说清楚」相比,这里多出来的是目标、验收标准和风险边界;但字数被压到接近草稿的量级——先定目标,再定结构,最后把措辞压到最紧。
为什么是「diff 优先」
大多数一键优化工具会把整段文本直接替换掉,你没法知道它改了什么、也没法只保留其中一半。本插件反过来:
- 先给你看 diff:新增 / 删除 / 修改按行分组,每一组(hunk)都能单独勾选;
- 只应用你选择的:合并结果写回输入框,随时「撤销」回到原文;
- 不满意就继续改:不用重新开始,输入一句「再短一点」即可迭代;
- 信息不够先问你:当草稿缺少关键约束(语言、格式、长度、受众……)时,模型会先返回 1–2 个问题,而不是替你瞎猜。
功能
- ✨ 一键增强:输入框工具行按钮,快捷键可达,运行中可取消。
- 🎯 目标与立意可见:面板显示「真正的目标」和「立意升维」说明,改写逻辑透明。
- 🎚 三档力度:轻改(理顺表达、把目标说清楚)/ 目标导向(围绕真正想要的结果重写)/ 立意升维(目标、成功标准、边界与取舍一次写全)。
- 🧭 自动场景识别:自动判断代码 / 写作 / 调研 / Agent / 通用,也可手动指定。
- 🧩 diff 预览 + 分段接受:逐 hunk 勾选、对比视图(默认)/ 分段视图、全部应用、撤销。
- ✂️ 精炼输出:不丢要求的前提下压缩字数,中文可带文言式紧凑(须 / 勿 / 免 / 四字短语),但以可读为先;单行草稿有字数上限。
- 🪟 与输入框等宽:面板左右边缘与输入框对齐,外圈浅蓝渐变描边,深浅色主题下都清晰。
- ❓ 追问补全:缺信息时先问 1–2 个问题,回答后带着答案重写。
- 🔁 迭代改稿:在上一版基础上继续给修改意见。
- ⚙️ 设置页:界面语言、默认力度、默认场景、是否跟随会话模型。
- 🌏 中英双语:跟随浏览器语言,可在设置里覆盖。
和同类插件比
DSH 插件市场里已经有不少提示词相关插件。这里只比较公开可见的能力(信息来自各仓库的 README 与代码,2026-11 抓取,可能随对方版本更新而变化):
| 能力 | dsh-prompt-craft | dsh-prompt-crafter | dsh-voice-prompt-enhancer | dsh-prompt |
|---|---|---|---|---|
| 定位 | 目标导向改写 | 一键改写 | 改写 + 语音输入 | 模板库(不改写) |
| 入口 | 输入框工具行 ✨ + 内嵌面板 | 输入框右侧「优化」 | 输入框工具行 ✨ | 输入框左侧「Prompt」/ /prompt |
| 认出并显示目标 | ✅「真正的目标」 | — | — | — |
| 立意升维说明(从 X 抬到 Y) | ✅ | — | — | — |
| diff 预览 | ✅ 行级,默认对比视图(分段 / 对比) | — | — | — |
| 逐段接受 | ✅ 按 hunk 勾选 | — | — | — |
| 信息不足先追问 | ✅ 1–2 个问题 | — | — | — |
| 迭代改稿 | ✅ 保持目标继续改 | — | ✅ 可继续优化 | — |
| 力度 / 模式 | 3 档 + 自动场景识别 | 3 档 + 自定义系统提示 | 5 种模式 | — |
| 模型策略 | 跟随当前会话,可显式覆盖 | 免费通道 / 跟随 / 手动 | 多模型按序尝试 | — |
| 语音输入增强 | — | — | ✅ | — |
| 模板库 | — | — | 模式内模板 | ✅ 24 条 + 自定义 |
| 撤回方式 | 逐段取消 / 一键撤销回原文 | Ctrl+Z | 整段撤回 | 插入后撤销 |
| 许可证 | MIT | MIT | Apache-2.0 | MIT |
如果你主要想要「模板速查」或「语音输入」,那几个插件更合适;如果你在意改写方向对不对、到底改了什么、能不能只留下一部分,这个插件就是为这件事做的。
安装
需要 DSH >= 0.2.2-rc.1。
# 直接从 GitHub 安装(推荐,无需 npm 发布)
dsh plugin --profile desktop add github:LONGSASASASASA/dsh-prompt-craft#v0.2.2
# 或从 npm(发布后)
dsh plugin --profile desktop add dsh-prompt-craft
# 本地开发:直接装本地目录(pnpm link 语义)
dsh plugin --profile desktop add file:C:\path\to\dsh-prompt-craft
安装后重启 DSH 应用(插件 bundle 在启动时加载)。重启后输入框工具行会出现 ✨ 按钮。
卸载:
dsh plugin --profile desktop remove dsh-prompt-craft
使用
- 在输入框里写下草稿(一句话、一段需求、半成品提示词都行)。
- 点 ✨。
- 面板出现在输入框上方:
- 顶部是「真正的目标」与「立意升维」说明;
- 默认停在对比视图(原文 / 增强后并排),也可切到分段逐 hunk 看;
- 勾选你想要的改动,点「应用选中 n/m」或「全部应用」;
- 想改得更狠或更轻,点「继续改…」输入一句意见。
- 应用后可直接编辑或发送;「撤销」回到增强前的原文。
设置
设置页位于 DSH 设置的插件页(「提示词增强」一节):
| 项 | 说明 |
|---|---|
| 界面语言 | 跟随浏览器 / 中文 / English |
| 默认力度 | 轻改 / 目标导向 / 立意升维(面板里可临时切换) |
| 默认场景 | 自动识别 / 代码 / 写作 / 调研 / Agent / 通用 |
| 增强使用的模型 | 默认跟随当前会话模型;也可指定 provider / model / reasoning effort |
模型策略:默认完全跟随当前会话(含会话里临时切换的模型),只有你在设置里显式指定时才会覆盖。设置保存在本机浏览器 localStorage,不上传。
兼容性与实现
- 宿主半(
lib/host/index.cjs)注册一个POST /dsh-prompt-craft/rpc路由,用ctx.llm.stream()调模型;带来源校验(拒绝跨站请求)、1 MiB 请求体上限、120s 超时、JSON 输出解析与一次修复重试。 - 浏览器半(
lib/client.js)通过 DSH 的slots服务注册三个插槽:conversation.input.right(按钮)、conversation.input.dock(面板)、settings.section(设置页)。不修改 DOM、不 patch 宿主代码。 - 只依赖 DSH 已提供的共享模块(
react等),不额外安装运行时依赖。
开发
npm install
npm run build # 生成 lib/(host 半逐文件复制 + esbuild 打包客户端)
npm test # node --test,96 个用例
npm run check # 校验 lib/ 与源码一致(无构建漂移)
源码结构:
src/protocol.cjs # host/client 共享的常量、校验、错误码
src/host/index.cjs # 插件入口(注册路由)
src/host/rpc.cjs # HTTP 路由、流式收集、超时、修复重试
src/host/templates.cjs # 提示词模板(力度 / 场景 / 输出约定)
src/host/parse-output.cjs
src/host/resolve-model.cjs
src/client/index.js # 插槽注册
src/client/{button,panel,actions,store,rpc,i18n,styles,settings,diff}.js
隐私
- 插件不发送任何遥测,不访问网络(除 DSH 宿主自身的本机路由)。
- 草稿只在你点击 ✨ 时经本机 DSH 宿主转发给你在 DSH 里配置的模型服务。
- 设置存在浏览器
localStorage,不写入磁盘其他位置。
No comments yet. Be the first to write one.