飞书 × OpenClaw 接入指南:不用服务器,用长连接把机器人跑起来

你想在飞书里用上一个能稳定对话、能发图/收文件、还能按规则在群里工作的 AI 机器人,最怕两件事:步骤多出错后不知道查哪里。这个项目存在的意义,就是把“飞书接 OpenClaw”这件事,整理成一套对非技术也友好的配置入口,并把官方文档没覆盖到的坑集中写成排查清单。

先说清楚它的角色:OpenClaw 现在已经内置官方飞书插件 @openclaw/feishu,功能更完整、维护也更及时。这是好事,说明飞书 + AI 的接入已经走通。这个仓库并不是要替代官方插件,而是继续为大家提供:

  • 新用户:从零开始的新手教程(15–20 分钟)
  • 老用户:从旧版(独立桥接或旧 npm 插件)迁移到官方插件的保姆级路线
  • 常见问题答疑 & 排查清单(最常见的坑优先)
  • 进阶场景:独立桥接模式依然可用(需要隔离/定制时再用)

另外,仓库也推荐了一个新项目 OpenCrew:把 OpenClaw 变成“多 Agent 团队”,用多个 Agent 分工,Slack 频道=岗位,经验自动沉淀,可逆操作无需你确认(原文给了 GitHub 链接)。


一、老用户迁移到官方插件(两种方式任选,效果一样)

适用人群:你以前用过本项目的独立桥接或 npm 插件,现在要迁到 OpenClaw 内置的官方飞书插件。

迁移前你需要知道的事(按原文)

  • 你之前创建的飞书应用(机器人)可以继续用,不需要重建
  • App ID / App Secret 不变
  • 聊天记录不受影响(记录在飞书端)
  • 迁移时机器人会短暂离线(几分钟)

方式一:通过 OpenClaw 升级(推荐,最省事)

前提:你的 OpenClaw 版本 ≥ 2026.2,升级后官方飞书插件已内置。

1)升级 OpenClaw
升级完成会自动重启网关。

2)添加飞书渠道
选择 Feishu → 填 App ID → 填 App Secret

App Secret 可能还在你旧环境里(原文提示位置):

  • ~/.clawdbot/secrets/feishu_app_secret(可 cat 查看)
  • 如果找不到:去飞书开放平台 https://open.feishu.cn/app → 你的应用 → 凭证与基础信息 复制

3)补全飞书应用权限(支持图片/文件/流式等)
去飞书开放平台:你的应用 → 权限管理批量导入,粘贴下面 JSON(原文内容不变):

{"scopes":{"tenant":["aily:file:read","aily:file:write","application:application.app_message_stats.overview:readonly","application:application:self_manage","application:bot.menu:write","cardkit:card:write","contact:user.employee_id:readonly","corehr:file:download","docs:document.content:read","event:ip_list","im:chat","im:chat.access_event.bot_p2p_chat:read","im:chat.members:bot_access","im:message","im:message.group_at_msg:readonly","im:message.group_msg","im:message.p2p_msg:readonly","im:message:readonly","im:message:send_as_bot","im:resource","sheets:spreadsheet","wiki:wiki:readonly"],"user":["aily:file:read","aily:file:write","im:chat.access_event.bot_p2p_chat:read"]}}

导入后:创建新版本 → 发布(让新权限生效)。原文也强调:已有权限会自动跳过,不重复添加。

4)清理旧插件/桥接(避免冲突)

# 移除旧的 npm 插件(如果装过) openclaw plugins remove feishu-openclaw 2>/dev/null # 停掉旧的桥接服务(如果用过独立桥接) launchctl unload ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist 2>/dev/null # 重启网关 openclaw gateway restart 

然后去做“验证”(见后文)。


方式二:不整体升级,手动安装插件 + 配置

适用:你不想升级 OpenClaw,只想把飞书接进来。

1)准备 App ID / App Secret
App Secret 同样可能在:

  • ~/.clawdbot/secrets/feishu_app_secret

