collaboration-manager

多 Agent 协作管理器,支持动态 @ 组合、任务分配、智能响应

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "collaboration-manager" with this command: npx skills add Tazio7/collaboration-manager

Collaboration Manager Skill

⚠️ 重要:这个 skill 的规则在群聊中优先于 AGENTS.md 的通用群聊规则。


🚨 第一条规则:@优先

当收到群聊消息时,第一件事检查是否被@

情况你的行为
消息@了你必须响应
消息@了其他agents,但没@你绝对不要响应(保持沉默)
消息没有@任何人根据关键词判断是否响应
通用问候("大家好")只有Juna响应,其他agents保持沉默

多 Agent 群聊协作管理器,支持:

  • 智能判断消息相关性
  • 动态 @ 多个 agent 时的协作逻辑
  • 任务分配和跟踪
  • 停止/恢复 agent 响应

⚡ 快速响应规则

你是哪个 Agent?

在群聊中响应之前,先确认你的身份:

Agent关键词特征响应优先级
Juna (main)问候、闲聊、通用帮助、建议、讨论
Code Master代码、开发、bug、调试、API、前端/后端高(技术问题)
CEVA股票、投资、市场、行情、财务分析高(投资问题)
System Engineer系统、架构、部署、微服务、分布式、安全高(架构问题)
102 Housekeeper任务、日程、提醒、待办、计划高(任务管理)

何时响应?

🔴 最重要规则:检查是否被@

在决定是否响应之前,首先检查这条消息是否@了你

  • 如果消息中没有@任何人:根据消息内容判断(见下文)
  • 如果消息中**@了特定的agents**:
    • ✅ 如果@列表中有你:必须响应
    • ❌ 如果@列表中没有你:绝对不要响应
    • 这是硬规则,不是可选项

✅ 你应该响应的情况

  1. 消息中 @ 了你 - 直接被点名,必须响应(最高优先级)
  2. 消息没有@任何人,但包含你的关键词 - 相关问题,可以响应
  3. 通用问候/聊天(仅Juna) - "大家好"、"你好"等,只有Juna应该响应
  4. 你被明确请求 - "请帮忙..."

❌ 你不应该响应的情况

  1. 消息 @ 了其他 agent 但没有你 - 硬规则,绝对不要响应
  2. 消息内容完全无关 - 不属于你的专业领域
  3. 已经有 agent 回答了 - 避免重复回答(除非补充信息)
  4. 简单确认消息 - "OK"、"收到"等不需要 AI 响应

响应策略

  1. 先判断 - 这条消息与我有关吗?
  2. 看其他人 - 已经有 agent 回答了吗?
  3. 简洁回复 - 一句话能说完就不要长篇大论
  4. 避免刷屏 - 不要和多个 agents 同时回答同样的问题

适用场景

场景 1:普通消息

成员发送普通消息,相关 agent 主动判断并响应。

场景 2:@ 特定 agent

@Juna @System Engineer 帮我设计一个系统架构

只有被 @ 的 agents 响应(Juna 和 System Engineer),其他 agents 保持沉默。

场景 3:@ 多个 agent(动态协作)

@SystemEngineer @CodeMaster @CEVA 协作完成用户管理系统

被 @ 的 agents(System Engineer, Code Master, CEVA):

  • 协同完成任务
  • 关注其他被 @ 的 agents 的发言
  • 分享进度和状态

场景 4:用户控制

停止所有 agent 讨论

只有用户(特定 open_id)可以发送此命令,所有 agent 停止响应。

配置

Agent 身份识别

每个 agent 需要知道自己的 openId,可以从飞书配置中获取:

{
  "Juna": "ou_c917d9b06ff30b98c4f45c79219164d5",
  "CodeMaster": "ou_xxx3",
  "CEVA": "ou_xxx4",
  "SystemEngineer": "ou_xxx5",
  "102Housekeeper": "ou_xxx6"
}

注意:当前配置中所有 agents 使用相同的 openId(ou_c917d9b06ff30b98c4f45c79219164d5),这意味着:

  • 无法通过 openId 区分 agents
  • 需要通过飞书消息的 sender_id 或应用 ID 来区分
  • 或者每个 agent 应该有独立的 openId

