dsh-input-optimize:在 DSH 输入框一键优化提示词草稿

前言

在 DeepSeek Harness(DSH)里写提示词,常见做法是先在输入框里打一段草稿,再自己改措辞、补约束。草稿里若已经挂了 @文件 或图片附件,改字时还要小心别弄乱引用 chip。社区插件 dsh-input-optimize(维护者 DaYePython)在输入框工具行增加一个优化按钮:点击后调用你当前选中的模型改写纯文本部分,引用 chip 原样保留;失败原因走按钮 tooltip,不打弹窗。

这是什么

dsh-input-optimize 是 DSH 的 Cordis bundle 插件,分类属于模型推理。Host 半注册 /api/input-optimize/optimize,浏览器半占用 conversation.input.right 槽位(order: -10),在模型选择器左侧、发送按钮之前插入按钮。仓库:GitHub - DaYePython/dsh-input-optimize;社区目录页:skillhub.cn/plugins/DaYePython/dsh-input-optimize。许可证 MIT,当前包版本 0.1.2(以仓库 package.json 为准)。

核心功能

下面介绍 README 中已写明的行为。

  1. 一键优化:把输入框草稿交给当前模型,输出更清晰、更具体的提示词并写回输入框。模型优先使用输入框当前选择(含 reasoning effort);未选时回退到当前 Agent 的模型。
  2. 保留引用:优化前用 ⟦REF<n>⟧ 占位符替换 @文件 / 图片附件 chip,只改纯文本;写回前校验占位符齐全且有序,再还原 chip。若模型乱序或丢失占位符,结果丢弃,输入框保持原样。
  3. 发送即撤销:优化请求在途时若你直接发送草稿,插件会撤销 RPC 与 LLM 流,迟到的结果不写回,也不进 tooltip。
  4. 空输入隐藏:输入框为空,或只有附件没有文本时,按钮隐藏。
  5. 失败不打断:任何一步失败都不写回输入框;错误原因在按钮 tooltip,错误态用图标变色提示。

安装与启用

需要 DSH 桌面端或 dsh CLI。插件以当前 DSH 进程权限运行,安装前建议浏览仓库源码与 LICENSE。

推荐:一条命令

在 web profile 下从 GitHub 安装:

dsh plugin --profile web add github:DaYePython/dsh-input-optimize

dsh plugin 会识别包内 dsh.bundle 元数据,把 dsh-input-optimize 追加到 dsh.profile.bundles,cordis.patch.yml 作为 bundle 层生效,无需手写 insert。

若 dsh 未加入 PATH,可用桌面端自带 CLI 绝对路径(macOS 示例):

"/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh" \
  plugin --profile web add github:DaYePython/dsh-input-optimize

桌面端 desktop profile 可在 DSH 设置 → 插件 页安装同一 GitHub 源,或退出应用后执行 dsh plugin --profile desktop add ...。

装完后重启 dsh web(或对应 profile 的应用),并刷新页面。升级可重复同一条 add 命令,或:

dsh plugin --profile web update dsh-input-optimize

卸载:

dsh plugin --profile web remove dsh-input-optimize

手动写 profile(本地调试)

完全退出 DSH 桌面应用后,在 profile 的 package.json dependencies 增加 "dsh-input-optimize": "github:DaYePython/dsh-input-optimize",在 profile 目录 pnpm install,并在 cordis.patch.yml 手动追加 insert(详见仓库 README「安装」)。启动后同样要刷新页面。

典型用法

  1. 在输入框写草稿(可带 @文件、图片附件)。
  2. 点击工具行优化按钮。
  3. 按钮进入 loading;完成后优化结果写回,引用 chip 不变。
  4. 若 loading 期间已发送,优化请求被撤销,不会覆盖已清空的输入框。

Host 侧通过 ctx.llm.stream(...) 聚合流式输出;客户端经 ctx.connection.rpc.call('/api', 'input-optimize/optimize', payload) 调用。README 记载在 DSH 0.2.1-rc.3 桌面端验证。

适用场景与注意

适合经常在 DSH 里写长提示词、又希望沿用当前模型与 reasoning 设置做「润色」的用户。不适合把优化当成自动发送或替代人工审阅——写回后仍应看一眼再发。

边界与排查要点(来自 README):

  • 需要 DSH 提供 conversation.input.right、useInput / inputActions 等标准能力;版本过旧可能出现「宿主未提供 RPC 通道」。
  • 请求在途时若只是改字(未发送),结果会因 draftRev 变化被丢弃,请求仍会跑完;只有内容被发出(含乐观清空)才撤销请求。
  • 看不到按钮:确认草稿非空、Host 日志有 input-optimize: host half ACTIVATED,并刷新页面。

社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本插件是其中一例。

结尾

dsh-input-optimize 把「用当前模型改提示词草稿」收成输入框旁一个按钮,并处理引用 chip、在途发送撤销和空态隐藏等细节。需要安装命令与实现说明时,以仓库 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/DaYePython/dsh-input-optimize
  • GitHub:https://github.com/DaYePython/dsh-input-optimize
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