- 飞书:简化为「一键创建 OpenClaw 官方模板 + 配置自定义菜单 + 桌面端配对」的三步流程,新增 15 张实操截图 - Telegram:精简为「BotFather 取 Token + 桌面端填 Token + 配对」三步,新增 6 张截图 - 两份文档均保留命令别名、权限审批、环境变量等代码层信息,并同步 FAQ 到当前 adapter 实现 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
4.9 KiB
飞书接入
飞书 Adapter 的接入教程。官方已经提供了预配好权限的模板机器人,跟着下面几步点一点就能完成接入。
适用场景
飞书方案适合在中国区环境下通过企业自建应用私聊 Claude Code。当前实现只处理 p2p 私聊,不处理群聊。
实现入口:adapters/feishu/index.ts
1. 一键创建飞书机器人
直接打开下面的链接创建机器人——这是官方为 OpenClaw 提前配好所有权限(消息、事件、卡片回调等)的模板,省去手动配 scope 和事件订阅:
随便给你自己的机器人取一个名字,点击创建:
创建成功后,把 App ID 和 App Secret 保存下来,接着去配置机器人菜单。
2. 配置自定义菜单(/projects /new /clear)
进入飞书开发者后台,选择刚创建的机器人,进入机器人配置页:
进入「机器人菜单」开始配置:
依次添加 3 个命令:
/projects — 切换最近使用的项目
/new — 开启新对话
/clear — 清空上下文
三个都配好后点击保存:
最后点击「创建新版本并发布」让菜单生效:
命令作用说明:
/projects:列出最近使用的项目,支持切换当前会话绑定的目录/new:开启新对话/clear:清空当前会话上下文
3. 在 Claude Code Haha 桌面端填写
3.1 填写 App ID / App Secret
打开桌面端 设置 → IM 接入 → 飞书,把前面拿到的两把钥匙填进去:
3.2 生成配对码
点击「生成配对码」按钮,得到 6 位码:
记得点保存!!
4. 飞书机器人与桌面端配对
随便给刚才创建的机器人发送一条消息,按提示把上一步的 6 位配对码发给它:
看到配对成功提示后,就可以用飞书在手机上远程驱动桌面端 Claude Code Haha 了:
支持的命令
除菜单按钮外,飞书 adapter 还支持文本命令和中文别名:
/help或帮助/status或状态/clear或清空/projects或项目列表/new或新会话/stop或停止
权限审批
当 Claude 请求敏感权限时,adapter 会在飞书里发送交互卡片,点击「允许 / 拒绝」即可把结果回传给桌面端。
返回消息的表现
- 普通文本通过
post消息发送 - 权限审批通过卡片发送
- 流式内容优先 patch 同一条消息
- 完成后按 30000 字左右分片
启动 adapter
桌面端会自动把 adapter 作为 sidecar 拉起。如果你在本地开发,需要手动启动:
cd adapters
bun install
bun run feishu
环境变量覆盖(可选)
export FEISHU_APP_ID="cli_xxx"
export FEISHU_APP_SECRET="xxx"
export ADAPTER_SERVER_URL="ws://127.0.0.1:3456"
常见问题
一键创建后的机器人权限够用吗?
OpenClaw 官方模板已预配 im:message、im:message:send_as_bot、im:resource、im.message.receive_v1、card.action.trigger 等所有所需权限,不需要再手动去配 scope 或事件订阅。
收不到消息
优先检查:
- 机器人是否已发布(菜单改完需要「创建新版本并发布」)
- 是否真的是和 bot 的私聊,而不是群聊
权限按钮点了没反应
通常是 card.action.trigger 没生效,重新在开发者后台发布一次版本即可。
一直提示未授权
- 配对码是否仍在 60 分钟有效期内
- 发的是不是桌面端当前这一枚(重新生成后旧的立即失效)
feishu.pairedUsers里是否已经写入当前open_id
会话没恢复
检查 ~/.claude/adapter-sessions.json 是否能正常写入,以及 Desktop server 里的 session 是否仍存在。
源码入口
adapters/feishu/index.tsadapters/common/pairing.tsadapters/common/session-store.tsadapters/common/ws-bridge.tsadapters/common/http-client.ts














