Newer
Older
MiniTias / .claude / commands / implement.md

name: implement description: "実装パイプラインを開始する.コーディング → テスト → リファクタリングの順で 3 つのエージェントを実行し,各フェーズ間で人間の確認を挟む." argument-hint: "<タスク内容>"

あなたはオーケストレーターです.以下の実装パイプラインを管理してください. 各フェーズ間で必ず人間の確認を挟み,承認を得てから次のフェーズに進むこと.

前提確認 (Pre-check)

  1. 現在のブランチを確認する(git branch --show-current
  2. main ブランチにいる場合,GUIDE_04 に従い作業ブランチを作成する
    • ブランチ名: feature//fix/ + タスク内容を表す英単語 2〜4 語(kebab-case)
  3. 実装対象のタスクを確認する: $ARGUMENTS

Phase 1: コーディング (Coder)

coder エージェントに以下を委譲する:

「以下のタスクを実装してください: $ARGUMENTS」

Coder の出力(実装サマリー)を記録する.

人間の確認ポイント 1

Coder の実装サマリーをユーザーに提示し,以下を依頼する:

Phase 1(コーディング)が完了しました.

{Coder の実装サマリー}

ブラウザや実機で動作を確認してください.

  • OK → 次のフェーズ(テスト)に進みます
  • NG → 問題点を教えてください.修正します」

ユーザーの OK を得るまで Phase 2 に進まないこと. NG の場合は coder エージェントに修正を委譲し,再度確認を依頼する.

Phase 2: テスト (Tester)

tester エージェントに以下を委譲する:

「直前の実装に対するテストを仕様ベースで作成・実行してください.

実装サマリー: {Coder の出力}」

Tester の出力(テストサマリー)を記録する.

Phase 2 完了後の分岐

テスト結果に応じて自動で分岐する:

  • 全テスト成功: ユーザーにテストサマリーを表示した上で,自動的に Phase 3 に進む.
  • テスト失敗あり: ユーザーに報告し,判断を仰ぐ.

テスト失敗時のみ,以下をユーザーに提示する:

Phase 2(テスト)でテスト失敗がありました.

{Tester のテストサマリー}

テスト失敗の原因を判断してください:

  • 仕様の問題 → 仕様の修正方針を教えてください
  • 実装の問題 → coder エージェントに修正を委譲します
  • テストの問題 → tester エージェントに修正を委譲します」

ユーザーの指示に従い対応した後,再度テストを実行して全テスト成功を確認してから Phase 3 に進む.

Phase 3: リファクタリング (Refactorer)

refactorer エージェントに以下を委譲する:

「直前の実装・テスト後のコードをリファクタリングしてください.

実装サマリー: {Coder の出力}

テストサマリー: {Tester の出力}」

Refactorer の出力(リファクタリングサマリー)を記録する.

人間の確認ポイント 3

Refactorer のリファクタリングサマリーをユーザーに提示し,以下を依頼する:

Phase 3(リファクタリング)が完了しました.

{Refactorer のリファクタリングサマリー}

全フェーズが完了しました.最終確認をお願いします.

  • OK → コミット・push・PR 作成に進みます
  • NG → 修正点を教えてください」

完了処理 (Finalization)

ユーザーの最終 OK を得た後:

  1. 全変更をステージングする(git add で関連ファイルを追加)
  2. GUIDE_04 に従いコミットする([add]/[update]/[fix] + 日本語メッセージ)
  3. リモートにプッシュする(git push origin {ブランチ名}
  4. PR 作成を実行する(gh pr create
  5. CLAUDE.md の開発進捗の更新を提案する

注意事項 (Notes)

  • 各フェーズは必ず順番に実行する(並列実行しない)
  • フェーズをスキップしない.リファクタリング不要の判断は Refactorer エージェント自身が行う
  • エージェントがエラーを報告した場合,ユーザーに報告して判断を仰ぐ
  • 人間の確認なしに次のフェーズに進まない