文章目录
- 前言
- 一、安装飞书官方插件
- 二、创建企业自建机器人
- 三、Openclaw配置文件修改
- 四、用户OU和群oc查询方式
-
- 1、群oc查询
- [2. 用户ou查询](#2. 用户ou查询)
- 五、常见问题

前言
- 先准备好已经安装好的 OpenClaw,如果没有安装的,可以移步进行安装OpenClaw【Windows版】安装、配置、API接入、卸载全流程小白指南
- 其实飞书官方也出了部署openclaw的安装教程,也可以作为参考:OpenClaw 飞书官方插件使用指南(公开版)
一、安装飞书官方插件
- 在命令行终端中,执行以下安装指令。
bash
npx -y @larksuite/openclaw-lark install
- 执行过程中,可通过飞书客户端扫描二维码,在客户端选择一键创建飞书机器人或选择已有机器人。
windows版本可能会因为终端分辨率问题,导致扫码不上,可以下载Cmder进行安装。

其实安装完成这一步骤,飞书私人版助手已经搭建成功,但存在无法开启外部共享,也就是只能自己用,不能和外部用户拉群使用。如果有群需求的话,可以将外部群转换为内部群,然后再创建企业自建应用,移步下面章节。
二、创建企业自建机器人
- 首先,登录飞书开放平台,进入开发者后台,点击「创建企业自建应用」。

填写应用名称和描述,按照自己意愿随便填写即可。

创建完成后进入应用详情页,在「添加应用能力」中点击添加机器人能力:

之后进行权限开通,这里可以按照给出来的json,直接选择批量导入,可以根据个人习惯进行调整,将不想开通的权限进行限制即可,在这里我是根据飞书默认权限进行导入的。查看每个字段含义可参考官网:OpenClaw 飞书官方插件使用指南(公开版)

json
{
"scopes": {
"tenant": [
"application:application:self_manage",
"cardkit:card:read",
"cardkit:card:write",
"contact:contact.base:readonly",
"contact:user.basic_profile:readonly",
"docs:document.comment:create",
"docs:document.comment:delete",
"docs:document.comment:read",
"docs:document.comment:update",
"docs:document.comment:write_only",
"docx:document.block:convert",
"docx:document:create",
"docx:document:readonly",
"docx:document:write_only",
"drive:drive.metadata:readonly",
"im:chat",
"im:chat.members:bot_access",
"im:chat:read",
"im:chat:readonly",
"im:chat:update",
"im:message",
"im:message.group_at_msg:readonly",
"im:message.group_msg",
"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"
],
"user": [
"base:app:copy",
"base:app:create",
"base:app:read",
"base:app:update",
"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:read",
"base:table:update",
"base:view:read",
"base:view:write_only",
"board:whiteboard:node:create",
"board:whiteboard:node:read",
"calendar:calendar.event:create",
"calendar:calendar.event:read",
"calendar:calendar.event:reply",
"calendar:calendar.event:update",
"calendar:calendar.free_busy:read",
"calendar:calendar:read",
"contact:contact.base:readonly",
"contact:user.base:readonly",
"contact:user.basic_profile:readonly",
"contact:user.employee_id:readonly",
"contact:user:search",
"docs:document.comment:create",
"docs:document.comment:read",
"docs:document.comment:update",
"docs:document.media:download",
"docs:document.media:upload",
"docs:document:copy",
"docs:document:export",
"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",
"offline_access",
"search:docs:read",
"search:message",
"sheets:spreadsheet.meta:read",
"sheets:spreadsheet:create",
"sheets:spreadsheet:read",
"sheets:spreadsheet:write_only",
"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"
]
}
}
之后开通事件与回调,在这里我权限开通如下,最最重要的接收消息 一定不要忘记开,因为这个问题,我也是排查了好久为啥机器人一直不回复的问题。


点击「创建版本」,发布应用,并填写版本号和更新说明。
进入「飞书管理后台」,进行审核,之后我们就可以建立群拉取机器人了

最后,回到应用的「凭证与基础信息」页面,获取 App ID 和 App Secret,复制保存好,下一步要用。

三、Openclaw配置文件修改
我们打开openclaw.json文件,将appId、aapSecret进行填写,以及用户和群组信息,下面修改的是只有在群里艾特机器人 ,才进行回复。如果想修改策略,可参考官方说明文档。

json
{
"channels": {
"feishu": {
// [开关] 是否启用飞书渠道。
"enabled": true,
// [凭证] 飞书开放平台应用的 App ID,用于标识你的应用身份(通常以 cli_ 开头)。
"appId": "cli_XXXX",
// [凭证] 飞书开放平台应用的 App Secret,用于验证身份。
"appSecret": "XXXX",
// [标识] 域名或渠道标识。
"domain": "feishu",
// [连接] 连接模式。"websocket" 表示使用长连接接收消息,无需公网服务器回调地址。
"connectionMode": "websocket",
// [全局策略] 群聊消息触发规则。true 表示在群聊中必须 @机器人 才会响应。
"requireMention": true,
// [私聊策略] 访问控制模式。"allowlist" 表示白名单模式,仅允许指定用户私聊。
"dmPolicy": "allowlist",
// [私聊白名单] 允许私聊的用户 ID 列表 (Open ID)。
// 只有这里的 ID 对应的用户私聊机器人时,消息才会被处理。
"allowFrom": [
"ou_XXXX",
"ou_XXXX"
],
// [群聊策略] 群聊访问控制模式。"allowlist" 表示仅允许指定的群组使用机器人。
"groupPolicy": "allowlist",
// [群聊白名单] 允许机器人响应的群组 ID 列表 (Chat ID)。
"groupAllowFrom": [
"ou_XXXX",
"ou_XXXX"
],
// [高级配置] 针对特定群组的细粒度配置对象。
"groups": {
// 通配符 "*" 代表所有群组。
"*": {
// 是否允许所有群组的消息(通常配合 groupPolicy 使用,作为默认规则)。
"enabled": true
},
// 指定特定群组 ID 的配置(例如:oc_39d1...)。
"oc_XXXX": {
// [覆盖规则] 针对该特定群组,强制设置是否需要 @机器人。
// 即使全局 requireMention 为 false,这里设为 true 也会强制要求 @。
"requireMention": true
}
}
}
}
}
四、用户OU和群oc查询方式
1、群oc查询
- 在群最下面有一个会话ID:oc_XXXX

2. 用户ou查询
- 登录 API 调试台,找到发送消息接口。
- 在 查询参数 页签,将 user_id_type 设置为 open_id,然后点击 快速复制 open_id。

- 在弹窗中,搜索或选择指定用户,并点击 复制成员 ID,获取用户的 open_id。

五、常见问题
1、艾特机器人无响应?
首先在发送消息时看下openclaw的网关终端是否有消息滚动,无滚动,大概率是飞书控制台配置存在问题,可查看后台日志,无日志输出的话,大概率是事件回调出了问题
