一、架构概述

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│   飞书应用 A     │     │   飞书应用 B     │     │   飞书应用 C     │
│  (cli_xxx)      │     │  (cli_yyy)      │     │  (cli_zzz)      │
│   default       │     │    coding       │     │   writing       │
└────────┬────────┘     └────────┬────────┘     └────────┬────────┘
         │                       │                       │
         └───────────────────────┼───────────────────────┘
                                 │
                    ┌────────────▼────────────┐
                    │    OpenClaw Gateway     │
                    │   (WebSocket 长连接)     │
                    └────────────┬────────────┘
                                 │
           ┌─────────────────────┼─────────────────────┐
           │                     │                     │
    ┌──────▼──────┐      ┌──────▼──────┐      ┌──────▼──────┐
    │  main Agent  │      │ coding Agent│      │writing Agent│
    │  (通用助手)   │      │  (编程专家)  │      │  (文案大师)  │
    │             │      │             │      │             │
    │ • workspace │      │ • workspace │      │ • workspace │
    │ • data/     │      │ • data/     │      │ • data/     │
    │ • config    │      │ • config    │      │ • config    │
    │ • 独立模型   │      │ • 独立模型   │      │ • 独立模型   │
    └─────────────┘      └─────────────┘      └─────────────┘

核心优势

  • 每个飞书 Bot 对应独立 Agent
  • 每个 Agent 拥有独立的工作空间、知识库、模型配置
  • 通过 Bindings 实现精准路由
  • 运行时通过命令动态切换模型

二、核心概念

层级 作用 配置位置
飞书应用 (Feishu App) 飞书开放平台的机器人应用,提供 App ID 和 App Secret 飞书开放平台
OpenClaw Channel 连接飞书的通道,管理 WebSocket 连接 channels.feishu
Account Channel 内的具体账号配置,对应一个飞书应用 channels.feishu.accounts.<id>
Agent AI 处理单元,包含模型、提示词、工具、知识库 agents.list + ~/.openclaw/agents/
Binding 路由规则,将飞书消息映射到指定 Agent bindings
Workspace Agent 的独立工作目录 创建 Agent 时指定

三、配置步骤

步骤 1:准备飞书应用

为每个 Agent 创建独立的飞书应用:

应用 用途 获取凭证
应用 A default cli_a9145149cb395bca / Msgaj5nU6fqHAmSkqjquaeEkKuFLvsoj
应用 B coding cli_a9155b5842f81bdf / ucipaeCG7oBduoE6LLrPKh3TKnm621te
应用 C writing cli_... / ...

每个应用必须

  1. 开启"机器人"能力
  2. 开通权限:im:message.receive_v1im:message:send_as_bot
  3. 事件订阅:使用长连接接收事件(WebSocket)
  4. 创建版本并发布

步骤 2:创建 Agent(带独立工作空间)

# 创建 main Agent(通用助手)
openclaw agents add main `
  --model deepseek-lockin/deepseek-v3-250324 `
  --workspace C:\Users\EDY\.openclaw\workspace-main

# 创建 coding Agent(编程专家)
openclaw agents add coding `
  --model anthropic/claude-3-5-sonnet-20241022 `
  --workspace C:\Users\EDY\.openclaw\workspace-coding

# 创建 writing Agent(文案大师)
openclaw agents add writing `
  --model openai/gpt-4o `
  --workspace C:\Users\EDY\.openclaw\workspace-writing

参数说明

  • --model:指定默认模型(可选,后续可动态切换)
  • --workspace:指定独立工作空间(实现数据隔离)

步骤 3:配置 OpenClaw

编辑 C:\Users\EDY\.openclaw\openclaw.json

