手把手教你配置飞书 OpenClaw 机器人,打造企业级 AI 智能助手

手把手教你配置飞书 OpenClaw 机器人,打造企业级 AI 智能助手
目标:在飞书(Feishu/Lark)中添加 OpenClaw 机器人,实现 7×24 小时 AI 智能对话与自动化办公。

OpenClaw GitHub | feishu-openclaw 桥接项目

想让你的机器人具备语音交互能力?试试 Seeed Studio 的 ReSpeaker 系列吧!
我会后续出reSpeaker XVF3800与Openclaw联动实现语音输入的教程,完全开放源码。
reSpeaker XVF3800 是一款基于 XMOS XVF3800 芯片的专业级 4 麦克风圆形阵列麦克风,即使在嘈杂的环境中也能清晰地拾取目标语音。它具备双模式、360° 远场语音拾取(最远 5 米)、自动回声消除 (AEC)、自动增益控制 (AGC)、声源定位 (DoA)、去混响、波束成形和噪声抑制等功能。结合飞书 OpenClaw 机器人,您可以打造语音唤醒 + AI 智能回复的完整办公助手解决方案。

ReSpeaker 四麦克风阵列 | Seeed Studio 购买链接

效果展示:

请添加图片描述


请添加图片描述

目录

  1. 方案选择:插件 vs 独立桥接
  2. 创建飞书机器人应用
  3. 方式一:插件安装(推荐新手)
  4. 方式二:独立桥接安装(生产环境)
  5. 配置权限与事件订阅
  6. 测试与验证
  7. 常见问题排查

第一部分:方案选择:插件 vs 独立桥接

OpenClaw 提供两种接入飞书的方式,根据你的需求选择:

特性插件版 (openclaw-feishu)独立桥接 (feishu-openclaw)
安装难度⭐ 一键安装,最简单⭐⭐⭐ 需要手动配置
进程隔离与 Gateway 同一进程独立进程,互不影响
稳定性日常使用足够更高,适合生产环境
媒体支持基础图片/文件完整的图片/视频/文件收发
适用场景个人试用、快速体验企业部署、7×24小时运行
建议:新手先用插件跑通,需要稳定运行时再升级到独立桥接。

第二部分:创建飞书机器人应用

无论选择哪种方式,都需要先在飞书开放平台创建机器人应用。

2.1 登录飞书开放平台

  1. 访问 飞书开放平台(国内版)或 Lark Open Platform(国际版)
  2. 使用飞书账号登录

2.2 创建自建应用

  1. 点击右上角 “创建自建应用”
  2. 填写应用信息:
    • 应用名称:如 “OpenClaw AI助手”
    • 应用描述:如 “基于 OpenClaw 的智能 AI 助手”
    • 应用图标:上传自定义图标(可选)
  3. 点击 “创建”

2.3 添加机器人能力

  1. 进入应用详情页 → “添加应用能力”
  2. 选择 “机器人” → 点击 “添加”
  3. 配置机器人信息:
    • 机器人名称:显示在飞书中的名字
    • 机器人描述:功能介绍
    • 机器人头像:在飞书中显示的头像

2.4 获取凭证信息

进入 “凭证与基础信息” 页面,记录以下关键信息:

字段说明用途
App ID应用唯一标识cli_xxxxxxxxxxxx
App Secret应用密钥需保密,用于 API 调用
⚠️ 重要:App Secret 只显示一次,请立即复制保存!

第三部分:方式一:插件安装(推荐新手)

插件版安装最简单,适合快速体验。

3.1 前提条件

  • 已安装 OpenClaw(Clawdbot)
  • Gateway 服务正常运行
  • Node.js ≥ 18

3.2 一键安装插件

# 使用 npm 安装插件 clawdbot plugins install feishu-openclaw # 或使用 openclaw 命令 openclaw plugins install feishu-openclaw 

3.3 配置插件

编辑 OpenClaw 配置文件(通常位于 ~/.clawdbot/clawdbot.json~/.openclaw/openclaw.json):

