mcpField
R
receiving-code-review

receiving-code-review

github.com/shipshitdevテスト・品質3858 回インストール今日更新
リポジトリ

receiving-code-review について

Receiving Code Reviewは、コードベースに照らしてレビュー意見を技術的に評価するスキルです。提案の検証や不明点の確認を行い、根拠のある返答と実施計画を整理します。

主な機能

  1. 01コードベースに基づく意見の検証
  2. 02確認が必要な点の特定
  3. 03技術的な妥当性とリスクの評価
  4. 04同意または根拠ある異議の準備
  5. 05変更とテストの順序付け

活用シーン

  1. 01編集前にレビュアーの提案を評価
  2. 02複数の指摘に含まれる曖昧さを確認
  3. 03技術的に不適切な提案への返答

インストール

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

$npx skills add https://github.com/shipshitdev/skills --skill receiving-code-review

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

同梱ファイルplugin.jsonREADME.md

詳細

コードレビューへの対応

基本原則

コードレビューでは、感情的な振る舞いではなく、技術的な評価が必要です。

実装する前に検証します。決めつける前に質問します。社交上の配慮より技術的な正しさを優先します。

契約

入力:

  • 受け取ったレビューのフィードバック(PR コメント、口頭でのレビュー内容)と、 そのフィードバックが対象とするコードベース。

出力:

  • 各指摘への技術的な認識表明、または根拠に基づく反論と、 評価を経て対応する変更のアクションプラン。

作成/変更:

  • 直接はありません。このスキルは応答を作成します。コードの編集は他の スキルを通じて行われます。

外部への副作用:

  • コードベースに照らして主張を検証するための、読み取り専用の git / gh の呼び出し。

確認の要否:

  • ありません。すべての出力は助言です。

委任先:

  • PR に応答を投稿する場合は pr-comments(address モード)。
  • 変更が反映された後に新たなレビューを行う場合は code-review。

応答パターン

WHEN receiving code review feedback:

1. READ: Complete feedback without reacting
2. UNDERSTAND: Restate the requirement in your own words (or ask)
3. VERIFY: Check against codebase reality
4. EVALUATE: Is this technically sound for THIS codebase?
5. RESPOND: Technical acknowledgment or reasoned pushback
6. IMPLEMENT: One item at a time, test each

禁止する応答

絶対に言わないこと:

  • 「おっしゃるとおりです!」
  • 「良い指摘です!」/「素晴らしいフィードバックです!」
  • 「すぐに実装します」(検証する前に)
  • 感謝を表す表現(「見つけてくれてありがとうございます!」、「[何か]をありがとうございます」など)

代わりに:

  • 技術的な要件を言い換える
  • 明確化のために質問する
  • 提案が誤っている場合は、技術的な根拠を示して反論する
  • そのまま作業を始める — 言葉より行動で示す

不明確なフィードバックへの対応

IF any item is unclear:
  STOP — do not implement anything yet
  ASK for clarification on all unclear items before proceeding

WHY: Items may be related. Partial understanding leads to wrong implementation.

例:

Reviewer: "Fix items 1-6"
You understand 1, 2, 3, 6. Unclear on 4, 5.

❌ WRONG: Implement 1, 2, 3, 6 now — ask about 4, 5 later
✅ RIGHT: "I understand items 1, 2, 3, 6. Need clarification on 4 and 5 before proceeding."

フィードバックの提供元に応じた評価

コードベースのオーナー/依頼者からの場合
  • 信頼できる — 理解したうえで実装する
  • 範囲が不明確な場合は、引き続き質問する
  • 同意をことさらに表明しない
  • すぐに対応するか、技術的な認識を示す
外部レビュアーからの場合
BEFORE implementing:
  1. Check: Is this technically correct for THIS codebase?
  2. Check: Would this break existing functionality?
  3. Check: Is there a reason the current implementation exists?
  4. Check: Does this work on all required platforms/versions?
  5. Check: Does the reviewer understand the full context?

IF the suggestion seems wrong:
  Push back with technical reasoning

IF you cannot easily verify:
  Say so: "I can't verify this without [X]. Should I [investigate / ask / proceed]?"

