SuperAPI AI 工具集

gm-orchestrate

智能体与模型

查看项目

更新于 10-20 09:01

技能介绍

用途

gm-orchestrate 是 gm 体系中的主线程任务池循环编排技能,服务于已公布 PRD 行或待遍历节点的 gm walk。其目标是在一次运行中按现有工作量扇出尽可能多的并行图工作流,及时补充空闲槽位,并协调执行、验证与 CI 环节。

主要能力

  • 常驻配对工作流:每次 /gm 运行在第一回合即启动 standing-pair.js 工作流,包含三个阶段:并发排空(Drain)、提交后验证与修复(Validate and fix)、接近排空时的图遍历(Traverse)。
  • 并发排空:每个文件组一条泳道,按行发现的时点即刻开始编辑;同一文件组的行串行、不同文件组并行,空闲槽位在同一回合内补满。此阶段不等待 CI 或测试。
  • 提交后验证:对已提交并推送的批次读取 ci-status,用 ci_log failed_only 调试失败作业,在所属文件组上修复;红作业转为后续排空阶段的新行。
  • 图遍历:当待处理行少于 20 且有空闲槽位时,通过 gm-hop 在 gm-graph.json 上遍历节点,以 prd-add 登记新行。
  • 并行度控制:以 Workflow 图为扇出单位,有依赖则串行、独立则并行;以主机 spawn 上限为天花板,下限为 min(2, ceiling)。
  • 运行台账:.gm/pool/runs.jsonl 每次运行追加一行 JSON,记录 run、kind、row/surface、sha、state、session、时间戳等字段;状态变更当回合写入。
  • 共享追加日志:多条日志通过 fs_write 的 append 模式写入,拒绝整文件重写,避免并发泳道丢行。
  • 校验与 CI 泳道:执行器以 STATUS: handoff 结束后,编排器在同一回合生成验证器(gm-validate mode=witness)与 CI 读取器(gm-publish 步骤 3-5),二者不阻塞任务池。
  • 心跳与失速检测:每次任务先写 .gm/pool/<session>.live,结束后删除;超过 5 分钟视为 stale。无行关闭的运行记为失速,写入 .gm/witness-log.md 并等待阻塞因素变化。

使用方式

以技能方式调用,涉及 gm-prd、gm-hop、prd-add、prd-list、prd-resolve、pool-observe、ci-status 等命令;行任务通过 Skill(skill="gm-prd", args="row=<id>; session=<SID>") 启动,跳转任务通过 Skill(skill="gm-hop", args='{...}') 启动。运行节拍为 pool-observe、启动一块任务(最多到 ceiling)、追加台账、wait {"ms":60000},每个完成的任务在同一回合补位。资料提到所有 gm 调用需传入 cwd(如 "C:/dev/gm"),否则可能读取错误项目。具体安装命令与配置方法暂未提供。

适用场景

适合需要多条并行工作流推进的代码库维护、PRD 行排空、图节点遍历与完整性审计等编排型开发任务,尤其是需要自动补位、状态对账和 CI 跟踪的多泳道协作场景。

限制

单次运行不超过 150 个 agent;每次 walk 最多两次重启,重复短缺陷会触发规则复核;阻塞行保留 id 并标注 blocked_by;阻塞者只在下一波启动,且不允许阻塞者套阻塞者超过一层;待处理行连续两波上升时触发收敛保护;跨会话或影响生产的操作(Section 4 门)才上报用户。浏览器与 GPU 锁、存储锁有特定处理规则,编排器不得杀死其他泳道的活跃锁。价格、平台支持、具体效果等事实暂未提供。