CodeRabbit logoCodeRabbit logo
特徴エンタープライズカスタマー料金表ブログ
リソース
  • ドキュメント
  • トラストセンター
  • お問い合わせ
  • FAQ
ログイン無料試用を開始
CodeRabbit logoCodeRabbit logo

プロダクト

プルリクエストレビューIDE レビューCLI レビュー

ナビゲーション

私たちについて特徴FAQシステムステータス採用データ保護附属書スタートアッププログラム脆弱性開示

リソース

ブログドキュメント変更履歴利用事例トラストセンターブランドガイドライン

問い合わせ

サポートセールス料金表パートナーシップ

By signing up you agree to our Terms of Use and Privacy Policy

discord iconx iconlinkedin iconrss icon
footer-logo shape
利用規約プライバシーポリシー

CodeRabbit Inc © 2026

CodeRabbit logoCodeRabbit logo

プロダクト

プルリクエストレビューIDE レビューCLI レビュー

ナビゲーション

私たちについて特徴FAQシステムステータス採用データ保護附属書スタートアッププログラム脆弱性開示

リソース

ブログドキュメント変更履歴利用事例トラストセンターブランドガイドライン

問い合わせ

サポートセールス料金表パートナーシップ

By signing up you agree to our Terms of Use and Privacy Policy

discord iconx iconlinkedin iconrss icon

Pre-Merge Checks:組み込み・カスタムPRルールの自動適用

by
Atsushi Nakatsugawa

Atsushi Nakatsugawa

March 13, 2026

|

1 min read

March 13, 2026

1 min read

  • Pre-Merge Checksとは
  • 組み込みチェック
  • カスタムチェック
  • 柔軟な設定
  • 手動コントロール
  • なぜこれが重要か
  • Pre-Merge Checksを始める
Back to blog
Cover image

共有

https://victorious-bubble-f69a016683.media.strapiapp.com/X_721afca608.pnghttps://victorious-bubble-f69a016683.media.strapiapp.com/Linked_In_a3d8c65f20.pnghttps://victorious-bubble-f69a016683.media.strapiapp.com/Reddit_feecae8a6d.png

他の記事を読む

Copilotから次世代エージェントまで ― AIコーディングの歴史を振り返る

Copilotから次世代エージェントまで ― AIコーディングの歴史を振り返る

From Copilot to agents: The history of AI codingの意訳です。 AIコーディングエージェントの歴史は、誰もそれをエージェントと本格的に呼ぶ前から始まっています。2017年、論文「Attention Is All You Need」がTransformerアーキテクチャを発表し、現代の大規模言語モデルを実現可能にしました。 2020年には、CodeBER

CodeRabbit Planの紹介:良い計画で高速な開発、そして少ない手戻りを実現

CodeRabbit Planの紹介:良い計画で高速な開発、そして少ない手戻りを実現

Meet CodeRabbit Plan: Better plans. Faster deployments.の意訳です。 課題 コーディングエージェントを使用するチームには、明確で具体的かつコンテキストを意識したプロンプトが必要です。その課題を解決するため、私たちはCodeRabbit Planを構築しました。CodeRabbit Planはアイデア、チケット、またはテキストプロンプトのいずれか

コード関連タスクにおけるGemini 3.1 Pro:より集中的で、高いS/N比

コード関連タスクにおけるGemini 3.1 Pro:より集中的で、高いS/N比

Gemini 3.1 Pro for code-related tasksの意訳です。 実際のところ、開発者はプルリクエストに残されたコメントを通じてAIコードレビューを体験します。つまり、実際の問題をどのくらいの頻度で見つけるか、どのくらいノイズを発生させるか、そしてそのフィードバックがどの程度実行可能かです。 これらの質問に答えるため、GoogleのGemini 3.1 Proと、CodeRa

開発者がコードを読まなくなった後に、唯一読み続けるもの

開発者がコードを読まなくなった後に、唯一読み続けるもの

What devs will still read when they stop reading codeの意訳です。 コードは決して「読まれるため」に存在していたわけではありません。私たちには単に他に選択肢がなかっただけです。 現実世界の例を考えてみましょう。本番環境の決済サービスには、多層的なリトライロジック、冪等性キー、サーキットブレーカー、フィーチャーフラグ、そしてミドルウェアを通じて織り

Pre-Merge Checks: Built-in & custom PR rules enforcedの意訳です。

すべての開発チームは独自のPR基準を持っているでしょう。たとえば、その基準には「Docstringsの記述」「関連するIssueの参照」「機密情報をログに記録しない」などの要件が含まれることがよくあります。

こうした基準を定義することは簡単です。しかし、PRの数が増えるにつれて、それらを一貫して実施することは容易ではありません。

管理者やチームリーダーであれば、チームメンバーがチェックリストを覚えているときだけでなく、毎回PRをマージする前にベストプラクティスに従うことを望むでしょう。開発者であれば、何か失敗があれば即座に知り、迅速に修正してマージできるようにしたいはずです。

Pre-Merge Checksは、「完了の定義」を実施可能にします。CodeRabbitは、組み込みの検証と自然言語で記述されたカスタムルールを使用して、すべてのプルリクエストを自動的に評価します。基本的な期待事項はすぐに利用でき、チーム固有のガードレールは誰も覚えていなくても、すべてのPRで実行されます。

Pre-Merge Checksは、単にガイドラインを持つのと、実際にそれを実施することの間のギャップを埋めます。

Pre-Merge Checksとは

