前言¶
DSH 提供了会话、模型和工具调用能力,实际使用时经常还需要一个外部入口:在飞书里直接发消息,让 DSH 会话处理,并把生成过程回显到飞书。dsh-feishu-bridge 就是做这件事的 DSH 插件。它把飞书消息桥接到 DSH 会话,AI 处理后以流式交互卡片实时回复,不依赖公网 webhook。
插件定位¶
dsh-feishu-bridge 由 fengs2021 维护,package.json 声明版本为 1.1.0,许可证为 MIT(来自 package.json)。它不是独立聊天服务,而是运行在 DSH 宿主进程中的桥接插件:飞书通道接入 DSH,DSH 的会话、模型和工具仍由 DSH 提供。
下面介绍它的核心能力、安装方式、典型用法,以及部署前需要确认的限制。
核心功能¶
- 飞书私聊/单聊消息进入 DSH 会话,保持多轮上下文。
- 群聊中
@机器人时响应,需要配置botOpenId。 - CardKit 2.0 流式交互卡片实时更新:思维链、正文、工具链分区展示,
token级打字机效果,原生折叠面板。 - DSH 重启后自动
agents.resume,恢复同一 DSH 会话。 - 支持
/help、/reset、/status斜杠命令。 - 长回复超过上限(8000 字)自动补发文本消息。
- 断线自动退避重连,范围是
2s到30s上限。 - 通过
open_id白名单限制可聊天用户,空白名单表示所有人。 - 按
message_id幂等去重,避免事件重放重复处理。 - 注册
feishu通道到 DSH 全局注册表,支持de_channel_send/de_notify向飞书发送文本、图片、文件。
安装与启用¶
运行前提:
- DeepSeek Harness 以
dsh web运行。 lark-cli已安装并选择 bot 身份(tenant_access_token)。- 飞书自定义应用具备 bot 能力,应用权限 scope 覆盖目标用户/群。
- 应用需要
im:message权限;事件使用飞书开放平台长连接订阅,无需公网 webhook/回调 URL。
安装步骤:
git clone https://github.com/fengs2021/dsh-feishu-bridge.git ~/.dsh/plugins/dsh-feishu-bridge
cd ~/.dsh/plugins/dsh-feishu-bridge && npm install
# register into the web profile:
# dependencies += "dsh-feishu-bridge": "link:/root/.dsh/plugins/dsh-feishu-bridge"
# dsh.profile.bundles += "dsh-feishu-bridge"
cd ~/.dsh/profiles/web && pnpm install
systemctl restart dsh-web
先克隆插件到 DSH 插件目录并安装依赖,再把它注册进 web profile 的 dependencies 和 dsh.profile.bundles,最后安装 web profile 依赖并重启 dsh-web。
典型用法¶
在飞书中直接给机器人发消息;群聊中 @ 机器人即可触发 DSH 处理。
斜杠命令:
/help
/reset
/status
/help 查看帮助,/reset 清空上下文,/status 查看会话状态。
DSH 也可以主动推送到飞书:
de_channel_send channels=feishu content=...
发送附件时可用:
attachments=[{kind:'image'|'file', path|url|base64, fileName?}]
目标默认是最近飞书会话,也可显式指定:
target: 'p2p:oc_xxx'
配置与限制¶
botOpenId用于群聊@检测;可通过启动自动探测、群内@日志或飞书控制台获取。allowlist为空表示所有open_id可聊天;非空时仅指定open_id可聊天。- 文本模式回复超过
maxReplyChars(默认3500)会分段;卡片预览上限8000字超过会补发文本消息。 - 卡片流式更新默认最小间隔
1200ms,卡片轮询间隔600ms,单轮最长等待600000ms。 - 卡片更新必须使用
PATCH /open-apis/im/v1/messages/:message_id并携带 card JSON 字符串,不能使用PUT+msg_type。 - 流式监听器影响所有 LLM 调用,资料提示不要改回
async。
适用场景与注意¶
适合想通过飞书和 DSH 对话、需要把 DSH 主动通知发到飞书、或需要卡片式过程回显的部署场景。
需要注意:
- 插件运行在 DSH 宿主进程中,会跟随当前
dsh进程权限运行。安装前应检查源码、依赖与许可证。 - 飞书自定义应用需要具备 bot 能力,权限 scope 覆盖目标用户/群,且
im:message权限可用。 - 群聊响应依赖
botOpenId和应用权限范围。 - 事件通过飞书开放平台长连接订阅,不需要公网 webhook/回调 URL,但仍要求
lark-cli可正常访问飞书开放平台。 - 该插件版本为
1.1.0,许可证为 MIT。
链接¶
- 插件目录页:https://www.skillhub.cn/plugins/fengs2021/dsh-feishu-bridge
- GitHub 仓库:https://github.com/fengs2021/dsh-feishu-bridge