{
  "agents": {
    "list": [
      {
        "id": "main",
        "workspace": "C:\\Users\\EDY\\.openclaw\\workspace-main",
        "agentDir": "C:\\Users\\EDY\\.openclaw\\agents\\main\\agent"
      },
      {
        "id": "coding",
        "workspace": "C:\\Users\\EDY\\.openclaw\\workspace-coding",
        "agentDir": "C:\\Users\\EDY\\.openclaw\\agents\\coding\\agent"
      },
      {
        "id": "writing",
        "workspace": "C:\\Users\\EDY\\.openclaw\\workspace-writing",
        "agentDir": "C:\\Users\\EDY\\.openclaw\\agents\\writing\\agent"
      }
    ]
  },
  "channels": {
    "feishu": {
      "enabled": true,
      "domain": "feishu",
      "connectionMode": "websocket",
      "accounts": {
        "default": {
          "appId": "cli_a9145149cb395bca",
          "appSecret": "Msgaj5nU6fqHAmSkqjquaeEkKuFLvsoj",
          "botName": "主助手",
          "requireMention": true
        },
        "coding": {
          "appId": "cli_a9155b5842f81bdf",
          "appSecret": "ucipaeCG7oBduoE6LLrPKh3TKnm621te",
          "botName": "编程助手",
          "requireMention": false
        },
        "writing": {
          "appId": "cli_xxx",
          "appSecret": "xxx",
          "botName": "文案助手",
          "requireMention": false
        }
      }
    }
  },
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "feishu",
        "accountId": "default"
      }
    },
    {
      "agentId": "coding",
      "match": {
        "channel": "feishu",
        "accountId": "coding"
      }
    },
    {
      "agentId": "writing",
      "match": {
        "channel": "feishu",
        "accountId": "writing"
      }
    }
  ]
}

关键配置说明

字段 说明 注意事项
agents.list 声明所有 Agent 必须包含 idworkspaceagentDir
channels.feishu.accounts 多账号配置 键名(如 coding)即为 accountId
bindings 路由规则 accountId 必须与 accounts 键名一致
match.channel 固定为 feishu 表示飞书通道
match.accountId 对应 accounts 的键 区分大小写

步骤 4:验证与启动

# 1. 验证配置格式
openclaw doctor

# 2. 查看 Agent 列表
openclaw agents list

# 预期输出:
# Agents:
# - main (default)
#   Workspace: C:\Users\EDY\.openclaw\workspace-main
#   ...
# - coding
#   Workspace: C:\Users\EDY\.openclaw\workspace-coding
#   ...
# - writing
#   Workspace: C:\Users\EDY\.openclaw\workspace-writing
#   ...

# 3. 查看绑定关系
openclaw agents list --bindings

# 预期输出:
# - main: routing rules: 1 (feishu accountId=default)
# - coding: routing rules: 1 (feishu accountId=coding)
# - writing: routing rules: 1 (feishu accountId=writing)

# 4. 启动 Gateway
openclaw gateway restart

# 5. 验证通道状态
openclaw channels status --probe

# 预期输出:
# - Feishu default: enabled, configured, running, works
# - Feishu coding: enabled, configured, running, works
# - Feishu writing: enabled, configured, running, works

四、模型切换

OpenClaw 支持在飞书对话中实时切换模型,无需重启服务。

命令列表

命令 作用 示例
/model 查看当前模型 /model
/model <模型ID> 切换到指定模型 /model kimi
/status 查看 Agent 状态 /status
/reset 重置会话(清空上下文) /reset

常用模型 ID

模型 完整 ID 适用场景
Kimi kimimoonshot/kimi-latest 长文本处理、中文场景
DeepSeek-V3 deepseek-lockin/deepseek-v3-250324 代码生成、逻辑推理
Claude 3.5 Sonnet anthropic/claude-3-5-sonnet-20241022 编程、分析、创意写作
GPT-4o openai/gpt-4o 通用任务、多模态
GPT-4o-mini openai/gpt-4o-mini 快速响应、低成本

操作示例

