dsh-composer-autocomplete: Harnessing Tab-based Autocompletion in Web Input Fields

前言

在 DeepSeek Harness(DSH)里和智能体对话,大部分时间花在聊天输入框:续写半句话、在助手回复后组织下一条指令。原生 Composer 不会根据上下文给出可采纳的草稿,只能自己一字字打满。社区插件 dsh-composer-autocomplete 挂在 Web 客户端原生 Composer 上,用灰字 ghost text 做行内续写和「下一句」预测,Tab 采纳为可编辑草稿,不会自动发送消息。下面介绍它的能力、安装方式与使用注意。

这是什么

dsh-composer-autocomplete 由维护者 liangzhiyu 发布,许可证为 MIT,在 SkillHub 等社区目录中归类为客户端相关能力(仓库 catalog 标注为 ui)。它面向 DeepSeek Harness Web 的原生聊天输入框,增加:

  • 输入停顿后的草稿续写(inline ghost text)
  • 助手回合结束后、输入框为空时的下一条消息建议
  • 键盘采纳与多候选切换(Full 模式下最多三个候选)

预测默认走当前会话里已配置的模型路由,会消耗该服务的 token;插件不单独存储 API Key。采纳后插入的是可继续编辑的文本,发送仍由用户自己完成。

核心功能

两种预测场景

  1. 空输入框:助手回复结束后,预测你可能发送的下一条消息。
  2. 草稿续写:光标在末尾、停顿一段时间后,请求对当前草稿的续写。默认停顿 150 ms(可在设置中改为 100–5000 ms;若从未保存过偏好,才用 150 ms;从旧版升级后若仍保留 300 ms,需在设置里手动选 150 ms)。

键盘与交互

操作 行为
Tab 采纳第一个完整候选;后续候选可能仍在生成。与中文 IME 组合输入冲突时,Tab 归输入法所有。
Esc 关闭当前建议;改草稿后可重新预测。
Alt+↓ / Alt+↑ 在 Full 模式下在最多三个候选间切换。

Agent 运行中会暂停预测;不会干扰原生 /command 与 @reference 菜单。显示建议时原生光标仍可见;采纳后光标在插入文本末尾。

Fast 与 Full

  • Fast(默认):一个候选,更少上下文、更短输出预算,延迟更低(README 中 0.2.3 在 150 ms 停写下测得首段 ghost 中位约 256 ms)。
  • Full:保留多个候选及 cordis.patch.yml 里配置的上下文上限。

若你输入的文字已是某候选的精确前缀,会本地复用剩余文本,不再发起模型请求(README 称匹配已有候选约 11 ms,无网络)。

设置入口

Settings → General → Composer predictions:总开关、预测模式、Fast/Full、输入停顿。偏好保存在当前浏览器本机。切换会话会在绘制前清掉建议并重置 IME 与关闭状态;每个候选绑定会话、草稿与请求,避免迟到的响应出现在别的视图。

安装与启用

环境要求:Node.js ≥ 24.9、已安装 DeepSeek Harness;README 写明在 Harness 0.2.1-rc.2 Web 上测试过。插件声明的 dsh 引擎范围为 >=0.2.1-rc.2 <0.3.0-0。

从 GitHub Releases 安装预构建包(资料中的命令对应 v0.2.3):

dsh plugin --profile web add https://github.com/liangzhiyu/dsh-composer-autocomplete/releases/download/v0.2.3/dsh-composer-autocomplete-0.2.3.tgz
dsh web

安装或更新后需重启正在运行的 Harness 实例。官方桌面应用可通过其插件安装 UI 选择本地包,或用捆绑的 dsh 管理 desktop profile;README 说明桌面 shell 未测试,插件使用的是 Web 客户端上的 native composer 插槽。

卸载:

dsh plugin --profile web remove dsh-composer-autocomplete

重启相关实例。浏览器里的偏好会保留;要在开发者工具中删除 dsh-composer-autocomplete.* 本地存储键才能重置。

模型与高级配置

预测复用会话的模型路由与宿主认证;近期对话、工具活动与当前草稿会发给该模型并消耗 token。这些辅助调用不会作为对话消息出现,也不计入会话界面展示的 token 用量。使用前请在 Harness 中配置可用模型。

可在 profile 的 cordis.patch.yml 中覆盖宿主参数。若主对话用的是慢思考模型,可单独为预测配置更快的 provider 与 model,主对话模型不变。Fast 模式会把上限压到:1 个候选、6 条消息、4000 上下文字符、2 条 tool notes、96 输出 token;Full 模式使用下面配置项中的限制。

- id: composer-autocomplete
  config:
    maxOutputTokens: 220
    timeoutMs: 20000
    maxMessages: 10
    maxChars: 8000
    maxSuggestions: 3
    maxToolNotes: 6
    cacheTtlMs: 60000
    maxCacheEntries: 200
    # Set both to use a dedicated prediction model; otherwise use the session route.
    # provider: your-provider
    # model: your-model
    # reasoningEffort: off

README 中的延迟表针对确定性本地测试模型,衡量的是本地 UI/SSE 管线,不代表 DeepSeek 云端速度;实际上还受网络、首 token 时间等影响。更短的停顿会增加请求频率,可在设置里加长停顿。

适用场景与注意

适合:主要在 DSH Web 里写长指令、反复续写同一段草稿,希望 Tab 快速填入可编辑下一句或补全的用户。

注意:

  1. 插件以当前 DSH 进程及 Web 客户端权限运行;安装前建议阅读 GitHub 仓库 源码与 MIT 许可证,确认接受向会话模型发送草稿与上下文。
  2. 社区目录(如 SkillHub)是独立站点,与 DeepSeek / 幻方无官方从属关系;安装命令以 README 发布的 Release 包 URL 为准,不要凭仓库名自行拼接未文档化的 add 形式。
  3. 文本插入走 Harness 公开 input actions;若插入被拒绝,不会覆盖现有草稿。
  4. 桌面客户端未经作者测试,Web 是主要目标环境。

结尾

dsh-composer-autocomplete 把 IDE 里常见的 Tab 补全思路接到 Harness Web Composer:灰字续写、回复后的下一句预测、Esc 与 Alt 方向键切换候选,采纳后不自动发消息。需要时可从 Release 安装 v0.2.3 包,在 Composer predictions 里调 Fast/Full 与停顿。

  • 社区目录页:https://www.skillhub.cn/plugins/liangzhiyu/dsh-composer-autocomplete
  • 源码与文档:https://github.com/liangzhiyu/dsh-composer-autocomplete
羽毛球分组比赛记分
小程序二维码

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

Xiaoye