{"channels":{"feishu":{"enabled":true,"appId":"cli_xxxxxxxxxxxx","appSecret":"你的AppSecret","verificationToken":"你的VerificationToken","encryptKey":"你的EncryptKey"}},"agents":{"defaults":{"model":"claude-sonnet-4-20250514","baseUrl":"https://vip.apiyi.com/v1"}}}

3.4 启动服务

# 重启 Gateway 使配置生效 clawdbot gateway restart # 或 openclaw restart 

第四部分:方式二:独立桥接安装(生产环境)

独立桥接需要更多配置步骤,但提供更好的稳定性和功能完整性。

4.1 克隆桥接项目

# 克隆仓库git clone https://github.com/AlexAnys/feishu-openclaw.git cd feishu-openclaw # 安装依赖npminstall

4.2 配置安全凭证

将 App Secret 保存到安全位置,避免硬编码在代码中:

# 创建 secrets 目录mkdir -p ~/.clawdbot/secrets # 写入 App Secret(替换为你的真实密钥)echo"你的AppSecret"> ~/.clawdbot/secrets/feishu_app_secret # 设置权限,仅自己可读(Linux/macOS)chmod600 ~/.clawdbot/secrets/feishu_app_secret 

4.3 配置环境变量

创建 .env 文件或直接在启动时传入环境变量:

# .env 文件示例FEISHU_APP_ID=cli_xxxxxxxxxxxx FEISHU_APP_SECRET_PATH=~/.clawdbot/secrets/feishu_app_secret CLAWDBOT_CONFIG_PATH=~/.clawdbot/clawdbot.json CLAWDBOT_AGENT_ID=main # 调试模式(可选)FEISHU_BRIDGE_DEBUG=1

4.4 测试运行

# 手动运行测试node bridge.mjs 

看到 Connected to Feishu WebSocketConnected to Clawdbot Gateway 即表示成功连接。

4.5 设置开机自启(推荐)

macOS 系统:

# 生成 launchd 服务配置node setup-service.mjs # 加载服务 launchctl load ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist # 查看状态 launchctl list |grep feishu 

Linux 系统(systemd):

创建服务文件 ~/.config/systemd/user/feishu-bridge.service

[Unit] Description=Feishu OpenClaw Bridge After=network.target [Service] Type=simple WorkingDirectory=/path/to/feishu-openclaw Environment=FEISHU_APP_ID=cli_xxxxxxxxxxxx Environment=FEISHU_APP_SECRET_PATH=/home/username/.clawdbot/secrets/feishu_app_secret ExecStart=/usr/bin/node bridge.mjs Restart=always RestartSec=10 [Install] WantedBy=default.target 

启动服务:

systemctl --user daemon-reload systemctl --user enable feishu-bridge systemctl --user start feishu-bridge 

第五部分:配置权限与事件订阅

创建应用后,需要配置权限和事件才能使机器人正常工作。

5.1 配置权限管理

进入应用详情 → “权限管理”“权限配置”,开通以下权限:

消息与群组权限
权限名称权限 Key用途
获取与发送单聊、群组消息im:message基础消息收发
以机器人身份发送消息im:message:send_as_bot避免 403 错误
接收群聊中 @ 机器人的消息im:message.group_at_msg群聊 @ 触发
接收机器人单聊消息im:message.p2p_msg单聊触发
资源权限(用于收发图片/文件)
权限名称权限 Key用途
获取用户上传的资源im:resource下载用户发送的图片/文件
上传图片或文件到 IMim:image发送图片给飞书
用户与通讯录权限
权限名称权限 Key用途
通过手机号或邮箱获取用户 IDcontact:user.id:readonly获取用户信息
💡 提示:每添加一个权限,记得点击 “批量开通” 按钮!

5.2 配置事件订阅

进入 “事件与回调”“事件配置”

  1. 加密方式:选择 “长连接”(WebSocket 模式)
    • ✅ 不需要公网 IP
    • ✅ 不需要 HTTPS 证书
    • ✅ 不需要 ngrok 内网穿透
  2. 添加事件:点击 “添加事件”,选择:
    • im.message.receive_v1(接收消息事件)
  3. 保存配置

