跳到主要内容飞书 × OpenClaw 接入指南:不用服务器,用长连接把机器人跑起来 | 极客日志Python
飞书 × OpenClaw 接入指南:不用服务器,用长连接把机器人跑起来
你想在飞书里用上一个能稳定对话、能发图/收文件、还能按规则在群里工作的 AI 机器人,最怕两件事:**步骤多**、**出错后不知道查哪里**。这个项目存在的意义,就是把'飞书接 OpenClaw'这件事,整理成一套**对非技术也友好**的配置入口,并把官方文档没覆盖到的坑集中写成排查清单。 先说清楚它的角色:OpenClaw 现在已经内置官方飞书插件 **@openclaw/feishu**,功能…
岁月神偷27K 浏览 你想在飞书里用上一个能稳定对话、能发图/收文件、还能按规则在群里工作的 AI 机器人,最怕两件事:步骤多、出错后不知道查哪里。这个项目存在的意义,就是把'飞书接 OpenClaw'这件事,整理成一套对非技术也友好的配置入口,并把官方文档没覆盖到的坑集中写成排查清单。
先说清楚它的角色:OpenClaw 现在已经内置官方飞书插件 @openclaw/feishu,功能更完整、维护也更及时。这是好事,说明飞书 + AI 的接入已经走通。这个仓库并不是要替代官方插件,而是继续为大家提供:
- 新用户:从零开始的新手教程(15–20 分钟)
- 老用户:从旧版(独立桥接或旧 npm 插件)迁移到官方插件的保姆级路线
- 常见问题答疑 & 排查清单(最常见的坑优先)
- 进阶场景:独立桥接模式依然可用(需要隔离/定制时再用)
另外,仓库也推荐了一个新项目 OpenCrew:把 OpenClaw 变成'多 Agent 团队',用多个 Agent 分工,Slack 频道=岗位,经验自动沉淀,可逆操作无需你确认(原文给了 GitHub 链接)。
一、老用户迁移到官方插件(两种方式任选,效果一样)
适用人群:你以前用过本项目的独立桥接或 npm 插件,现在要迁到 OpenClaw 内置的官方飞书插件。
迁移前你需要知道的事(按原文)
- 你之前创建的飞书应用(机器人)可以继续用,不需要重建
- App ID / App Secret 不变
- 聊天记录不受影响(记录在飞书端)
- 迁移时机器人会短暂离线(几分钟)
方式一:通过 OpenClaw 升级(推荐,最省事)
前提:你的 OpenClaw 版本 ≥ 2026.2,升级后官方飞书插件已内置。
1)升级 OpenClaw
升级完成会自动重启网关。
2)添加飞书渠道
选择 Feishu → 填 App ID → 填 App Secret。
App Secret 可能还在你旧环境里(原文提示位置):
~/.clawdbot/secrets/feishu_app_secret(可 cat 查看)
- 如果找不到:去飞书开放平台
https://open.feishu.cn/app → 你的应用 → 凭证与基础信息 复制
3)补全飞书应用权限(支持图片/文件/流式等)
去飞书开放平台:你的应用 → 权限管理 → 批量导入,粘贴下面 JSON(原文内容不变):
{"scopes":{"tenant":["aily:file:read","aily:file:write","application:application.app_message_stats.overview:readonly"
,
"application:application:self_manage"
,
"application:bot.menu:write"
,
"cardkit:card:write"
,
"contact:user.employee_id:readonly"
,
"corehr:file:download"
,
"docs:document.content:read"
,
"event:ip_list"
,
"im:chat"
,
"im:chat.access_event.bot_p2p_chat:read"
,
"im:chat.members:bot_access"
,
"im:message"
,
"im:message.group_at_msg:readonly"
,
"im:message.group_msg"
,
"im:message.p2p_msg:readonly"
,
"im:message:readonly"
,
"im:message:send_as_bot"
,
"im:resource"
,
"sheets:spreadsheet"
,
"wiki:wiki:readonly"
]
,
"user"
:
[
"aily:file:read"
,
"aily:file:write"
,
"im:chat.access_event.bot_p2p_chat:read"
]
}
}
导入后:创建新版本 → 发布(让新权限生效)。原文也强调:已有权限会自动跳过,不重复添加。
# 移除旧的 npm 插件(如果装过) openclaw plugins remove feishu-openclaw 2>/dev/null # 停掉旧的桥接服务(如果用过独立桥接) launchctl unload ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist 2>/dev/null # 重启网关 openclaw gateway restart
方式二:不整体升级,手动安装插件 + 配置
适用:你不想升级 OpenClaw,只想把飞书接进来。
1)准备 App ID / App Secret
App Secret 同样可能在:
~/.clawdbot/secrets/feishu_app_secret
2)补权限
同方式一(批量导入 + 创建新版本 + 发布)。
# 安装官方飞书插件 openclaw plugins install @openclaw/feishu # 添加飞书渠道(交互式引导) openclaw channels add# → 选择 Feishu# → 粘贴 App ID# → 粘贴 App Secret# 移除旧的 npm 插件(如果装过) openclaw plugins remove feishu-openclaw 2>/dev/null # 停掉旧的桥接服务(如果用过独立桥接) launchctl unload ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist 2>/dev/null # 重启网关 openclaw gateway restart
迁移/配置后验证(原文口径)
日志里看到类似 feishu ws connected 或 feishu provider ready,说明连上了。去飞书里给机器人发消息,能正常回复即完成。
如果机器人回复了配对码(一次性安全操作),按原文执行:
openclaw pairing approve feishu <配对码>
迁移后清理(可选)
# 删除旧的 launchd 配置(桥接用户)rm -f ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist
二、新手从零:配置飞书 AI 机器人(15–20 分钟)
适用人群:第一次用 OpenClaw + 飞书。前提:OpenClaw 已安装并正常运行(原文示例:openclaw gateway status 能看到状态)。
第一步:创建飞书应用(机器人)
- 打开飞书开放平台
https://open.feishu.cn/app
- 创建'企业自建应用',填名称/描述/图标
第二步:启用机器人能力
你的应用 → 应用能力 > 机器人 → 开启 → 命名机器人
第三步:配置权限(批量导入)
你的应用 → 权限管理 → 批量导入 → 粘贴权限 JSON(与上文完全相同)
第四步:配置事件订阅(原文强调:必须长连接)
原文警告:这一步必须在 OpenClaw 网关启动后再做,否则保存会失败。你可以先做后面的 OpenClaw 配置,再回来做这一步。
- 你的应用 → 事件与回调 > 事件配置
- 请求方式:选择 使用长连接接收事件
- 添加事件:
im.message.receive_v1(接收消息)
第五步:记下凭证
- App ID(
cli_xxxxx)
- App Secret(原文提醒:不要分享)
第六步:发布应用
你的应用 → 版本管理与发布 → 创建版本 → 提交 → 发布/上线(原文说明通常几秒到几分钟)
第七步:在 OpenClaw 中配置飞书
第八步:发消息测试(配对码按原文处理)
openclaw pairing approve feishu <配对码>
如果你之前跳过了'事件订阅',现在网关已启动,回去把第四步补上,保存后再 openclaw gateway restart(这是原文提示的流程)。
第九步(可选):开机自启
原文这里只给了标题说明:让机器人电脑重启后自动上线(具体可结合 OpenClaw 命令 openclaw gateway install,该命令在'常用命令速查'中出现)。
三、常见问题 & 排查清单(按原文最常见坑优先)
1)没有消息发送框?(最常见)
原文结论:事件订阅没有配置。权限批量导入不会自动配置事件订阅。
- 飞书开放平台 → 你的应用 → 事件与回调
- 添加事件:
im.message.receive_v1
- 订阅方式:使用长连接接收事件
- 版本管理 → 创建新版本 → 发布上线
原文提醒:配置事件订阅前,确保 OpenClaw/Clawdbot Gateway 已启动,否则长连接验证会失败。
2)机器人完全没反应(收不到消息)
- 网关在运行吗?不在就
openclaw gateway restart
- 飞书应用发布了吗?(版本管理里要有已发布版本)
- 事件订阅配置了吗?
- 是否选择'使用长连接接收事件'(不是 Webhook)
- 是否添加
im.message.receive_v1
- 权限够吗?原文给的最低示例:
im:message
im:message.p2p_msg:readonly
im:message:send_as_bot
- 看日志:发消息观察日志是否有反应
3)时断时续(有时回复、有时没反应)
- 网络波动(VPN/代理环境尤其容易):可能频繁断连
- 网关是否反复重启(原文示例命令):
openclaw logs |grep -i "restart\\|reconnect\\|disconnect"
- DNS/代理问题:原文建议确保
open.feishu.cn 走直连(不走代理)
4)发图片/发文件,AI 看不到
- 检查权限:必须有
im:resource
- 补权限后要 创建新版本 → 发布
- 重启网关:
openclaw gateway restart
5)AI 说生成了图片,但飞书没收到
im:resource 权限(用于上传图片到飞书)
- 看日志 upload 相关错误
6)群聊中机器人不回复
- 默认需要 @机器人
- 确认机器人已被加到群
- 检查
groupPolicy(见进阶配置)
7)回复特别慢
按原文解释:主要由模型响应速度决定;可开启流式输出(默认已开启);超过 30 秒看日志是否模型调用出错。
8)配对码是什么?怎么用?
按原文:首次出于安全,机器人发配对码,管理员批准一次即可:
openclaw pairing approve feishu <配对码>
9)Lark(国际版)用户怎么配?
{"channels":{"feishu":{"domain":"lark"}}}
四、进阶配置参考(配置文件、群组策略、流式、多 Agent)
配置文件位置(原文)
~/.openclaw/openclaw.json
基础配置示例(原文结构)
{"channels":{"feishu":{"enabled":true,"dmPolicy":"pairing","accounts":{"main":{"appId":"cli_xxxxxxxxx","appSecret":"你的AppSecret","botName":"我的AI助手"}}}}}
群组配置(原文三种典型)
{"channels":{"feishu":{"groups":{"oc_你的群组ID":{"requireMention":false}}}}}
{"channels":{"feishu":{"groupPolicy":"allowlist","groupAllowFrom":["ou_用户1","ou_用户2"]}}}
原文获取群组/用户 ID 的方式:给机器人发消息后看 openclaw logs --follow。
流式输出(原文默认开启)
{"channels":{"feishu":{"streaming":true,"blockStreaming":true}}}
多 Agent 路由(原文 bindings 示例)
{"bindings":[{"agentId":"main","match":{"channel":"feishu","peer":{"kind":"dm","id":"ou_用户A"}}},{"agentId":"另一个agent","match":{"channel":"feishu","peer":{"kind":"group","id":"oc_某群组"}}}]}
访问控制策略(原文表述)
"pairing":默认,新用户配对码,管理员批准后可对话
"allowlist":仅白名单用户可对话
"open":所有人可对话
"disabled":禁止私聊
常用命令速查(原文)
openclaw gateway status:查看网关状态
openclaw gateway restart:重启网关
openclaw gateway install:安装为开机自启服务
openclaw logs --follow:实时日志
openclaw pairing list feishu:查看待授权配对
openclaw pairing approve feishu <CODE>:批准配对
openclaw plugins list:已安装插件列表
五、独立桥接模式(进阶用户才需要)
原文定位:适用于你需要进程隔离(桥接崩溃不影响网关)或有特殊定制需求。大多数用户用官方插件即可。
插件 vs 桥接(按原文对比逻辑复述)
- 官方插件:
openclaw plugins install,和网关同进程,维护随 OpenClaw 更新,适合日常
- 独立桥接:
git clone + npm install,独立进程,互不影响,但需自行维护,适合生产/隔离部署
快速启动(原文命令)
# 克隆项目git clone https://github.com/AlexAnys/feishu-openclaw.git cd feishu-openclaw
开机自启(launchd)(原文命令)
# 生成服务配置node setup-service.mjs
日志位置(原文)
~/.clawdbot/logs/feishu-bridge.out.log(正常输出)
~/.clawdbot/logs/feishu-bridge.err.log(错误日志)
调试模式(原文)
echo"FEISHU_BRIDGE_DEBUG=1"> .env tail -n 200 ~/.clawdbot/logs/feishu-bridge.err.log
工作原理(原文表达复述)
飞书用户 ↔ 飞书云端 ↔(你的电脑上桥接脚本)↔ OpenClaw 网关
桥接通过飞书 WebSocket 长连接接收消息:不需要公网 IP、不需要域名、不需要内网穿透。
六、快问快答
- 需要服务器吗? 不需要。飞书用 WebSocket 长连接,你的电脑直接连飞书云端,不需要公网 IP。
- 电脑关机了怎么办? 机器人离线;开机后会自动重连(若配了开机自启)。要 24/7 在线可以用常开设备或云服务器。
- 飞书免费版能用吗? 可以。自建应用与机器人功能对所有飞书版本开放。
- 能同时接其它渠道吗? 可以。OpenClaw 支持多渠道,互不影响。
- 用了官方插件后,这个项目还有用吗? 有:继续提供配置教程、迁移指南、排查与答疑。
如果你接下来想把这篇发到 GitHub README / 公众号 / 飞书文档,我可以在不改动事实与步骤的前提下,给你做两种'同源不同表达'的版本:
- 极简版(一页纸):只保留命令、飞书侧必须点的两处、以及'没输入框/不回复/图片不可用'的最短排查
- 面向小白版:每一步都配'你为什么要点这个/不点会出现什么症状',但仍严格不超出原文内容
你希望用哪一种发布场景?(GitHub README 更适合极简版;公众号更适合小白解释版。)
相关免费在线工具
- curl 转代码
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
- Base64 字符串编码/解码
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
- Base64 文件转换器
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
- Markdown转HTML
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
- HTML转Markdown
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
- JSON 压缩
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online