dsh-interconnect 使用指南
在多个 DSH 实例间通过共享密钥 WebSocket 互通:互发文本消息、推送会话生命周期事件、枚举对端在线会话。
本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。
本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。
快速上手
dsh-interconnect
— 源: plugin_wiki.wiki_content
安装与验证
dsh plugin --profile web add dsh-interconnect
复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。
— 源: plugins.install
关键要点
- 全走持久 WebSocket 链接:跨实例、跨机器投递消息、枚举 live session、探测活性(
send/reply/ping/list经/interconnect/link的msg/query帧) /interconnect/linkWebSocket 端点:双向实时事件推流,含心跳与指数退避重连;也承载- 事件 fan-out(HTTP + WebSocket),入站事件以
interconnect/event发出 - 共享密钥鉴权(
DSH_INTERCONNECT_TOKEN,bearer,fail-closed,timing-safe 比较) interconnect_send:向对端实例的指定 session 投递消息;可选delivery选投递模式、resume唤醒离线 session
— 源: plugin_wiki.readme_zh (fallback readme_raw)
常见问题
普通用户装这个插件能做什么?
让多台机器或多 DSH 实例之间通过共享密钥 WebSocket 通道互发文本消息、互相推送会话生命周期事件、列出对端当前正在运行的会话;模型也能用四个 interconnect_* 工具主动寻址和投递。
安装后还要做什么才能两端互通?
在两端 DSH 实例的凭据存储中设置相同的 DSH_INTERCONNECT_TOKEN 共享密钥(没有 token 时鉴权端点会 fail-closed 返回 403),再把对端 instanceId 与可达 origin 写进本端 config.peers 映射,激活时自动为每个对端建持久链。
投递消息失败时 reason 字段分别什么意思?
不同失败需要不同应对:session-not-live 表示对端 session 没在跑(换目标或带 resume);unreachable 表示传输或鉴权失败(可能重试);resume-refused / resume-failed 与唤醒相关;session-owned-by-subagent 表示该 session 归 subagent 路由;no-sender-known 是 reply 找不到发送方记录。
— 源: plugin_wiki.faq_json
兼容性
- DSH: 未声明
- Node: >=22.0.0
- Platforms: 跨平台
— 源: plugin_wiki.compatibility_json
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则