1.为什么要把OpenClaw接入飞书?

先想一个场景:

你正在外面开会,突然想起来今天要监控的行业数据还没跑。按以前的操作:找电脑→远程桌面→打开OpenClaw→敲命令→等结果。一套下来,会都开完了。

接入飞书之后呢?

打开飞书,在群里@机器人:“帮我跑一下今天的行业数据监控”,五分钟后再看,结果已经发在群里了。

这就是区别:把OpenClaw从“本地员工”变成“云员工”,从“守在电脑前”变成“随时随地”。

飞书接入的核心优势:

· ✅ 随时随地:有网就能指挥你的AI干活

· ✅ 群聊协作:可以把机器人拉进群,团队一起用

· ✅ 消息即指令:自然语言对话,不用记命令

· ✅ 文件直接传:PDF、图片直接丢给机器人处理

2.准备工作:你需要什么?

开始之前,先检查一下这几样东西准备好了没:

硬件/软件清单

· ✅ 已部署好的OpenClaw(本地或云端都行,版本建议2026.2.9以上)

· ✅ OpenClaw服务正常运行(openclaw status确认一下)

· ✅ 飞书企业账号(个人飞书不行,必须是企业版)

· ✅ 管理员权限(创建自建应用需要开发者权限,可以找公司IT开通)

需要记下来的信息

· OpenClaw服务器的IP或本地地址

· OpenClaw的访问凭证(如有)

· 飞书账号(用于登录开放平台)

3.第一步:创建飞书应用(养个“飞书壳”)

3.1 登录飞书开放平台

打开浏览器,访问 飞书开放平台,用你的飞书企业账号登录。

3.2 创建企业自建应用

点击右上角的“开发者后台”,进入后找到“创建企业自建应用”。

填写应用信息:

· 应用名称:比如“OpenClaw小助手”或“我的AI龙虾”(随便起,自己喜欢就好)

· 应用描述:简单说明一下用途,比如“24小时AI智能体,帮你干活”

· 应用图标:可以随便选一个,后面也能改

填完后点击“创建”。

图片

3.3 添加机器人能力

创建成功后进入应用详情页,左侧导航栏找到“添加应用能力”,点击后选择“机器人”,然后点击“添加”。

这一步是告诉飞书:我这个应用是个机器人,能跟人聊天。

图片

3.4 记录核心凭证(最重要的一步!)

左侧导航栏找到“凭证与基础信息”,你会看到两个非常重要的字符串:

· App ID:格式像 cli_xxxxxxxxx,应用的身份证号

· App Secret:一串密文,相当于应用的密码

⚠️ 重要提醒:这两串信息请立刻复制保存到安全的地方(比如记事本或密码管理器)。App Secret关闭页面后就看不到了,如果丢了只能重置。

图片

3.5 配置权限(让机器人能说话)

左侧导航栏找到“权限管理”,我们需要给机器人开通聊天的权限。

有两种方式:

方式一(推荐):点击“批量导入/导出权限”,粘贴下面这段JSON配置:

json

{

  "scopes": {

    "tenant": [

      "contact:contact.base:readonly",

      "docx:document:readonly",

      "im:chat:read",

      "im:chat:update",

      "im:message.group_at_msg:readonly",

      "im:message.p2p_msg:readonly",

      "im:message.pins:read",

      "im:message.pins:write_only",

      "im:message.reactions:read",

      "im:message.reactions:write_only",

      "im:message:readonly",

      "im:message:recall",

      "im:message:send_as_bot",

      "im:message:send_multi_users",

      "im:message:send_sys_msg",

      "im:message:update",

      "im:resource",

      "application:application:self_manage",

      "cardkit:card:write",

      "cardkit:card:read"

    ],

    "user": [

      "contact:user.employee_id:readonly",

      "offline_access","base:app:copy",

      "base:field:create",

      "base:field:delete",

      "base:field:read",

      "base:field:update",

      "base:record:create",

      "base:record:delete",

      "base:record:retrieve",

      "base:record:update",

      "base:table:create",

      "base:table:delete",

      "base:table:read",

      "base:table:update",

      "base:view:read",

      "base:view:write_only",

      "base:app:create",

      "base:app:update",

      "base:app:read",

      "board:whiteboard:node:create",

      "board:whiteboard:node:read",

      "calendar:calendar:read",

      "calendar:calendar.event:create",

      "calendar:calendar.event:delete",

      "calendar:calendar.event:read",

      "calendar:calendar.event:reply",

      "calendar:calendar.event:update",

      "calendar:calendar.free_busy:read",

      "contact:contact.base:readonly",

      "contact:user.base:readonly",

      "contact:user:search",

      "docs:document.comment:create",

      "docs:document.comment:read",

      "docs:document.comment:update",

      "docs:document.media:download",

      "docs:document:copy",

      "docx:document:create",

      "docx:document:readonly",

      "docx:document:write_only",

      "drive:drive.metadata:readonly",

      "drive:file:download",

      "drive:file:upload",

      "im:chat.members:read",

      "im:chat:read",

      "im:message",

      "im:message.group_msg:get_as_user",

      "im:message.p2p_msg:get_as_user",

      "im:message:readonly",

      "search:docs:read",

      "search:message",

      "space:document:delete",

      "space:document:move",

      "space:document:retrieve",

      "task:comment:read",

      "task:comment:write",

      "task:task:read",

      "task:task:write",

      "task:task:writeonly",

      "task:tasklist:read",

      "task:tasklist:write",

      "wiki:node:copy",

      "wiki:node:create",

      "wiki:node:move",

      "wiki:node:read",

      "wiki:node:retrieve",

      "wiki:space:read",

      "wiki:space:retrieve",

      "wiki:space:write_only"

    ]

  }

}

