なぜこう書くのか
一人で書いたコードをプッシュする前に、チェックしてくれる相手がいないときに役立つコードレビュープロンプトです。単に「レビューして」と頼むと、変数名からインデントまで20個以上の指摘がフラットに並び、どれが本当に危険なのか判断できず、結局何も直せないまま画面を閉じることになります。
役割を「修正箇所を的確に指摘するシニアエンジニア」と固定しているのは、指定しないとAIが儀礼的な褒め言葉から始めてしまうからです。文脈の「リポジトリにプッシュする前」は品質の基準線を定めます。練習用コードと他人が読む実務コードでは、見るべきポイントが異なります。
タスクで重要度を3段階に限定した点がこのプロンプトの核心です。優先順位がないと、SQLインジェクションと空行1行が同じ重みで並んでしまいます。形式の4列表と「今すぐ修正すべき3点」は、読んですぐに手が動くようにするための設計です。コードの改善点探しは、単にリストをもらうことではなく優先順位を決める作業です。
制約の「最大8個」と「スタイルの指摘除外」でノイズを抑えます。最後の文は回答前のセルフチェックを促し、このコードでは発生しない幻覚の問題を指摘するリスクを減らします。コードを """ で囲むのは、コメント内の文がAIへの指示として誤認されるのを防ぐためです。
レビューの観点を変数に切り出したのも同じ理由です。一度にセキュリティ・パフォーマンス・可読性をすべて見させようとすると、どれも浅くなってしまいます。今一番気になる点を1つ選び、必要に応じて複数回実行する方が良い結果を得られます。実務のコードを貼り付ける際は、社内URLやAPIキーなどの機密情報が含まれていないか事前に確認してください。
用語が分からなければAha AIで: role-prompting, prompt
悪い例との比較
このコードレビューして
(コード貼り付け)
「よく書けていますね」という挨拶とともに、指摘が順不同で大量に出てきます。命名規則の提案と例外処理の漏れが同列に並ぶため、どれがリリースを阻む致命的な問題かが分からず、言語や観点を指定していないため現場で使わない文法ルールまで指摘されます。修正コードも提示されないため、指摘を読んだ後に自力で解決策を探す手間が生じます。
バリエーション
デプロイ前にセキュリティのみ素早く確認したいとき
あなたは{{言語}}アプリケーションのセキュリティ監査を担当するエンジニアです。以下のコードから、実際に攻撃に悪用される可能性のある脆弱性のみを抽出してください。項目ごとに「どんな攻撃が可能か・どの箇所が原因か・修正後のコード」の順で記載し、可能性の低い理論上のリスクは除外してください。確証がない場合は断定せず「要確認」として残してください。
""" {{コード}} """
観点をセキュリティ1点に絞り、「実際に攻撃に悪用される可能性のある」という基準を設けました。この一文がないと、教科書的なリスクの羅列になってしまいます。
指摘を受けて1箇所ずつ確実に直したいとき
以下の{{言語}}コードにおいて、{{レビューの観点}}に関する最も深刻な問題を1つだけ選び、その部分のみを修正したコードを提示してください。修正前と修正後を並べて表示し、この修正によって挙動が変わる部分があれば教えてください。他の指摘は一切しないでください。
""" {{コード}} """
1回に1箇所ずつ集中して修正したいときに使います。「他の指摘は一切しないでください」がないと、ついでに関係ない部分まで書き換えられ、何が原因で挙動が変わったのか追跡しにくくなります。
モデル別の注意
関数単位ではなくファイル全体を丸ごと入力すると、指摘の精度が浅くなります。200行を超える場合はファイルを分割し、2〜3回に分けてレビューを依頼してください。
関連プロンプト
最終更新 2026-09-02 · 誤りがありますか? 知らせる