编程

multi-agent-comm

试用

Multi-Agent Communication Protocol — 通用多智能体通信框架。用于在 OpenClaw 中编排多个 Agent 之间的结构化通信、任务委派和协同工作。适用场景:(1) 在主 Agent 与子 Agent 之间传递消息 (2) 多个独立 Agent(如 QClaw、学术助手、学生工...

它能做什么

Multi-Agent Communication Protocol — 通用多智能体通信框架。用于在 OpenClaw 中编排多个 Agent 之间的结构化通信、任务委派和协同工作。适用场景:(1) 在主 Agent 与子 Agent 之间传递消息 (2) 多个独立 Agent(如 QClaw、学术助手、学生工作助理等)之间的双向通信 (3) 将大任务分解为并行子任务并收集结果 (4) 跨 Agent 共享上下文和记忆。关键词:agent communication, ACP, multi-agent, subagent, session spawn, agent 间通信, 多智能体协同, 任务委派。

技能文档

Multi-Agent Communication

通用多智能体通信框架,基于 OpenClaw 的 session 机制实现 Agent 间结构化通信。

通信架构概览

┌──────────────┐
│   Main Agent  │ (QClaw / 主 Agent)
│  (编排中心)    │
└──┬───┬───┬───┘
   │   │   │
   ▼   ▼   ▼
┌────┐┌────┐┌────┐
│Sub1││Sub2││Sub3│  (subagent / acp runtime)
└────┘└────┘└────┘

三种通信模式,按复杂度递增:

模式方式适用场景
1. Subagent 委派sessions_spawn (runtime=subagent)单向任务下发,等结果
2. 持久会话通信sessions_spawn (mode=session) + sessions_send双向持续对话
3. 跨 Agent ACPsessions_spawn (runtime=acp) + agent 配置独立 Agent 间协议通信

模式 1:Subagent 委派(最常用)

一次性任务委派,子 agent 完成后自动销毁。

1. 用 `sessions_spawn` 创建子 agent:
   - runtime: "subagent"
   - mode: "run"(一次性)或 "session"(持久)
   - task: 任务描述(越具体越好)
   - model/thinking: 可选覆盖
   - cwd: 可指定工作目录
   - timeoutSeconds: 超时保护

2. 子 agent 完成后自动返回结果到当前会话

3. 如需查看/管理子 agent:
   - subagents(action="list") — 列出运行中的子 agent
   - subagents(action="steer", target=id, message=...) — 向子 agent 发送消息
   - subagents(action="kill", target=id) — 终止子 agent

最佳实践:

  • Task 描述必须自包含,子 agent 无继承主会话上下文(除非 lightContext=true)
  • 大任务拆为多个并行 subagent 时,用 sessions_yield 等待结果
  • 用 label 给子 agent 命名便于后续管理

模式 2:持久会话通信

需要双向持续对话时使用。

1. 创建持久会话:
   sessions_spawn(mode="session", task="初始指令", label="my-assistant")

2. 后续通过 session key 通信:
   sessions_send(sessionKey="...", message="后续指令")

3. 查看会话列表和状态:
   sessions_list(kinds=["session"])

适用场景:

  • 需要多轮交互的长期协作 agent
  • 有状态的工作流(如项目管理、持续监控)

模式 3:跨 Agent ACP 通信

用于独立的、有自己 system prompt 和配置的 Agent 之间通信。

详细配置和架构参考:references/acp-setup.md

快速开始

1. 在 gateway.yaml 的 agents 部分定义新 agent(见 acp-setup.md)

2. 通过 acp runtime 通信:
   sessions_spawn(
     runtime="acp",
     agentId="student-assistant",
     task="任务描述",
     mode="run"  # 或 "session"
   )

3. 恢复已有 ACP 会话:
   sessions_spawn(
     runtime="acp",
     resumeSessionId="session-uuid"
   )

并行编排模式

同时启动多个子 agent 处理不同子任务,然后汇总结果。

1. 依次 spawn 多个 subagent(每个处理独立子任务)
2. 调用 sessions_yield() 让出当前 turn
3. 子 agent 完成后结果自动返回
4. 汇总各子 agent 结果,生成最终回复

规则:

  • 各子任务必须相互独立(无数据依赖)
  • 每个 subagent 的 task 必须自包含
  • 子 agent 数量建议 2-5 个,避免资源耗尽
  • 每个都设置合理的 timeoutSeconds

共享状态策略

Agent 间不自动共享内存,需要手动传递:

策略方法适用场景
文件系统读写 workspace 中的共享文件大量数据、持久化
任务描述在 task/message 中包含必要上下文小量上下文
文件引用通过 cwd 或 attachments 传递文件输入文件处理
环境变量子 agent 继承父进程环境变量配置信息

常见模式参考

  • 分治汇总:将大任务拆分为 N 个子任务 → 并行 spawn → yield → 汇总
  • 审查链:Agent A 生成内容 → Agent B 审查/修改 → 返回结果
  • 专家协商:多个领域专家 agent 各自分析 → 汇总决策
  • 监控上报:后台 agent 持续监控 → 有事时通过 sessions_send 上报

跨设备复用

本 skill 无硬编码路径,可直接通过 junction/symlink 链接到任意设备的 skills 目录。Agent 定义在 gateway config 中,跟随各自实例配置。

将此 skill 放入公共 skills 库 ~/.agents/skills/ 后,所有 agent 共享:

# junction 链接示例
cmd /c mklink /J "~\.claude\skills\multi-agent-comm" "~\.agents\skills\multi-agent-comm"

相关技能

火一五多智能体协同 - 基于 OpenClaw sessions_spawn 的多 Agent 并行工作系统。支持协调者模式、任务分配、结果汇总。触发词:多智能体协同、多 Agent、并行任务、协调者模式。

24 次安装

Guide beginners through OpenClaw multi-agent setup with a step-by-step wizard. Use when the user wants to create OpenClaw multi-agent setups, says things lik...

19 次安装

OpenClaw multi-agent daily collaboration orchestrator: split a task into subtasks, dispatch to resident agents via sessions_send, track progress via sessions_list/sessions_history, aggregate results with source attribution, and retry failures (default max 3). Reads openclaw.json for agents.list and agentToAgent.allow (bidirectional whitelist); three-tier trigger (explicit dispatch / suggest+ask for fuzzy big tasks / silent otherwise). Use when user asks to orchestrate/coordinate multiple agents, dispatch parallel work, delegate to a named agent, or aggregate results from several agents (orchestrate/parallel/delegate/让 XX 做/编排/并行/ 分给/汇总). 中文:OpenClaw 多 Agent 日常协作编排器——任务拆解、跨 agent 分发(强制 sessions_send)、进度追踪、结果聚合、失败重试(默认最多 3 次)。 三档触发:用户点名或含编排动词直接执行;模糊大任务建议并行并询问用户; 其余情况保持沉默。直接读 openclaw.json(agents.list + agentToAgent.allow 双向白名单)获取 agent 名单与授权。适用于多 agent 家庭协作、并行调研、批量巡检、发布前多视角审查、团队日报汇总等场景。

把原始多 Agent 框架升级为 Claude Code 风格的工程化系统:记忆检索、角色协同、强证据验收、命令前置安全审计。

157 次安装1 星标

多个 AI Agent 在飞书群聊中通过 at 互相通信,实现多 Agent 协作。覆盖建群、创建Bot、拉Bot进群、获取open_id、text格式互 at 通信、防呆约束、故障排查全流程。Use when user says 飞书多Agent通信、Bot互at、飞书Bot创建、群聊AI协作、多Bot群聊。支...

Multi-agent coordination protocol — task distribution, result aggregation, and parallel execution across multiple AI agents. Distilled from Claude Code Team...