swarm-planner について
swarm-plannerは、タスク間の依存関係を明示し、エージェントの並行実行に適した実装計画を作るスキルです。コードベースの調査、確認質問、ドキュメント参照、計画レビューを行い、実装はしません。
主な機能
- 01コードベース構成の調査
- 02最新ドキュメントの参照
- 03曖昧な点の確認質問
- 04依存関係付きの独立タスク作成
- 05サブエージェントによる計画レビュー
活用シーン
- 01複数エージェントで進める作業の計画
- 02依存関係のある実装タスクへの分割
- 03計画前の外部ライブラリAPI確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ am-will/ codex-skills --skill swarm-plannerインストール後、Claude Code で/swarm-plannerを入力して読み込まれたか確認します。
詳細
Swarm-Ready Planner
並列エージェント実行に最適化された、タスクの依存関係を明示した実装計画を作成します。このスキルは、Plan Mode の内外どちらでも実行できます。
Core Principles
- コードベースを調査する:アーキテクチャ、パターン、既存の実装、依存関係、および使用中のフレームワークを調査します。
- まず最新のドキュメントを確認する:タスクを計画する前に、外部ライブラリ、フレームワーク、API については必ず Context7 を使用します。
- 質問する:計画プロセスを通じて、曖昧な点を明確にし、スコープ、制約、優先事項について確認します。いつでも質問できます。
- 依存関係を明示する:すべてのタスクで依存関係を宣言し、並列化を最大限に活用できるようにします。
- タスクをアトミックにする:各タスクは、単一のエージェントが独立して実行できるようにします。
- 結果を返す前にレビューする:サブエージェントが計画に抜け漏れがないかレビューしてから、最終版にします。
Process
1. Research
コードベースの調査:
- アーキテクチャ、パターン、既存の実装
- 使用中の依存関係とフレームワーク
1a. 任意:明確化の質問のために一時停止する
- アーキテクチャが不明確、または存在しない場合は、次に進まず一時停止してユーザーに入力を求め(AskUserQuestions)、回答を待ちます。明確化の質問には、必ず推奨案も提示してください。
- アーキテクチャが存在する場合は、1a をスキップして次のステップに進みます。
2. Documentation
ドキュメントの取得(外部依存関係がある場合は必須):
Context7 スキルまたは MCP を使用して、プロジェクトで使用する、または使用予定のライブラリ、フレームワーク、API の最新ドキュメントを取得します。Context7 が利用できない場合は、ウェブ検索を使用します。
これにより、バージョンに適合した API、正しいパラメーター、最新のベストプラクティスを確認できます。
3. STOP and Request User Input
不明な点がある場合、または複数の妥当な方法が考えられる場合:
- 直ちに作業を停止して、確認の質問をします。
- スコープ、制約、優先事項について推測してはいけません。
- リスクを減らし、曖昧さをなくす質問をします。
- 確認の質問には、必ず推奨案も提示してください。
- 利用できる場合は、request_user_input または AskUserQuestion ツールを使用します。
4. 依存関係を考慮した計画を作成する
次の形式で、タスクの依存関係を明示して計画を構成します。
タスクの依存関係の形式
各タスクには、次の項目を必ず含めます。
- id:一意の識別子(例:
T1、T2.1) - depends_on:先に完了する必要があるタスク ID の配列(ルートタスクの場合は空の
[]) - description:タスクで達成する内容
- location:関連するファイルパス
- validation:受け入れ基準
例:
T1: [depends_on: []] Create database schema migration
T2: [depends_on: []] Install required packages
T3: [depends_on: [T1]] Create repository layer
T4: [depends_on: [T1]] Create service interfaces
T5: [depends_on: [T3, T4]] Implement business logic
T6: [depends_on: [T2, T5]] Add API endpoints
T7: [depends_on: [T6]] Write integration tests
依存関係が空、または依存先がすべて完了しているタスクは、並列で実行できます(上記の T1、T2)。
4. 計画を保存する
CWD に <topic>-plan.md として保存します。
5. サブエージェントによるレビュー
保存後、サブエージェントを起動して計画をレビューします。
Review this implementation plan for:
1. Missing dependencies between tasks
2. Ordering issues that would cause failures
3. Missing error handling or edge cases
4. Gaps, holes, gotchas.
Provide specific, actionable feedback. Do not ask questions.
Plan location: [file path]
Context: [brief context about the task]
サブエージェントから実行可能なフィードバックがあった場合は、回答を返す前に計画を修正します。
Plan Template
# Plan: [Task Name]
**Generated**: [Date]
## Overview
[Summary of task and approach]
## Prerequisites
- [Tools, libraries, access needed]
## Dependency Graph
[タスクの依存関係の視覚的表現] T1 ──┬── T3 ──┐ │ ├── T5 ── T6 ── T7 T2 ──┴── T4 ──┘
## Tasks
### T1: [Name]
- **depends_on**: []
- **location**: [file paths]
- **description**: [what to do]
- **validation**: [how to verify]
- **status**: Not Completed
- **log**: [leave empty, to be filled out later]
- **files edited/created**: [leave empty, to be filled out later]
### T2: [Name]
- **depends_on**: []
- **location**: [file paths]
- **description**: [what to do]
- **validation**: [how to verify]
- **status**: Not Completed
- **log**: [leave empty, to be filled out later]
- **files edited/created**: [leave empty, to be filled out later]
### T3: [Name]
- **depends_on**: [T1]
- **location**: [file paths]
- **description**: [what to do]
- **validation**: [how to verify]
- **status**: Not Completed
- **log**: [leave empty, to be filled out later]
- **files edited/created**: [leave empty, to be filled out later]
[... continue for all tasks ...]
## Parallel Execution Groups
| Wave | Tasks | Can Start When |
|------|-------|----------------|
| 1 | T1, T2 | Immediately |
| 2 | T3, T4 | Wave 1 complete |
| 3 | T5 | T3, T4 complete |
| ... | ... | ... |
## Testing Strategy
- [How to test]
- [What to verify]
## Risks & Mitigations
- [What could go wrong + how to handle]
Important
- すべてのタスクに、明示的な
depends_onフィールドが必要です。 - 依存関係のないルートタスクは、すぐに並列実行できます。
- 実装は行わず、計画の作成のみを行ってください。
- タスクを確定する前に、外部依存関係については必ず Context7 を使用してください。
- 曖昧な点がある場合は、必ず質問してください。