OpenClaw 多飞书机器人配置指南

OpenClaw 多飞书机器人配置指南

本文档介绍如何在 OpenClaw 中配置多个飞书机器人,分别绑定到不同的 Agent。


一、创建 Agent

1.1 创建 Agent 步骤

# 创建新的 Agent openclaw agents add<agent名称># 示例:创建 dailynews agent openclaw agents add dailynews 

1.2 查看 Agent 列表

openclaw agents list 

输出示例:

Agents: - main (default) Identity: 💼✨ 小美 Workspace: ~/.openclaw/workspace - dailynews Workspace: ~/.openclaw/workspace-dailynews 

1.3 配置 Agent 文件

每个 Agent 需要有自己的 workspace 目录和相关配置文件:

文件说明
IDENTITY.mdAgent 身份信息(名字、性格、emoji)
SOUL.mdAgent 核心价值观和行为准则
USER.md人类用户信息
AGENTS.mdAgent 的行为规范
HEARTBEAT.md主动模式任务清单
MEMORY.md长期记忆

1.4 Agent 完整配置示例

{"agents":{"list":[{"id":"main","default":true,"name":"小美","workspace":"/home/username/.openclaw/workspace"},{"id":"dailynews","name":"dailynews","workspace":"/home/username/.openclaw/workspace-dailynews"},{"id":"dev","name":"开发助理","workspace":"/home/username/.openclaw/workspace-dev"}]}}

二、配置 Channel(飞书)

