🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

指令预测补全 Dogtiti/dsh-plugin-composer-predict

DeepSeek Harness
Dogtiti8 天前有提交已提供中文文档扫描:含敏感能力

预测你的下一条指令,按 Tab 填入输入框

30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Dogtiti/dsh-plugin-composer-predict
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · ui
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 8 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 5 处,展示前 5 条)
  • 写入本地文件
    index.js:70
    void appendFile(REPORT_FILE, line, 'utf8').catch(() => {})
  • 写入本地文件
    index.js:82
    void appendFile(REPORT_FILE, line, 'utf8').catch(() => {})
  • 写入本地文件
    index.js:101
    await appendFile(REPORT_FILE, line, 'utf8')
  • 发起网络请求
    client.js:115
    await fetch(new URL(REPORT, document.baseURI), {
  • 发起网络请求
    client.js:133
    const response = await fetch(new URL(ROUTE, document.baseURI), {
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

给 DeepSeek Harness 输入框做 Codex 风格的下一条指令预测:按 Tab 采纳建议,建议以输入框占位符的形式显示。

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-composer-predict 根据当前对话预测下一条用户指令,直接显示在输入框的占位文字里;按 Tab 采纳为可编辑草稿。 效果 会话空闲且输入框为空时,原生提示文字会换成一条建议: - 发消息或创建任务, / 调用指令, @ 文件或对话 + 跑一下测试 按 Tab 或点击即可填入输入框(光标停在末尾),不会自动发送。 建议由当前会话正在使用的模型生成: | 上下文 | 建议 | | 刚完成一次代码修改 | 跑一下看看效果 | | 测试报告显示 3 个失败用例 | 先修掉这三个失败用例 | 安装 市场索引 https://raw.githubusercontent.com/Dogtiti/dsh-plugin-composer-predict/main/market-index.json 设置 → 插件 → 启用实验性市场 bundle → Discover → 添加上面的地址 → 安装 dsh-plugin-composer-predict。 npm npm i dsh-plugin-composer-predict 在 Plugins 页用「添加」填写包名。
展开完整文档(README 剩余 1 节)
dsh-plugin-composer-predict

根据当前对话预测下一条用户指令,直接显示在输入框的占位文字里;按 Tab 采纳为可编辑草稿。

效果

会话空闲且输入框为空时,原生提示文字会换成一条建议:

- 发消息或创建任务, / 调用指令, @ 文件或对话
+ 跑一下测试

按 Tab 或点击即可填入输入框(光标停在末尾),不会自动发送。

建议由当前会话正在使用的模型生成:

| 上下文 | 建议 |
| 刚完成一次代码修改 | 跑一下看看效果 |
| 测试报告显示 3 个失败用例 | 先修掉这三个失败用例 |

安装

市场索引

https://raw.githubusercontent.com/Dogtiti/dsh-plugin-composer-predict/main/market-index.json

设置 → 插件 → 启用实验性市场 bundle → Discover → 添加上面的地址 → 安装 dsh-plugin-composer-predict。

npm

npm i dsh-plugin-composer-predict

在 Plugins 页用「添加」填写包名。

本地目录

git clone https://github.com/Dogtiti/dsh-plugin-composer-predict

Plugins → 添加 → 选择该目录。

行为

只有以下条件全部满足时,才会请求并显示建议:

- 该会话已完成至少一轮对话
- 会话不在运行中
- 输入框为空、无待发送附件、无已认领的斜杠命令
- 非一次性子会话(只读输入框)

以下情况不接管:

| 条件 | 行为 |
| 输入框非空 | 不请求、不显示 |
| 会话运行中 | 不显示 |
| / 或 @ 菜单弹出 | 不显示 |

配置

- insert:
- id: composer-predict
name: 'dsh-plugin-composer-predict'
config:
model: deepseek-chat
maxSuggestionChars: 24

| 键 | 默认 | 说明 |
| enabled | true | 总开关;关闭后路由返回 503,客户端不再请求 |
| provider / model | '' | 指定模型;留空跟随当前会话 |
| maxContextMessages | 8 | 送入模型的消息条数(取尾部) |
| maxMessageChars | 600 | 单条消息最大字符数(保留头尾) |
| maxSuggestionChars | 32 | 建议的目标长度 |
| maxTokens | 200 | 输出上限 |
| timeoutMs | 20000 | 单次请求超时 |
| cacheTtlMs | 60000 | 相同会话事件序号下的缓存时间 |
| diagnostics | false | 将客户端判定写入 .diagnostics.jsonl,用于排障 |

实现

插件是标准 DSH bundle,包含 Host 与 Client 两部分:

┌──────────────── 浏览器 ────────────────┐ ┌───────────── Host ─────────────┐ │ conversation.composer.dock │ │ POST /api/composer.predict │ │ · 回合结束时请求(running: true→false) │ HTTP │ · sessions.get(id) │ │ · 重绘 [data-composer-placeholder] │ ─────► │ · session.deriveMessages() │ │ · 自检:内容包含建议且字号 ≥ 8px │ ◄───── │ · 当前会话 provider/model │ │ · Tab → inputActions.setDraft() │ JSON │ · 按 seq 缓存 60s │ └────────────────────────────────────────┘ └────────────────────────────────┘

宿主占位元素已提供定位(inset:4px 8px auto 14px)、字号、行高、省略号与 IME 组合期隐藏,插件只改写其内容:

[data-composer-placeholder] { color: transparent }
[data-composer-placeholder]::after {
content: "跑一下测试"; position: absolute; inset: 0; font: inherit; }

不用 font-size: 0 配合变量恢复字号:变量解析失败时字号会退化为 0,文字还在但看不见。font: inherit 不依赖变量。

挂载后读取 getComputedStyle(target, '::after') 自检,若内容不含建议或字号小于 8px,回退为输入框下方一行,并在控制台输出 [composer-predict] 警告。

数据与开销

- 读取本会话日志尾部(用户与助手文本、工具名、工作目录),发送至会话自身配置的模型服务与凭据。
- 每轮发一次独立小请求,默认上限 200 tokens;enabled: false 可关闭。
- 结果不落盘,不写入会话日志。

开发

node --test "test/*.test.mjs"

14 项:提示词拼装、模型路由回退、输出清洗、缓存失效、开关、CSS 转义、门禁条件、兜底渲染。

test/render-proof/ 把插件实际生成的 CSS 应用到宿主占位结构,用无头 Chrome 渲染并截图,用来核对重绘结果,包含字号变量非法的边界环境。

兼容性

- DSH ^0.2.1-0(engines.dsh)。
- 依赖宿主占位元素的 [data-composer-placeholder] 标记;缺失时走回退路径,不影响输入框本身。

相关插件

| 插件 | 说明 |
| dsh-plugin-composer-predict(本仓库) | 预测下一条指令并显示为占位文字,Tab 采纳 |
| dsh-plugin-composer-history | 输入框中按 ↑ / ↓ 回填历史消息 |
| dsh-plugin-subagent-bridge | 让 Codex 通过本机 MCP 把 DSH 当子代理用(spawn / wait / followup),反向也能把任务派给 Codex |
| dsh-plugin-usage-panel | 在模型选择器旁显示服务商套餐额度余量(目前 GLM Coding Plan),点开是明细浮层 |

许可

MIT © Dogtiti
预览分享卡片长什么样 ↓Dogtiti/dsh-plugin-composer-predict
分享 · DeepSeek Harness Hub
Dogtiti/dsh-plugin-composer-predict

预测你的下一条指令,按 Tab 填入输入框

回到顶部