Openclaw接入飞书,指导AI在飞书群里干活

文章目录


前言


一、安装飞书官方插件

  1. 在命令行终端中,执行以下安装指令。
bash 复制代码
npx -y @larksuite/openclaw-lark install
  1. 执行过程中,可通过飞书客户端扫描二维码,在客户端选择一键创建飞书机器人或选择已有机器人

windows版本可能会因为终端分辨率问题,导致扫码不上,可以下载Cmder进行安装。

其实安装完成这一步骤,飞书私人版助手已经搭建成功,但存在无法开启外部共享,也就是只能自己用,不能和外部用户拉群使用。如果有群需求的话,可以将外部群转换为内部群,然后再创建企业自建应用,移步下面章节。

二、创建企业自建机器人

  1. 首先,登录飞书开放平台,进入开发者后台,点击「创建企业自建应用」。

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

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

    之后进行权限开通,这里可以按照给出来的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查询

  1. 在群最下面有一个会话ID:oc_XXXX

2. 用户ou查询

  1. 登录 API 调试台,找到发送消息接口。
  2. 在 查询参数 页签,将 user_id_type 设置为 open_id,然后点击 快速复制 open_id。
  3. 在弹窗中,搜索或选择指定用户,并点击 复制成员 ID,获取用户的 open_id。

五、常见问题

1、艾特机器人无响应?

首先在发送消息时看下openclaw的网关终端是否有消息滚动,无滚动,大概率是飞书控制台配置存在问题,可查看后台日志,无日志输出的话,大概率是事件回调出了问题

相关推荐
海兰10 小时前
【文字三国志:第三篇】天命重构,数据模型设计
人工智能·游戏
心疼你的一切10 小时前
高效内容生产:如何实现规模化创作
大数据·人工智能·ai·ai编程·ai写作
QYR-分析10 小时前
智能化重构仓储物流:仓储人形机器人行业全景解析
人工智能·重构·机器人
AI 小老六11 小时前
Claude Code 如何压缩上下文:Microcompact、Prompt Cache 与 cache_edits 工程拆解
数据库·人工智能·ai·语言模型·架构·系统架构
侃谈科技圈11 小时前
多门店数据孤岛破局:零售连锁一体化系统2026选型
人工智能·零售
lqqjuly11 小时前
注意力机制完全详解
人工智能·语言模型
数据科学小丫11 小时前
特征工程处理
人工智能·算法·机器学习
WooaiJava11 小时前
即将到达的AI时代——Claude Code
人工智能
风落无尘11 小时前
第十章《多模态与具身》 完整学习资料
人工智能·语言模型·aigc