DSH Draft Optimizer:用默认模型原地优化草稿的插件

前言

DeepSeek Harness(DSH)在桌面端提供插件扩展能力。当你在输入框中编写提示词草稿时,如果希望在不丢失原意的前提下,让当前默认模型帮忙把草稿变得更完整、更清晰,可以直接调用模型能力进行优化,而不是反复手动改写。DSH Draft Optimizer 插件提供了这个能力:点击一个按钮,用当前默认模型优化草稿,并原地替换——绝不自动发送。

这是什么

DSH Draft Optimizer 是一个为 DeepSeek Harness(DSH)客户端打造的输入框草稿优化插件,由 xiong356 维护。它通过在输入框下方添加一个 ✦ 按钮,让用户一键用当前默认模型优化提示词草稿,优化结果原地替换,需要用户检查后再手动发送。插件的核心价值在于:在保持原意与话题方向的前提下,提升草稿的表达质量与可执行性。

核心功能

  • 一键优化:在输入框下方显示 ✦ 按钮,点击后用当前默认模型优化当前草稿。
  • 原地替换:优化完成后直接替换输入框中的文本,不自动发送。
  • 保持原意:优化结果保持原有的中文/英文语言风格与话题方向。
  • 状态反馈:支持忙碌 spinner、空草稿禁用、成功 ✓、失败保留原稿并提示、草稿冲突不覆盖。
  • 指令嵌入:优化指令直接嵌入消息本体,不依赖 system 字段是否被转发。
  • 自适应文案:中英文案根据 navigator.language 自适应,浅色/深色主题根据 --dsw-alias-* token 自适应。

安装与启用

在桌面端完成安装后,重启 DSH 即可生效(宿主代码在启动时加载)。

从源码目录安装(开发模式,junction 链接,改源码立即生效,仅需重启宿主):

dsh plugin --profile desktop add dsh-draft-optimizer@link:D:/path/to/dsh-draft-optimizer

或通过支持本地 bundle 安装的插件管理器界面,选择本仓库根目录安装。

源码树内需要一个可解析的 zod(Node 按 JS 文件的真实路径解析依赖):本地开发请在插件目录执行 pnpm install,或在 profile 依赖中声明 zod(与 dsh-cost-meter 相同的模式)。

典型用法

  1. 在输入框输入提示词草稿(不要发送)。
  2. 点击输入框下方的 ✦ 按钮。
  3. 草稿被原地替换为优化后的提示词,检查后手动发送。

无配置项。优化调用消耗你当前配置的默认模型额度。

工作机制

  • 客户端(lib/client.js):注册 conversation.composer.dock 插槽条目(id draft-optimizer,order 90),点击时读取草稿 → 经 Typert RPC 调用宿主 → 成功后 inputActions.setDraft() 原地替换。
  • 宿主(lib/index.js):promptOptimizer 服务(现 draftOptimizer),读取 agentDefaultModel.currentSelection(),经 llm.stream() 流式生成;Typert 清单在 lib/typert.host.js。
  • 优化请求仅含一条 system + 一条 user(指令 + 三引号包裹的草稿),不携带会话历史。

隐私与限制

  • 草稿文本会发送至你自己配置的 LLM 提供商(这是功能本质)。
  • 不参考对话历史 / 附件 / 变量占位符;指代不明(如“按刚才的方案”)需先在草稿中补全。
  • 无遥测、无任何网络回传,仅本地 RPC。
  • 当前版本刻意不整合上下文,避免模型把历史当成任务背景去“回答”而非“优化”。

开发与安全

  • 语法检查:node --check lib/*.js。
  • 测试:npm test / node tests/manifest.test.mjs。
  • 修改宿主侧逻辑后必须重启 DSH 才生效;客户端逻辑修改在支持 HMR 的页面刷新后生效。

插件遵循 MIT 许可证。欢迎提交 Issue 与 PR,请阅读 CONTRIBUTING.md。

适用场景与注意

  • 适合需要快速打磨提示词、提升表达质量的 DSH 桌面端用户。
  • 插件以当前 dsh 进程权限运行,安装前建议查看源码与许可证。

结尾

DSH Draft Optimizer 让你用默认模型原地优化草稿,减少反复改写的成本,同时保持对输出的完全控制。访问 GitHub 了解更多。

羽毛球分组比赛记分
小程序二维码

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

小夜