返回顶部
c

caid-multi-agentCAID多智能体

Coordinate multiple sub-agents to collaboratively complete long-horizon software engineering tasks using the CAID (Centralized Asynchronous Isolated Delegation) paradigm. Use when tasks require complex multi-file edits, interdependent subtasks, parallelizable work, or when a single agent would take too long. This skill implements branch-and-merge coordination with git worktree isolation, dependency-aware task delegation, and structured integration. CRITICAL: Never use CAID as a fallback after si

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.2.0
安全检测
已通过
90
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

caid-multi-agent

CAID 多智能体协调

该技能实现了集中式异步隔离委派(CAID)范式,用于协调多个智能体在共享工件上协同工作。

⚠️ 论文中的关键警告:

  • - 从一开始就使用CAID — 不要先运行单智能体作为回退方案。顺序策略的成本几乎是两倍,且收益微乎其微。
  • 物理工作树隔离是强制性的 — 软隔离(仅指令层面)会降低复杂任务的性能。
  • 工程师数量有严格限制 — PaperBench风格为2个,Commit0风格为4个,切勿超过8个。
  • 更高的成本/运行时间权衡 — CAID提高的是准确性,而非速度。集成是顺序/测试门控的。

核心原则

  1. 1. 集中式任务委派 — 管理智能体将任务分解为具有依赖关系的单元
  2. 异步执行 — 多个工程师智能体并发工作
  3. 隔离的工作空间 — 每个智能体在其独立的隔离分支/工作树中工作
  4. 结构化集成 — 通过git提交/合并及测试验证来合并进度

何时使用此技能

从一开始就使用CAID的场景:

  • - 涉及多个相互依赖文件的长期任务
  • 存在清晰的依赖结构(导入、测试映射)
  • 存在可并行化的工作
  • 集成可通过可执行测试进行验证

不要作为回退方案: 先运行单智能体再使用CAID效率低下(成本/运行时间几乎叠加,性能提升极小)。

使用单智能体的场景:

  • - 孤立的单文件变更
  • 没有明确的并行化机会
  • 探索性/研究导向的任务

协调工作流

0. 管理智能体预设置(关键)

在任何委派之前,管理智能体必须:

  1. 1. 准备运行时环境
- 确保依赖项已安装 - 设置虚拟环境
  1. 2. 组织入口点
- 创建主入口文件 - 确保导入路径正常工作
  1. 3. 添加最小函数桩
- 空的函数定义,确保导入不会失败 - 如果有的话,添加类型签名
  1. 4. 提交到主分支
- 所有工程师分支从一致的基线创建 - 否则,工程师将从不同的状态开始

bash

预设置提交


git add .
git commit -m setup: initial stubs and entry points
git push origin main

1. 任务分析与依赖图创建

管理智能体的角色: 在委派之前,分析任务结构:

  • - 识别原子工作单元(文件、函数、模块)
  • 构建依赖图:G=(V,E),其中边表示依赖关系
  • 定义 Ready(v) ⇔ v 的所有依赖项已完成
  • 仅委派处于 Ready 状态的任务(所有依赖项已满足)

Commit0风格的任务(清晰的文件结构):

  1. 1. 检查导入语句以识别文件级依赖关系
  2. 从仓库中收集可执行的测试用例
  3. 检查测试覆盖了哪些文件
  4. 识别需要提前实现的组件(上游依赖项)
  5. 首先在文件级别委派 — 仅当文件包含许多未实现函数时才拆分到函数级别

PaperBench风格的任务(推断结构):

  1. 1. 阅读论文以识别主要贡献
  2. 根据贡献推断实现顺序
  3. 最多使用2个工程师 — 管理智能体的任务更困难,更多智能体会导致不稳定

依赖图构建:

Readyt(vj) ⇔ ∀(vi, vj) ∈ E, vi ∈ Completedt

仅委派来自 {v ∈ V | Ready_t(v)} 的任务

2. 工作空间隔离设置

创建物理隔离的工作树(非软隔离):

bash

主分支是唯一真实来源


git worktree add ../workspace-engineer-1
git worktree add ../workspace-engineer-2

等等

⚠️ 警告: 软隔离(同一工作空间,指令级约束)在PaperBench上的性能会降至低于单智能体。物理 git worktree 隔离是强制性的

