名称: ultrawork 描述: 用于高吞吐量任务完成的并行执行引擎
<Purpose> Ultrawork 是一个并行执行引擎,可以同时运行多个代理执行独立任务。它是一个组件,而不是独立的持久化模式——它提供并行性和智能模型路由,但不提供持久化、验证循环或状态管理。 </Purpose>
<Use_When>
- 多个独立任务可以同时运行
- 用户说“ulw”、“ultrawork”或想要并行执行
- 您需要一次将工作委托给多个代理
- 任务受益于并发执行,但用户将自行管理完成 </Use_When>
<Do_Not_Use_When>
- 任务需要保证完成并进行验证——使用
ralph代替(ralph 包括 ultrawork) - 任务需要完整的自主管道——使用
autopilot代替(autopilot 包括 ralph,而 ralph 包括 ultrawork) - 只有一个顺序任务,没有并行机会——直接委托给执行器代理
- 用户需要会话持久化以恢复——使用
ralph,它在 ultrawork 之上添加了持久化 </Do_Not_Use_When>
<Why_This_Exists> 顺序任务执行在任务独立时浪费时间。Ultrawork 支持同时启动多个代理并将每个路由到正确的模型层,减少总执行时间,同时控制令牌成本。它被设计为一个可组合的组件,ralph 和 autopilot 在其基础上分层。 </Why_This_Exists>
<Execution_Policy>
- 同时启动所有独立的代理调用——从不序列化独立工作
- 委托时始终显式传递
model参数 - 在首次委托前阅读
docs/shared/agent-tiers.md以获取代理选择指导 - 对于超过约30秒的操作(安装、构建、测试)使用
run_in_background: true - 在 foreground 中运行快速命令(git status、文件读取、简单检查) </Execution_Policy>
<Steps>
- 阅读代理参考:加载
docs/shared/agent-tiers.md以进行层选择 - 按独立性分类任务:识别哪些任务可以并行运行,哪些有依赖关系
- 路由到正确层:
- 简单查找/定义:低层(Haiku)
- 标准实现:中层(Sonnet)
- 复杂分析/重构:高层(Opus)
- 同时启动独立任务:一次性启动所有并行安全的任务
- 顺序运行依赖任务:等待先决条件后再启动依赖工作
- 在后台运行长操作:构建、安装和测试套件使用
run_in_background: true - 当所有任务完成时验证(轻量级):
- 构建/类型检查通过
- 受影响测试通过
- 没有引入新错误 </Steps>
<Tool_Usage>
- 使用
Task(subagent_type="oh-my-claudecode:executor-low", model="haiku", ...)进行简单更改 - 使用
Task(subagent_type="oh-my-claudecode:executor", model="sonnet", ...)进行标准工作 - 使用
Task(subagent_type="oh-my-claudecode:executor-high", model="opus", ...)进行复杂工作 - 使用
run_in_background: true进行包安装、构建和测试套件 - 使用 foreground 执行进行快速状态检查和文件操作 </Tool_Usage>
<Examples> <Good> 三个独立任务同时启动:
Task(subagent_type="oh-my-claudecode:executor-low", model="haiku", prompt="添加Config接口的缺失类型导出")
Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="使用验证实现 /api/users 端点")
Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="为认证中间件添加集成测试")
为什么好:独立任务在适当层,全部同时启动。 </Good>
<Good> 正确使用后台执行:
Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="npm install && npm run build", run_in_background=true)
Task(subagent_type="oh-my-claudecode:executor-low", model="haiku", prompt="使用新API端点更新README")
为什么好:长构建在后台运行,而短任务在 foreground 运行。 </Good>
<Bad> 独立工作的顺序执行:
result1 = Task(executor-low, "添加类型导出") # 等待...
result2 = Task(executor, "实现端点") # 等待...
result3 = Task(executor, "添加测试") # 等待...
为什么不好:这些任务是独立的。顺序运行它们浪费时间。 </Bad>
<Bad> 错误层选择:
Task(subagent_type="oh-my-claudecode:executor-high", model="opus", prompt="添加缺失的分号")
为什么不好:Opus 对于琐碎的修复来说是昂贵的大材小用。应使用 executor-low 和 Haiku。 </Bad> </Examples>
<Escalation_And_Stop_Conditions>
- 当 ultrawork 直接调用(不是通过 ralph)时,仅应用轻量级验证——构建通过、测试通过、没有新错误
- 对于完整持久化和全面的架构师验证,推荐切换到
ralph模式 - 如果任务在多次重试后仍然失败,报告问题而不是无限重试
- 当任务有不清楚的依赖关系或冲突要求时,上报给用户 </Escalation_And_Stop_Conditions>
<Final_Checklist>
- [ ] 所有并行任务完成
- [ ] 构建/类型检查通过
- [ ] 受影响测试通过
- [ ] 没有引入新错误 </Final_Checklist>
<Advanced>
与其他模式的关系
ralph (持久化包装器)
\-- 包括: ultrawork (此技能)
\-- 提供: 仅并行执行
autopilot (自主执行)
\-- 包括: ralph
\-- 包括: ultrawork (此技能)
Ultrawork 是并行层。Ralph 添加持久化和验证。Autopilot 添加完整生命周期管道。 </Advanced>