2.1 在飞书开放平台创建机器人

  1. 打开 飞书开放平台
  2. 创建企业自建应用
  3. 在应用详情中获取:
    • App ID(如 cli_xxx
    • App Secret
  4. 添加权限:
    • contact:contact.base:readonly - 读取通讯录
    • im:message:send_as_bot - 发消息
    • im:message:receive - 收消息
  5. 发布应用

2.2 配置 openclaw.json

{"channels":{"feishu":{"enabled":true,"defaultAccount":"main","domain":"feishu","accounts":{"main":{"appId":"cli_第一个机器人的appId","appSecret":"第一个机器人的secret"},"dailynews":{"appId":"cli_第二个机器人的appId","appSecret":"第二个机器人的secret"},"dev":{"appId":"cli_第三个机器人的appId","appSecret":"第三个机器人的secret"}}}}}

2.3 验证 Channel 配置

openclaw channels list 

输出示例:

Chat channels: - Feishu main: configured, enabled - Feishu dailynews: configured, enabled - Feishu dev: configured, enabled 

三、绑定 Agent 到 Channel

3.1 使用命令绑定

# 绑定 agent 到指定飞书账号 openclaw agents bind--agent<agentId>--bind feishu:<accountId># 示例 openclaw agents bind--agent main --bind feishu:main openclaw agents bind--agent dailynews --bind feishu:dailynews 

3.2 或直接在配置文件中添加 bindings

{"bindings":[{"agentId":"main","match":{"channel":"feishu","accountId":"main"}},{"agentId":"dailynews","match":{"channel":"feishu","accountId":"dailynews"}},{"agentId":"dev","match":{"channel":"feishu","accountId":"dev"}}]}

3.3 查看绑定结果

openclaw agents bindings 

输出示例:

Routing bindings: - dailynews <- feishu accountId=dailynews - main <- feishu accountId=main - dev <- feishu accountId=dev 

四、配置用户白名单

4.1 创建白名单文件

使用openclaw pairing approve 形式配置飞书后,发现只能同时有一个正常工作,所以改用白名单形式

vim ~/.openclaw/credentials/feishu-allowFrom.json 

内容:

{"version":1,"allowFrom":["ou_用户的open_id_1","ou_用户的open_id_2"]}

4.2 获取用户 open_id

推荐使用飞书开放平台的 API 工具获取:

  1. 打开 https://open.feishu.cn/document/server-docs/contact-v3/user/get
  2. 在页面中的 user_id 参数处选择用户
  3. 点击"尝试"按钮
  4. 返回结果中会显示用户的 user_idopen_id

或者在飞书中:

  • 打开用户主页 → 点击分享 → 复制链接,链接中包含用户ID

4.3 说明

  • 使用 allowFrom 白名单后,不需要执行 openclaw pairing approve
  • 白名单更安全,只允许特定用户使用该机器人

五、重启并验证

5.1 重启 Gateway

openclaw gateway restart 

5.2 测试

用不同的飞书机器人发送消息,检查是否路由到对应的 Agent。


六、注意事项

6.1 多账号限制

  • OpenClaw 当前版本(2026.3.x)飞书多账号功能在完善中
  • 主要限制:一次只能配对(pairing)一个机器人
  • 解决:使用 allowFrom 白名单机制,避免 pairing

七、完整配置示例

{"agents":{"list":[{"id":"main","default":true,"name":"小美","workspace":"/home/username/.openclaw/workspace"},{"id":"dailynews","name":"dailynews","workspace":"/home/username/.openclaw/workspace-dailynews"}]},"channels":{"feishu":{"enabled":true,"defaultAccount":"main","domain":"feishu","accounts":{"main":{"appId":"cli_xxx1","appSecret":"secret1"},"dailynews":{"appId":"cli_xxx2","appSecret":"secret2"}}}},"bindings":[{"agentId":"main","match":{"channel":"feishu","accountId":"main"}},{"agentId":"dailynews","match":{"channel":"feishu","accountId":"dailynews"}}]}

八、常见问题

Q: 提示 “access not configured”

A: 确认 channels.feishu.accounts 中是否配置了对应账号

Q: 提示权限错误

A: 需要在飞书开放平台授权:
https://open.feishu.cn/app/{appId}/auth?q=contact:contact.base:readonly

Q: 绑定后不生效

A: 执行 openclaw gateway restart 重启 Gateway

Read more

双剑破天门:攻防世界Web题解之独孤九剑心法(八)

双剑破天门:攻防世界Web题解之独孤九剑心法(八)

免责声明:用户因使用公众号内容而产生的任何行为和后果,由用户自行承担责任。本公众号不承担因用户误解、不当使用等导致的法律责任 **本文以攻防世界部分题为例进行演示,后续会对攻防世界大部分的web题目进行演示,如果你感兴趣请关注** 目录 一:WEB 2 二:Web_php_unserialize 三:php_rce 四:web_php_include 五:总结 1. WEB 2 2. Web_php_unserialize 3. php_rce 4. web_php_include 一:WEB 2 打开是一个php代码 代码审计 1.首先给了一段密文也就是需要解密的flag 2.然后对传进来的str进行字符串反转($_o) 3.

基于C++11手撸前端Promise

基于C++11手撸前端Promise

文章导航 * 引言 * 前端Promise的应用与优势 * 常见应用场景 * 并发请求 * Promise 解决的问题 * 手写 C++ Promise 实现 * 类结构与成员变量 * 构造函数 * resolve 方法 * reject 方法 * then 方法 * onCatch 方法 * 链式调用 * 使用示例 * `std::promise` 与 `CProimse` 对比 * 1. 基础功能对比 * 2. 实现细节对比 * (1) 状态管理 * (2) 回调注册与执行 * (3) 异步支持 * (4) 链式调用 * 3. 代码示例对比 * (1) `CProimse` 示例 * (2) `std::promise` 示例 * 4.

前端小练习——星辰宇宙(JS没有上限!!!)

前端小练习——星辰宇宙(JS没有上限!!!)

前言:在刚开始学习前端的时候,我们会学习到前端三件套中的JavaScript,可能那时候读者没有觉得JavaScript这个语言有多么的牛逼,本篇文章将会使用一个炫酷的案例来刷新你对JavaScript这个语言的认知与理解。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-ZEEKLOG博客 先让我们看一下最终的结果: 在开始讲解这个炫酷的案例之前,先让我们了解一下本案例所需的前置知识: Three.js:一个用于创建和显示3D图形的JavaScript库。代码中导入了Three.js的核心库和轨道控制库(OrbitControls),用于处理3D场景的创建和相机控制。WebGL:用于在网页中绘制3D图形的底层API。Three.js封装了WebGL,使得3D渲染变得更简单。模块化 JavaScript:使用 ES6 的模块导入语法 (import) 引入外部库,使代码结构更加清晰。着色器编程:自定义顶点和片段着色器,通过 onBeforeCompile 方法替换默认着色器,控制点的大小、颜色和运动效果。缓冲几何体:

【魅影AI远程控制】:基于WebRTC+AI的智能远程控制解决方案

【魅影AI远程控制】:基于WebRTC+AI的智能远程控制解决方案

魅影AI远程控制:基于WebRTC+AI的智能远程控制解决方案 📖 前言 在移动互联网时代,远程控制技术已经成为企业IT支持、无障碍辅助、智能家居等领域的重要工具。传统的远程控制方案往往需要用户手动操作,效率低下。今天,我将为大家介绍一款革命性的魅影AI远程控制应用,它通过WebRTC实时通信和AI智能识别技术,实现了"语音指令→智能理解→自动执行"的完整闭环,让远程控制变得像对话一样简单。 🎯 项目概述 什么是魅影AI远程控制? 魅影AI远程控制是一款双端合一的Android应用,集成了远程控制、AI语音助手、OCR识别等多项前沿技术。它最大的特点是智能化:用户只需说出需求,AI就能理解意图并自动完成操作。 核心价值 传统远控:手动点击、滑动 → 繁琐、低效 AI远控:语音命令、智能识别、自动执行 → 简单、高效、智能 一句话描述: "说出你的需求,AI帮你完成" - 让远程控制像对话一样简单