OpenClaw 2.7.9 对接飞书完整实操配置教程
前言
本文结合飞书开放平台后台操作界面、配套素材,搭配 OpenClaw Windows 端现有飞书渠道配置逻辑整理而成。整套接入方案采用企业自建应用搭配长连接接收事件的模式,仅需 App ID、App Secret 两项参数即可完成对接。
整套接入流程分为五大核心环节:企业自建应用创建、机器人能力开启、事件订阅配置、权限批量开通、应用版本发布,全部操作完成后即可在 OpenClaw 内启用飞书消息交互能力。
核心要点总结
- OpenClaw 飞书渠道配置页面仅录入 App ID、App Secret 两项参数即可;
- 飞书平台统一选用长连接接收事件,无需额外部署公网回调地址;
- 完整落地必须走完五步操作:应用创建→机器人能力添加→事件订阅→权限开通→版本发布。
前置环境准备
- 本地已下载并正常启动 OpenClaw Windows 2.7.9 版本,安装包大小 45.8MB
- Windows 安装包下载地址:https://xiake.yun/api/download/package/18?promoCode=IV4E9B04A80C
- 苹果系统安装包下载地址:https://openclaw.ikidi.top/api/download/package/35?promoCode=IV4E9B04A80C
- 拥有可正常登录飞书开放平台的账号,具备开发者后台操作权限;
- 持有可用飞书企业或组织空间;
- 使用企业组织账号创建应用后,发布版本阶段需要对应企业管理员完成审核。
分步实操操作流程
一、飞书开放平台创建企业自建应用
- 访问飞书开放平台官网地址:https://open.feishu.cn/app,点击页面右上角开发者后台,选择创建企业自建应用。
- 填写应用基础信息:自定义机器人应用名称、补充功能描述,选择系统默认头像或上传自定义图标,确认信息后点击创建。
- 新增机器人应用能力:进入应用管理主页,点击左侧添加应用能力,在能力列表检索机器人选项并完成添加。
二、配置长连接事件接收(关键步骤)
- 左侧导航栏打开事件与回调板块,在事件配置区域点击订阅方式右侧编辑按钮。
- 修改事件订阅模式,选择使用长连接接收事件并保存设置,不要切换至将事件发送至开发者服务器选项。该模式适配本地 OpenClaw 运行环境,省去公网地址部署工作。
- 保存订阅方式后,在已添加事件区域点击添加事件按钮。
- 在事件选择弹窗内搜索关键词 “接收”,勾选
im.message.receive_v1接收消息事件并确认添加。该事件是飞书机器人向 OpenClaw 推送消息的核心依赖,缺失后无法完成消息互通。 - 若页面弹出推荐开通权限弹窗,直接点击确认开通权限;操作完成后展开事件下方权限清单,逐项核对权限状态,全部显示已开通即为正常,未开通权限点击名称补充开通。
三、批量导入飞书应用所需权限
- 左侧菜单栏切换至权限管理页面,点击批量导入 / 导出权限功能按钮。
- 清空导入窗口内原有默认文本,完整粘贴下方权限 JSON 配置内容:
{ "scopes": { "tenant": [ "aily:message:read", "aily:message:write", "base:app:copy", "base:app:create", "base:app:read", "base:app:update", "base:collaborator:create", "base:collaborator:delete", "base:collaborator:read", "base:dashboard:copy", "base:dashboard:read", "base:field:create", "base:field:delete", "base:field:read", "base:field:update", "base:form:read", "base:form:update", "base:record:create", "base:record:delete", "base:record:read", "base:record:retrieve", "base:record:update", "base:role:create", "base:role:delete", "base:role:read", "base:role:update", "base:table:create", "base:table:delete", "base:table:read", "base:table:update", "base:view:read", "base:view:write_only", "bitable:app", "bitable:app:readonly", "board:whiteboard:node:create", "board:whiteboard:node:delete", "board:whiteboard:node:read", "board:whiteboard:node:update", "cardkit:card:write", "contact:contact.base:readonly", "contact:user.base:readonly", "contact:user.employee_id:readonly", "contact:user.employee_number:read", "contact:user.id:readonly", "docs:doc", "docs:doc:readonly", "docs:document.comment:create", "docs:document.comment:read", "docs:document.comment:update", "docs:document.comment:write_only", "docs:document.content:read", "docs:document.media:download", "docs:document.media:upload", "docs:document.subscription", "docs:document.subscription:read", "docs:document:copy", "docs:document:export", "docs:document:import", "docs:event.document_deleted:read", "docs:event.document_edited:read", "docs:event.document_opened:read", "docs:event:subscribe", "docs:permission.member", "docs:permission.member:auth", "docs:permission.member:create", "docs:permission.member:delete", "docs:permission.member:readonly", "docs:permission.member:retrieve", "docs:permission.member:transfer", "docs:permission.member:update", "docs:permission.setting", "docs:permission.setting:read", "docs:permission.setting:readonly", "docs:permission.setting:write_only", "docx:document", "docx:document.block:convert", "docx:document:create", "docx:document:readonly", "drive:drive", "drive:drive.metadata:readonly", "drive:drive.search:readonly", "drive:drive:readonly", "drive:drive:version", "drive:drive:version:readonly", "drive:export:readonly", "drive:file", "drive:file.like:readonly", "drive:file.meta.sec_label.read_only", "drive:file:download", "drive:file:readonly", "drive:file:upload", "drive:file:view_record:readonly", "event:ip_list", "im:app_feed_card:write", "im:chat", "im:chat.members:read", "im:chat:read", "im:message", "im:message.group_msg", "im:message:send_as_bot", "im:message:readonly", "im:message:update", "sheets:spreadsheet", "sheets:spreadsheet:create", "sheets:spreadsheet:read", "space:folder:create", "wiki:node:create", "wiki:node:read", "wiki:node:update", "wiki:space:read" ], "user": [] } }- 粘贴完成后点击下一步,确认新增权限;部分权限会弹出数据范围配置窗口,统一选择与应用的可用范围一致,点击确认保存。
四、创建并发布应用版本(配置生效必要操作)
权限与事件配置完成后,需要发布应用版本,所有设置才会正式生效:
- 页面顶部存在创建版本按钮可直接点击,无入口则从左侧版本管理与发布进入对应页面。
- 填写版本相关信息:设置全新版本号如 1.0.0、1.0.1;移动端、桌面端默认能力均保持机器人;更新说明填写事件订阅、权限配置更新等内容。
- 滑动至页面底部点击保存版本,保存完成后确认发布。个人飞书空间发布无需审核,企业组织账号需等待管理员审核通过后方可生效。
五、获取凭证并填入 OpenClaw 渠道配置
- 左侧切换至凭证与基础信息页面,复制页面内 App ID、App Secret 两组参数。
- 打开本地 OpenClaw 2.7.9 客户端,点击右上角设置,进入聊天配置板块,找到 Feishu/Lark 飞书配置卡片。
- 将复制的 App ID、App Secret 分别填入对应输入框,开启飞书渠道开关,点击右上角保存渠道配置,整套对接流程全部完成。
接入完成自检清单
全部配置结束后可对照以下条目逐项核对,避免配置遗漏:
- 飞书应用已成功添加机器人能力;
- 事件与回调订阅模式设置为长连接接收事件;
- 已添加
im.message.receive_v1接收消息事件; - 事件关联依赖权限全部为已开通状态;
- 权限管理页面已导入完整权限 JSON 配置;
- 应用新版本完成保存并发布;
- App ID、App Secret 参数准确录入 OpenClaw;
- OpenClaw 飞书渠道完成保存配置操作。
常见问题排查方案
问题 1:参数录入完成后,飞书机器人无法响应消息
按照优先级依次排查以下内容:
- 飞书应用版本是否发布成功,企业账号确认管理员审核已通过;
- 事件订阅是否选择
im.message.receive_v1,订阅模式是否为长连接; - OpenClaw 保存渠道配置后,尝试重启 Gateway 服务;
- 核对 App Secret 复制内容,检查是否存在多余空格、复制旧密钥等情况。
问题 2:整套配置无需填写公网回调地址原因
当前接入方案采用飞书官方支持的长连接通信模式,OpenClaw 本地客户端通过长连接和飞书平台建立通信链路,仅依靠 App ID、App Secret 完成身份校验,无需手动配置 Webhook 回调地址与公网服务器。
问题 3:权限是否必须完整导入 JSON 配置
仅实现飞书收发消息基础交互,可按照事件弹窗提示开通最小权限;若后续需要在 OpenClaw 内联动飞书文档、多维表格、知识库、云空间等功能,建议直接导入完整权限 JSON 配置,省去后续补充开通权限的重复操作。
相关参考链接
飞书开放平台开发者后台:https://open.feishu.cn/app