前言¶
DeepSeek Harness(DSH)把智能体、工作区和模型配置收在一台本机进程里。日常在 Mac 上调试或跑任务时,往往要回到桌面客户端或 Web 设置页输入一句话;离开电脑后,手机侧缺少与同一套 Harness 会话对齐的入口。Telegram 等通道可以远程对话,但需要额外账号与第三方服务。
下面介绍社区插件 dsh-siri(维护者 Pegasus02,GitHub:Pegasus02/dsh-siri)。它在运行 DSH 的本机上暴露带 Bearer 鉴权的 HTTP 接口,由 iPhone 快捷指令把 Siri 听写文本 POST 上去,Harness 返回的回复再由 Siri 朗读。插件归类为客户端,独立运行,不依赖 Telegram 或其他第三方通道。
这是什么¶
dsh-siri 当前版本为 0.1.0(MIT)。一句话定位:对 Siri 说触发语,快捷指令把文本发到这台 Mac 上的 /siri,Harness 回答后由 Siri 念出来。
典型数据流如下:
Siri 听写 → iPhone 快捷指令 → POST /siri(Bearer 密钥)→ DSH → JSON reply → Siri 朗读
核心功能¶
HTTP 接口¶
插件在本机监听可配置端口,主要路径如下(均需 Authorization: Bearer <密钥>):
| 方法与路径 | 作用 |
|---|---|
POST /siri |
请求体 {"text": "…"},返回 {"reply": "…"} |
GET /siri/last |
取上一轮结果(任务较慢时,Siri 可先提示「还在处理」) |
GET /siri/health |
检查密钥是否有效 |
POST /siri 还可带 "bot" 字段(DS Bot 的名称或 ID,名称可只写一部分),把该句话发给指定 Bot;不带则使用设置页绑定的 DS Bot,未绑定则走普通会话。
DSH 设置页「Siri 语音」¶
启用插件后,DSH 设置中会出现 Siri 语音 页,用于:
- 查看与重置密钥,配置监听端口与等待时长;
- 选择工作区、模型、Agent Preset,编写语音指引;
- 限频、限制来源地址。
DS Bot 与实验能力¶
- 绑定 DS Bot 后,对 Siri 说的话进入所选 Bot 会话;单次请求可用
bot字段临时指定另一个 Bot(需已安装并启用 ds-bot 插件)。 - DS Bot 提问(实验性):Bot 通过
ask_user提问时,Siri 会念出问题和选项,用户的下一句话作为回答交回 Bot。
快捷指令模板¶
仓库提供已签名的 shortcuts/Hey DSH.shortcut,或由 scripts/make-shortcut.py 生成;也可使用 iCloud 模板:Hey DSH 快捷指令。
安装与启用¶
资料中的构建步骤面向从源码打包插件,命令如下:
npm install
npm run build
构建会把 plugin-src/ 与 src/ 打成 lib/index.js(Host)和 lib/client.js(设置页)。
在 DSH 侧,需已安装 DeepSeek Harness,并在插件管理中启用 dsh-siri。社区目录页:skillhub.cn/plugins/Pegasus02/dsh-siri(独立社区站点,与 DeepSeek / 幻方无官方从属关系)。安装前应自行查看仓库源码与 MIT 许可证;插件以当前 dsh 进程权限运行。
典型用法¶
1. 网络与前置条件¶
- Mac 上 DSH 已运行,且本插件已启用。
- iPhone 能访问运行 Harness 的电脑(同一 Wi-Fi,或 Tailscale 等内网可达方式)。
- 使用 DS Bot 时,同时安装并启用
ds-bot。
接口仅做 Bearer 密钥鉴权,未提供 HTTPS;不要直接暴露到公网。
2. 在 DSH 里拿地址与密钥¶
打开 DSH 设置 → Siri 语音 页,记下显示的接口地址(形如 http://地址:8000/siri),点击「显示」复制密钥。可按需绑定默认 DS Bot、端口与限频等。
3. 导入快捷指令¶
- 在 iPhone 上打开
Hey DSH.shortcut(AirDrop、iCloud 链接或「文件」App),点「添加快捷指令」。 - 添加时系统会问三个问题(填一次即可):
- 接口地址:上一步 Siri 语音页中的地址;
- 密钥:同一页复制的 Bearer 密钥;
- DS Bot 名称:可留空,留空则用设置页绑定的 Bot。 - 对 Siri 说「Hey DSH」,然后说话。
自行搭建快捷指令时,链路为:听写文本 → 获取 URL 内容(POST,JSON 体含 text,请求头 Authorization: Bearer 密钥)→ 从字典取键 reply → 朗读文本。分享快捷指令时请分享模板,勿分享含个人密钥与地址的副本。
4. 调用示例(curl)¶
本机或内网调试时,可对 POST /siri 发请求(将地址与密钥替换为设置页中的值):
curl -s -X POST 'http://地址:8000/siri' \
-H 'Authorization: Bearer 你的密钥' \
-H 'Content-Type: application/json' \
-d '{"text":"你好"}'
返回形如 {"reply":"…"}。指定 Bot 时在 JSON 中增加 "bot":"Bot名称或ID"。
适用场景与注意¶
适合:已在 Mac 上长期跑 DSH,希望走路时或离桌时用 Siri 触发同一工作区 / 模型 / Bot,且愿意维护内网可达与密钥轮换。
不适合:需要公网 HTTPS、多用户隔离或企业级身份体系的场景;本插件设计为个人本机 + 手机内网访问。
安全:密钥等同于接口口令;限频与来源地址限制可在 Siri 语音页配置,但仍应避免把端口映射到公网。
致谢:src/channels/shared/ 与 plugin-src/host/ 中部分文件取自 dsh-im(MIT,xmanrui),详见仓库 LICENSE。
结尾¶
dsh-siri 把 DSH 的对话能力接到 Siri 与快捷指令,核心是 POST /siri 与设置页里的密钥、端口和 Bot 绑定。按上文完成启用、内网可达与快捷指令配置后,即可用「Hey DSH」在本机 Harness 上语音对话。