跳转到主要内容
频道是 FIM One 与外部消息平台(飞书、Slack、DingTalk、Teams 等)之间的桥梁。频道让智能体能够:
  • 发送出站消息(状态更新、工件、报告)。
  • 接收入站消息(用户在群聊中提问;智能体回答)。
  • 在敏感工具调用后面设置人工审批,以交互式卡片的形式交付。
频道的作用域是组织,而不是单个用户。任何组织管理员都可以创建、编辑和禁用频道。

为什么频道是组织范围的

频道是组织在外部即时通讯平台中的身份 — 而不是个人的热线。当智能体向飞书群组发送卡片时,消息承载了配置该频道的组织的权限:机器人注册到该组织的飞书租户,群组成员是该组织内的同事,审批/审计跟踪属于该组织。 FIM One 一对一地镜像了这种映射:
FIM One外部即时通讯平台
组织飞书租户/企业(及其管理员)
频道由该租户拥有的机器人 + 群聊
组织成员该租户内可以审批、接收通知或对卡片做出反应的人
智能体(组织发布)代表组织行动的 AI 工作者
个人智能体(未发布,由单个用户拥有)故意无法访问频道。个人智能体向组织频道发送消息将冒充该组织 — 这是审计风险和治理违规。将智能体发布到组织是该智能体获得通过其频道代表组织发言权利的方式。 此约束统一适用:FeishuGateHook(审批路由)和完成通知(智能体配置的频道)都遵守相同的组织身份边界。

支持的平台

平台状态入站出站审批卡片
Feishu (Lark)GA是 (feishu_gate hook)
Slack计划中
DingTalk计划中

Channels 如何与 Hooks 交互

feishu_gate hook 是 Feishu channel 的主要消费者。当智能体即将调用标记为 requires_confirmation: true 的工具时,hook 会:
  1. 解析组织的活跃 Feishu channel。
  2. 渲染包含工具名称和参数的交互式审批卡片。
  3. 将卡片发布到配置的群聊(chat_id)。
  4. 暂停工具调用,直到群成员点击批准拒绝
  5. 根据审批结果恢复(或中止)工具调用,并通过 SSE 流式传输决策。
通过 model_config_json.hooks.class_hooks = ["feishu_gate"] 在智能体上附加 hook,或在智能体编辑器中切换。

创建频道

  1. 组织所有者管理员身份登录。
  2. 转到组织设置 → 频道 → 新建频道
  3. 选择频道类型(例如 Feishu),填入凭证,选择目标聊天,然后保存。
  4. 点击发送测试消息以验证双向连接。
每种频道类型都有自己的凭证格式和事件订阅流程 — 请按照特定平台的指南进行确切步骤:

安全说明

  • 应用密钥和加密密钥在静止状态下使用后端的 FERNET_SECRET_KEY 进行加密
  • 回调端点(/api/channels/{id}/callback)在处理事件前验证每个签名是否与存储的 encrypt_key / verification_token 匹配。
  • 只有目标群组聊天的成员才能批准或拒绝批准卡片 — FIM One 不会授予超出消息平台已有权限之外的额外权限。