From team-implement
Implements approved plans with parallel agent teams: decomposes into dependency-aware tasks, executes in waves, collects file contexts, verifies via build/test.
npx claudepluginhub sean-sunagaku/claude-code-plugin --plugin team-implementThis skill uses the workspace's default tool permissions.
承認済みの実装計画を **Agent Team (TeamCreate + TaskCreate) で並列に実装**するスキル。
Spawns parallel agent implementers in tmux split panes to execute implementation plans, orchestrated by team lead with spec compliance and code quality review gates. For 3+ independent tasks across files.
Orchestrates 5 AI agents to research codebase, discuss consensus, clarify with user, and create plan.md for Plan Mode before implementing tasks like bugs, features, refactoring across files.
Executes implementation plans from plan.md files via Superpower Loop phases: task creation, batch execution with verification, git commits. Use after plan ready or on 'execute the plan'.
Share bugs, ideas, or general feedback.
承認済みの実装計画を Agent Team (TeamCreate + TaskCreate) で並列に実装するスキル。
Plan 読み込み
→ タスク分解 + 依存関係 + Wave 構成
→ ユーザー承認
→ TeamCreate + TaskCreate
→ Wave ごとに並列エージェント起動(background)
→ 完了した Wave の依存解消 → 次の Wave 起動
→ ビルド&テスト検証
→ 最終レポート + クリーンアップ
以下の優先順位で Plan を探す:
.claude/plans/ ディレクトリから最新の .md ファイルを自動検出# .claude/plans/ から最新ファイルを探す
ls -t .claude/plans/*.md | head -1
Plan を Read し、以下を抽出する:
Plan が見つからない、または承認済みか不明な場合はユーザーに確認する。
Plan の実装ステップを 独立して並列実行できるタスク群 に分解する。
タスクを依存関係に基づいて Wave(同時実行グループ)に分ける:
Wave 1: 依存なし(全て並列実行可能)
例: モデル変更、バックエンド変更、翻訳ファイル更新
Wave 2: Wave 1 の完了に依存
例: UI 変更(モデル変更に依存)、テスト(バックエンド変更に依存)
Wave 3: Wave 2 の完了に依存
例: ビルド&テスト検証
タスク分解結果を以下の形式でユーザーに提示し、AskUserQuestion で承認を得る:
## タスク分解案
### Wave 1(並列)
- Task 1: {タスク名} — {変更ファイル一覧} — {概要}
- Task 2: {タスク名} — {変更ファイル一覧} — {概要}
### Wave 2(Wave 1 完了後)
- Task 3: {タスク名} — 依存: Task 1 — {概要}
### Wave 3(最終検証)
- Task 4: ビルド&テスト — 依存: Task 2, 3
合計: N タスク / M Wave / 推定エージェント数: X 体
承認後、各タスクで変更するファイルを全て Read して文脈を収集する。 これはエージェントのプロンプトに含める現在のファイル内容として使う。
エージェントが高品質な変更を行うには、現在のコードの正確な状態が必要。 ファイルの Read を省略すると、エージェントが既存コードと整合しない変更を行うリスクがある。
TeamCreate(
team_name: "implement-{plan名の短縮形}",
description: "Plan '{plan名}' の並列実装"
)
Step 2 で承認されたタスク分解に基づき、TaskCreate を実行。
# 例: 3タスク + ビルド検証
TaskCreate(subject: "Task 1: モデル変更", description: "...", activeForm: "モデルを変更中")
TaskCreate(subject: "Task 2: バックエンド変更", description: "...", activeForm: "バックエンドを変更中")
TaskCreate(subject: "Task 3: UI変更", description: "...", activeForm: "UIを変更中")
TaskCreate(subject: "Task 4: ビルド&テスト", description: "...", activeForm: "ビルド&テスト実行中")
# 依存関係の設定
TaskUpdate(taskId: "3", addBlockedBy: ["1"]) # UI は モデル完了後
TaskUpdate(taskId: "4", addBlockedBy: ["2", "3"]) # ビルドは全コード完了後
依存なし(blockedBy が空)のタスクを 1つのメッセージで全て並列に 起動する。
# 全エージェントを同じメッセージ内で並列起動すること(逐次起動は禁止)
Task(
name: "task-1-model",
subagent_type: "general-purpose",
team_name: "implement-xxx",
mode: "bypassPermissions",
run_in_background: true,
prompt: "{詳細プロンプト}"
)
Task(
name: "task-2-backend",
subagent_type: "general-purpose",
team_name: "implement-xxx",
mode: "bypassPermissions",
run_in_background: true,
prompt: "{詳細プロンプト}"
)
各エージェントのプロンプトは以下の構造で作成する。具体的であるほど品質が上がる。
あなたは実装エージェントです。以下のタスクを実行してください。
## タスク概要
{何を実装するかの概要}
## 変更対象ファイル
### {ファイルパス1}
**現在の内容(関連部分):**
```{言語}
{Read で取得した現在のコード}
変更内容:
...(同じ構造)
タスク完了後、以下を報告してください:
### プロンプト品質チェックリスト
- [ ] 変更対象ファイルの**現在のコード**がプロンプトに含まれているか
- [ ] 変更内容が**コードレベルで具体的**か(「適切に修正」のような曖昧な指示はNG)
- [ ] 変更**しない**箇所が明確か
- [ ] 既存コードの命名規則・パターンが示されているか
- [ ] 完了条件が明確か
---
## Step 6: Wave 実行の監視と進行
### 完了の検知
バックグラウンドエージェントの完了は自動通知される。完了時:
1. TaskUpdate で該当タスクを `completed` に更新
2. TaskList で残タスクと依存状態を確認
3. 新たに blockedBy が空になったタスクがあれば、次の Wave として起動
### 次の Wave の起動
TaskList()
Task( name: "task-3-ui", subagent_type: "general-purpose", team_name: "implement-xxx", mode: "bypassPermissions", run_in_background: true, prompt: "{詳細プロンプト}" )
### エラー時の対応
エージェントがエラーを報告した場合:
1. エラー内容を確認
2. **軽微な修正**: 新しいエージェントを起動して修正タスクを割り当て
3. **設計レベルの問題**: ユーザーに報告し、計画の修正を相談
4. **依存タスクへの影響**: 依存タスクの起動を保留し、修正完了後に再開
---
## Step 7: ビルド&テスト検証
全コード変更タスクの完了後、ビルドとテストを実行する。
### ビルド&テストコマンドの検出
Plan に記載されていればそれを使う。なければ以下で自動検出:
```bash
# package.json の scripts を確認
cat package.json | grep -E '"(build|test|lint)"'
# よくあるパターン
# - npm run build / npm test
# - cd functions && npm run build && npm test
# - npx tsc --noEmit
ビルド&テストも TeamCreate で作成したチームの一員として起動する:
Task(
name: "build-verify",
subagent_type: "general-purpose",
team_name: "implement-xxx",
mode: "bypassPermissions",
run_in_background: true,
prompt: "以下のコマンドを順番に実行し、結果を報告してください:
{コマンド1}
{コマンド2}
成功/失敗の判定と、失敗時はエラー内容の全文を含めてください。"
)
# テスト失敗時の修正フロー
TaskCreate(subject: "Fix: テスト失敗の修正", description: "...", activeForm: "テスト失敗を修正中")
Task(
name: "fix-test-failure",
subagent_type: "general-purpose",
team_name: "implement-xxx",
mode: "bypassPermissions",
run_in_background: true,
prompt: "{失敗内容と修正指示}"
)
全タスク完了後、ユーザーに以下を報告:
## 実装完了レポート
### 変更ファイル一覧
| ファイル | 変更内容 | タスク |
|---------|---------|-------|
| {パス} | {概要} | Task N |
### ビルド&テスト結果
- ビルド: {成功/失敗}
- テスト: {X passed, Y failed}
### 注意事項
- {エージェントから報告された懸念点}
### 次のアクション
- {必要な追加作業があれば}
# 1. 全エージェントに shutdown_request
SendMessage(type: "shutdown_request", recipient: "task-1-model", content: "実装完了")
SendMessage(type: "shutdown_request", recipient: "task-2-backend", content: "実装完了")
...
# 2. 全員シャットダウン後にチーム削除
TeamDelete()
同一 Wave のエージェントは必ず1つのメッセージ内で全て同時に起動する。 逐次起動は非効率であり禁止。
team-plan(調査→計画→承認)→ team-implement(実装→検証→完了)
team-plan で作成された Plan ファイルをそのまま入力として使える。