IF the suggestion conflicts with prior architectural decisions:
  Stop and surface the conflict before implementing

「適切に実装する」という提案に対する YAGNI の確認

IF a reviewer suggests adding or expanding a feature "properly":
  grep the codebase for actual usage

  IF unused: "This isn't called anywhere. Remove it (YAGNI)?"
  IF used: Then evaluate and implement properly

レビュアーは、どこからも呼び出されていないコードの改善を提案することがよくあります。範囲を広げる前に、使用状況を確認してください。

実装の順序

FOR multi-item feedback:
  1. Clarify anything unclear FIRST
  2. Then implement in this order:
     - Blocking issues (broken behaviour, security)
     - Simple fixes (typos, imports, naming)
     - Complex fixes (refactoring, logic changes)
  3. Test each fix individually
  4. Verify no regressions before moving to the next item

反論すべき場合

次のような場合は反論します:

  • 既存の機能を壊す
  • レビュアーが把握していない文脈を前提にしている
  • YAGNI に違反する(使われないコードを追加する)
  • この技術スタックでは技術的に誤っている
  • レガシー要件や互換性要件に反する
  • 確立されたアーキテクチャ上の決定に反する

反論の方法:

  • 防御的にならず、技術的な根拠を示す
  • 認識のずれを明らかにする具体的な質問をする
  • 既存のテストや動作しているコードを参照する
  • 意見の相違がアーキテクチャに関するものであれば、コードベースのオーナーにエスカレーションする
  • 反論しづらい場合は、その葛藤を明示し、具体的な問題を説明する

正しいフィードバックへの応答

フィードバックが正しい場合:

✅ "Fixed. [Brief description of what changed]"
✅ "Good catch — [specific issue]. Fixed in [location]."
✅ [Just fix it and let the diff speak]

❌ "You're absolutely right!"
❌ "Great point!"
❌ "Thanks for catching that!"
❌ Any gratitude expression

修正そのものが応答です。何を変更したかを述べ、次に進みます。

自分の反論が誤っていた場合の訂正

反論した内容が誤りだった場合:

✅ "You were right — I checked [X] and it does [Y]. Implementing now."
✅ "Verified this and you're correct. My initial understanding was wrong because [reason]. Fixing."

❌ Long apology
❌ Defending why you pushed back
❌ Over-explaining

事実に基づいて訂正し、次に進みます。

よくある間違い

間違い修正方法
同意をことさらに表明する要件を述べるか、そのまま対応する
むやみに実装するまずコードベースに照らして検証する
テストせずにまとめて実装する1 項目ずつ対応し、その都度テストする
レビュアーが正しいと決めつける提案によって問題が起きないか確認する
反論を避ける社交上の配慮より技術的な正しさを優先する
一部だけ実装する着手前にすべての項目を明確にする
検証できないのに進める制約を伝え、指示を求める

実例

同意をことさらに表明する例(悪い例):

Reviewer: "Remove the legacy code"
❌ "You're absolutely right! Let me remove that..."

技術的な検証の例(良い例):

Reviewer: "Remove the legacy code"
✅ "Checking... build target is 10.15+, this API requires 13+.
   Removing it drops pre-13 support. Is that intentional,
   or should I gate it behind a version check instead?"

YAGNI の確認例(良い例):

Reviewer: "Implement proper metrics tracking with database, date filters, CSV export"
✅ "Grepped the codebase — nothing calls this endpoint.
   Remove it (YAGNI)? Or is there usage I'm missing?"

不明確な項目の例(良い例):

Reviewer: "Fix items 1-6"
You understand 1, 2, 3, 6. Unclear on 4, 5.
✅ "Understand 1, 2, 3, 6. Need clarification on 4 and 5 before implementing."

GitHub PR コメントへの返信

GitHub のインラインレビューコメントに返信する場合は、PR 全体へのトップレベルコメントではなく、コメントのスレッド内で返信します:

gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies \
  -f body="[your response]"

レビュアーのフィードバックは、評価すべき提案であり、従うべき命令ではありません。検証し、疑問を投げかけ、その後で実装します。同意をことさらに表明しません。常に技術的な厳密さを保ちます。

コメント