dsh-composer-predictions:DeepSeek Harness 的输入预测与 Tab 补全插件

前言

在使用 DeepSeek Harness(DSH)进行对话或编写 Prompt 时,除了等待模型回复,还需要自己构思下一条消息或完成草稿的续写。手动输入效率有限,而现有的一些预测插件要么只支持单一模式,要么在切换候选时需要离开键盘。下面介绍一个同时支持「下一条消息建议」和「输入时续写」的客户端插件,它使用 ghost-text 的方式在输入框内展示候选,并通过键盘操作完成选择。

插件定位

  • 名称:dsh-composer-predictions
  • 维护者:Stijnus
  • 类型:客户端插件
  • 核心价值:在 DSH 的 composer 中提供 Tab 自动补全与输入预测,包括回复后的下一条消息建议、输入停顿时的续写,以及通过键盘切换候选。

核心功能

1. 下一条消息建议

在 Agent 回复结束后,空输入框会以灰字流式显示下一条消息的建议。Tab 键可以将该建议采纳为可编辑草稿。

2. 输入时续写

在输入过程中暂停并让光标停留在草稿末尾时,插件会在光标处显示续写建议。这用于补全句子或段落,不会自动发送。

3. 键盘候选切换

  • Tab:接受当前候选,将其变为可编辑草稿,不发送。
  • Alt + Down / Alt + Up:在最多三个候选之间切换。
  • Escape:关闭建议列表。
  • 输入任意字符:取消正在进行的请求并隐藏 ghost。

4. 流式渲染

建议文本会流式渲染,Tab 提示在最终候选就绪时出现。当前版本使用 Server-Sent Events(/v2)接口。

5. 设置控制

在 Settings → General → Composer predictions 中可开关预测功能。设置保存在当前浏览器或桌面窗口的本地存储中,其他来源和设备保持各自的偏好。

安装与启用

系统要求

  • DSH 版本:>=0.2.1-rc.3 <0.3.0-0
  • 支持平台:桌面端与 Web GUI

安装方式

方式一:通过插件界面

  1. 在 DeepSeek Harness 中进入「Plugins → Install」。
  2. 输入插件名:
dsh-composer-predictions
  1. 重启 Harness(或刷新 Web UI)。

方式二:通过 CLI(需指定 profile)

dsh plugin --profile web add dsh-composer-predictions

把 web 换成自己的 profile 名称。插件会在下一次启动时生效。

方式三:添加市场索引

在「Plugins → Discover → Index sources」中添加:

https://raw.githubusercontent.com/Stijnus/dsh-composer-predictions/main/market-index.json

使用流程

  1. 发送一条消息并等待 Agent 回复。
  2. 空输入框中出现下一条消息的 ghost 建议,带 Tab 键提示。
  3. 或者输入草稿并暂停,光标末尾出现续写 ghost。
  4. 当 Tab 出现时:
    - 按 Tab 将候选转为可编辑草稿。
    - 按 Alt + ↓ / Alt + ↑ 切换候选。
    - 按 Escape 或开始输入以关闭 ghost。
  5. 编辑草稿后,由你自己按 Enter 发送。插件不会自动提交。

工作原理

插件分为 Host 和 Client 两半:

  • Host 半:在 Harness Web 服务器上注册两个路由:
  • POST /composer-prediction:兼容旧客户端的 JSON 接口。
  • POST /composer-prediction/v2:Server-Sent Events 流式接口。

请求携带 { sessionId, mode, draft },其中 mode 为 next 或 continue。Host 读取会话尾部消息,添加最近的工具调用及其结果,构建一个受限的 prompt。模型输出被分割为最多 maxSuggestions 个干净的一行候选。

  • Client 半:注册到 conversation.input.overlay,负责:
  • 对请求进行去抖动(回复结束 600ms、打字暂停 500ms 后发送)。
  • 取消被后续请求覆盖的请求。
  • 在空 composer 或光标位置渲染 ghost,并跟随编辑器的内边距、行高和滚动位置。

  • 缓存:结果按会话序列(next 模式)和草稿(continue 模式)缓存,避免重复调用模型。

  • 不记录日志:预测请求不会写入会话日志,也不计入对话轮次和 token 统计。

与其他预测插件的差异

特性 dsh-composer-predictions dsh-composer-prediction dsh-input-prediction dsh-ghost-prompt
回复后建议下一条消息 ✅ ✅ ✅ ✅
输入时续写(光标处) ✅ — ✅ —
多候选(一行) ✅ 最多 3 个 — ✅ 1–3 个芯片 —
键盘切换候选 ✅ Alt+↓ / Alt+↑ — —(点击芯片) —
采纳为可编辑草稿 ✅ ✅ Tab 编辑草稿;芯片点击发送 ✅
流式渲染 ✅ SSE (/v2) 未文档化 ✅ ✅
缓存 ✅ 按轮次 + 草稿 ✅ ✅ 未文档化

如果只需要回复后的下一条消息建议,dsh-composer-prediction 是更成熟的选择。本插件适合同时需要输入时续写和键盘候选切换的场景。

适用场景与注意

  • 适用人群:频繁使用 DSH 编写 Prompt 或进行多轮对话的开发者。
  • 权限:预测使用与 DSH 应用相同的已认证所有者访问权限。
  • 生态说明:DSH 采用「一切皆插件」的理念,本目录页与 GitHub 仓库由社区维护,与 DeepSeek 或幻方无官方从属关系。

安装前建议检查源码与许可证(MIT)。

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

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

Xiaoye