SuperAPI AI 工具集

autopilot

智能体与模型

查看项目

更新于 10-23 16:20

技能介绍

Autopilot 是一个用于驱动编码代理自动完成既有工作流的技能。它在 wayfinder、to-spec、to-tickets 和 implement 等流程技能之上增加了一层“全新进程循环”,不断启动新的顶层 Claude Code、Codex 或 Grok 会话来推进工作,直到完成或遇到真正需要人工处理的闸门。

用途

该技能用于把已批准的流水线工作跑到完成或人工闸门。它要求先有一个 wayfinder 地图、一份规格说明或一张工单作为引用,并且需要在目标 Git 仓库中运行。Autopilot 本身不替代原有流程技能,而是围绕它们执行循环。

主要能力

  • 根据当前运行环境选择提供方:在 Claude Code 中使用 claude,在 Codex 中使用 codex,在 Grok 中使用 grok;直接从终端运行时需要用户手动选择。
  • 通过捆绑脚本以绝对路径启动后台循环,同时保持目标仓库为工作目录。
  • 每次迭代启动一个新的顶层 CLI 进程,执行一个决策工单或一个构建工单,完成所有嵌套的审查与验证代理后退出。
  • 启动前解析当前状态、认领和阻塞关系,选择确定的边界单元,并向工作进程传递紧凑的 JSON 清单。
  • 在目标仓库的 Git 目录下保存持久状态、人类可读日志和原始提供方事件,并通过按根路径加锁防止并发冲突。
  • 自动更新工单状态:工作开始前标记为进行中,验证并提交后标记为已关闭,写入 YAML frontmatter 和 Resolution。
  • 各次运行会报告工作进程使用的模型和推理强度,可通过参数或环境变量固定。
  • 提供心跳机制,默认每五分钟一次,用于证明工作进程仍然存活。

使用方式

从目标 Git 仓库运行脚本,命令形式为:bash <autopilot-skill-dir>/scripts/autopilot.sh --provider <claude|codex|grok> --root <ref>。可选参数包括 --repo <path> 指定非当前仓库、--max-iterations <n> 替换默认的 50 次上限、--log-file <path> 镜像日志。可通过 --model <name> 和 --effort <level> 固定模型与推理等级,环境变量 AUTOPILOT_MODEL 和 AUTOPILOT_EFFORT 作用相同。

脚本应作为后台任务运行,因为一次迭代就是一个完整的构建生命周期。观察运行状态可使用 --status、--follow、--history;分离运行可加 --tmux;--wait 会阻塞到运行离开 running 状态并打印最终状态。退出码含义为:0 完成、2 需要输入、3 阻塞、4 工作进程失败、5 运行器或配置失败、129 挂起、130 中断、143 终止。

适用场景

适合已有明确流水线产出、且用户已批准自主执行的工作,例如批量推进已拆解的工单、在人工闸门前自动完成构建与验证、在长时间任务中通过后台循环和日志持续追踪进展。

限制

无头工作进程无法回答权限提示,因此只应在用户已经批准自主执行的工作上启动循环。无头工作进程也无法进行实时访谈或批准新的规格与工单拆解;遇到 HITL 工单、需要接缝或发布批准、需要拆解批准,或实现中暴露未决产品问题时,会以 needs_input 停止。带 deploy-gate: true 的构建工单关闭后也会停止,需人工部署后重新运行同一命令。若被中断的认领无法从当前跟踪器和工作树安全恢复,会以 needs_input 停止,并且不会自动清除或接管其他会话的认领。