前言¶
在 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。
典型用法¶
- 安装并重启 DSH Web 后,在对话输入框工具行确认出现「风格 / 模板 / 改写」。
- 在输入框写好草稿;若含
@或/芯片,需先去掉芯片再改写,或只用模板追加。 - 选风格(如「更简洁」)后点「改写」,或按
Alt+R;流式过程中可取消;完成后可用「↩ 撤销」或 toast 提示恢复。 - 需要固定话术时,打开「模板」选一条,内容会追加到当前草稿。
- 在侧栏 插件 →
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