implement-spec について
課題トラッカーを使って仕様全体を実装するワークフロースキルです。統合ブランチ上でチケット作業を並行調整し、実装後にコードレビューとチケット処理を行います。
主な機能
- 01チケットの依存関係と着手可能項目の整理
- 02個別の worktree で実装サブエージェントを実行
- 03完了したチケットを統合ブランチへマージ
- 04実装後のコードレビュー
- 05課題トラッカーに従ったチケット完了処理
活用シーン
- 01依存関係のあるチケットに分割された仕様の実装
- 02独立したチケット作業の並行実行
- 03単一の統合ブランチでの実装とレビュー
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ilteoood/ harness --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 が存在する場合は、レビュー可能な状態にします。存在しない場合は、課題トラッカーが作業を完了とする方法に従って各チケットを解決し、統合ブランチを報告します。
-
すべての 実装サブエージェント のワークツリーをクリーンアップします。