前言¶
DeepSeek Harness(DSH)的扩展方式是「一切皆插件」:智能体能力可以通过插件接入不同前端,而不需要把每个前端单独实现一遍。对于已经在 IM 里处理消息的开发者来说,比较常见的诉求是把 dsh agent 接到飞书(Lark)、企业微信(WeCom)或 Telegram,并在已有聊天工具中完成多轮对话。下面介绍 dsh-im-hub 插件。
这是什么¶
dsh-im-hub 是一个面向 DeepSeek Harness 的多平台 IM 网关插件,维护者为 ThreeBody6666,许可证为 MIT。当前 package.json 中的版本为 0.2.3。
它的定位是把 dsh agent 接到常用 IM 中,支持以下平台:
- Feishu(Lark)
- WeCom(WeChat Work,企业微信)
- Telegram
核心能力¶
先说它提供的接入方式:
- Feishu(Lark):支持官方 WebSocket 长连接,也支持 webhook 模式;国际版 Lark 通过
adapters.lark配置。 - WeCom:支持应用消息回调,使用
WXBizMsgCrypt的 AES-256-CBC 解密,并做 SHA1 签名校验。 - Telegram:使用 Bot API long polling,并按 4096 字符上限拆分消息。
- Mock:提供 stdin 加本地 HTTP 端点,用于测试。
在会话管理方面,它提供按聊天隔离的 agent 会话:
- 保留多轮上下文
- 每个聊天内的对话轮次串行处理
- 空闲会话按配置回收
在访问控制方面,每个 adapter 都支持 allowedUserIds 白名单。如果 allowedUserIds 为空,表示允许所有人访问;生产环境建议明确填写允许访问的用户 ID。
它还提供一组 Slack 风格命令:
/help
/reset
/status
/model
在配置方式上,dsh-im-hub 支持两类入口:
- Web GUI 中的可视化设置卡片,适用于 v0.2.0 及以上版本
- YAML 配置,位于
cordis.patch.yml
安装与启动¶
使用官方安装命令把插件加入 im profile:
dsh plugin --profile im add dsh-im-hub
随后使用同一个 profile 启动 dsh:
dsh --profile im
如果使用本地 checkout 做开发调试,可以使用本地路径安装:
dsh plugin --profile im add link:D:/projects/dsh-im-hub
配置¶
dsh-im-hub 的插件行在 cordis.patch.yml 中默认是禁用的。启用某个 adapter 前,需要先修改插件配置。
以 Telegram 为例,至少需要启用 adapter、填写 Bot token,并配置允许访问的用户 ID:
- id: dsh-im-hub
disabled: false
config:
adapters:
telegram:
enabled: true
token: '123456:ABC-DEF...'
allowedUserIds: [123456789]
其中:
enabled控制该 adapter 是否启用token是 Telegram Bot tokenallowedUserIds是允许与该 Bot 对话的 Telegram 用户 ID 列表
allowedUserIds 为空时表示允许所有人访问。生产环境建议显式设置白名单。
如果插件运行在 Web GUI 中,并且版本不低于 v0.2.0,可以在设置界面中配置:
Settings → Plugins → Configurable plugins → IM Gateway (dsh-im-hub)
凭据类字段保存在服务端,Web GUI 中显示为 write-only badge。
各平台接入前置条件¶
Telegram¶
Telegram 需要从 @BotFather 获取 Bot token,然后填入 adapters.telegram.token。
Feishu / Lark¶
飞书长连接模式适用于自建企业应用。接入前需要完成以下配置:
- 订阅事件:
im.message.receive_v1 - 授予消息权限:
im:message:send_as_botim:message:p2p_msgim:message:group_msg或group_at_msg
国际版 Lark 使用 adapters.lark 配置。
WeCom¶
企业微信使用回调服务器方式,不提供长连接模式。回调服务器需要可访问的公网 HTTPS URL,也可以通过 tunnel 暴露。
适用场景与注意¶
dsh-im-hub 适合以下场景:
- 希望把 dsh agent 接到飞书、企业微信或 Telegram
- 需要在聊天工具中保留多轮上下文
- 需要按用户 ID 限制可访问 agent 的范围
- 需要在不引入真实平台凭据的情况下用 Mock adapter 做本地测试
使用前需要注意:
- 插件以当前 dsh 进程权限运行
- 安装前应检查插件源码
- 应确认许可证与运行环境要求;该插件许可证为 MIT
- 社区插件目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不应理解为官方应用商店
链接¶
GitHub 仓库:
https://github.com/ThreeBody6666/dsh-im-hub
社区插件目录:可按插件名 dsh-im-hub 在 DSH 社区插件目录中查找。