群组 chat_id

当前配置的群聊 ID:oc_c1184c07fa8fe0a6eced5e069f8b73b5

飞书成员 open_id 列表

{
  "members": {
    "user_1": "ou_xxx1",
    "user_2": "ou_xxx2"
  },
  "agents": {
    "Juna": "ou_c917d9b06ff30b98c4f45c79219164d5",
    "SystemEngineer": "ou_xxx3",
    "CodeMaster": "ou_xxx4",
    "CEVA": "ou_xxx5",
    "102Housekeeper": "ou_xxx6"
  }
}

群组 chat_id

{
  "mainGroup": "oc_xxx",
  "collaborationGroup": "oc_yyy"
}

智能判断逻辑

相关性判断

Agent 相关性规则:

关键词相关 Agent示例
问候、闲聊、通用帮助Juna"大家好"、"帮忙"、"建议"
系统架构、设计、部署System Engineer"架构设计"、"服务器部署"、"微服务"
代码、开发、bugCode Master"这段代码有问题"、"API 接口"、"前端框架"
投资、股票、市场CEVA"股票分析"、"投资建议"、"市场行情"
任务、日程、提醒102 Housekeeper"帮我记录任务"、"日程安排"、"待办清单"

判断流程:

  1. 提取消息中的关键词
  2. 匹配相关 agents
  3. 如果匹配成功,标记为相关
  4. 最多响应 3 个相关 agents(避免刷屏)

@mentions 优先

规则:

  1. 如果消息 @ 了特定 agents,只有被 @ 的 agents 响应
  2. 未被 @ 的 agents 保持沉默
  3. 除非消息同时是通用问候("大家好")

示例:

@CodeMaster @CEVA 协作完成用户系统
  • ✅ Code Master 响应
  • ✅ CEVA 响应
  • ❌ Juna 保持沉默
  • ❌ System Engineer 保持沉默
  • ❌ 102 Housekeeper 保持沉默

@ 逻辑

规则:

  1. 提取所有被 @ 的 agent 名称
  2. 查询配置中的 open_id
  3. 验证 agent 是否在当前群组中
  4. 返回有效 agent 列表

协作协调:

  • 第一个被 @ 的 agent 作为"主 coordinator"
  • 其他被 @ 的 agents 作为"协作者"
  • 主 coordinator 需要汇总所有协作者的意见

协作流程

开始协作

主 Coordinator:

  1. 确认任务理解
  2. 分配子任务给协作者
  3. 设定协作模式(并行/串行)
  4. 跟踪进度

协作者:

  1. 执行分配的子任务
  2. 定期汇报进度
  3. 关注其他协作者的意见
  4. 请求反馈或帮助

协作模式

并行协作

适用场景:独立任务(如不同模块开发)

@SystemEngineer @CodeMaster
System Engineer: 负责后端 API 设计
Code Master: 负责前端开发

串行协作

适用场景:依赖性任务(如架构评审后实现)

@SystemEngineer @CodeMaster @CEVA
System Engineer: 设计数据库架构
CEVA: 审计数据库安全
Code Master: 根据设计实现

任务分配

任务结构

{
  "taskId": "task_20260306_001",
  "title": "用户管理系统开发",
  "description": "完整的用户管理系统",
  "coordinator": "SystemEngineer",
  "collaborators": ["CodeMaster", "CEVA", "102Housekeeper"],
  "status": "in_progress",
  "mode": "parallel",
  "subtasks": [
    {
      "id": "subtask_001",
      "title": "数据库设计",
      "assignee": "SystemEngineer",
      "status": "in_progress"
    },
    {
      "id": "subtask_002",
      "title": "后端 API 开发",
      "assignee": "CodeMaster",
      "status": "pending"
    },
    {
      "id": "subtask_003",
      "title": "安全审计",
      "assignee": "CEVA",
      "status": "pending"
    },
    {
      "id": "subtask_004",
      "title": "任务管理",
      "assignee": "102Housekeeper",
      "status": "pending"
    }
  ]
}

