DeepSeek Harness 的设计理念是「一切皆插件」。在开发智能体或编排工作流时,经常需要在同一宿主进程内的不同会话之间传递消息。如果没有便捷的本地通信机制,开发者往往需要绕过 DSH 的标准接口。DSH Bridge 作为一个本地插件,直接解决了同一宿主进程内会话之间的发现与消息发送问题。
插件定位¶
DSH Bridge 是一个用于 DeepSeek Harness 的同进程会话间消息传递插件。它由用户 baixianger 维护,采用 MIT 许可证。该插件不依赖 DSH Weave 或 DSH Chat 等跨宿主传输工具,专注于提供轻量级的本地消息路由能力。
核心功能¶
插件通过三个工具函数实现核心能力:
session_list:列出会话并显示其当前状态。session_send:通过精确的会话 ID 或人类可读的标题发送消息。session_messages:读取指定会话的近期消息日志。
安装与使用¶
安装¶
在安装前,请确保已正确配置 DeepSeek Harness 的插件环境。执行以下命令安装插件:
dsh plugin --profile web add dsh-bridge@latest
dsh web
使用流程¶
安装完成后,插件会直接向 DSH 注入上述工具函数,没有独立的设置页面。典型的工作流如下:
- 询问代理(Agent)调用
session_list,获取会话列表及其状态。 - 使用
session_send向目标会话发送消息。- 在
session_send中,设置mode: auto会先尝试匹配精确的 ID,再匹配标题。 - 设置
mode: id或mode: name时,只使用对应的查找方式。 - 标题匹配不区分大小写。如果名称存在歧义,工具会返回候选 ID 而不自动选择接收者。
- 在
配置与注意事项¶
消息投递逻辑¶
插件对会话状态的处理遵循以下规则:
- 状态唤醒:空闲会话会被唤醒;运行中的会话接收队列中的工作。
- 冷会话处理:持久化会话恢复时会应用记录的预设和模型。并发请求访问冷会话时,它们共享一次恢复操作。取消操作在冷会话恢复期间生效,即使共享负载完成,也不会产生后续消息。
- 归档限制:归档会话拒绝投递,不会被唤醒。
- 确认含义:收到投递确认仅代表会话接受了后续指令,不代表模型已处理或完成任务。
运行范围与持久化¶
- 进程隔离:Bridge 仅在单一宿主进程内运行。它不提供跨进程通信能力。
- 内存存储:插件维护的近期消息日志和重复 ID 表仅驻留在内存中。当插件卸载或重载时,这些数据会重置,不具备持久化邮箱功能。
- 依赖关系:DSH Weave 提供跨宿主传输,DSH Chat 提供房间和 Web 视图,但它们均不是本地消息传递的必要条件。
默认配置¶
插件提供以下配置项(无需单独页面配置,通常由宿主或插件加载逻辑管理):
| 配置项 | 默认值 | 说明 |
|---|---|---|
recentMessages |
1000 | 每个宿主保留的近期消息数 |
dedupeCapacity |
10000 | 记忆的外部消息 ID 容量 |
maxMessagesPerRead |
100 | 单次读取操作返回的最大消息数 |
总结¶
DSH Bridge 为本地智能体开发提供了基础的会话通信层。它不需要跨宿主传输即可工作,适合需要精细控制本地会话交互的场景。
- 插件目录:DSH Bridge - SkillHub
- 源代码:DSH Bridge - GitHub