AgentSkillsCN

review-mr

对 GitLab MR 进行代码评审,并通过草稿备注(Review Mode)提交评论。该流程由用户通过 GUI 进行确认与最终定稿。

SKILL.md
--- frontmatter
name: review-mr
description: GitLab MR のコードレビューを実施し、ドラフトノート(Review Mode)でコメントを投稿する。ユーザーが GUI で確認・確定する運用。
argument-hint: "<MR番号> [--issue <Issue番号>]"

GitLab MR コードレビュー

GitLab Merge Request のコードレビューを行い、レビューコメントをドラフトノートとして投稿するスキルです。 GitLab API の操作詳細(ドラフトノートの投稿方法、ページネーション等)は gitlab-api スキルを参照すること。

引数

$ARGUMENTS

  • MR 番号は必須(例: 4720
  • --issue で関連 Issue 番号を指定可能。省略時は MR の説明文から自動検出を試みる

レビュー手順

1. 情報収集

以下を並列で取得する:

  • MR の詳細情報(glab mr view
  • MR の差分(glab mr diff
  • MR のコミット一覧(MCP get_merge_request_commits または glab api
  • MR のディスカッション・コメント(glab api でページネーション付き取得)
  • 関連 Issue(番号が判明している場合)

MR の説明文やコミットメッセージから Issue 番号(#1234 形式)が見つかった場合、自動的に Issue を取得する。

既存コメント・ディスカッションの活用

MR には他のレビュアーや自動化ツール(PR-Agent 等)が既にコメントを残している場合がある。 これらの内容をレビュー前に把握し、以下のように活用する:

  • PR-Agent のレビューコメント: 指摘内容を確認し、自身のレビューで重複を避ける。PR-Agent が見落としている観点に注力する
  • 他のレビュアーのコメント: 未解決のディスカッションがあれば、その論点を踏まえてレビューする
  • MR 説明文の変更: PR-Agent 等が説明文を書き換えている場合、最新の説明文をベースにレビューする

既存コメントへの返信

既存のディスカッションに対して、以下の場合はドラフトノートで返信する(in_reply_to_discussion_id を使用。詳細は gitlab-api スキル参照):

  • 指摘が対応済みの場合: コード変更で解決済みであることを根拠とともに返信する
  • 質問や確認事項がある場合: 指摘内容に対する疑問点や、追加の文脈が必要な場合に返信する
  • 同意する場合: 指摘が妥当で未対応であれば、自身のレビューコメントとしても補強する

返信不要なケース: 既に Resolve 済みのディスカッション、単なる情報提供コメント、bot の自動生成サマリーなど

2. レビュー観点

以下の観点を すべて 確認し、レビューコメントに含める:

2-1. Issue との整合性

  • Issue に記載された 背景・対応方針・仕様 と、コードの変更に齟齬がないこと
  • Issue の記載が 必要十分 であること:
    • 今回の対応スコープが正確に明記されているか
    • 変更・新規策定した仕様が明記されているか
    • 不足があればレビューコメントで Issue への追記を依頼する

2-2. コード品質

  • ロジックの正しさ、エッジケースの考慮
  • 既存パターンとの一貫性
  • セキュリティ上の懸念(OWASP Top 10 等)
  • 不要なコードや過剰な変更が含まれていないこと

2-3. テスト観点

  • 変更後の 確認観点(テスト観点) が MR または Issue に明記されていること
  • テスト実行結果 が明記されていること
  • 確認範囲が適切であること(変更影響の考慮漏れがないか)
  • Claude Code では実行が難しいテスト(E2E、VRT、手動確認等)がある場合、その旨をユーザーに伝え対応を依頼する

3. レビューコメントの作成

レビュー結果をユーザーに提示し、コメント投稿の確認を取る。

コメントの原則

  • コード修正が必要な場合は、修正案(コード例)を必ず記載する
  • コメントの重要度を明示する:
    • [must] — マージ前に対応が必要
    • [should] — 対応を推奨(次回以降でも可)
    • [nits] — 軽微な指摘・提案
    • [question] — 確認・質問
    • [praise] — 良い実装への賞賛

4. ドラフトノートの投稿

ドラフトノートで投稿する(投稿方法は gitlab-api スキルを参照)。

  • レビューコメントの投稿前に、必ずユーザーにコメント内容を提示し、投稿の承認を得ること
  • コメントは日本語で記述する
  • MR の差分に含まれないファイルについてのコメントは一般コメントとして投稿する

5. 投稿後の案内

ドラフトノート投稿後、以下をユーザーに案内する:

  1. GitLab の MR ページで 「Review」 タブからドラフトコメントを確認できること
  2. 内容を確認・編集した上で 「Submit review」 で確定すること
  3. 必要に応じてコメントの削除・修正が可能であること