mcpField
U
ultrawork

ultrawork

github.com/yeachan-heoエージェントワークフロー40.4k733 回インストール1 日前に更新
リポジトリ

ultrawork について

Ultraworkは、複数のエージェントによる並列作業を調整するスキルです。意図の確認、依存関係に基づく計画、モデル階層への振り分け、軽量な検証を行いますが、永続化や長期状態管理は提供しません。

主な機能

  1. 01独立したエージェントタスクの同時起動
  2. 02依存関係に基づくタスクグラフの作成
  3. 03モデル階層に応じたタスク振り分け
  4. 04長時間タスクのバックグラウンド実行
  5. 05軽量な完了チェック

活用シーン

  1. 01独立した複数のコード変更を委任
  2. 02複数エージェントから同時に情報収集
  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」と言う場合、または並列実行を希望する場合
  • 複数のエージェントに一度に作業を委任する必要がある場合
  • 並行実行が有効だが、完了管理はユーザー自身が行う場合 </Use_When>

<Do_Not_Use_When>

  • 検証を伴う確実な完了が必要なタスクの場合は、代わりに ralph を使用してください(ralph には ultrawork が含まれます)
  • 完全自律型のパイプラインが必要なタスクの場合は、代わりに autopilot を使用してください(autopilot には ralph が含まれ、ralph には ultrawork が含まれます)
  • 並列化の余地がなく、順次実行するタスクが1つだけの場合は、実行エージェントに直接委任してください
  • 再開のためにセッションの永続化が必要な場合は、ultrawork に永続化機能を追加する ralph を使用してください </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 を使用してください
  • 短時間で済むコマンド(git status、ファイルの読み取り、簡単な確認)はフォアグラウンドで実行してください
  • 実装前に意図と不確実性を解消してください。まず調査し、まだ行き詰まっている場合にのみ質問してください
  • 複雑な作業では、実行前に並列実行ウェーブを含む依存関係を考慮した計画を作成してください
  • 委任したタスクの報告は簡潔にしてください。短い要約、変更したファイル、検証状況、ブロッカーを含めてください
  • 実装した動作には、診断だけでなく手動 QA も必須です </Execution_Policy>
1. **エージェントのリファレンスを読む**:階層の選択のために `docs/shared/agent-tiers.md` を読み込みます 2. **まず意図を把握する**:依頼が実装、調査、評価、研究のどれに当たるかを確認します。明確になる前にコードを書いてはいけません 3. **コンテキストを並行して収集する**: - 短時間で済む読み取りや検索には直接ツールを使用します - 広範なコンテキストの収集には調査エージェントやドキュメントエージェントを使用します 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` を使用してください - 簡単なステータス確認やファイル操作にはフォアグラウンド実行を使用してください 独立した3つのタスクを同時に開始します: ``` 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 を使うのは過剰です。代わりに executor と Haiku を使用してください。

<Escalation_And_Stop_Conditions>

  • ultrawork が直接呼び出された場合(ralph 経由ではない場合)は、軽量な検証のみを行ってください。ビルドとテストが成功し、新しいエラーがないことを確認します
  • 完全な状態維持と包括的なアーキテクト検証には、ralph モードへの切り替えを推奨してください
  • タスクが再試行を重ねても繰り返し失敗する場合は、無期限に再試行せず、問題を報告してください
  • タスクの依存関係が不明確な場合や、要件が競合する場合は、ユーザーにエスカレーションしてください </Escalation_And_Stop_Conditions>

<Final_Checklist>

  • すべての並列タスクが完了している
  • ビルド/型チェックが成功している
  • 影響を受けるテストが成功している
  • 新しいエラーが発生していない </Final_Checklist>

並列セッションに関する注意事項

  • マルチリポジトリワークスペースのアンカー: 親ディレクトリに .omc-workspace マーカーを配置すると、サブリポジトリ間の複数セッションで1つの .omc/ を共有できます。解決順序は OMC_STATE_DIR > .omc-workspace > git > cwd です。docs/REFERENCE.md を参照してください。
  • セッション ID の取得元: CLI コンテキストでは OMC_SESSION_ID 環境変数が優先され、フックコンテキストではフックペイロードの data.session_id が優先されます。
  • プラン ID(該当する場合): Ultrawork には永続状態がなく、並行実行は設計上それぞれ独立しています。プラン ID は不要です。
  • 並列実行の判定: サポートされています(ステートレスなコンポーネント)
## 他のモードとの関係
ralph (persistence wrapper)
 \-- includes: ultrawork (this skill)
     \-- provides: parallel execution only

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

Ultrawork は並列処理のレイヤーです。Ralph は永続化と検証を追加し、Autopilot はライフサイクル全体のパイプラインを追加します。

コメント