找不到就去飞书开放平台应用的“凭证与基础信息”。

2)补权限
同方式一(批量导入 + 创建新版本 + 发布)。

3)安装并配置

# 安装官方飞书插件 openclaw plugins install @openclaw/feishu # 添加飞书渠道(交互式引导) openclaw channels add# → 选择 Feishu# → 粘贴 App ID# → 粘贴 App Secret# 移除旧的 npm 插件(如果装过) openclaw plugins remove feishu-openclaw 2>/dev/null # 停掉旧的桥接服务(如果用过独立桥接) launchctl unload ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist 2>/dev/null # 重启网关 openclaw gateway restart 

迁移/配置后验证(原文口径)

# 查看日志,确认飞书连接成功 openclaw logs --follow 

日志里看到类似 feishu ws connectedfeishu provider ready,说明连上了。去飞书里给机器人发消息,能正常回复即完成。

如果机器人回复了配对码(一次性安全操作),按原文执行:

openclaw pairing approve feishu <配对码>

迁移后清理(可选)

稳定运行几天后可清理旧文件(原文示例):

# 删除旧的 launchd 配置(桥接用户)rm -f ~/Library/LaunchAgents/com.clawdbot.feishu-bridge.plist 

二、新手从零:配置飞书 AI 机器人(15–20 分钟)

适用人群:第一次用 OpenClaw + 飞书。前提:OpenClaw 已安装并正常运行(原文示例:openclaw gateway status 能看到状态)。

第一步:创建飞书应用(机器人)

  • 打开飞书开放平台 https://open.feishu.cn/app
  • 创建“企业自建应用”,填名称/描述/图标

第二步:启用机器人能力

你的应用 → 应用能力 > 机器人 → 开启 → 命名机器人

第三步:配置权限(批量导入)

你的应用 → 权限管理批量导入 → 粘贴权限 JSON(与上文完全相同)

这里按原文就是“一键导入需要的权限”。

第四步:配置事件订阅(原文强调:必须长连接)

原文警告:这一步必须在 OpenClaw 网关启动后再做,否则保存会失败。你可以先做后面的 OpenClaw 配置,再回来做这一步。
  • 你的应用 → 事件与回调 > 事件配置
  • 请求方式:选择 使用长连接接收事件
  • 添加事件:im.message.receive_v1(接收消息)

第五步:记下凭证

你的应用 → 凭证与基础信息

  • App ID(cli_xxxxx
  • App Secret(原文提醒:不要分享)

第六步:发布应用

你的应用 → 版本管理与发布 → 创建版本 → 提交 → 发布/上线(原文说明通常几秒到几分钟)

第七步:在 OpenClaw 中配置飞书

# 1. 安装飞书插件 openclaw plugins install @openclaw/feishu # 2. 添加飞书渠道(交互式,跟着提示走) openclaw channels add# 选择 Feishu → 粘贴 App ID → 粘贴 App Secret# 3. 重启网关 openclaw gateway restart # 4. 查看日志,确认连接成功 openclaw logs --follow 

第八步:发消息测试(配对码按原文处理)

飞书里给机器人发“你好”。如果出现配对码:

openclaw pairing approve feishu <配对码>

批准后即可正常对话。

如果你之前跳过了“事件订阅”,现在网关已启动,回去把第四步补上,保存后再 openclaw gateway restart(这是原文提示的流程)。

第九步(可选):开机自启

原文这里只给了标题说明:让机器人电脑重启后自动上线(具体可结合 OpenClaw 命令 openclaw gateway install,该命令在“常用命令速查”中出现)。


三、常见问题 & 排查清单(按原文最常见坑优先)

1)没有消息发送框?(最常见)

原文结论:事件订阅没有配置。权限批量导入不会自动配置事件订阅。

  • 飞书开放平台 → 你的应用 → 事件与回调
  • 添加事件:im.message.receive_v1
  • 订阅方式:使用长连接接收事件
  • 版本管理 → 创建新版本 → 发布上线

