在 DeepSeek Harness (DSH) 使用场景中,当智能体任务执行完毕、需要人工审批,或运行过程中需要中断确认时,开发者通常需要切换到终端或界面查看日志。这种方式在远程场景或移动端效率较低。下面介绍一个插件,它将 dsh 会话与 ElevenLabs 语音代理结合,通过电话链接提供语音反馈和指令输入。
插件定位与功能¶
该插件由 StephenEvenson 维护,属于“web 工具”类别。它是一个 DeepSeek Harness 插件:当 dsh 任务结束或等待批准时,插件会向手机发送一个链接。打开该链接后,可通过 ElevenLabs 语音代理读取运行摘要、回答关于运行的问题,并在确认指令后通过工具将指令回传给 dsh 会话。
核心能力包括:
* 语音回调:通过电话链接获取结果。
* 发送手机链接:支持终端显示、二维码、推送等多种方式。
* 对话交互:与 ElevenLabs 语音代理进行多轮对话。
* 总结与问答:Agent 会总结运行结果,并回答关于运行细节的问题。
* 指令下发:通过工具发送指令,或处理审批。
环境与安装¶
安装前需确认环境满足以下条件:
* Node.js 版本 >= 22,且已安装 pnpm。
* DeepSeek Harness 版本为 0.1.1-rc.2(开发者预览版)。
* 拥有 ElevenLabs 账户及 API Key。
* 能够提供公共 HTTPS URL(可使用 cloudflared 或自定义反向代理)。
安装命令如下:
dsh plugin --profile web add github:StephenEvenson/dsh-plugin-elevenlabs-callback
典型使用流程¶
-
配置与启动:
配置环境变量ELEVENLABS_API_KEY。首次启动时,插件会自动创建 ElevenLabs 代理和工具。插件会绑定127.0.0.1:7331,并尝试打开 HTTPS 隧道。 -
会话触发:
当 dsh 会话结束、失败或停止等待审批时,插件会通过终端、二维码、推送等方式向手机发送一个链接。 -
语音交互:
在手机浏览器中打开链接并授权麦克风使用。语音 Agent 会读取上一次运行的摘要,并允许开发者通过语音下达下一步指令(如“approve”、“run tests”等)。 -
指令回传:
Agent 确认指令后,会通过 webhook 工具将指令回传给 dsh 会话,作为后续的 follow-up turn 或审批结果。
注意事项¶
- HTTPS 限制:浏览器仅在 HTTPS 协议下允许使用麦克风,因此必须配置公共 HTTPS URL,以确保 ElevenLabs 能够拨打电话并处理 WebRTC。
- 权限与安全:插件以当前 dsh 进程的权限运行,安装前应检查源码和许可证(MIT)。
- 版本依赖:该插件依赖 DeepSeek Harness 0.1.1-rc.2 开发者预览版,API 变更后可能需要更新插件。