核心用法
Autoloop Controller 是一个用于持续自动化改进 AI Skill 的循环控制器,它包装了 improvement-orchestrator 并添加了收敛检测、成本控制和跨会话状态持久化功能。用户通过 CLI 指定目标 Skill 路径、状态存储目录、最大迭代次数(默认5次)、成本上限(默认$50)、收敛检测窗口(默认3轮无改进即停止)等参数,控制器将自动运行完整的5阶段流水线(generate, discriminate, evaluate, execute, gate),并在每次迭代后检查五种终止条件(最大迭代数、成本上限、分数平台期、决策振荡、连续错误)。支持三种运行模式:single-run(单次批量运行)、continuous(带冷却期的持续运行)、scheduled(配合 cron 的定时运行)。状态在每次迭代后持久化到磁盘,支持崩溃恢复和跨会话续跑。
显著优点
1. 自动化复利增益:单次改进通常只能提升1-2个质量维度0.05-0.15分,而该工具通过4-8轮自动循环实现从 EMERGING(<0.60)到 SOLID(>0.80)的跨越,每轮修复上轮暴露的新弱点。
2. 智能收敛检测:采用双信号检测机制——平台期检测(连续N轮无分数提升)避免过早停止,振荡检测(交替的keep/reject决策)防止无限循环浪费资源,两者结合确保在正确时机终止。
3. 完善的容错设计:每轮迭代后自动保存状态文件,崩溃后可从断点恢复;电路断路器机制(连续错误上限)防止基础设施故障导致资源耗尽;CLI参数可覆盖持久化值,灵活调整运行策略。
4. 成本可控的无人值守:支持设置硬成本上限(默认$50),配合夜间自动运行(Karpathy 风格的 autoresearch),让 Skill 在用户离开时持续进化。
5. 零第三方依赖:仅使用 Python 标准库,供应链攻击面极小,代码结构清晰可审计。
潜在缺点与局限性
1. 非交互式设计:专为无人值守场景优化,不适合需要人工审核每轮候选方案的用户;如需手动审查,应直接使用 improvement-orchestrator。
2. 收敛并非全局最优:平台期检测可能陷入局部最优,默认的3轮窗口对复杂 Skill 可能过短,需根据经验调整参数。
3. 子进程依赖风险:核心功能依赖 subprocess 调用外部 orchestrator 脚本,虽有时超时保护,但路径验证和子进程稳定性仍是潜在故障点。
4. 无直接网络/API 功能:该工具本身不处理网络请求,所有 LLM 交互由子进程处理的 improvement-orchestrator 完成,网络问题需在该层排查。
适合的目标群体
- AI Skill 开发者:需要将粗糙的 EMERGING 级 Skill 系统性地提升到生产可用 SOLID 级别的开发者
- MLOps/自动化工程师:希望建立夜间自动优化流水线,实现"设置后离开"(set-and-forget)运维模式的技术团队
- 研究团队:需要对比不同 Skill 的改进速度,通过 iteration_log.jsonl 进行 velocity 分析的科研人员
- 成本敏感用户:希望在固定预算内(如$20-$50)获得最大改进收益,避免无限循环烧钱场景
使用风险
1. 成本超支风险:默认$50成本上限在 continuous 模式下配合30分钟冷却期可能运行数小时,务必显式设置 --max-cost。
2. 磁盘空间风险:每轮迭代产生完整的 orchestrator 输出(候选方案、gate 结果、diffs),长期运行可能积累大量状态文件。
3. 子进程级联故障:orchestrator 或下游组件(discriminator、learner、generator)的失败会被 autoloop 的电路断路器捕获,但需检查日志定位根本问题。
4. 路径配置风险:--state-root 和 --target 路径需确保正确,虽有 pathlib 保护,但错误路径会导致迭代失败或数据丢失。