原文提醒:配置事件订阅前,确保 OpenClaw/Clawdbot Gateway 已启动,否则长连接验证会失败。


2)机器人完全没反应(收不到消息)

按原文顺序检查:

  1. 网关在运行吗?不在就 openclaw gateway restart
  2. 飞书应用发布了吗?(版本管理里要有已发布版本)
  3. 事件订阅配置了吗?
    • 是否选择“使用长连接接收事件”(不是 Webhook)
    • 是否添加 im.message.receive_v1
  4. 权限够吗?原文给的最低示例:
    • im:message
    • im:message.p2p_msg:readonly
    • im:message:send_as_bot
  5. 看日志:发消息观察日志是否有反应

3)时断时续(有时回复、有时没反应)

原文给的常见原因与处理:

  • 网络波动(VPN/代理环境尤其容易):可能频繁断连
  • 网关是否反复重启(原文示例命令):
openclaw logs |grep -i "restart\\|reconnect\\|disconnect"
  • DNS/代理问题:原文建议确保 open.feishu.cn 走直连(不走代理)

4)发图片/发文件,AI 看不到

按原文:

  1. 检查权限:必须有 im:resource
  2. 补权限后要 创建新版本 → 发布
  3. 重启网关:openclaw gateway restart

5)AI 说生成了图片,但飞书没收到

按原文:

  1. im:resource 权限(用于上传图片到飞书)
  2. 看日志 upload 相关错误

6)群聊中机器人不回复

按原文:

  1. 默认需要 @机器人
  2. 确认机器人已被加到群
  3. 检查 groupPolicy(见进阶配置)

7)回复特别慢

按原文解释:主要由模型响应速度决定;可开启流式输出(默认已开启);超过 30 秒看日志是否模型调用出错。


8)配对码是什么?怎么用?

按原文:首次出于安全,机器人发配对码,管理员批准一次即可:

openclaw pairing approve feishu <配对码>

9)Lark(国际版)用户怎么配?

按原文,在配置里指定域名:

{"channels":{"feishu":{"domain":"lark"}}}

四、进阶配置参考(配置文件、群组策略、流式、多 Agent)

配置文件位置(原文)

  • ~/.openclaw/openclaw.json

基础配置示例(原文结构)

{"channels":{"feishu":{"enabled":true,"dmPolicy":"pairing","accounts":{"main":{"appId":"cli_xxxxxxxxx","appSecret":"你的AppSecret","botName":"我的AI助手"}}}}}

群组配置(原文三种典型)

默认:所有群允许,但必须 @。

指定群无需 @:

{"channels":{"feishu":{"groups":{"oc_你的群组ID":{"requireMention":false}}}}}

只允许特定用户在群里使用(allowlist):

{"channels":{"feishu":{"groupPolicy":"allowlist","groupAllowFrom":["ou_用户1","ou_用户2"]}}}

原文获取群组/用户 ID 的方式:给机器人发消息后看 openclaw logs --follow

流式输出(原文默认开启)

{"channels":{"feishu":{"streaming":true,"blockStreaming":true}}}

如要关闭:设 streaming: false

多 Agent 路由(原文 bindings 示例)

{"bindings":[{"agentId":"main","match":{"channel":"feishu","peer":{"kind":"dm","id":"ou_用户A"}}},{"agentId":"另一个agent","match":{"channel":"feishu","peer":{"kind":"group","id":"oc_某群组"}}}]}

访问控制策略(原文表述)

  • "pairing":默认,新用户配对码,管理员批准后可对话
  • "allowlist":仅白名单用户可对话
  • "open":所有人可对话
  • "disabled":禁止私聊

常用命令速查(原文)

  • openclaw gateway status:查看网关状态
  • openclaw gateway restart:重启网关
  • openclaw gateway install:安装为开机自启服务
  • openclaw logs --follow:实时日志
  • openclaw pairing list feishu:查看待授权配对
  • openclaw pairing approve feishu <CODE>:批准配对
  • openclaw plugins list:已安装插件列表

