手把手教你配置飞书 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

Java版LeetCode热题100之最长回文子串:从暴力到Manacher的全方位解析

Java版LeetCode热题100之最长回文子串:从暴力到Manacher的全方位解析 摘要:本文深入剖析 LeetCode 热题 100 中的经典字符串问题——「最长回文子串」。我们将从原题回顾出发,系统讲解三种主流解法:动态规划、中心扩展法、Manacher 算法。每种方法均包含原理分析、代码实现、复杂度评估,并延伸至面试应对、实际应用、相关题目等维度。全文结构严谨、内容翔实,适合算法进阶与面试准备。 一、原题回顾 题目描述: 给你一个字符串 s,找到 s 中最长的回文子串。 回文串定义:正读和反读都相同的字符串,如 "aba"、"abba"。 示例 1: 输入:s = "babad" 输出:"

By Ne0inhk
数据结构:kmp算法,Trie树,以及并查集的干货详解---小白也能看懂

数据结构:kmp算法,Trie树,以及并查集的干货详解---小白也能看懂

🎬 博主名称:个人主页 🔥 个人专栏: 《算法通关》,《Java讲解》 ⛺️心简单,世界就简单 序言 昨晚数据结构写了一半,做图太累了,文章写的比较慢,这篇应该就是第二篇,后面还有一篇,太困了,真不行了 今天讲一下 kmp算法,Trie, 并查集 目录 序言 KMP算法 原理 next数组 匹配过程 Trie树 并查集 KMP算法 这里说一下kmp的大致情况 用于处理字符串匹配问题,他也是十分的抽象                给一个S[]主串(比较长的那个),P[]为模板串,kmp我们一般用下标1来开始遍历 接下来我们需要去思考的是 1,暴力去怎么做 2,怎么去优化 下面是暴力的模板代码 大概意思就是,每当我们匹配到不一样的部位,我们的P就要从头开始再跟刚刚s的起点+1位置重新匹配,        这样就会造成串的长度很长时候,就会超时,所以我们就要从这个过程中找性质了

By Ne0inhk
【树 DFS BFS 离线查询】P11855 [CSP-J2022 山东] 部署|普及+

【树 DFS BFS 离线查询】P11855 [CSP-J2022 山东] 部署|普及+

本文涉及知识点 C++图论 C++BFS算法 C++DFS P11855 [CSP-J2022 山东] 部署 题目背景 受疫情影响,山东省取消了 CSP-J 2022 认证活动,并于次年三月重新命题,在省内补办比赛。 题目描述 “万里羽书来未绝,五关烽火昼仍传。” 古时候没有现代信息化战争的技术,只能靠烽火传信和将军运筹帷幄的调兵遣将来取得战争的优势。 为了使消耗最低,现在 A 国已经在 n n n 个城市之间建好了道路和行军部署渠道,使得这 n n n 个城市都能互相到达且不存在环(即构成以 1 1 1 号城市为根节点的树型结构)。每个城市都驻扎了一定数量的兵力。 为了清晰的描述问题,我们给这 n n n 个城市进行 1

By Ne0inhk
【NLP自然语言处理】TextRank揭秘:文本摘要与关键词提取的强大算法

【NLP自然语言处理】TextRank揭秘:文本摘要与关键词提取的强大算法

目录 🍔 TextRank算法的来源 🍔 TextRank算法的概念 🍔 TextRank算法代码实践 3.1 关键词抽取(keyword extraction) 3.2 关键短语抽取(keyphrase extraction) 3.3 关键句抽取(sentence extraction) 3.4 基于jieba的TextRank算法 🍔 小节 学习目标 🍀 理解TextRank算法的来源. 🍀 掌握TextRank算法的概念. 🍀 掌握TextRank算法的代码实践. 🍔 TextRank算法的来源 * 在介绍TextRank算法之前, 我们先来简单回顾一下著名的PageRank算法. * PageRank算法: 通过计算网页链接的数量和质量来评估网页的重要性, 算法发明人即谷歌的两位联合创始人之一的拉里.佩奇(Larry Page). 最初被应用在搜索引擎优化操作中. * 联想思维: PageRank算法其实是借鉴了学术界评价学术论文重要性的通用方法-"影响因子", 可以直观的理解为"该论文被引用的次数". * 这样就可以

By Ne0inhk