鱼皮AI导航
鱼皮AI导航
  • 主页
  • 社区
  • AI工具
  • AI知识库
  • AI提示词
  • MCP
  • Skills
  • AI学习资源
  • AI资讯
  • GitHub开源
登录/注册

dsh-suggest-ghost

DSH Web 输入预测插件:回合结束后 LLM 生成下一条建议,输入框空草稿时以幽灵文本渲染,输入时按会话历史做前缀补全,Tab / 方向键采纳。

界面增强
访问 GitHub
文档README
dsh-suggest-ghost — ghost autocomplete for DeepSeek Harness Web

dsh-suggest-ghost

English | 简体中文

DeepSeek Harness Web 输入预测插件:回合结束后用一次辅助 LLM 调用预测你的下一条提示词,草稿为空时以幽灵文本显示在输入框里;输入过程中则从当前会话历史找前缀补全。Tab 整条采纳,→ 逐词采纳。

这是什么

纯插件挂载(host 监听回合事件 + client 端 DOM overlay),不改 DSH 任何核心代码。两个模式自动切换:

  • LLM 下一条建议(草稿为空):每个回合完成后,把最后一轮对话脱敏后发给建议模型(默认继承主请求路由,不额外配置),产出一条「你大概率会输入的下一句」——Claude Code 同款体验。
  • 历史前缀补全(草稿非空):zsh autosuggestions 式——从会话历史找前缀命中项,按新近度为主、会话内频次与跨会话热度为辅打分取最优,灰色显示剩余部分。全/半角标点、空白、大小写差异不影响匹配。

幽灵文本是 DOM overlay 近似渲染(跟随输入框字体、跟随滚动),不依赖官方 setGhost 输入机能力,rc.6 即可运行;中文输入法组合期间不拦截按键。

效果预览

实操演示:逐字输入,幽灵浮现,Tab 一键采纳

① 历史前缀补全(草稿非空)——输入「列出 do」,幽灵自动补全这条历史消息的剩余部分:

历史前缀补全实拍

② LLM 下一条建议(草稿为空,回合结束自动预测下一步):

LLM 下一条建议实拍

深色文字 = 已输入;灰色 = 幽灵建议。Tab 整条采纳,→ 逐词采纳。幽灵文本跟随输入框字体与滚动渲染,不遮挡、不抢焦点;不合意就无视它,继续打字即消失——零成本。

安装

npm 安装(推荐,预构建产物,无需授权):

▼
bash
复制代码
dsh plugin --profile web add dsh-suggest-ghost

从 GitHub 一行安装(构建产物已随仓库提交,无需本地构建):

▼
bash
复制代码
dsh plugin --profile web add "github:WuJiaoJue/dsh-suggest-ghost"

或者源码方式:

▼
bash
复制代码
git clone https://github.com/WuJiaoJue/dsh-suggest-ghost.git cd dsh-suggest-ghost && pnpm install && pnpm run build dsh plugin --profile web add .

装完重启 dsh web,页面 Ctrl+Shift+R 硬刷新。开箱即用,无需任何配置。

配置

全部设置在 Settings → Plugins 面板的 Suggest ghost 卡片,保存后即时生效: 卡片文案(字段 label/hint、按钮、徽章)跟随宿主 DSH 界面语言(中文 / English), 设置页切换语言后实时跟随,无需刷新;旧宿主无 locale 服务时回退中文。

分组字段
LLM 下一条建议启用开关、输出令牌上限、建议字符上限、参考回合数、转录字符预算、超时(毫秒)、采纳快捷键、provider / model 路由(留空继承主请求)
历史前缀补全启用开关、跨会话搜索、最大历史条目、最少输入字符、逐词采纳

也可以在 cordis.patch.yml 按 id 覆盖(作为上述项的初始值):

▼
yaml
复制代码
- id: suggest-ghost config: maxInputBytes: 4096 # 框架化用户提示字节上限 maxOutputTokens: 512 # 建议输出令牌上限 timeoutMs: 60000 # 辅助请求截止时间(毫秒) maxRecentTurns: 1 # 送入建议模型的最近完成回合数 maxTranscriptChars: 12000 # 转录字符预算 maxSuggestionChars: 240 # 建议可见字符上限 acceptKey: Tab # 采纳快捷键 llmEnabled: true # LLM 建议开关
Suggest ghost 设置卡片(Settings → Plugins)