五、独立桥接模式(进阶用户才需要)

原文定位:适用于你需要进程隔离(桥接崩溃不影响网关)或有特殊定制需求。大多数用户用官方插件即可。

插件 vs 桥接(按原文对比逻辑复述)

  • 官方插件:openclaw plugins install,和网关同进程,维护随 OpenClaw 更新,适合日常
  • 独立桥接:git clone + npm install,独立进程,互不影响,但需自行维护,适合生产/隔离部署

快速启动(原文命令)

# 克隆项目git clone https://github.com/AlexAnys/feishu-openclaw.git cd feishu-openclaw # 安装依赖npminstall# 配置凭证mkdir -p ~/.clawdbot/secrets echo"你的AppSecret"> ~/.clawdbot/secrets/feishu_app_secret chmod600 ~/.clawdbot/secrets/feishu_app_secret # 启动FEISHU_APP_ID=cli_xxxxxxxxx node bridge.mjs 

开机自启(launchd)(原文命令)

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

日志位置(原文)

  • ~/.clawdbot/logs/feishu-bridge.out.log(正常输出)
  • ~/.clawdbot/logs/feishu-bridge.err.log(错误日志)

调试模式(原文)

echo"FEISHU_BRIDGE_DEBUG=1"> .env tail -n 200 ~/.clawdbot/logs/feishu-bridge.err.log 

工作原理(原文表达复述)

飞书用户 ↔ 飞书云端 ↔(你的电脑上桥接脚本)↔ OpenClaw 网关
桥接通过飞书 WebSocket 长连接接收消息:不需要公网 IP、不需要域名、不需要内网穿透。


六、快问快答

  • 需要服务器吗? 不需要。飞书用 WebSocket 长连接,你的电脑直接连飞书云端,不需要公网 IP。
  • 电脑关机了怎么办? 机器人离线;开机后会自动重连(若配了开机自启)。要 24/7 在线可以用常开设备或云服务器。
  • 飞书免费版能用吗? 可以。自建应用与机器人功能对所有飞书版本开放。
  • 能同时接其它渠道吗? 可以。OpenClaw 支持多渠道,互不影响。
  • 用了官方插件后,这个项目还有用吗? 有:继续提供配置教程、迁移指南、排查与答疑。

如果你接下来想把这篇发到 GitHub README / 公众号 / 飞书文档,我可以在不改动事实与步骤的前提下,给你做两种“同源不同表达”的版本:

  • 极简版(一页纸):只保留命令、飞书侧必须点的两处、以及“没输入框/不回复/图片不可用”的最短排查
  • 面向小白版:每一步都配“你为什么要点这个/不点会出现什么症状”,但仍严格不超出原文内容

你希望用哪一种发布场景?(GitHub README 更适合极简版;公众号更适合小白解释版。)

Read more

【数据结构-初阶】详解线性表(5)---队列

【数据结构-初阶】详解线性表(5)---队列

🎈主页传送门:良木生香 🔥个人专栏:《C语言》 《数据结构-初阶》 《程序设计》 🌟人为善,福随未至,祸已远行;人为恶,祸虽未至,福已远离 上期回顾:在上一篇文章(【数据结构-初阶】详解栈和队列(1)---栈)中我们讲到了在顺序表与链表之外的另一种线性表---栈,知道了这是一种具有先进后出和后进先出特点的数据结构,既然有先进后出,那么肯定就有先进先出的数据结构,所以这就是我们今天要讲的------队列 一、队列的概念 既然我们想要实现先进先出的效果,那肯定就不像栈那样有一端是堵起来的,想必应该是两端都开口吧。嗯,事实确实如此。 队列:是只允许在一端进行数据的插入操作,在另一端进行数据的删除操作的一种特殊的线性表,其具有先进先出FIFO(first in first out)的结构特点. 入队列:进行插入操作的一端叫做队尾 出队列:进行删除操作的一端叫做队头 下面是队列的示意图: 名字叫做队列,其实就像我们排队一样,先排的人先得服务,后排的人后得到服务,在队列中,先进来的元素先得到操作,

