REVIEW.md
コードレビューでだけ意味を持つガイダンスは REVIEW.md に書きます。確認すべきこと、触れなくてよいこと、問題の深刻さなどです。Claude Code Review など他のコードレビューツールも同じファイルを読み込むため、今ある REVIEW.md をそのまま使えます。
書く内容
- すべてのプルリクエストで確認すべきこと。たとえば、データベースクエリの対象範囲の絞り方です。
- 触れなくてよいこと。たとえば、CI がすでに報告する問題です。除外は範囲を絞り、対象のパスを明記します。
- ある種類の問題がチームにとってどれだけ深刻か。HeyDeer の深刻度(緊急、高、中、低)で書きます。
REVIEW.md
# Review instructions
## Always check
- Database queries in src/api/ are scoped to the caller's
workspace.
- Log lines don't include email addresses or request bodies.
## Leave alone
- Formatting and lint issues. CI enforces them.
- Code in tests/fixtures/ that breaks production rules on purpose.
## Severity
- A migration that isn't backward compatible is High.
- Naming and refactoring suggestions are Low.コーディング規約は AGENTS.md に書くと、コーディングエージェントもそれに従います。該当するすべてのプルリクエストで HeyDeer に必ず検証させたい要件は、リポジトリのチェックに書きます。
ルートとサブディレクトリのファイル
REVIEW.md はリポジトリのルートに追加します。独自のガイダンスが必要なディレクトリには、src/payments/REVIEW.md のように専用のファイルを置けます。
REVIEW.md は、そのディレクトリ以下の変更に適用されます。深い階層のファイルは上位のファイルに内容を追加し、内容が矛盾する場合は深い階層のファイルが優先されます。
| 変更されたファイル | 適用されるファイル(適用順) |
|---|---|
src/api/invoices.ts | REVIEW.md |
src/payments/refund.ts | REVIEW.md, src/payments/REVIEW.md |
設定で決まること
REVIEW.md で変わるのは、HeyDeer が何に注目するかと問題の深刻さであり、報告方法ではありません。報告方法は設定で指定します:レビューの言語、フィードバックの範囲、自動承認。たとえば、深刻度「低」の指摘事項を減らすには、フィードバックの範囲で「簡潔」を選びます。
REVIEW.md はリポジトリのチェックには適用されません。該当するチェックは常に実行され、何が違反になるかはチェック自体だけが決めます。
自動生成ファイルをスキップするには、代わりに .gitattributes で指定します。そうすれば、これらのファイルはレビューの対象外になります。自動生成ファイルを参照してください。
REVIEW.md を編集するプルリクエスト
HeyDeer は REVIEW.md をプルリクエストから読み込むため、これを編集するプルリクエストは編集後のバージョンでレビューされ、HeyDeer が自動承認することはありません。プルリクエストで変更されてはならないガイダンスは、レビューへの指示に書いてください。
Claude Code Review から移行する場合
今ある REVIEW.md はそのまま使えます。ただし、次の違いがあります:
- HeyDeer は REVIEW.md をプルリクエストから読み込みますが、Claude Code Review はベースブランチから読み込みます。
- Important は深刻度「中」以上、Nit は「低」に相当します。
- Nit の数の上限は適用されません。代わりにフィードバックの範囲で「簡潔」を選びます。
- HeyDeer は
@review-security.mdのような取り込みを展開しません。取り込んでいたファイルのガイダンスは REVIEW.md に移してください。