图片

方式二:手动搜索并开通以下核心权限:

· im:message - 收发消息

· im:message.p2p_msg:readonly - 读取私聊消息

· im:message.group_at_msg:readonly - 接收群聊@消息

· im:message:send_as_bot - 以机器人身份发送消息

· im:resource - 上传/下载图片文件

点击“确认开通”,搞定。

4.第二步:配置OpenClaw(让“龙虾”认识飞书)

4.1 安装飞书插件(如果还没装)

打开你的OpenClaw终端(SSH到服务器或打开本地命令行),执行:

bash

openclaw plugins install @openclaw/feishu

看到安装成功提示就行。

注意:有些新版镜像可能已经预装了飞书插件,可以用openclaw plugins list先查一下。

4.2 配置飞书凭证

现在要把刚才保存的App ID和App Secret告诉OpenClaw。

执行命令(记得替换成你自己的值):

bash

openclaw config set channels.feishu.enabled true

openclaw config set channels.feishu.appId "cli_你的AppID"

openclaw config set channels.feishu.appSecret "你的AppSecret"

如果想用WebSocket长连接(推荐,无需公网IP),再加一条:

bash

openclaw config set channels.feishu.connectionMode websocket

4.3 重启OpenClaw网关

配置完必须重启,让配置生效:

bash

openclaw gateway restart

4.4 验证配置是否成功

执行:

bash

openclaw status

如果看到类似这样的输出,说明飞书通道已经打开:

│ Feishu   │ ON      │ OK     │ configured                    │

5.第三步:配置飞书事件订阅(打通任督二脉)

5.1 选择长连接模式

回到飞书开放平台你的应用后台,左侧导航栏找到“事件与回调”。

在“事件配置”页签,找到“订阅方式”,选择 “使用长连接接收事件”,然后点击“保存”。

⚠️ 重要提醒:这一步必须在配置完App ID/Secret并重启OpenClaw之后才能成功。如果保存时报错“未建立长连接”,说明OpenClaw那边还没配置好或网关没重启,检查一下再试。

5.2 添加接收消息事件

保存成功后,在同一页面点击“添加事件”。

在弹出的搜索框里输入“接收消息”,找到 im.message.receive_v1,选中后点击“确认添加”。

这一步告诉飞书:当有人给机器人发消息时,要通知OpenClaw来处理。

5.3 回调配置(可选)

切换到“回调配置”页签,同样选择“使用长连接接收回调”,点击保存即可。这一步不是必须的,但建议配一下,让机器人功能更完整。

图片

图片

6.第四步:发布应用(让机器人上线)

6.1 创建版本

左侧导航栏找到“版本管理与发布”,点击“创建版本”。

填写:

· 版本号:比如 1.0.0(按规范写,如v1.0.0)

· 更新说明:比如“首次发布,支持OpenClaw飞书对话”

填好后点击“保存”。

6.2 确认发布

保存后会出现确认弹窗,点击“确认发布”,然后等待审批。

如果你是企业的管理员,可以自己审批通过;如果不是,需要联系管理员帮忙审批一下。

图片

7.第五步:开始使用(@你的AI员工)

7.1 添加机器人到聊天

单聊:在飞书通讯录里搜索你的应用名称(比如“OpenClaw小助手”),点进去就可以直接聊天。

群聊:在群聊设置里找到“群机器人”→“添加机器人”,搜索你的应用名称添加即可。

7.2 第一次对话:可能会需要配对

有些版本在第一次对话时,机器人会回复一个“配对码”,类似这样:

请执行以下命令完成配对:

openclaw pairing approve feishu 123456

这时候你需要回到OpenClaw的终端,执行这个命令,配对成功后就能正常聊天了。

7.3 正常使用

配对完成后,你就可以像跟朋友聊天一样@你的机器人了:

· 单聊:直接发消息

· 群聊:记得要@机器人(除非你配置了免@模式)

试试问它:“帮我总结一下今天的行业热点”、“给团队写一份周报模板”……你的“龙虾”会在飞书里乖乖干活。

8.避坑指南(新手最容易踩的坑)

坑1:收不到消息

症状:给机器人发消息,完全没反应

检查清单:

· ✅ 应用已发布(不是草稿状态)

· ✅ 事件订阅用的是“长连接”,不是Webhook

· ✅ 三个im权限都开了(im:message、群聊@、私聊)

· ✅ OpenClaw网关已重启(openclaw gateway restart)

坑2:长连接配置报错

症状:在飞书后台保存事件订阅时报“未建立长连接”

原因:OpenClaw那边还没配置好App ID/Secret,或者网关没重启

解决:

1. 确认openclaw config set命令执行成功

2. 执行openclaw gateway restart重启

3. 等10秒左右,再回飞书后台保存

坑3:群聊不回复

症状:群里@机器人,它不理人

原因:默认配置需要@才回复,但可能@格式不对

解决:

· 确认是真的@了机器人(名字变蓝)

· 或者在消息末尾加个问号(部分版本支持)

· 如果想让它更主动,可以修改配置requireMention为false

坑4:App Secret丢了

症状:忘了保存App Secret,关掉页面找不到了

解决:在飞书开放平台的应用后台,进入“凭证与基础信息”,点击App Secret旁边的“重置”,生成一个新的。记得重新配置到OpenClaw里。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