连接飞书
OpenClaw 支持连接飞书 / Lark,用于私聊机器人、群聊机器人、通知、审批提醒和团队协作。当前版本的 Feishu Channel 通常已经随 OpenClaw 内置,不需要额外安装插件。
注意通道名
Channel 名称写 feishu。即使你使用的是海外版 Lark,OpenClaw 里也仍然配置 channels.feishu,不要写成 lark。
前置条件
- 已完成 OpenClaw Gateway 初始化
- 已有飞书 / Lark 管理员或可创建企业自建应用的账号
- 已能访问飞书开放平台或 Lark Open Platform
- 已配置可用模型,并确认 Gateway 可以正常启动
检查基础状态:
bash
openclaw --version
openclaw gateway status
openclaw models status --probe1. 创建飞书应用
- 进入 飞书开放平台。
- 创建企业自建应用。
- 在「凭证与基础信息」里复制
App ID和App Secret。 - 在「应用能力」里启用机器人能力。
- 在「权限管理」里添加消息接收和机器人发消息相关权限。
- 在「事件订阅」里选择长连接方式,并订阅
im.message.receive_v1。 - 创建版本并发布应用。
Lark 海外租户使用 Lark Open Platform,后续配置里需要把 domain 设置为 lark。
2. 添加 Feishu Channel
推荐使用交互式向导:
bash
openclaw channels add在向导中选择 Feishu,然后填入飞书应用的 App ID 和 App Secret。
如果你已经熟悉配置文件,也可以直接编辑 ~/.openclaw/openclaw.json:
js
{
channels: {
feishu: {
enabled: true,
dmPolicy: "pairing",
accounts: {
main: {
appId: "cli_xxx",
appSecret: "xxx",
name: "Xikapi Assistant"
}
}
}
}
}Lark 海外版示例:
js
{
channels: {
feishu: {
domain: "lark",
accounts: {
main: {
appId: "cli_xxx",
appSecret: "xxx"
}
}
}
}
}3. 启动并测试
添加 Channel 后重启 Gateway:
bash
openclaw gateway restart检查状态和日志:
bash
openclaw channels status --probe
openclaw channels logs --channel feishu
openclaw logs --follow然后在飞书里找到机器人,发送一条私聊消息。
4. 批准私聊配对
飞书私聊默认常见策略是 pairing。首次私聊时,陌生用户需要管理员在终端批准:
bash
openclaw pairing list feishu
openclaw pairing approve feishu <CODE>如果希望固定只允许某些用户,可以改成 allowlist。飞书用户 ID 通常类似 ou_xxx:
js
{
channels: {
feishu: {
dmPolicy: "allowlist",
allowFrom: ["ou_xxx"]
}
}
}5. 群聊配置
飞书群 ID 通常类似 oc_xxx。建议默认要求 @ 机器人再回复,避免普通群聊频繁触发 Agent。
允许指定群:
js
{
channels: {
feishu: {
groupPolicy: "allowlist",
groupAllowFrom: ["oc_xxx"],
groups: {
oc_xxx: {
requireMention: true,
prompt: "Keep answers concise and prioritize work items."
}
}
}
}
}允许所有群,但仍要求 @:
js
{
channels: {
feishu: {
groupPolicy: "open",
requireMention: true
}
}
}6. 获取用户和群 ID
查看日志:
bash
openclaw logs --follow然后:
- 私聊机器人,在日志中找
open_id,通常类似ou_xxx - 在群里 @ 机器人,在日志中找
chat_id,通常类似oc_xxx - 也可以运行
openclaw pairing list feishu查看待批准用户
7. 不推荐只依赖临时环境变量
Feishu 也支持环境变量:
bash
export FEISHU_APP_ID="cli_xxx"
export FEISHU_APP_SECRET="xxx"Windows PowerShell:
powershell
$env:FEISHU_APP_ID="cli_xxx"
$env:FEISHU_APP_SECRET="xxx"但如果 Gateway 是 daemon / service,当前终端里的临时环境变量可能不会被服务读取。新手优先使用 openclaw channels add 或配置文件。
常见问题
私聊或群聊没有响应
按顺序检查:
bash
openclaw gateway status
openclaw channels status --probe
openclaw channels logs --channel feishu
openclaw logs --follow常见原因:
- 没有完成
openclaw channels add - 飞书应用没有发布或没有审批通过
- 没有启用机器人能力
- 事件订阅没有选择长连接,或没有订阅
im.message.receive_v1 - Gateway 没有运行,导致长连接没有建立
- App ID / App Secret 填错
- 私聊 pairing 没有批准
Lark 海外版不通
确认是否设置了:
js
{
channels: {
feishu: {
domain: "lark"
}
}
}群里不回复
常见原因:
- 没有 @ 机器人
- 群 ID 没有加入
groupAllowFrom groupPolicy是allowlist,但没有放行对应群- 飞书应用没有被添加到该群
- 机器人缺少消息相关权限