状态:Stable(Interfaces / P5-01 @ ≥ 0.7.1) — SDK tarball 内 Channels adapter fixtures(
ingress.json、webhooks.json(9)、dispatcher-inbound.json(5)、platform-taxonomy.json、gateway-outbound-inbound.json(4))与spec:channels:*门禁;Gateway 实现ChannelDispatcher→RunManager。见 Interfaces Protocol · Changelog(FPP-0034–0060)。
IM 通道提供零培训的智能化入口:员工在已有协作工具里 @Bot 或发消息即可触发任务,无需安装新 App、无需学习新界面。
支持通道
飞书、企业微信、微信、钉钉、Slack、Discord、Telegram 等(以 Gateway 启用的 adapter 为准)。
平台分类(registry):
| 类型 | 平台 | 录制 / 测试 |
|---|---|---|
| HTTP webhook(5) | slack、feishu、telegram、dingtalk、wecom | webhooks.json + dispatcher-inbound.json · Hono test:channels-dispatcher-hono-e2e |
| Gateway outbound(2) | discord、weixin | 无 HTTP webhook fixture · 入站解析 golden gateway-outbound-inbound.json(FPP-0059) |
Discord / Weixin 的 long-poll、QR、send 全链路仍为 Deferred(见 SDK channels-webhook-recording-readiness.md)。
架构
IM 平台 Webhook / Bot API
│
▼
Gateway Channel Adapter
│
▼
Thread / Run(与 Web/桌面版同一执行内核)
│
▼
交付物 → 推回 IM 会话(消息 / 文件)
Channels 与 AG-UI、MCP 同层:都是挂在 Gateway Thread/Run 上的 interface。入站消息经 RunManager.create 与 streamRun(SSE 事件可 DB 回放)与 Web/桌面共用执行内核;Gateway 回归含 FPP-0057–0060(create → DB、streamRun 回放、dispatcher 串联)。
典型场景
- 日报 / 周报自动生成与推送
- 跨系统数据查询(「查 XX 客户最新订单」)
- 报销 / 审批材料辅助核对
- 迎检前的数据汇总与材料初稿
与 SDK 的关系
| 入口 | 适合 |
|---|---|
| IM 通道 | 组织级推广、零界面迁移 |
| SDK 嵌入 | 业务系统内嵌、需页面上下文 |
| 工作台 Web/桌面版 | 深度任务、文件交付 |
常见路径:工作台试点稳定 → IM 作为第二入口扩展。
配置要点
- 在 Console / Gateway 配置对应 Channel Bot 凭证
- 映射 Bot 身份到组织用户或 runtime 策略
- 结合 MCP / Connectors 读取业务数据
- 成果通过 Channel 回推;敏感操作遵循 安全与合规
工程验证(维护者)
cd sdk && pnpm spec:channels:recording-gate && pnpm spec:channels:dispatcher-hono-e2e \
&& pnpm spec:channels:platform-taxonomy && pnpm spec:channels:outbound-fixtures \
&& pnpm spec:channels:interfaces-exit-gate
cd gateway/packages/gateway && pnpm exec vitest run \
src/modules/channels/dispatcher-runmanager-db.test.ts \
src/modules/channels/dispatcher-runmanager-stream-replay.test.ts
Monorepo smoke:bash scripts/verify-protocol.sh(含 pnpm spec:check · train exit · npm pack 子门禁)。