前言¶
在 DeepSeek Harness(DSH)里连续和 Composer 对话时,下一条指令往往得自己从头敲,或者从上一轮记忆里回忆措辞。社区插件 dsh-next-step(维护者 LmaoAgent)换了一种做法:当你清空输入草稿后,在输入区以灰色幽灵文本显示系统推测的「下一条消息」;按 Tab 接受,删掉草稿后提示会再出现。推测不会写入会话历史,也不改变正式对话记录。
下面介绍插件定位、工作机制、安装步骤和配置,便于在本地核对后再启用。
这是什么¶
dsh-next-step 是面向 DSH Web Composer 的客户端插件(dsh.bundle.patch 包,带浏览器侧逻辑)。它在每轮对话之后、输入为空时,向本地小服务请求一条短建议,并叠加在 [data-composer-input] 附近显示。当前 npm 包版本为 0.2.0,许可证 MIT,运行环境要求 Node.js >= 22(见仓库 package.json)。
核心功能¶
已核实能力如下,均来自项目 README:
- 灰色幽灵建议:输入框为空时显示推测的下一条用户消息;灰色显示,直到你按
Tab采纳。 - 草稿交互:接受后内容进入可编辑输入;清空草稿后,建议会在轮询周期内再次出现。
- 本地预测服务:浏览器侧监视 Composer;草稿为空时约每 15 秒 向本地 HTTP 服务要一次建议。服务根据
sessionId读取~/.dsh/sessions下该 Session 的日志,用最近一条人类消息与助手回复做上下文(注入类上下文如 AGENTS.md 会被排除)。 - 可选模型调用:设置
DEEPSEEK_API_KEY时,服务发起一次体量很小的模型请求(reasoningEffort: off,输出最多约 160 token);未配置密钥时使用零 token 的启发式续写(README 举例为类似「继续完成下一步」的通用句式)。 - 与 Harness 集成:通过 Plugins 安装并启用后,由 Harness 的 MCP 客户端拉起服务,一般无需手动起进程;也可全局安装 npm 包后自行
npx dsh-next-step。
工作机制简述¶
插件之所以拆成「浏览器半部 + 本地服务」,是因为从 Plugins 面板安装的 bundle 无法在 Host 侧直接 import Harness 包;预测因此放在本机小服务里完成。流程可以概括为:
- 浏览器半部发现 Composer 草稿为空,按固定间隔(15 秒)携带
sessionId请求本地服务。 - 服务读 Session 日志,取最近人机文本,排除注入上下文后生成建议字符串。
- 有 API Key 时走
deepseek-chat(可通过环境变量改模型);否则走启发式。 - 返回的文本只用于输入框叠加显示,不进入对话历史。
安装与启用¶
安装命令以仓库 README 为准,不要凭插件名拼接未在文档出现的 dsh plugin add 形式。
1. 可选:全局安装 npm 包(便于手动跑服务)
npm install -g dsh-next-step # optional: run the service by hand
2. 在 DSH 里安装并启用插件
在 DeepSeek Harness 中打开 Plugins → Add plugin,输入 dsh-next-step,安装、启用并重启应用。README 说明:bundle 会通过 Harness MCP 客户端启动服务,通常不用手起进程。
若改用手动方式,可执行:
npx dsh-next-step
终端会打印类似 next-step: http://127.0.0.1:61760 的监听地址(默认端口见下文配置表)。
3. 验证
新建 Session,发送一条消息后清空输入框;README 写明约 15 秒内 应出现灰色建议。
配置项¶
| 变量 | 默认值 | 含义 |
|---|---|---|
NEXT_STEP_HTTP_PORT |
61760 |
浏览器半部访问的本地服务端口 |
DEEPSEEK_API_KEY |
未设置 | 配置后启用模型建议;否则仅用启发式 |
NEXT_STEP_MODEL |
deepseek-chat |
建议所用模型 |
NEXT_STEP_LOCAL_ONLY |
未设置 | 设为 1 时即便有 Key 也强制启发式 |
典型用法¶
README 给出的可复现场景:
- 正常与 Composer 完成一轮对话。
- 将输入框内容全部删掉,保持为空。
- 等待轮询(最多约 15 秒),阅读灰色幽灵文本是否为合理的「下一条指令」。
- 若采纳,按
Tab将建议填入输入框,再按需修改后发送;若暂不采纳,直接输入自己的内容即可覆盖灰色提示。
示意图(逻辑与 README 一致):输入区曾显示例如「帮我看看当前项目的结构」一类文案,在按 Tab 之前以灰色幽灵形式存在。
适用场景与注意¶
适合谁
- 经常在同一 Session 里做多步任务、下一句指令模式相对固定的 Harness 用户。
- 愿意在本地跑一个小 HTTP 服务,并可选配置 DeepSeek API Key 以获得更贴上下文的建议。
已知限制(README)
- 必须有本地服务:第三方 bundle 暂不能在 Host 侧直接调模型,平台能力缺口见 deepseek-harness discussion #12742。
- 轮询而非即时:建议每 15 秒刷新,并不保证严格对齐
turn/end时刻。 - 叠加位置:幽灵文本依赖测量
[data-composer-input],多行草稿或主题变化可能导致偏移。 - 无 Key 时较泛化:启发式模式只能给出较通用的续写,深度依赖对话语义时需配置
DEEPSEEK_API_KEY。
安全与权限
插件以当前 DSH 进程及你所启用的本地服务权限运行,会读取 ~/.dsh/sessions 下对应 Session 日志;安装前请在 GitHub 查看源码与 MIT 许可证,确认是否符合你的环境与合规要求。DSH 生态强调「一切皆插件」;社区目录站点与 DeepSeek / 幻方无官方从属关系,本文所述安装与配置均以 LmaoAgent/dsh-next-step 仓库文档为准。
结尾¶
经过上面的步骤,你可以在 Composer 空草稿时用 Tab 快速采纳「下一句」建议,减少重复措辞成本。进一步了解与安装入口: