dsh-prompt-dock:输入框草稿改写与模板插入

前言

在 DeepSeek Harness(DSH)里写提示词,常见做法是先在输入框里打草稿,再复制到外部编辑器润色,或反复手改同一句话。DSH 社区插件 dsh-prompt-dock(维护者 wnei-f)把改写和模板插入挂在输入框工具行上,与官方模型选择器同一行,改写走宿主 llm 流式接口,并带撤销、会话上下文和若干安全边界。下面介绍它是什么、怎么装、怎么用,以及使用时要注意什么。

这是什么

dsh-prompt-dock 是 DSH 的模型推理类插件(当前版本 1.1.0,MIT 许可证)。它注册在插槽 conversation.input.right(模型选择左侧),对当前输入框草稿提供:

  • AI 改写:更简洁、更详细、结构化、译成英文、自定义等风格;SSE 流式输出、可取消、写入后可撤销,可选附带最近对话上下文。
  • 模板插入:常用提示词模板一键追加到草稿,不经过改写链路。

设置入口在 DSH 侧栏 插件 → dsh-prompt-dock 页面,不再挤在工具行上。目录页:skillhub.cn/plugins/wnei-f/dsh-prompt-dock;源码:github.com/wnei-f/dsh-prompt-dock。

核心功能

工具行布局与交互

工具行从左到右为「风格 / 模板 / 改写」三个独立控件。「改写」为最右侧、紧邻模型选择器,进行中显示转圈与已接收字符数,完成后同一位置变为「↩ 撤销」。

按容器宽度自动降级(默认完整布局阈值 compactThreshold 为 320px):宽屏显示完整控件;变窄后风格与模板可只显示图标;更窄时合并为两级菜单。配置里将 showStyleEntry 或 showTemplateEntry 设为 never 时,直接进入合并布局。

默认快捷键(可在插件配置「快捷键」分组修改,支持在输入框内触发带修饰键的组合):

操作 默认快捷键
打开风格 Alt+M
打开模板 Alt+T
执行改写 Alt+R

浮层打开时仍可用方向键导航选项,Enter 选中且不会发送输入框内容;风格与模板浮层可用 Alt+M / Alt+T 互相切换。浮层打开时 Alt+R 会被拦下,避免误触发改写。

AI 改写

改写通过宿主半调用 ctx.llm.stream 完成,插件自身不声明外网 fetch/socket 权限。模型默认跟随 DSH 全局默认(agentDefaultModel),也可在配置中固定 rewriteProvider / rewriteModel。

内置改写纪律强调「改写器不是需求生成器」:对确认、闲聊类短句可原样或只修语病;对任务类草稿再按风格约束处理,并尽量保留代码、路径、@引用、/命令、数字与 Markdown 结构。改写结果为 AI 辅助生成,需自行核实。

可选 useContext 与 contextRounds(1–20)附带最近对话。超时 timeoutMs 默认 90000,范围 5000–300000。

模板插入

模板正文直接插入输入框,不进入改写的 system prompt。内置示例包括代码审查、解释代码、写测试等,可在配置「模板库」中增删改(单库最多 100 条,字段长度有上限,保存超限会截断)。

安全与边界

  • 芯片保护:草稿含 @文件 / /命令 引用芯片时(以宿主 InputState.occurrences 为准),「改写」置灰并提示。
  • 回环围栏:/api/prompt-dock/* 仅接受本机来源;不宜在把 DSH Web 暴露在反向代理后仍依赖这道围栏。
  • 限流:同一宿主进程内并发改写上限 2,每分钟成功调用上限 10。
  • 变更检测:改写过程中若草稿被改动,结果不会回填。
  • 隐私:草稿不落日志、不落磁盘;插件不读取 API Key。

安装与启用

从 GitHub 安装(仓库已提交 lib/ 构建产物,无需本地构建):

dsh plugin --profile web add github:wnei-f/dsh-prompt-dock
# 重启 dsh web 后生效

也可在 GUI 插件管理中安装。README 说明:改完插件代码后须重启 DSH,仅刷新页面无法加载新客户端 bundle。

兼容范围(见 package.json):dsh 为 >=0.2.0-rc.2 <0.3.0 或 >=0.2.1-0 <0.3.0,已在 0.2.1-rc.2 等版本上标注兼容。

从旧版 ~/.dsh/prompt-dock/settings.json 升级时,首次启动会自动迁移到官方 cordis.patch.yml 配置,旧文件会改名为 settings.json.migrated。

典型用法

  1. 安装并重启 DSH Web 后,在对话输入框工具行确认出现「风格 / 模板 / 改写」。
  2. 在输入框写好草稿;若含 @ 或 / 芯片,需先去掉芯片再改写,或只用模板追加。
  3. 选风格(如「更简洁」)后点「改写」,或按 Alt+R;流式过程中可取消;完成后可用「↩ 撤销」或 toast 提示恢复。
  4. 需要固定话术时,打开「模板」选一条,内容会追加到当前草稿。
  5. 在侧栏 插件 → dsh-prompt-dock 调整模型、上下文轮数、风格库、模板库、工具行显示与快捷键。保存后无需重启即可影响改写行为。

配置写入当前 profile 的 cordis.patch.yml 中 dsh-prompt-dock 的 config 段,示例字段如下(完整说明见仓库 README):

- id: dsh-prompt-dock
  name: dsh-prompt-dock
  config:
    rewriteProvider: deepseek-official   # 空串 = 跟随全局默认
    rewriteModel: deepseek-chat
    timeoutMs: 90000
    useContext: true
    contextRounds: 6
    showStyleEntry: auto
    showTemplateEntry: auto
    compactThreshold: 320
    shortcutStyle: Alt+M
    shortcutTemplate: Alt+T
    shortcutRewrite: Alt+R

适用场景与注意

适合:经常在 DSH 输入框里打磨提示词、希望用同一套纪律做「简洁 / 结构化 / 译英」等改写,或需要可编辑模板库一键插入的开发者。

注意:

  • 插件以当前 DSH 进程权限运行;安装前建议阅读 源码与 LICENSE,确认权限声明(如 process.child_process 仅用于打开 profile 下的 cordis.patch.yml)符合你的环境。
  • 改写会把当前草稿发往你在 DSH 中配置的模型;首次点击「改写」会有告知,关闭后不再提示。
  • 社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本插件是社区维护的独立组件。

结尾

dsh-prompt-dock 把提示词改写和模板插入收进输入框工具行,流式改写、可撤销、上下文与芯片保护、回环接口和限流都在 README 里写明了行为边界。若你在用 DSH 0.2.x 做智能体或对话开发,可按上文命令安装,在插件页调模型与风格库后直接在草稿上迭代。

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

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

Xiaoye