dsh-prompt-forecast:Web 输入框里的下一条指令幽灵提示

前言

在 DeepSeek Harness(DSH)里用 Web Composer 和智能体多轮对话时,常见情况是:上一轮刚结束,你脑子里已经有「下一步要说什么」,但还要把那句话完整敲进输入框。Codex、Claude Code 等产品会在空输入框里用灰色幽灵文本猜你下一条可操作消息,按 Tab 即可采纳。DSH 生态里插件可以扩展 Host 与 Client 能力;若你希望 Web 端有同类体验,而不自己改 Composer,可以装社区插件 dsh-prompt-forecast(维护者 littepointR)。下文介绍它做什么、如何安装,以及配置与限制。

这是什么

dsh-prompt-forecast 在 DSH Web Composer 中提供「下一条可操作消息」的幽灵文本预测:一轮对话结束后,由会话所用模型推断你最可能发送的下一句指令,经会话投影推到客户端,在空输入框第一行以灰色文字显示。按 Tab 或 → 写入草稿(不会自动发送);按 Esc 忽略。你开始输入后提示会隐藏,已有输入不会被替换。

插件分类为「模型推理」,当前在 SkillHub 目录页 可查;源码与说明见 GitHub。许可证为 MIT(package.json 当前版本 0.2.4)。

核心功能

预测目标

预测的是下一条可执行的用户消息,而不是对结果的猜测或纯状态汇报。README 举例:运行测试、修复错误、选 A 方案、纠正方向、要求解释超时原因等。纯状态、日志复述、猜测性叙述会被约束拒绝;模型也可回答 NONE。fork 模式在结果不可用时会经后过滤,并在开启 fallback 时退回 digest 路径。

两种预测模式

  1. fork(默认):类似 Codex 的上下文分叉。取当前文本 transcript(含 system/developer 与用户/助手文本,去掉 tool、推理与附件块),再追加一条合成用户轮:Suggest my next message.,单次内存内辅助调用,不创建子会话。token 开销较大,通常需要更大的 timeoutMs。
  2. digest:用紧凑 JSON 摘要(recent_user_messages、latest_assistant_reply、tools_used)加简短 action 导向 system prompt,适合长会话或希望省 token 的场景。

运行方式要点

  • 使用完成本轮对话时所用的路由模型(可回退到 profile 默认),一般无需单独配置 Provider。
  • 在 agent/turn-stopping 边界内生成预测,随本轮结束一并到达客户端,无需轮询;超过 timeoutMs 则丢弃,对话照常结束。
  • 跳过 subagent 会话、以及没有人类输入的轮次;预测失败、中止或变慢时静默失败,不在会话里弹错。

环境与 API 面

要求 DSH 0.2.1-rc.2 及以上且仍在 0.2.x(engines.dsh: ^0.2.1-rc.2)。安装与 profile 启动会校验版本范围,不满足则拒绝加载。插件基于 0.2.1-rc.2 的 conversation.input.overlay、InputActions.captureInsertion() / insertText(),以及由 agent/turn-stopping 喂入的 session projection。DSH 0.3 需等待匹配的插件发行版。

安装与启用

在 web profile 下从 GitHub 安装(包为纯 JavaScript,无额外 build):

dsh plugin --profile web add github:littepointR/dsh-prompt-forecast
dsh web

dsh plugin add 会通过 pnpm 安装并因包声明 dsh.bundle.patch 自动加入 dsh.profile.bundles。重启 profile 后插件才会加载。

固定标签版本示例:

dsh plugin --profile web add github:littepointR/dsh-prompt-forecast#v0.2.4

CLI 不接受 --profile desktop(该 profile 留给 Electron 应用);桌面端请在 Settings → Plugins 中操作,或安装到 CLI 使用的 profile。

本地 checkout 可通过 Plugin Manager 将包目录作为 bundle 目标安装;cordis.patch.yml 会插入 prompt-forecast 行,重启后仍保留。

典型用法

  1. 确保 DSH 版本满足 ^0.2.1-rc.2,并按上一节安装到 web profile 并重启。
  2. 在 Web Composer 中正常与智能体对话;一轮结束且输入框为空时,若预测成功,第一行会出现灰色建议。
  3. Tab 或 →:将建议插入草稿,自行编辑或发送。Esc:忽略。任意键入:隐藏幽灵文本。

可选:在 profile 的 cordis.patch.yml 里为该插件行的 config 覆盖默认行为(见下表)。

字段 默认值 含义
enabled true false 时不注册 Host 半部
mode fork fork 全 transcript + 合成轮;digest 为 JSON 摘要
maxTokens 1024 预测请求输出 token 上限
temperature 0.4 采样温度
timeoutMs 12000 请求硬超时,超时则无建议
maxPromptChars 80 预测文本裁剪长度
maxForkChars 12000 fork 窗口字符预算(system/developer 始终保留)
fallback true fork 无可用文本时重试 digest
maxInputChars 6000 digest 摘要大小上限
skipSubagents true 不对 subagent 会话预测
provider 本轮路由 可显式覆盖
model 本轮路由 可显式覆盖

适用场景与注意

适合:经常在 Web Composer 里连续发短指令的 DSH 用户;希望减少「想好了但还要敲一遍」的摩擦,且接受建议只是草稿、质量依赖当前会话模型。

限制(README 明确):

  • 仅空输入框显示建议;对已有半行草稿的补全不在本版本范围。
  • 采纳只是插入纯文本,不触发发送或工具。
  • 小模型可能给出较泛的跟进句。

安全与信任:插件在当前 DSH 进程权限下运行,预测请求会把 transcript 或摘要发给本轮所用模型路由。安装前请阅读 源码 与 MIT 许可证,并只在可信环境使用。SkillHub 为社区目录站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-prompt-forecast 把「下一条可操作消息」做成 Web Composer 里的 Tab 可采纳幽灵提示,默认 fork 模式对齐 Codex 式体验,也可用 digest 控制成本。需要时按官方命令装入 web profile 并重启即可试用。

  • 目录页:https://www.skillhub.cn/plugins/littepointR/dsh-prompt-forecast
  • GitHub:https://github.com/littepointR/dsh-prompt-forecast
羽毛球分组比赛记分
小程序二维码

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

小夜