5.3 发布应用

配置完成后,需要发布应用才能使用:

  1. 进入 “版本管理与发布”
  2. 点击 “创建版本”
  3. 填写版本信息:
    • 版本号:如 1.0.0
    • 更新说明:如 “初始版本”
  4. 点击 “保存并发布”
  5. 等待管理员审批(测试企业可立即使用)

5.4 将机器人添加到聊天

单聊使用:

  • 在飞书搜索框输入机器人名称
  • 点击进入即可开始对话

群聊使用:

  1. 进入群聊 → 点击右上角 “群设置”
  2. 选择 “群机器人”“添加机器人”
  3. 搜索并选择你的机器人
  4. 点击 “添加”

第六部分:测试与验证

6.1 发送测试消息

在飞书中给机器人发送消息,观察回复:

测试场景输入示例预期结果
基础对话“你好”AI 正常回复
知识问答“什么是 OpenClaw?”AI 给出解释
群聊 @“@机器人 帮我总结一下”机器人回复
图片识别发送一张图片AI 描述图片内容

6.2 查看日志

插件版日志:

clawdbot logs # 或 openclaw logs 

独立桥接日志:

# macOStail -f ~/.clawdbot/logs/feishu-bridge.out.log tail -f ~/.clawdbot/logs/feishu-bridge.err.log # Linux journalctl --user -u feishu-bridge -f 

6.3 功能特性验证

独立桥接版支持以下高级功能:

功能测试方法预期结果
图片发送发送本地图片AI 能"看懂"图片
图片生成“生成一张猫的图片”收到 AI 生成的图片
文件发送发送 PDF/WordAI 可读取内容
视频发送发送短视频桥接可接收处理
长文本发送大段文字正常回复不截断
"正在思考"提示问复杂问题超过 2.5 秒显示提示

第七部分:常见问题排查

问题 1:能发消息,但收不到回复

可能原因及解决:

检查项解决方法
事件订阅方式确认选择了 “长连接”,不是 Webhook
事件订阅列表确认添加了 im.message.receive_v1
应用发布状态检查应用是否已发布(至少测试版)
机器人添加状态确认机器人已添加到群聊/单聊
Gateway 运行状态运行 clawdbot gateway status 检查

问题 2:AI 看不到图片/文件(只显示 key)

