用途:当有多个真正相互独立的任务需要并行执行时,使用 grove-multi-agent 为每个任务创建隔离的 Grove 工作区,并并行分派子代理。若任务之间存在共享文件修改或先后依赖,应改用顺序执行或 grove:using-grove。
主要能力:接收任务列表(可来自拆解后的计划、用户或调度代理);在创建前校验任务独立性,检查文件范围是否重叠;按 agent/<prefix>/<task-slug> 命名分支;为每个任务创建工作区并记录路径与 ID;并行分派子代理;收集结果、复查冲突并汇总报告;最后提供清理选项(推送分支并创建 PR、保留工作区、销毁工作区或逐个处理)。
使用方式:对每个任务运行 grove create --branch agent/<prefix>/<task-slug> --json,从返回 JSON 中取 path 与 id;随后一次性并行发出多个 Task 工具调用,每个子代理在指定工作区路径下实现任务、编写测试、验证通过并提交;全部返回后对比各工作区改动文件列表,确认无意外重叠;清理时可用 git push -u origin <branch>、gh pr create --title "<title>" --body "<body>"、grove destroy <workspace-id>,也可用 grove list 查看活动工作区。
适用场景:需要构建隔离而非仅逻辑隔离的并行任务,例如多个互不相关的功能开发、修复或测试任务。
限制与注意:任务必须真正独立,否则会产生无法干净合并的冲突提交;跳过独立性校验会让冲突在代理完成工作后才暴露;清理前必须先完成结果收集与复查,否则会丢失工作;工作区需先全部创建再并行分派;Grove 受 .grove/config.json 中 max_workspaces 限制,达到上限需分批处理或用 grove config 调整;若多个代理出现相似失败,可能说明 golden copy 基线有问题,可运行 grove update 后重试。使用前需在仓库中初始化 Grove 并确保 CLI 可用。