关键隔离原则:

  • - 每个工程师在其自己的git工作树中操作(物理文件系统隔离)
  • 所有工作树都源自主分支
  • 工程师仅在其分配的工作空间内修改文件
  • 受限文件(工程师间共享):init.py、配置文件、全局常量 — 工程师不得提交对这些文件的更改

3. 依赖感知的任务委派

严格的工程师数量限制:

任务类型最大工程师数原因
PaperBench风格2依赖关系是推断的;更多会导致不稳定
Commit0风格
4 | 清晰的文件结构;测试引导 |
| 通用SWE | 2-4 | 并行性与集成开销之间的平衡 |
| 绝对最大值 | 8 | 超过此值,协调成本超过收益 |

⚠️ 关键: 增加工程师数量超过最优值会因集成开销和冲突解决成本而降低性能。

任务优先级启发式规则:
管理智能体应优先处理以下任务:

  1. 1. 能够更早执行测试(更早暴露评估信号)
  2. 位于依赖链上游更近的位置
  3. 先处理简单函数,再处理复杂函数

轮次定义:

一轮 = 委派 → 实现 → 依赖更新 的完整周期

推荐的迭代限制(来自论文实验):

角色最大迭代次数
管理智能体50
每个工程师
80 |
| 总轮次 | ~22(因任务而异) |

委派算法:

在第t轮:

  1. 1. ReadySet = {v ∈ V | Readyt(v)} // 所有依赖项已满足
  2. 从Ready_Set中选择最多N个任务(N = 上述最大并行工程师数)
  3. 应用优先级启发式规则
  4. 委派给可用的工程师
  5. 等待完成信号
  6. 每次成功集成后更新依赖状态

任务分配JSON格式(结构化通信 — 无自由格式对话):

json
{
task_id: string,
task_description: string,
target_files: [path/to/file.py],
targetfunctions: [functionname],
dependencies: [taskid1, taskid2],
expected_outcome: description of success criteria,
verificationcommand: pytest tests/testfile.py -v,
restricted_files: [src/init.py, src/config.py],
priority: high|medium|low
}

关键: 所有通信使用结构化JSON,而非自由格式对话。这可以防止智能体间的不一致(多智能体系统中的主要故障模式)。

4. 异步执行循环

事件循环模式:

  1. 1. 委派 → 管理智能体将任务分配给可用的工程师
  2. 执行 → 工程师在隔离的工作树中并发工作
  3. 自我验证 → 工程师运行测试,修复失败
  4. 完成 → 当所有测试通过时,工程师提交
  5. 集成 → 管理智能体尝试合并到主分支
  6. 冲突解决(如有需要)→ 负责的工程师解决
  7. 更新 → 管理智能体更新依赖图
  8. 重复 → 继续直到所有任务完成或达到限制

工程师自我验证(提交前强制要求):

  • - 运行导入/引用已修改文件的相关测试
  • 如果没有显式映射,则运行仓库的默认测试命令
  • 任何失败的测试或运行时异常必须解决
  • 使用具体的错误日志和回溯进行迭代优化
  • 仅在所有测试通过后提交

5. 通过合并进行集成

合并工作流:

bash

管理智能体尝试合并


git checkout main
git merge

如果冲突:

1. 产生冲突提交的工程师负责解决

2. 工程师拉取最新的主分支:git pull origin main

3. 在本地解决冲突

4. 重新运行测试以确保解决没有破坏任何内容

5. 重新提交

6. 管理智能体重试合并

主分支是整个执行过程中的唯一真实来源。

6. 管理智能体的上下文管理

为防止上下文爆炸,管理智能体使用LLMSummarizingCondenser模式:

定期:

  1. 1. 总结之前的交互轮次
  2. 保留结构化工件:

- 依赖图(当前状态)
- 已完成的任务(带提交哈希)
- 未解决的错误(带回溯摘要)
  1. 3. 丢弃详细的对话历史
  2. 保持执行可追溯性而不膨胀

压缩的执行历史格式:

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 caid-multi-agent-1775884048 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 caid-multi-agent-1775884048 技能

通过命令行安装

skillhub install caid-multi-agent-1775884048

下载

⬇ 下载 caid-multi-agent v1.2.0(免费)

文件大小: 12.52 KB | 发布时间: 2026-4-12 09:17

v1.2.0 最新 2026-4-12 09:17
Add manager final review phase, worktree cleanup instructions, state synchronization commands, specific iteration limits (manager:50, engineer:80, rounds:~22), round definition, and cleanup examples

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部