Pre-Merge Checksは、プルリクエストが開かれたり更新されたりするたびに、自動的に評価を実行します。レビュアーがすべてのポリシーを頭の中で追跡することに頼るのではなく、CodeRabbitが構造化されたチェックを実行し、何が合格し、何が失敗し、何に注意が必要かを報告します。

https://youtu.be/knoETRikfwg

チェックは、警告モードまたはエラーモードで実行できます。ガードレールをマージブロッカーに変えて開発者を遅らせる前に、段階的に導入できます。

組み込みチェック

Pre-Merge Checksには、ほとんどのチームがすでに期待している一般的なPR要件に対する組み込み検証が含まれています。

  • Docstringsのカバレッジ閾値:新規または変更されたコードに対して、設定可能な閾値(デフォルトは80%)に対する最小ドキュメントカバレッジを適用します

  • PRタイトルの検証:命令形の動詞、文字数制限、または特定のフォーマット規約を要求します

  • PR説明の検証:ロールアウトノートや破壊的変更などの必須セクションが存在することを確認します

  • リンクされた課題の検証:PRが承認された課題またはチケットを参照していることを確認します

  • 課題との整合性評価:変更がリンクされた課題の範囲を超えている場合にフラグを立てます

これらのチェックにより、反復的なレビューコメントが削除され、コントリビューター全体で基準が一貫して保たれます。追加のツールや手動でのポリシー適用は必要ありません。

カスタムチェック

すべてのチームには、一般的なLinterには表示されないルールがあります。カスタムチェックを使用すると、自然言語でこれらの要件を定義し、自動的に実施できます。

例:

  • ログ内の機密データ:ログステートメントにパスワード、APIキー、トークン、社会保障番号、支払いデータが含まれている可能性がある場合、PRを失敗させます。

  • ハードコードされた認証情報:非テストファイルで、*SECRET、KEY、または*_PASSWORDのような実際のキーや変数を検出します。

  • データベースマイグレーションの保護:up()とdown()の両方のメソッドを要求し、ロールバックロジックなしの破壊的変更にフラグを立てます。

  • 破壊的変更のドキュメント化:公開API、CLI、環境変数、またはスキーマの変更がPRでドキュメント化され、CHANGELOG.mdに反映されていることを確認します。

  • 言語移行ポリシー:新しいファイルをブロックしながら既存のファイルの編集は許可することで、レガシー言語を段階的に廃止します。

ルールを一度定義すれば、CodeRabbitはすべてのプルリクエストでそれを評価します。これは、脆弱なCIスクリプトや正規表現のハックなしで、自動化されたガバナンスを実現します。カスタムチェックの効果的な指示の書き方の詳細については、ドキュメントをご覧ください。

柔軟な設定

Pre-Merge ChecksはCodeRabbitのWebインターフェイスで設定するか、.coderabbit.yamlファイルを使用してリポジトリにコミットできます。

つまり、PRポリシーはコードと一緒に存在し、コードとともに進化します。

例:

reviews:
  pre_merge_checks:
    docstrings:
      mode: "error"
      threshold: 85
    title:
      mode: "warning"
      requirements: "命令形の動詞で始め、50文字以内に収めること"
    description:
      mode: "error"
    issue_assessment:
      mode: "warning"
  custom_checks:
    - name: "文書化されていない互換性のない変更"
      mode: "warning"
      instructions: "公開APIに対するすべての互換性のない変更は、プルリクエストとCHANGELOG.mdに文書化されなければなりません"

まず新しいガードレールを警告状態で導入し、チームが調整できるようにします。ルールが洗練され、チームの準備が整ったら、エラー状態に移行します。ガードレールは、突然実装されるのではなく、チームのプロセスとともに自然に進化すべきです。

手動コントロール

プルリクエスト内でチェックを直接トリガーすることもできます。

設定されたすべてのチェックを実行:

@coderabbitai run pre-merge checks

保存する前にカスタムルールをテスト:

@coderabbitai evaluate custom pre-merge check --name <check_name> --instructions <text> --mode <error|warning>

必要に応じて失敗をオーバーライド:

@coderabbitai ignore pre-merge checks

なぜこれが重要か

自動適用がない場合:

  • レビュアーは予測可能な要件を再確認するのに時間を費やします

  • チーム間で基準が乱れます

  • 保護機能は記憶に依存します

  • 高シグナルのレビュー時間が衛生管理に浪費されます

Pre-Merge Checksを使用すると:

  • 基準がすべてのPRに一貫して適用されます

  • リスクのあるパターンが自動的にフラグされます

  • 破壊的変更がマージ前にドキュメント化されます

  • レビュアーはアーキテクチャ、トレードオフ、エッジケースに集中できます

Pre-Merge Checksは、コードがマージされる前に「このPRは基準を満たしているだろうか?」という質問に答えます。

満たしていない場合は、明確なフィードバックが得られます。満たしている場合は、自信を持ってマージできます。これにより、非公式なガイドラインが、組み込みでカスタマイズ可能、かつ完全に実施可能な自動ガードレールに変わります。

Pre-Merge Checksを始める

CodeRabbitでPre-Merge Checksを有効にし、Docstirngs、破壊的変更、マイグレーションの安全性、タイトル規約など、チームがすでに気にかけている1つのルールから始めてください。

警告モードで実行し、何がフラグされるかを確認してください。準備ができたら、実施に移行します。

基準を書くことは簡単です。実施こそが行動を変えるのです。

次のプルリクエストでCodeRabbitを試して、何が検出されるか確認してください。Pre-Merge ChecksはProプランユーザーが利用でき、組織ごとに最大5つのカスタムチェックを設定できます。