安全

  • 只把最后一轮对话发给建议模型,发送前自动脱敏常见凭据;输出经净化,不合格回复静默丢弃
  • 全程有界:输入字节 / 输出 token / 超时封顶;同回合防重入,新回合作废旧生成,卸载即中止在途请求

兼容性

在 dsh 0.1.0-rc.6 上开发验证;client 端写法已兼容 rc.7 的严格门控 context。升级宿主版本后建议回归一遍幽灵显示与设置卡片。

开发

▼
text
复制代码
src/index.ts host 入口:turn/end(completed) → 有界生成建议 src/generate.ts 转录提取 → 脱敏 → ctx.llm.stream → 净化 src/sanitize.ts 脱敏 / 净化 / 语义过滤 / 截断(纯函数) src/settings.ts settings 命名空间 + host→client 实时推送通道 src/hotness.ts 跨会话热度表(增量去重、内存上界) src/projection.ts suggestGhost 投影 last-wins fold src/client/ 幽灵渲染、历史匹配、逐词切分、快捷键、设置卡片 scripts/ 冒烟测试与会话日志回放
▼
bash
复制代码
pnpm run build # tsc 编译 host + esbuild 打包 client → lib/ pnpm run test:smoke # 纯函数冒烟测试 pnpm run replay # 用真实会话日志回放补全管线

已知限制

  • 跨会话热度表是内存态:DSH 重启后从零累积(会话内历史补全不受影响)
  • LLM 建议只覆盖当前会话;把其他会话文本并作候选需开启「跨会话搜索」
  • 每个完成回合都会调一次建议模型(与输入框是否有内容无关),不需要时可在设置里关闭省 token

许可

MIT © wujue。安全与生成管线参考 dsh-suggest-prompt(MIT)实现。

界面增强

快捷安装

复制到终端去安装插件

dshplugin--profilewebaddgithub:WuJiaoJue/dsh-suggest-ghost

温馨提示

装插件等于在本机跑第三方代码,权限与你相同,能读文件、用凭据、访问网络,工具审批管不到。请只装可信来源,并尽量锁定 commit。

站长:程序员鱼皮 老鱼简历 商务合作 增值电信业务经营许可证
2026 鱼皮AI导航 | 沪ICP备19026706号-6
站长:程序员鱼皮 老鱼简历 商务合作 增值电信业务经营许可证
2026 鱼皮AI导航 | 沪ICP备19026706号-6
dsh 插件推荐
DSH-agent-bridge
在 Web 输入框中切换原生 DSH Agent 与 Grok Build,并通过 ACP 代理 Grok Build 会话及斜杠命令。
dsh-gui-hanhua
DeepSeek Harness 界面信息汉化插件:工具调用卡片、插件列表、命令菜单与权限选择器显示中文,保留英文原名。
ai-plugin#dsh-plugin
aipx 工具包:技能之外还有 Hub Console 控制台——用约 4 个元工具代理全部 MCP 服务器,含服务器池健康、工具级启停、工具目录,以及直观展示 mcp_search 返回结果的搜索试验场。
dsh-gpu-pulse
DSH Web 界面内置的悬浮 GPU 监控:紧凑可拖动的条带,每张独立 GPU 一行(精确名称、利用率、显存、温度、功耗),数据来自 nvidia-smi;侧边面板或侧边卡片打开时保持在最上层;驱动支持时还列出显存占用最高的进程;无 NVIDIA 驱动的机器会退化为 n/a 胶囊。
dsh-sticky-notes
泡泡猫的即时便签 — 支持彩色标签、置顶、定时提醒与密码保护。
🔥热门工具
朱雀AI检测朱雀AI检测
朱雀AI检测助手朱雀AI检测助手
LovartLovart
老鱼简历老鱼简历
WritePass官网WritePass官网
面多多面多多
CursorCursor
星月写作星月写作
零感AI零感AI
墨得问题墨得问题