setup-matt-pocock-skills について
Setup Matt Pocock's Skillsは、エンジニアリングスキルが使う課題管理、トリアージラベル、ドメイン文書の規約を整えるプロンプト駆動型スキルです。リポジトリを調査して内容を確認し、合意後に設定を書き込みます。
主な機能
- 01リポジトリ規約の調査
- 02課題管理方法の設定
- 03トリアージラベルの指定
- 04ドメイン文書の場所を定義
- 05書き込み前の確認
活用シーン
- 01新規リポジトリでのスキル設定
- 02既存の課題管理方法の記録
- 03モノレポの文書設定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nulfrog/ skills --skill setup-matt-pocock-skillsインストール後、Claude Code で/setup-matt-pocock-skillsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
domain.mdissue-tracker-github.mdissue-tracker-gitlab.mdissue-tracker-local.mdtriage-labels.mdagents/openai.yaml詳細
Matt Pocock のスキルをセットアップする
エンジニアリングスキルが前提とする、リポジトリごとの設定をひな形から作成します。
- 課題トラッカー:課題の保存場所です(デフォルトは GitHub ですが、ローカルの Markdown も標準でサポートされています)。
- トリアージラベル:5 つの標準的なトリアージ役割に使用する文字列です。
- ドメインドキュメント:
CONTEXT.mdと ADR の保存場所、およびそれらを読み込む際の利用側のルールです。
これはプロンプト駆動型のスキルであり、決定論的なスクリプトではありません。調査し、見つかった内容を提示してユーザーに確認してから、書き込みます。
プロセス
1. 調査する
現在のリポジトリを確認し、初期状態を把握します。存在するものを読み取り、決めつけないでください。
git remote -vと.git/config:GitHub リポジトリですか?どのリポジトリですか?- リポジトリルートの
AGENTS.mdとCLAUDE.md:どちらか存在しますか?どちらかにすでに## Agent skillsセクションがありますか? - リポジトリルートの
CONTEXT.mdとCONTEXT-MAP.md docs/adr/とsrc/*/docs/adr/ディレクトリdocs/agents/:このスキルが以前に出力した内容はすでに存在しますか?.scratch/:ローカル Markdown の課題トラッカー規約がすでに使われている兆候です。triageスキルがインストールされていますか?(このスキルと同じ場所にあるtriageスキルフォルダー、または利用可能なスキル内のtriage。)これにより、セクション B を実行するかどうかが決まります。- モノレポの兆候:
pnpm-workspace.yaml、package.jsonのworkspacesフィールド、または独自のsrc/を持つpackages/*が存在するかどうか。これらがあるのは、本当に大規模なマルチパッケージリポジトリだけです。存在しない場合は、ほとんどのリポジトリと同様に単一コンテキストと判断します。
2. 調査結果を提示して確認する
存在するものと不足しているものを要約します。その後、セクションを順番に進めます。各セクションにつき回答を1つ提示してから、次のセクションに進みます。
各セクションの最初に推奨する回答を示し、ユーザーが一言で承認できるようにします。選択肢が実際に分かれる場合にのみ、1行の説明を添えます。すでに調査で判断できている場合は、そのセクションを省略します(triage がインストールされていない場合はセクション B、モノレポでない場合はセクション C)。
セクション A:課題トラッカー。
説明:このリポジトリで課題を管理する場所が「課題トラッカー」です。
to-tickets、triage、to-specなどのスキルは、ここから読み取り、ここに書き込みます。どのワークフローを使うかを把握する必要があります。たとえば、gh issue createを実行するのか、.scratch/の下に Markdown ファイルを書くのか、あるいは説明された別のワークフローに従うのかです。このリポジトリで実際に作業を追跡している場所を選んでください。
デフォルトの方針:これらのスキルは GitHub 向けに設計されています。git remote が GitHub を指している場合は、GitHub を提案します。git remote が GitLab(gitlab.com またはセルフホスト型のホスト)を指している場合は、GitLab を提案します。それ以外の場合(またはユーザーが希望する場合)は、次の選択肢を提示します。
- GitHub:課題はリポジトリの GitHub Issues で管理します(
ghCLI を使用) - GitLab:課題はリポジトリの GitLab Issues で管理します(
glabCLI を使用) - ローカル Markdown:課題はこのリポジトリの
.scratch/<feature>/にファイルとして保存します(個人プロジェクトやリモートのないリポジトリに適しています) - その他(Jira、Linear など):ワークフローを1段落で説明してもらいます。スキルはそれを自由記述として記録します
選択内容を docs/agents/issue-tracker.md に記録します。GitHub と GitLab のテンプレートには「PR をリクエストの窓口として扱う」フラグがあり、デフォルトでは オフ です。オフのままにし、このフラグについては話題にしないでください。外部からの PR をトリアージキューに入れたい場合は、後からファイル内のフラグを切り替えられます。
セクション B:トリアージラベルの用語。 triage スキルがインストールされていない場合は、このセクションを完全に省略します(調査で確認済みのはずです)。インストールされていないスキルにはラベルが必要ないためです。
インストールされている場合は、次の質問を1つだけします。
デフォルトのトリアージラベルを使いますか?(推奨:はい)
デフォルトは5つの標準的な役割で、各ラベル文字列は役割名と同じです:needs-triage、needs-info、ready-for-agent、ready-for-human、wontfix。はいの場合は、そのまま記録します。ユーザーが「いいえ」と答えた場合に限り、通常はトラッカーですでに別の名前(例:needs-triage に対する bug:triage)を使っていることが理由なので、既存ラベルを新たに作成するのではなく、それらを適用するよう triage を設定するための上書き値を聞き取ります。
セクション C:ドメイン関連ドキュメント。 デフォルトでは 単一コンテキスト(リポジトリのルートに CONTEXT.md と docs/adr/ を1つずつ)とします。ほとんどすべてのリポジトリに適しているため、質問せずに記述します。
探索でモノレポの兆候が見つかった場合に限り、複数コンテキスト(ルートの CONTEXT-MAP.md から各コンテキストの CONTEXT.md ファイルを参照する構成)を提示します。その場合は、どちらの構成にするか確認します。
3. 確認して編集する
次の内容の下書きをユーザーに提示します。
- 編集対象となる
CLAUDE.mdまたはAGENTS.mdに追加する## Agent skillsブロック(選択ルールについては手順4を参照) docs/agents/issue-tracker.md、docs/agents/domain.md、docs/agents/triage-labels.mdの内容(最後のファイルはtriageがインストールされている場合のみ)
書き込む前に、ユーザーが編集できるようにします。
4. 書き込む
編集するファイルを選びます:
CLAUDE.mdが存在する場合は、これを編集します。- それ以外で
AGENTS.mdが存在する場合は、これを編集します。 - どちらも存在しない場合は、どちらを作成するかユーザーに尋ねます。こちらで選んではいけません。
CLAUDE.md がすでに存在する場合(または AGENTS.md がすでに存在する場合)は、もう一方のファイルを作成してはいけません。すでに存在するファイルを必ず編集してください。
選んだファイルに ## Agent skills ブロックがすでに存在する場合は、重複して追加せず、その内容をブロック内で更新します。周囲のセクションに対するユーザーの編集内容は上書きしないでください。
ブロック:
## Agent skills
### Issue tracker
[one-line summary of where issues are tracked]. See `docs/agents/issue-tracker.md`.
### Triage labels
[one-line summary of the label vocabulary]. See `docs/agents/triage-labels.md`.
### Domain docs
[one-line summary of layout: "single-context" or "multi-context"]. See `docs/agents/domain.md`.
triage がインストールされていて、セクション B が実行された場合に限り、### Triage labels サブブロックを含め、docs/agents/triage-labels.md を作成します。それ以外の場合は、どちらも省略します。
次に、このスキルフォルダー内のシードテンプレートを出発点として、ドキュメントファイルを作成します。
- issue-tracker-github.md:GitHub の課題トラッカー
- issue-tracker-gitlab.md:GitLab の課題トラッカー
- issue-tracker-local.md:ローカルの Markdown 課題トラッカー
- triage-labels.md:ラベルのマッピング(
triageがインストールされている場合のみ) - domain.md:ドメインドキュメントの利用ルールと構成
「その他」の課題トラッカーの場合は、ユーザーの説明をもとに docs/agents/issue-tracker.md を一から作成します。
5. 完了
セットアップが完了したことと、今後どのエンジニアリングスキルがこれらのファイルを参照するかをユーザーに伝えます。後から docs/agents/*.md を直接編集できることも伝えてください。課題トラッカーを切り替える場合や、最初からやり直す場合にのみ、このスキルを再実行する必要があります。