By Ne0inhk
排序算法指南:快速排序(非递归)

排序算法指南:快速排序(非递归)

前言:          本文将通过图解与代码相结合的方式,详细介绍快速排序的非递归实现方法。虽然前文已展示递归实现方案,但在实际面试中,面试官更倾向于考察非递归版本的实现。这种实现方式不仅能加深对算法的理解,还能展现应聘者对栈结构的掌握程度。          一、非递归实现快排的思路          1.1核心原理:手动模拟栈                   在标准的递归快速排序中,当我们写下 quickSort(a,left, right) 时,系统会自动分配一块内存(函数调用栈)来记住当前的 left 和 right 是多少,以及函数执行完后该回到哪里。         在非递归版本中,我们不需要系统帮忙,而是自己创建一个栈(Stack)数据结构。          1.2核心操作:用栈存取数组区间          ① 向栈中存储操作:存储每一次需要排序的子数组的起止下标(begin,end)。                                  由于栈的特性是先进后出,我们优先处理左区间,再处理右区间,类似于二叉树的前序操

By Ne0inhk
聊聊整车质量估计算法:从原理到实车应用

聊聊整车质量估计算法:从原理到实车应用

整车质量估计算法,采用simulink模型搭建,基于模糊逻辑思想,通过设计合理的模糊控制规则确定质量估计的置信度,当置信度高于某一水平时进行整车质量估计,提高工况判断的鲁棒性。 采用递推最小二乘作为基础进行整车质量估计的求解,利用实时观测量对估计值进行修正。 实车用的质量估计,需要有驱动力或制动力输入才行 大厂成熟程序逆向开发算法模型,有一定的估计精度,不是很高,但是能保证估计结果稳定可靠。 实车级别质量估计应用层算法,直接在实际量产车使用,可作为项目开发参考。 在汽车工程领域,整车质量估计是一个相当关键的环节,它对于车辆工况判断的准确性以及行驶安全性等方面都有着重要影响。今天咱就来唠唠这个整车质量估计算法,它主要是基于Simulink模型搭建,并且融入了模糊逻辑思想。 基于模糊逻辑确定置信度 模糊逻辑在这算法里起到了确定质量估计置信度的作用。想象一下,我们通过设计一系列合理的模糊控制规则,就像制定一套聪明的判断准则一样,来确定这个置信度。比如我们可以设定一些输入变量,像是车速变化、加速度变化等。然后依据模糊逻辑的规则,给这些输入变量分配不同的隶属度函数。 咱来看段简单的Ma

By Ne0inhk

量子计算探秘:从零开始的量子编程与算法之旅 · 第十二篇

量子计算应用场景展望——从密码学到材料科学 从破解密码到设计材料,量子计算正在从“实验室的玩具”变成“改变世界的工具”。 在前十一篇文章中,我们从量子门走到量子算法,从Shor算法学到量子机器学习。今天,是时候抬头看看远方了——当量子计算机足够强大时,它将如何改变我们的世界? 2026年,全球已有30多个国家和地区在量子信息领域投资超过350亿美元,中国“十五五”规划更将量子科技列为未来产业首位。这不是没有理由的——量子计算有望在多个领域实现经典计算机无法企及的突破。从威胁现有密码体系,到设计新型材料,再到优化复杂系统,量子计算的应用版图正在快速展开。 今天,我们就从五个核心领域出发,展望量子计算的未来图景。 1. 密码学的挑战与重生:量子威胁下的安全新范式 1.1 RSA的末日钟声 1994年,当彼得·肖尔提出Shor算法时,密码学界就知道:RSA加密的时代终将结束。Shor算法可以在多项式时间内分解大整数,而RSA的安全性正建立在大数分解的困难性上。 过去,人们认为破解RSA-2048需要数百万物理量子比特,这个目标似乎遥不可及。但2026年2月,Iceberg

By Ne0inhk