SuperAPI AI 工具集

repo-fanout

编程与开发

查看项目

更新于 10-16 07:56

技能介绍

用途:repo-fanout 用于在一组指定的代码仓库中各自运行同一个任务或技能,并对每个仓库独立完成发现、改动、验证与提交,最后汇总为一张结果表。任务可以是自由文本,也可以是一个 $skill 名称及其参数;编排与委派机制由 $orchestration 技能负责。

主要能力:支持通过 --repo <path> 重复指定单个仓库,或用 --repos-file <file> 从文件读取路径(每行一个路径,空行忽略,# 之后视为注释);两者按给出顺序合并。每个路径先校验:将 ~ 展开为家目录,运行 git -C '<path>' rev-parse --show-toplevel,只有命令成功且输出与路径为同一目录时才接受,并解析软链接后比对;重复仓库标记为 duplicate,被拒路径给出具体原因(不存在、非 Git 仓库、非仓库根、重复)。

运行方式:任务分为“仅研究”和“实现”两类,所有仓库使用同一分类。仅研究时,仓库分批(每批最多 3 个),每仓库一个只读研究代理,获取无声明、无编辑、无提交,最后输出研究报告。实现时,仓库分批(每批最多 8 个)依次执行,每批三阶段:发现(只读代理,返回写入目标、验证命令、约束、是否适用及阻塞项)、计划与声明(构建计划、按仓库分配实现代理、以绝对路径确定写入范围,使用 ai-coord bundle start --draft <plan-slug> 等命令取得 READY)、实现波次(每仓库一个实现代理并行执行,代理不得提交、推送或运行协调生命周期命令)。波次后由父流程逐仓库核对、修复、运行 $commit 并提交,按需推送,随后 ai-coord done 释放声明,再进入下一批。

适用场景:对多个仓库应用同一项改动、批量研究与评估、跨仓库一致性维护。

限制:每个任务须有明确任务文本且至少有一个有效仓库,否则停止;被用户自有输入、仓库外操作或确认边界阻塞的仓库只报告不处理;不可提交阻塞、未完成或超出范围的改动;资料未说明具体价格、平台与性能数据。