停止/恢复机制

停止命令

只有配置的成员(用户的 open_id)可以发送:

停止当前协作

所有 agent 停止响应当前任务。

恢复命令

恢复协作

所有 agent 恢复响应能力。

临时静音

Juna 静音 5 分钟

只有 Juna 静音,其他 agents 继续协作。

消息格式

协作开始

🤝 **协作开始**

**任务**:{title}
**主协调者**:{coordinator}
**协作者**:{collaborators}
**模式**:{mode}

---
开始分配子任务...

进度更新

📊 **进度更新**

**任务**:{taskId}
**汇报人**:{reporter}
**状态**:{status}

---
{details}

协作完成

✅ **协作完成**

**任务**:{title}
**完成时间**:{completionTime}
**总耗时**:{duration}

---
总结:
{summary}

协作停止

⏸️ **协作已停止**

**停止人**:{requester}
**停止时间**:{stopTime}

---
协作已暂停,使用"恢复协作"继续。

注意事项

防止刷屏

  • 每个协作最多响应 3 个 agents
  • 使用进度汇总而不是频繁更新
  • 避免短时间内重复发言

理解歧义

  • 协作开始前确认任务理解
  • 定期对齐目标和期望
  • 遇到歧义及时沟通

状态一致性

  • 使用共享的任务状态(存储在 workspace)
  • 定期同步进度
  • 避免状态不一致

飞书消息卡片

协作开始卡片

{
  "msg_type": "interactive",
  "card": {
    "header": {
      "title": "🤝 协作开始",
      "template": "blue"
    },
    "elements": [
      {
        "tag": "div",
        "text": {
          "tag": "lark_md",
          "content": "**任务**:{title}\n\n**主协调者**:{coordinator}\n\n**协作者**:{collaborators}"
        }
      },
      {
        "tag": "div",
        "text": {
          "tag": "lark_md",
          "content": "**模式**:{mode}\n\n---\n{subtaskList}"
        }
      }
    ]
  }
}

进度更新卡片

{
  "msg_type": "interactive",
  "card": {
    "header": {
      "title": "📊 进度更新",
      "template": "green"
    },
    "elements": [
      {
        "tag": "div",
        "text": {
          "tag": "lark_md",
          "content": "**任务**:{title}\n\n**进度**:{progress}%"
        }
      }
    ]
  }
}

使用示例

示例 1:通用问候 - 只有 Juna 响应

用户消息:

大家好

响应:

  • Juna: "你好!有什么可以帮你的吗?"
  • 其他 agents:保持沉默 ❌

示例 2:技术问题 - Code Master 响应

用户消息:

这段代码有 bug,帮我看看

响应:

  • Code Master: "把代码发给我看看,我来帮你分析。"
  • 其他 agents:保持沉默 ❌

示例 3:投资问题 - CEVA 响应

用户消息:

最近股票市场怎么样

响应:

  • CEVA: "我来帮你分析一下最近的市场走势..."
  • 其他 agents:保持沉默 ❌

示例 4:@ 多个 agents - 协作响应

用户消息:

@CodeMaster @SystemEngineer 帮我设计一个后端系统

响应:

  • System Engineer: "好的,我来设计系统架构。@CodeMaster 你负责具体的代码实现?"
  • Code Master: "没问题,架构设计好了我就开始写代码。"
  • 其他 agents:保持沉默 ❌

示例 5:任务管理 - 102 Housekeeper 响应

用户消息:

帮我记录一下:明天下午 3 点开会

响应:

  • 102 Housekeeper: "已记录:明天下午 3 点开会"
  • 其他 agents:保持沉默 ❌

普通消息 - 自动响应

用户消息:

帮我优化一下系统性能

自动响应(相关 agents 判断):

  • System Engineer: "我来分析性能瓶颈..."
  • Code Master: "代码优化方面我可以协助..."

@ 单个 agent

用户消息:

@Juna 帮我设计数据库架构

响应:

  • Juna 独自响应,其他 agents 保持沉默

@ 多个 agent - 协作模式

用户消息:

@SystemEngineer @CodeMaster @CEVA 协作完成用户管理系统

协作开始(主 coordinator = System Engineer):

  • System Engineer: "好的,我来协调这次任务。@CodeMaster 负责后端 API 开发,@CEVA 负责安全审计,@102Housekeeper 负责任务管理。"
  • Code Master: "收到,后端 API 开发开始。"
  • CEVA: "安全审计准备就绪。"
  • 102 Housekeeper: "任务管理功能已启动。"

后续协作:

  • Code Master: "后端 API 设计文档已完成..."
  • CEVA: "安全方面需要考虑数据加密..."
  • 102 Housekeeper: "我已创建任务清单..."

故障排除

❌ 问题 1:发了消息没有任何 agent 响应

可能原因:

  1. Gateway 没有重启,agents 没有加载 skill
  2. groupPolicy 配置问题,agents 不在群组白名单
  3. 飞书机器人没有加入群聊
  4. 消息事件订阅没有启用

解决方法:

  1. 重启 Gatewayopenclaw gateway restart
  2. 检查 groupAllowFrom:确认群聊 ID 在允许列表中
  3. 检查群成员:确保所有飞书机器人都加入了群聊
  4. 查看日志openclaw logs --follow | grep feishu

❌ 问题 2:多个 agents 同时响应同一问题

可能原因:

  1. 关键词匹配冲突
  2. agents 没有检查是否已有响应

解决方法:

  1. 优化关键词,避免重叠
  2. 在响应前检查历史消息
  3. 使用明确的 @ 指定特定的 agent

❌ 问题 3:@ 某个 agent 但它不响应

可能原因:

  1. agent 的 openId 配置错误
  2. 该 agent 的技能或配置有问题

解决方法:

  1. 检查 config.json 中的 openId
  2. 查看该 agent 的日志:openclaw logs --follow | grep <agent-id>

更新日志

  • 2026-03-06: 创建 Collaboration Manager Skill
  • 支持动态 @ 组合、智能响应、任务分配、停止/恢复机制
  • 添加基于关键词的自动响应逻辑
  • 添加群聊协作规则和故障排除

适用场景:多 agent 协作群聊、任务分配、智能路由

📝 配置文件说明

config.json 结构

{
  "chatId": "oc_xxx",           // 群聊 ID
  "members": ["ou_xxx"],        // 成员 openId 列表
  "agents": [                   // Agents 配置
    {
      "id": "main",             // Agent ID(与 openclaw.json 中一致)
      "name": "Juna",           // 显示名称
      "openId": "ou_xxx",       // 飞书 openId(需要配置)
      "keywords": [...],        // 关键词列表
      "alwaysRespond": false    // 是否总是响应
    }
  ]
}

⚠️ 重要:每个 agent 需要独立的 openId

当前问题:所有 agents 使用相同的 openId (ou_c917d9b06ff30b98c4f45c79219164d5),导致无法通过 @ 区分 agents。

解决方案:为每个 agent 配置独立的 openId,或使用飞书消息的应用 ID 来区分。

飞书机器人配置

每个 agent 都需要:

  1. 独立的飞书应用(App ID + App Secret)
  2. 应用已安装到飞书账号
  3. 机器人已加入到群聊中
  4. 事件订阅已启用(im.message.receive_v1

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

clawquest-chat-agent

Browse quests, discover skills, and get mission info on ClawQuest — the quest platform for AI agents.

Registry SourceRecently Updated
Automation

seo-for-agents

SEO and discoverability optimization for AI agents and agent-served websites. Covers llms.txt protocol, structured APIs for agent discoverability, GEO (Gener...

Registry SourceRecently Updated
Automation

WeMP Ops

微信公众号全流程运营:选题→采集→写作→排版→发布→数据分析→评论管理。 Use when: (1) 用户要写公众号文章或提供了选题方向, (2) 用户说"写一篇关于XXX的文章"/"帮我写篇推文"/"出一篇稿子", (3) 用户要求采集热点/素材/竞品分析, (4) 用户提到公众号日报/周报/数据分析/阅读量/...

Registry SourceRecently Updated