mcpField
U
ultrawork

ultrawork

github.com/yeachan-heoAgent 工作流40.4k733 次安装1 天前更新
代码仓库

关于 ultrawork

Ultrawork 是用于协调多个 Agent 并行工作的技能,涵盖意图澄清、依赖规划、模型层级分配和轻量验证;它不提供持久化或长期状态管理。

主要功能

  1. 01并发启动独立 Agent 任务
  2. 02构建依赖关系任务图
  3. 03按模型层级分配任务
  4. 04长任务使用后台执行
  5. 05进行轻量完成检查

适用场景

  1. 01委派多个互不依赖的代码改动
  2. 02同时从多个 Agent 收集上下文
  3. 03执行长时间构建时并行处理短任务
  4. 04在无需会话持久化时并行工作

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yeachan-heo/oh-my-claudecode --skill ultrawork

安装后在 Claude Code 中输入/ultrawork确认已加载。

详细介绍

Ultrawork 是一个面向独立工作的并行执行引擎和执行协议。它强调意图落地、并行上下文收集、面向非平凡工作的依赖感知任务图,以及简洁且有证据支撑的执行摘要。它是一个组件,而不是独立的持久化模式 —— 它提供并行性和路由指导,但不提供持久化、验证循环或长期状态管理。

<Use_When>

  • 多个独立任务可以同时运行
  • 用户说 "ulw"、"ultrawork",或希望并行执行
  • 你需要一次性将工作委派给多个 Agent
  • 任务受益于并发执行,但用户会自行管理完成情况 </Use_When>

<Do_Not_Use_When>

  • 任务需要通过验证保证完成 —— 改用 ralph(ralph 包含 ultrawork)
  • 任务需要完整的自主流水线 —— 改用 autopilot(autopilot 包含 ralph,而 ralph 包含 ultrawork)
  • 只有一个顺序任务且没有并行机会 —— 直接委派给执行器 Agent
  • 用户需要会话持久化以便恢复 —— 改用 ralph,它在 ultrawork 之上增加了持久化 </Do_Not_Use_When>

<Why_This_Exists> 当任务相互独立时,顺序执行任务会浪费时间。Ultrawork 能够同时触发多个 Agent,并将每个 Agent 路由到正确的模型层级,从而在控制 token 成本的同时减少总执行时间。它被设计为一个可组合的组件,供 ralph 和 autopilot 在其之上叠加使用。 </Why_This_Exists>

<Execution_Policy>

  • 同时触发所有独立的 Agent 调用 —— 绝不要串行化独立工作
  • 委派时始终显式传递 model 参数
  • 首次委派前阅读 docs/shared/agent-tiers.md,以获取 Agent 选择指导
  • 对超过约 30 秒的操作(安装、构建、测试)使用 run_in_background: true
  • 在前台运行快速命令(git status、文件读取、简单检查)
  • 在实现前解决意图和不确定性;先探索,只有在仍然受阻时才询问
  • 对于非平凡任务,在执行前产出带并行波次的依赖感知计划
  • 保持委派任务报告简洁:简短摘要、涉及文件、验证状态、阻塞项
  • 已实现行为需要人工 QA,而不仅仅是诊断 </Execution_Policy>
1. **阅读 Agent 参考**:加载 `docs/shared/agent-tiers.md` 以进行层级选择 2. **先落实意图**:确认请求是实现、调查、评估还是研究;在这一点明确之前不要编码 3. **并行收集上下文**: - 使用直接工具进行快速读取/搜索 - 使用探索/文档 Agent 获取广泛上下文 4. **按独立性对任务分类**:识别哪些任务可以并行运行,哪些存在依赖关系 5. **为非平凡工作创建任务图**: - 并行执行波次 - 依赖矩阵 - 每个任务的验收标准和验证步骤 6. **路由到正确的层级**: - 简单查找/定义:LOW 层级(Haiku) - 标准实现:MEDIUM 层级(Sonnet) - 复杂分析/重构:HIGH 层级(Opus) 7. **同时触发独立任务**:一次性启动所有可并行安全执行的任务 8. **按顺序运行依赖任务**:在启动依赖工作之前等待前置条件完成 9. **将长时间操作放到后台**:构建、安装和测试套件使用 `run_in_background: true` 10. **所有任务完成后进行验证**(轻量级): - 构建/类型检查通过 - 受影响的测试通过 - 已实现行为完成人工 QA - 未引入新错误 - 对于简单改动,使用 `Task(subagent_type="oh-my-claudecode:executor", model="haiku", ...)` - 对于标准工作,使用 `Task(subagent_type="oh-my-claudecode:executor", model="sonnet", ...)` - 对于复杂工作,使用 `Task(subagent_type="oh-my-claudecode:executor", model="opus", ...)` - 对于包安装、构建和测试套件,使用 `run_in_background: true` - 对于快速状态检查和文件操作,使用前台执行 同时触发三个独立任务: ``` Task(subagent_type="oh-my-claudecode:executor", model="haiku", prompt="Add missing type export for Config interface") Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="Implement the /api/users endpoint with validation") Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="Add integration tests for the auth middleware") ``` 为何良好:独立任务处于合适的层级,并且全部一次性触发。 正确使用后台执行: ``` 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", model="haiku", prompt="Update the README with new API endpoints") ``` 为何良好:长时间构建在后台运行,同时短任务在前台运行。 独立工作被顺序执行: ``` result1 = Task(executor, "Add type export") # wait... result2 = Task(executor, "Implement endpoint") # wait... result3 = Task(executor, "Add tests") # wait... ``` 为何不佳:这些任务是相互独立的。顺序运行它们会浪费时间。 层级选择错误: ``` Task(subagent_type="oh-my-claudecode:executor", model="opus", prompt="Add a missing semicolon") ``` 为何不佳:对于一个小修复来说,Opus 昂贵且大材小用。应改用带 Haiku 的 executor。

<Escalation_And_Stop_Conditions>

  • 当直接调用 ultrawork(而非通过 ralph)时,仅应用轻量级验证——构建通过、测试通过、无新错误
  • 若需要完整持久化和全面的 architect 验证,建议切换到 ralph 模式
  • 如果某个任务在多次重试后仍然失败,应报告该问题,而不是无限重试
  • 当任务依赖不明确或需求相互冲突时,升级给用户 </Escalation_And_Stop_Conditions>

<Final_Checklist>

  • 所有并行任务均已完成
  • 构建/类型检查通过
  • 受影响的测试通过
  • 未引入新错误 </Final_Checklist>

并行会话注意事项

  • 多仓库工作区锚点: 在父目录放置一个 .omc-workspace 标记,以便跨多个子仓库的多个会话共享同一个 .omc/。解析顺序:OMC_STATE_DIR > .omc-workspace > git > cwd。参见 docs/REFERENCE.md。
  • 会话 id 来源: 在命令行上下文中,OMC_SESSION_ID 环境变量优先;在 hook 上下文中,hook 负载中的 data.session_id 优先。
  • 计划 id(如适用): Ultrawork 没有持久状态;两个并发运行在设计上就是相互独立的。无需 plan-id。
  • 并行判定: 支持(无状态组件)
## 与其他模式的关系
ralph (persistence wrapper)
 \-- includes: ultrawork (this skill)
     \-- provides: parallel execution only

autopilot (autonomous execution)
 \-- includes: ralph
     \-- includes: ultrawork (this skill)

Ultrawork 是并行层。Ralph 增加了持久化和验证。Autopilot 增加了完整生命周期流水线。

评论

支持 Markdown