前言¶
DeepSeek Harness(DSH)把能力拆成可组合的插件,但官方发行版里并没有完整的全双工语音子系统。生态里已有插件多指向即将退役的 gpt-realtime 系列,端点与事件词汇表都与 GPT-Live-1 不同。若要在 Harness 里做「边说边听、对话不中断」的实时语音,并正确处理模型在对话中途向宿主智能体发起的任务委托,就需要一条与 gpt-live-1 对齐的接入路径。下面介绍社区插件 dsh-openai-live(维护者 Travizm,分类:模型推理)的定位与用法。
这是什么¶
dsh-openai-live 是面向 DeepSeek Harness 的 bundle 插件:提供 realtime 能力接缝(seam)、GPT-Live-1 适配层,以及无密钥回放后端。仓库 README 写明当前为 pre-release 状态——已在 live API 上验证,尚未发布到 npm;package.json 版本为 0.6.11,许可证 MIT。
一句话:把 DSH 接到目前生态里唯一仍在维护的全双工语音模型 GPT-Live-1,并把「对话中委托宿主处理任务、等答复后继续」的协议边界做严,委托无法解析或出错时不自动放行。
架构:接缝而非单体¶
项目拆成三个 npm 包,与 DSH 对 ctx.llm 的分层思路类似;根包 dsh-openai-live 通过 cordis.patch.yml 挂载上述能力并依赖三者。
| 包名 | 作用 |
|---|---|
| dsh-realtime | 注册 realtime 服务;管理 provider、路由与会话生命周期。不接管轮次、端点检测,也不为委托自动代答。 |
| dsh-realtime-openai | GPT-Live-1 适配:线型类型、传输、翻译与会话四层分离;翻译层可对照录制帧做纯函数测试。 |
| dsh-realtime-replay | 无密钥后端:用真实适配器与会话回放录制会话,CI 中无需凭证、网络或计费即可做一致性校验。 |
README 强调:难点不只在音频,而是模型可在对话中途 delegate——向宿主智能体抛出任务并等待答复,且对话不必停下;信封格式与 fail-closed 行为是本项目的核心域。
核心能力与设计约束¶
以下能力在 README 中列出,并有测试与文档支撑(如 docs/protocol.md、docs/design.md 等)。
- Fail-closed 委托:无法解析或出错的委托不会自动批准。
- 轮次边界由 provider 持有:接缝拒绝手写 VAD;API 中不存在
session.input_audio.commit(服务端词汇表已核实)。 - 凭证为受测不变量:缺密钥时报
MISSING_CREDENTIAL,错误信息只点名配置项名,不包含密钥值;未配置时 Harness 仍可启动,打开会话时才失败。 - Keyless replay:无 API key 也能跑通完整会话路径。
- Drift canary:定时检查 provider 形态变化,优先在 CI 红灯而非用户侧暴露。
- Append 在 provider 确认后 resolve,按回显的
client_event_id关联,未文档化的回显则 FIFO 降级,避免 promise 挂死。 - Usage 为累计值,消费者应替换而非累加;同一数值可能出现在
session.usage.updated与session.closed。 - 注册表可证明 dispose:子 fiber 贡献在 fiber 销毁后应被观测为移除。
仓库说明含 168 项测试、按文件 100% 覆盖率门禁,以及对发布产物在 plain node 下的 smoke。
安装与启用¶
插件尚未发布到 npm 时,README 给出的安装方式为发布后使用:
dsh plugin --profile <name> add dsh-openai-live # once published
dsh --profile <name> --dump-config # composes?
dsh --profile <name> web
凭证只从环境变量提供,为经校验的配置字段,代码不读密钥文件:
export OPENAI_LIVE_API_KEY=…
profile 可以在没有密钥的情况下完成组合:路由会注册,真正打开会话时失败并返回 MISSING_CREDENTIAL。这是刻意设计——未配置的机器应先能启动,再明确缺什么,而不是在 Harness 启动阶段就崩溃。
运行环境(package.json):Node ^22.19.0 || >=24.0.0。
典型用法与文档¶
安装并导出 OPENAI_LIVE_API_KEY 后,通过 DSH 的 profile 启动 Web 等入口,即可在 Harness 内使用 realtime 能力对接 GPT-Live-1。协议细节、委托信封、音频格式与已知陷阱以仓库 docs/ 为准,其中 docs/protocol.md 记录 WebSocket 上 GPT-Live-1 的完整客户端/服务端词汇表;docs/w1-delegation-envelope.md 记录两种委托模式实测结果。
若需本地参与开发或验证门禁:
pnpm install
pnpm gate # build → typecheck → coverage gate → built-artifact smoke
pnpm canary # live drift check; 无 OPENAI_LIVE_API_KEY 时自跳过
适用场景与注意¶
适合谁:已在用或计划用 DSH 做智能体宿主,需要 GPT-Live-1 全双工语音,且要在对话中正确处理模型向宿主发起的委托(例如工具调用、需宿主裁决的任务),而不是退回到 gpt-realtime 旧栈。
务必注意:
- 插件以当前 DSH 进程权限运行;安装前应阅读源码与 MIT LICENSE,确认符合你的安全与合规要求。
- 状态为 pre-release,安装命令依赖 npm 发布后的包名
dsh-openai-live;勿在未核实来源的情况下使用非 README 给出的安装方式。 - 社区插件目录 SkillHub 上的条目 为独立站点,与 DeepSeek / 幻方无官方从属关系。
- 仓库不存储任何凭证;
.gitignore在首笔提交前已就位,CI 对全历史做 secret 扫描。
结尾¶
dsh-openai-live 补的是 DSH 在 GPT-Live-1 全双工语音与委托协议上的缺口:接缝 + 适配 + 无密钥回放,便于在 Harness 里做可测试、fail-closed 的实时语音集成。