Sequential Orchestration 是用于执行 Kiro spec 任务的串行编排器,核心特点是一次只跑一个任务,并通过 tmux 窗口提供可视化。它面向需要限速(rate limit)或夜间无人值守运行的场景。
主要能力:解析 tasks.md 并初始化/加载 SEQUENTIAL_STATE.json;逐轮寻找下一个未完成任务;为派发单元保存分配信息;将任务派发到同一 tmux 会话中的 task-{id} 窗口同步执行;等待完成后更新状态并标记完成;检查 COMPLETE/HALT 信号;任务间按设定延迟休眠;全部完成或收到 HALT 时退出。退出码:0 表示完成,1 表示达到最大迭代次数,2 表示被暂停需人工介入。
使用方式:通过 shell 调用 scripts/sequential_loop.py,支持 --spec、--delay、--max-iterations、--backend、--assign-backend、--tmux-session 等参数。例如:python scripts/sequential_loop.py --spec .kiro/specs/my-feature --delay 15 --max-iterations 50 --backend opencode --assign-backend codex --tmux-session sequential-my-feature。建议将超时设为 7200000 毫秒(2 小时)。
输出文件自动生成:.kiro/specs/SEQUENTIAL_STATE.json 记录进度状态,.kiro/specs/SEQUENTIAL_PROGRESS.md 为人类可读日志。
监控:可用 tmux ls、tmux attach -t sequential-my-feature、tmux select-window -t task-1.1 查看;用 cat .kiro/specs/SEQUENTIAL_STATE.json 检查进度。若任务输出 <promise>HALT</promise>,编排器暂停并需人工介入。
限制与安全:运行脚本可能调用代理后端并修改文件;可设置 CODEAGENT_NO_TMUX=1 禁用 tmux。该流程读取规格文件并写入状态文件,不涉及秘密操作。任务分配由 LLM 判断任务类型与 owner_agent,而非代码推断;任何代码改动建议遵循 test-driven-development 的 RED->GREEN->REFACTOR。其他未在资料中说明的细节暂未提供。