← 返回
未分类

multi-agent-comm

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 Protocol — 通用多智能体通信框架。用于在 OpenClaw 中编排多个 Agent 之间的结构化通信、任务委派和协同工作。适用场景:(1) 在主 Agent 与子 Agent 之间传递消息 (2) 多个独立 Agent之间的双向通信 (3) 将大任务分解为并行子任务并收集结果 (4) 跨 Agent 共享上下文和记忆。关键词:agent communication, ACP, multi-agent, subagent, session spawn, agent 间通信, 多智能体协同, 任务委派。
Zhenbin Huang
未分类 community v1.0.0 1 版本 97959.2 Key: 无需
★ 0
Stars
📥 48
下载
💾 0
安装
1
版本
#latest

概述

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"

版本历史

共 1 个版本

  • v1.0.0 Initial release 当前
    2026-05-26 19:57 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Phase-Locked Loop Parameter Tuning (锁相环参数整定)

user_28a3fa40
锁相环(PLL)PI 控制器参数计算工具。用于电力电子/新能源领域的锁相环设计与调试。支持两种计算方向:(1) 根据目标带宽和阻尼比正向计算 PI 参数(KPLLp/KPLLi);(2) 根据已知 PI 标幺值参数反推闭环带宽和阻尼比。当用
★ 1 📥 128

Video to Notes

user_28a3fa40
将视频自动转录并整理为结构化笔记。当用户提供视频链接(B站 BV 号/URL、YouTube 等)并要求"整理为笔记"、"生成笔记"、"视频转笔记"、"transcribe video"时触发。支持字幕检测、Whisper 转录、结构化笔记
★ 0 📥 69

cnki-batch-rename

user_28a3fa40
>-
★ 0 📥 66