在 DeepSeek Harness(DSH)Web 端开发或调试时,输入框是核心交互区。面对长对话或连续任务,手动重复输入相同前缀或猜测下一步提示词容易打断思路。现有的方案通常依赖外部工具,无法直接集成在 DSH 的原生流程中。
下面介绍 dsh-suggest-ghost。这是 WuJiaoJue 维护的一个客户端插件,通过回合结束后的辅助 LLM 调用和会话历史前缀匹配,为 DSH 输入框提供输入预测与自动补全能力。
核心能力¶
该插件通过两种模式提升输入效率:
- LLM 幽灵建议:回合结束后,插件会利用辅助 LLM 预测你极可能输入的下一句话。这基于最后一轮对话脱敏后的内容生成。建议以幽灵文本显示,按 Tab 键可整条采纳。
- 历史前缀补全:在输入过程中,插件会从当前会话历史中查找前缀匹配项。这类似于 zsh autosuggestions 的行为,支持按 Tab 键整条采纳,或按 → 键逐词采纳。
- 渲染方式:幽灵文本使用 DOM overlay 近似渲染,不依赖 DSH 官方的
setGhost输入机能力,支持中文输入法组合期间不拦截按键。 - 跨会话管理:支持跨会话搜索与热度管理。热度表会持久化存储,重启后恢复,并可对高频短语进行固定或删除操作。
安装与启用¶
安装过程直接通过 DSH 插件命令完成。确保你当前的环境已安装 DSH,并处于 Web Profile。
dsh plugin --profile web add "github:WuJiaoJue/dsh-suggest-ghost"
安装完成后,重启 DSH Web 客户端。页面加载完成后,插件即可在设置中找到。
配置¶
所有配置项集中在 Settings → Plugins 面板的 Suggest ghost 卡片中。
LLM 下一条建议¶
控制回合结束后的自动预测行为。可配置项包括:
- 启用开关:开启或关闭 LLM 预测。
- 输出令牌上限:限制建议生成的最大 token 数。
- 采纳快捷键:设置采纳建议的快捷键(默认为 Tab)。
- Provider/Model 路由:建议模型默认继承主请求路由,此处可覆盖。
历史前缀补全¶
控制输入时的自动补全行为。可配置项包括:
- 启用开关:开启或关闭历史补全。
- 跨会话搜索:开启后,历史补全会搜索跨会话的记录。
- 逐词采纳:开启后,→ 键将逐字采纳补全内容。
热度管理¶
管理跨会话高频短语。支持将短语设为固定(不参与淘汰)、删除或新增。所有操作即时生效。
也可以在项目根目录的 cordis.patch.yml 中覆盖默认配置:
- id: suggest-ghost
config:
maxOutputTokens: 512 # 建议输出令牌上限
acceptKey: Tab # 采纳快捷键
llmEnabled: true # LLM 建议开关
兼容性与安全¶
兼容性¶
该插件经过实测,兼容 DSH 的两代内核:
- DSH 内核 0.1.1-rc.2
- DSH 内核 0.1.2-rc.1
注意:插件对 peer 依赖的版本写法是严格的枚举(^0.1.1-rc.2 || ^0.1.2-rc.1),而非区间范围。这意味着上游每发布一个新的 rc 代次,peer 依赖需要补一个枚举项,否则安装期会因 peer 不满足而失败。
安全¶
插件内置了安全机制:
- 数据脱敏:发送给建议模型前,会自动脱敏常见凭据。
- 有界限制:输入字节、输出 token 和超时均设有封顶。
- 防重入:同回合防重入,新回合作废旧生成,卸载即中止在途请求。
适用场景¶
- 需要快速连续输入相似提示词的开发场景。
- 希望利用 LLM 上下文能力自动补全下一句的交互场景。
- 需要在 DSH 中维护常用短语(热度管理)的场景。