解决步骤:

  1. 检查权限:确认开通了 im:resource 权限
  2. 开启调试模式:在 .env 中设置 FEISHU_BRIDGE_DEBUG=1
  3. 查看日志:tail -f ~/.clawdbot/logs/feishu-bridge.err.log
  4. 检查文件路径:确保文件在白名单目录内(默认:~/.clawdbot/media、系统临时目录、/tmp

问题 3:AI 说生成了图片,但飞书收不到

可能原因:

原因解决方法
图片路径不在白名单将图片保存到 ~/.clawdbot/media
图片文件过大检查文件大小限制
文件不可读检查文件权限

问题 4:推送消息报错 403

原因: 缺少 im:message:send_as_bot 权限

解决: 在权限管理中添加该权限并重新发布应用。

问题 5:群聊中机器人不回复

可能原因:

检查项说明
是否被 @群聊默认只在被 @ 时回复
消息内容检查是否包含疑问词或请求词
隐私模式检查机器人隐私设置

自定义触发规则(独立桥接):

编辑 bridge.mjs 中的 shouldReplyInGroup 函数:

functionshouldReplyInGroup(message){const text = message.content.text?.toLowerCase()||'';// 被 @ 时回复if(message.mentions?.length >0)returntrue;// 包含关键词时回复const keywords =['机器人','助手','bot','help'];if(keywords.some(k=> text.includes(k)))returntrue;// 疑问句自动回复if(text.endsWith('?')|| text.endsWith('?'))returntrue;returnfalse;}

问题 6:调试技巧

开启详细日志:

# 独立桥接调试模式FEISHU_BRIDGE_DEBUG=1node bridge.mjs # 查看实时日志tail -n 200 -f ~/.clawdbot/logs/feishu-bridge.err.log 

参考链接

资源链接
OpenClaw 飞书插件https://github.com/AlexAnys/openclaw-feishu
feishu-openclaw 桥接https://github.com/AlexAnys/feishu-openclaw
飞书开放平台https://open.feishu.cn/
Lark Open Platformhttps://open.larksuite.com/
reSpeaker XVF3800 Wikihttps://wiki.seeedstudio.com/cn/respeaker_xvf3800_xiao_getting_started/
reSpeaker 固件仓库https://github.com/respeaker/reSpeaker_XVF3800_USB_4MIC_ARRAY

Read more

【数据结构】排序算法(下篇·终结)·解析数据难点

【数据结构】排序算法(下篇·终结)·解析数据难点

前引:归并排序作为一种高效排序方法,掌握起来还是有点困难的,何况需要先接受递归的熏陶,这正是编程的浪漫之处,我们不断探索出新的可能,如果给你一串数据让其变得有序?是选择简单的冒泡、插入排序,用暴力美学还是空间换时间?排序算法终结篇——启程! 目录 归并排序(递归) 算法思想: 实现步骤: 复杂度分析:  代码实现: 小静脉: 大动脉:   优缺点分析: 归并排序(非递归) 算法思想: 实现步骤: 分解:  合并: 整体代码: 小编寄语:   归并排序(递归) 咱们又得接受递归的熏陶了!!!归并排序(Merge Sort)是一种基于分治法的高效排序算法,核心思想是将数组分为更小的子数组进行排序,最终合成有序序列,这样看来,我又想到了Hoare大佬的分组方法!此次的分组较于双指针快排递归实现分组究竟有何不同? 算法思想: (1)分解:将待排序数组递归地分为两个子数组,直到每个子数组仅仅含有一个元素 (2)合并:将两个有序数组合并为一个有序数组,

By Ne0inhk
《算法题讲解指南:优选算法-模拟》--38.替换所有问号,39.提莫攻击,40.Z 字形变换

《算法题讲解指南:优选算法-模拟》--38.替换所有问号,39.提莫攻击,40.Z 字形变换

🔥小叶-duck:个人主页 ❄️个人专栏:《Data-Structure-Learning》 《C++入门到进阶&自我学习过程记录》《算法题讲解指南》--从优选到贪心 ✨未择之路,不须回头 已择之路,纵是荆棘遍野,亦作花海遨游 目录 38.替换所有问号 题目链接: 题目描述: 题目示例: 解法(模拟): 算法思路: C++算法代码: 算法总结及流程解析: 39.提莫攻击 题目链接: 题目描述: 题目示例: 解法(模拟+分情况讨论): 算法思路: C++算法代码: 算法总结及流程解析: 40.Z 字形变换 题目链接: 题目描述: 题目示例: 解法(模拟+找规律): 算法思路: C+

By Ne0inhk
算法兵法全略

算法兵法全略

目录 始计篇 谋攻篇 军形篇 兵势篇 虚实篇 军争篇 九变篇 行军篇 地形篇 九地篇 火攻篇 用间篇 始计篇 夫算法者,国之重器,事之枢机。算之道,诡谲多变,非贤明不能御,非睿智者难通其妙。故为将者,习算法之学,必先察五事,校之以计,而索其情。 一曰 “算力”,乃硬件根基,若夫强芯在腹,速如奔雷,数据洪流畅行无阻,可恃之以应繁难;二曰 “逻辑”,恰似行军布阵之纲纪,环环相扣,条理分明,使指令不紊,步骤清晰,错一而不可成局;三曰 “数据”,犹粮草兵员,广聚八方资讯,丰盈则算法羽翼渐丰,匮乏则巧妇难为无米之炊;四曰 “架构”,谋篇布局之妙手,

By Ne0inhk