dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
RooCode 的 Enhance Prompt(输入框里的 ✨ 魔杖)在 DSH 里的等价物。
入口:composer 工具栏(模型选择器与发送按钮之间)多一个 ✨ 控件。
行为:读当前草稿 → 交给一次旁路 LLM 调用改写 → 原地替换草稿 → 可一键 撤销 还原。
草稿为空时点它只会提示,不会发送、不会改动任何东西;它永远不替你发送。
模型:默认 zai / glm-5.3-flash,可在插件设置卡片里随手改(provider / model /
reasoningEffort),设置是 .volatile() 的,保存后下一次点 ✨ 就生效,不用重启应用。
思考档位:像 glm-5.3-flash 这种「始终思考」的模型必须带 reasoningEffort
(low / high / max)。默认 low;留空表示完全不发该选项。请求按
{source, effort} 逐级降级重试,所以换成不支持该档位的模型也不会报错。
模板:默认逐字照抄 RooCode 的模板,可在设置卡片里改:
Generate an enhanced version of this prompt (reply with only the enhanced prompt - no conversation, explanations, lead-in, bullet points, placeholders, or surrounding quotes):${userInput}
模板里没有 ${userInput} 时,草稿会被追加到最后一行(绝不会丢输入)。
| RooCode | 本插件 |
|---|---|
| 输入框右上角魔杖 | conversation.input.left 槽里的 ✨ 控件(composer 工具栏,list 槽,可多占位) |
| 单独一次改写请求,不进任务对话 | 宿主侧 ctx.llm.stream() 旁路调用(purpose: 'prompt-enhancer'),无工具、单轮 |
| 替换输入框文本 | 公开动作面 inputActions.setDraft(text) |
| Ctrl+Z 撤销 | 插件自己留一份原稿 → 撤销 按钮(并且在草稿被再次编辑后拒绝撤销,避免覆盖你新打的内容) |
| 单独指定 API 配置 | 设置卡片里的 provider / model |
<think> 会漏进结果(issue #4099) | 协议层解决:只累加 text-delta,reasoning-delta 一律丢弃 |
| 可编辑模板 + 测试区 | 设置卡片里的 template(测试区=直接点 ✨ 试) |
| 空草稿给帮助文案 | 空草稿时提示"先写点草稿再点 ✨" |
| 字段 | 默认 | 说明 |
|---|---|---|
enabled | true | 关掉后端点直接返回"已关闭",不发任何请求 |
provider | zai | 改写用的 provider |
model | glm-5.3-flash | 改写用的模型 |
reasoningEffort | low | 思考档位;glm-5.3-flash 必须带(low/high/max),留空 = 不发 |
template | 见上 | 增强模板(${userInput} 占位) |
maxTokens | 2048 | 单次改写输出上限(字符串,便于表单编辑) |
timeoutMs | 45000 | 超时(超时按取消处理,界面会复位) |
POST /dsh-prompt-enhancer/enhance 会花 token,因此带浏览器信任栅栏:
非回环 Host、Sec-Fetch-Site: cross-site、与 Host 不同源的 Origin 一律 403;
宿主若有 connection.requestRejection 则委托它,且它抛异常按拒绝处理(fail closed)。POST、请求体 ≤256 KB、草稿 ≤20000 字符,其余 400。dsh-session-title-llm 会 append 一条 session/title-llm-request,值得后续照抄)。插件必须同时出现在 profile 的 dsh.profile.bundles 与 dependencies 里(缺前者不会挂载)。
# 1) 克隆到 DSH 主目录下的 local-plugins,便于统一管理
git clone https://github.com/<you>/dsh-prompt-enhancer.git $env:USERPROFILE\.dsh\local-plugins\dsh-prompt-enhancer
# 2) 用官方 CLI 装进 profile(转发给 pnpm)
& 'F:\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd' plugin --profile desktop add `
"$env:USERPROFILE\.dsh\local-plugins\dsh-prompt-enhancer"
用 CLI 之前建议先备份
profiles\desktop\cordis.patch.yml(历史上的插件安装曾把它重写掉)。
手工方式:在 profiles\desktop\package.json 的 dependencies 加
"dsh-prompt-enhancer": "file:../../local-plugins/dsh-prompt-enhancer",
并在 dsh.profile.bundles 末尾加 "dsh-prompt-enhancer",然后在该 profile 目录执行 pnpm install。
provider / model / reasoningEffort。从 dsh.profile.bundles 与 dependencies 里删掉 dsh-prompt-enhancer,重启应用即可;
插件不写任何自己的状态文件。