implement-spec について
チケットの依存関係グラフに沿って仕様を実装する、コーディングエージェント向けスキルです。統合ブランチで複数のサブエージェントによる並行実装とマージを調整し、コードレビュー後にチケットを処理します。
主な機能
- 01仕様とチケットの依存関係を確認
- 02サブエージェントに並行実装を割り当て
- 03チケットブランチを統合
- 04コードレビューと指摘事項への対応
- 05チケット完了またはドラフト PR の準備
活用シーン
- 01複数チケットにまたがる仕様の実装
- 02ブロック関係のないチケットの並行実装
- 03PR でチケットを完了する作業の調整
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mattpocock/ skills --skill implement-specインストール後、Claude Code で/implement-specを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
仕様が提供されています。この仕様には、実装方法を説明するチケットが関連付けられているはずです。
課題トラッカーも提供されているはずです。提供されていない場合は、ユーザーに /setup-matt-pocock-skills を実行するよう伝えてください。
目標は、すべてのチケットを課題トラッカーの作業完了方法に従って解決し、仕様全体を単一の 統合ブランチ で実装することです。
チケットは手順のリストではありません。依存関係を持つ タスクグラフ です。つまり、常に着手可能なチケットの フロンティア があります。
サブエージェントとのやり取りは最小限にしてください。主に、仕様、チケット、調査メモ、過去のコミットへの コンテキストポインター を通じて情報を伝えてください。ポインターから参照できる情報を重複して伝えないでください。
可能な限り、最大限の並行性を確保するため、実装サブエージェント はバックグラウンドで実行してください。
手順
-
仕様とチケットを読み、タスクグラフを理解します。
-
(任意)チケットで必要な調査(関連するコードベースのファイルや外部ドキュメントなど)を行うため、探索サブエージェント を使用します。探索サブエージェントがファイルを保存できるようにしてください。今後のすべてのサブエージェントがアクセスできる、リポジトリの外部のディレクトリに Markdown のメモを保存させます。これにより、実装サブエージェント は調査ではなく実装に集中できます。
-
統合ブランチを作成します。課題トラッカーが PR を通じて作業を完了とする場合、またはユーザーが PR を依頼した場合は、手順 5 で最初のマージを行った後にドラフト PR を作成し、仕様とチケットを完了対象として明記します(main より先行するコミットがないブランチでは PR を作成できません)。
-
実装サブエージェント を使用して各チケットを実装します。それぞれ独自のワークツリーとブランチを使用します。各実装サブエージェントは次のことを行います。
- 作業開始前に、自分のワークツリーが統合ブランチをベースにしていることを確認し、そうでなければ統合ブランチにリセットします。
tddを指定して Skill ツールを呼び出し、チケットを実装します。- 完了を報告する前に、統合ブランチの最新の内容を自分のブランチにマージします。
-
実装サブエージェント が完了したら、マージャーサブエージェント を使って、その作業を統合ブランチにマージします。
-
チケットのフロンティアが変わった場合は、新たに着手可能になったチケットに取り組むため、さらに 実装サブエージェント を起動します。これにより、最大限の並行性を確保できます。
-
すべてのチケットが完了したら、統合ブランチで
code-reviewを指定して Skill ツールを呼び出します。コードレビューで指摘された問題はすべて、単一の 実装サブエージェント で修正します。 -
ドラフト PR が存在する場合は、レビュー可能な状態にします。存在しない場合は、課題トラッカーが作業を完了とする方法に従って各チケットを解決し、統合ブランチを報告します。
-
すべての 実装サブエージェント のワークツリーをクリーンアップします。