mcpField
T
triage

triage

github.com/unlearndevテスト・品質105133 回インストール3 週間前に更新
リポジトリ

triage について

Git の差分をレビューする開発者向けの変更トリアージスキルです。変更ファイルを機能領域ごとにまとめ、リスク順に並べたレビュー用マップを作成します。コードレビュー自体は行いません。

主な機能

  1. 01基準ブランチと HEAD の比較
  2. 02機能領域ごとのファイル分類
  3. 03高・中・低リスクの判定
  4. 04自動生成ファイルの分離
  5. 05ファイル変更状態の表示

活用シーン

  1. 01大規模な差分のレビュー優先度付け
  2. 02変更ファイルと機能領域の対応付け
  3. 03生成ファイルとレビュー対象の切り分け

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/unlearndev/skills --skill triage

インストール後、Claude Code で/triageを入力して読み込まれたか確認します。

詳細

トリアージ

引数

生の引数:$ARGUMENTS

引数を比較対象のベースブランチとして解析します。空の場合は、デフォルトで main を使用します。

目標

ベースブランチと HEAD の間の変更を、機能領域ごとにまとめたリスク順のマップを作成し、ユーザーがレビューに時間を割く場所を判断できるようにします。出力はトリアージレポートであり、レビューではありません。

レビューは実施しないでください。提案しないでください。修正を提案しないでください。確認すべき具体的な行を指摘しないでください。 ユーザーはこのマップを見て、自分で調査する内容を決めます。

手順

1. 差分を取得する

まず git diff --name-status <base>...HEAD を実行してファイル単位の概要を取得し、次に git diff <base>...HEAD を実行して実際の変更内容を確認します。変更がない場合は、ユーザーに伝えて終了します。

2. 変更されたファイルを読む

変更されたファイルごとに、どの機能領域に属し、どの程度のリスクがあるかを理解できる範囲で読みます。すべてのファイルのすべての行を読む必要はありません。分類に必要な範囲を読んでください。

3. 機能領域ごとにグループ化する

ファイルの種類ではなく、コードの役割でファイルをグループ化します。適切なグループ名の例:「認証」「通知配信」「ユーザーデータの変更」「スキーマと設定」。不適切なグループ名の例:「コントローラー」「PHP ファイル」「Vue コンポーネント」。

目安:

  • 通常、コントローラー、そのルート、そのページ、テストはひとつの機能グループになります。
  • マイグレーションと、それに関連するモデルの変更はひとつの機能グループになります。
  • 通知クラス、そのトリガー、メールテンプレートはひとつの機能グループになります。
  • 既存のフローに追加された副作用(例:「投票すると購読もされるようになった」)は、独立した小さなグループになります。
  • 動作の変更を伴わない純粋なリファクタリングは、ひとつの「リファクタリング」グループにまとめられます。

各ファイルは必ずひとつのグループだけに含めます。最も関連性の高いグループを選んでください。グループ名は短く(2~4 語)します。

4. リスクの段階を割り当てる

各グループを高、中、低のいずれかに分類します。

次に該当する場合は必ず高にします。

  • 認証または認可に関わる
  • ユーザーデータ、支払い、請求情報を変更する
  • 権限またはアクセス制御を変更する
  • 機密データ(パスワード、トークン、個人情報)を扱う

次に該当する場合は、リスクをひとつ上の段階にします。

  • 複雑な条件分岐がある
  • 外部サービスや API と連携する
  • 大量の生成コード(AI によって一度に生成されたように見える 100 行以上のコード)が含まれる

それ以外の場合は、変更の影響範囲に応じて段階を選びます。

5. 自動生成ファイルを特定する

自動生成ファイルは、末尾の「スキップ」セクションに記載します。以下が該当します。

  • ロックファイル(composer.lock、package-lock.json、pnpm-lock.yaml)
  • コンパイル済みアセット(public/build/、dist/)
  • 生成されたルート/型定義(Wayfinder のアクション/ルートファイル、生成された TS 型)
6. レポートを出力する

以下の形式を厳密に使用します。

### ⚠️ High Risk

**[Feature Area Name]**
Reason: [one sentence explaining why this is high risk]
- path/to/file.php (added/modified)
- path/to/other-file.php (modified)

**[Another Feature Area]**
Reason: [one sentence]
- path/to/file.php (added)

### Medium Risk

**[Feature Area Name]**
Reason: [one sentence]
- path/to/file.php (added)

### Low Risk

**[Feature Area Name]**
- path/to/file.php (modified)

### Skip

**Auto-generated**
- path/to/generated/files... (auto-generated — skip)

最後に、1 行の要約を付けます:X groups, Y high-risk files to focus on。

ルール

  • ファイルの種類ではなく、機能領域ごとにグループ化します。「コントローラー」ではなく「認証フロー」、「PHP ファイル」ではなく「通知配信」とします。
  • **ファイルごとにグループはひとつだけです。**最も関連性の高いグループを選びます。
  • **グループ名は 2~4 語にします。**短く、内容が分かる名前にします。
  • **各グループに、そのリスク段階である理由を 1 行で記載します。**理由が必要なのは高と中のみです。低は省略できます。
  • 各ファイルにステータスの接尾辞を付けます:(added)、(modified)、または (deleted)。git diff --name-status と一致させます。
  • **リスク段階は高い順に並べます。**高、中、低、スキップの順です。
  • 該当項目のない段階セクションは省略します。
  • すべてがひとつの段階に該当する場合は、その旨を記載し、すべてのファイルをレビューするよう伝えます:「この差分は小規模です — すべてのファイルをレビューしてください」。
  • **提案やアドバイスはしないでください。**これはトリアージマップであり、レビューではありません。「確認してください…」「検討してください…」「必ず…」などの表現は使わないでください。
  • 絵文字は、高リスクの見出しに付ける ⚠️ 以外は使用しないでください。
  • 最後に 1 行の要約を付けます:X groups, Y high-risk files to focus on

コメント