场景:coding Agent 默认使用 Claude,临时切换到 DeepSeek 处理特定任务

  1. 在 coding 飞书群 @机器人:

    /model deepseek-lockin/deepseek-v3-250324
    

    机器人回复:Model switched to deepseek-lockin/deepseek-v3-250324

  2. 发送编程问题,获得 DeepSeek 的回答

  3. 完成后切回 Claude

    /model anthropic/claude-3-5-sonnet-20241022
    

隔离性说明

  • 每个 Agent 的模型状态完全独立
  • main Agent 切换到 Kimi 不影响 coding Agent
  • 模型切换仅对当前会话生效(持久化到 Agent 配置)

五、验证与排错

常见问题排查

现象 原因 解决方案
Feishu coding: not configured 配置格式错误或混用旧格式 确保完全使用 accounts 格式,删除顶层 appId
agentId not found bindings 中的 agentId 不存在 先运行 openclaw agents add 创建 Agent
unknown channel id: bindings bindings 放在了 channels 内部 bindings 移到与 channels 同级
机器人不响应 飞书应用未发布或权限不足 检查飞书后台:版本已发布、权限已开通
模型切换失败 模型 ID 错误或不可用 运行 openclaw models list 查看可用模型

验证命令速查

# 查看所有可用模型
openclaw models list

# 查看特定提供商模型
openclaw models list --provider deepseek
openclaw models list --provider anthropic
openclaw models list --provider openai

# 查看 Agent 详情(含当前模型)
openclaw agents describe main
openclaw agents describe coding

# 查看实时日志
openclaw logs --follow

# 查看配对列表(用于私聊授权)
openclaw pairing list feishu
openclaw pairing approve feishu <CODE>

六、最佳实践

1. 命名规范

层级 命名建议 示例
飞书应用 功能-环境-序号 ai-helper-prodai-coding-dev
Account ID 小写英文,无空格 defaultcodingwritinghr-helper
Agent ID 与 Account ID 对应 maincodingwriting
Workspace 包含 Agent ID workspace-codingworkspace-hr

2. 模型选择策略

Agent 类型 推荐默认模型 切换场景
通用助手 DeepSeek-V3 / GPT-4o 长文本切 Kimi,复杂推理切 Claude
编程专家 Claude 3.5 Sonnet 算法题切 DeepSeek,快速查询切 GPT-4o-mini
文案创作 Claude 3.5 Sonnet / GPT-4o 中文文案切 Kimi,营销文案切 GPT-4o
数据分析 Claude 3.5 Sonnet 大数据量切 DeepSeek,可视化切 GPT-4o

3. 数据隔离原则

  • 严格隔离:每个 Agent 独立 workspacedata 目录
  • 知识库分离:不同 Agent 的向量数据库不共享
  • 配置独立config.json 中定义各自的 systemPrompttools

4. 生产环境建议

{
  "agents": {
    "list": [
      {
        "id": "coding",
        "workspace": "C:\\openclaw-prod\\workspace-coding",
        "agentDir": "C:\\openclaw-prod\\agents\\coding\\agent"
      }
    ]
  },
  "channels": {
    "feishu": {
      "accounts": {
        "coding": {
          "appId": "${FEISHU_CODING_APP_ID}",
          "appSecret": "${FEISHU_CODING_APP_SECRET}"
        }
      }
    }
  }
}
  • 使用环境变量注入敏感信息
  • 定期备份 workspaceagents 目录
  • 监控 Gateway 日志:openclaw logs --follow | Select-String "error|warning"

七、总结

通过本指南,您已完成:

多飞书应用配置 - 每个 Agent 绑定独立飞书 Bot
数据完全隔离 - 独立 workspace、data、config
动态模型切换 - 飞书内 /model 命令实时切换
灵活路由绑定 - 通过 bindings 精准控制消息流向

核心公式

飞书应用 (App ID) → Account (accounts.<id>) → Binding (accountId) → Agent (id) → Model (/model 切换)

现在您可以在不同飞书群中@不同的机器人,每个机器人使用不同的模型和知识库,实现真正的多 Agent 智能协作!

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