Communityライティング&編集github.com

mr-feedback

GitLab マージリクエストのレビュー準備状態を評価し、フィードバックレポートをマークダウンファイルに出力するスキルです。

mr-feedback とは?

このスキルは、GitLab のマージリクエスト (MR) を取得し、そのレビュー準備状態を評価して、MR ノートに直接コピーできるマークダウンレポートを生成します。レビュアーが効率的にレビューを開始できるよう、MR にコンテキスト、スコープの明確さ、テスト手順、レビュアー向けガイダンスが十分に含まれているかを判断します。コードそのもののレビューは行わず、あくまで「レビューのしやすさ」に焦点を当てます。設定は reference/preferences.md に集約されており、出力言語、トーン、使用するツールなどを管理できます。Claude Code、Copilot、Cursor、OpenCode など複数の AI エージェントプラットフォームで動作し、Microsoft Waza を使用した自動 LLM 評価ハーネスと読み取り専用のモック MCP サーバーを備えています。

対応✓Claude Code~Codex CLI✓Cursor✓OpenCode
npx skills add ayrtonvwf/skills

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

mr-feedback は何をしますか?

GitLab マージリクエストを取得し、レビュー準備状態を評価して、MR ノートにそのままコピーできるマークダウンファイルにフィードバックレポートを出力します。

やるべきこと

レビュー準備状態を判断します。MR に、レビュアーが効率的にレビューを開始できるために必要なコンテキスト、スコープの明確さ、テスト手順、レビュアー向けガイダンスが含まれているかを確認します。

なぜ必要か

適切に準備された MR は、作成者の配慮を示し、より迅速かつ質の高いレビューにつながります。レポートは、優れた MR を適切に評価し、改善が必要な MR には具体的で励みになる改善ステップを提示します。

やってはいけないこと

コードそのものをレビューしたり批評したりせず、コードやロジックの変更を提案しないでください

設定

他の操作を行う前に、このスキルファイルからの相対パスである reference/preferences.md を読んでください。ここには、出力言語、トーン、取得方法、使用可能なツール、出力パスなど、すべての設定可能な動作の信頼できる情報源が含まれています。この SKILL.md ではそれらの値を再記載していません。常に設定ファイルから読み取ってください。

優先順位(高い順):

  1. ユーザーの現在のリクエストにおける明示的な指示(例:「今回はポルトガル語で書いてください」)
  2. reference/preferences.md
  3. このスキル内の指示

入力

ユーザーは以下のいずれかを提供します:

  • MR の完全な URL: https://gitlab.com/<group>/<subgroup>/<project>/-/merge_requests/<iid>
  • プロジェクトパス + MR iid: group/subgroup/project + 42

URL から以下を解析します:

  • project_id = ホストと /-/merge_requests/ の間のパス(ツールを呼び出す際は group%2Fsubgroup%2Fproject のように URL エンコード)
  • mergeRequestIid = /-/merge_requests/ の後の数字

どちらかが欠けているか曖昧な場合は、取得する前に確認してください。

ワークフロー

reference/preferences.md で宣言されたメソッドとツールを使用します。以下のステップは どの情報を収集し、なぜ収集するか を示しており、どのツールを呼び出すかは示していません。設定から適切なツールを選択してください。

  1. MR メタデータ - タイトル、説明、作成者、状態、ソース/ターゲットブランチ、ドラフトフラグ、ラベル、マイルストーン、承認、マージステータス
  2. 変更ファイル一覧 - パスと追加/削除数。すべての差分を取得せずにスコープとサイズを把握できます。
  3. 説明と実際の内容が一致しているか確認するためのサンプル差分 - 3〜5 ファイルずつバッチで取得します。スコープとテストが変更されたかどうかを確認するためだけに使用し、コードを批評するためではありません。ロックファイル、生成ファイル、純粋なリネームはスキップします。MR が巨大な場合はサンプリングします。
  4. コミット - MR メタデータ(ステップ 1)に含まれるコミットサマリーを使用して、整理状況/アトミック性のシグナル(コミット数 / 追加サマリー)を確認します。
  5. CI ステータス - MR の最新パイプライン状態(成功/失敗/なし)
  6. 評価 - reference/rubric.md のルーブリックに従って評価します。
  7. レポートの作成 - 新しいファイルに reference/report-template.md を使用してレポートを出力します(出力セクションを参照)。
  8. ユーザーにファイルパスを伝え、コピー&ペーストする前にトーンや長さを調整するオプションを提供します。

採点の前に reference/rubric.md を、作成の前に reference/report-template.md を読んでください。データを捏造しないでください。カテゴリに対して何も取得できなかった場合(例:パイプラインがない)、推測せずに「利用不可」と記載してください。

各ルーブリックカテゴリには、理由が付随し、なぜそれが作成者にとって重要なのかを説明しています。改善点を報告する際は、常にその理由がなぜ重要なのかを作成者向けに含めてください。フィードバックは各要求の背後にある目的を説明し、単なる要求に留めないようにします。

カテゴリの理由をそのままコピーしないでください。 理由はカテゴリ全体をカバーする背景情報です。見つけた正確な問題に合わせて書き直してください。問題がある特定の点だけを参照し、問題がない側面については言及しないでください。たとえば、ブランチが master より遅れているがパイプラインがグリーンの場合、なぜ master より遅れていることが問題なのかを説明します。パイプラインは成功しているので言及しないでください。「なぜ重要なのか」は、この MR 固有のギャップに対して真実でなければならず、カテゴリに関する一般的な説明であってはなりません。

出力

reference/preferences.md で宣言された出力パスに書き込みます。プレースホルダを解決し、必要なフォルダを作成します。

ガードレール

  • 読み取り専用。 このスキルは MR にノートを投稿したり、承認したり、変更を加えたりしません。ローカルのマークダウンファイルにのみ書き込みます。ユーザーがそれをペーストするかどうかを決定します。
  • 差分に表示される可能性のあるシークレットやトークンをレポートに含めないでください。
  • MR がドラフトであるか、まだ差分がない場合でも、評価とレポート生成は可能ですが、その旨を明示的に記載してください。

関連スキル