マージのたびにループを閉じる:レビューしたエージェントが次の作業まで引き継ぐ

by
Sahana Vijaya Prasad

Sahana Vijaya Prasad

July 16, 2026

4 min read

Cover image

プルリクエストをマージした後にも、チームにはやるべきことが残る場合があります。変更履歴の記載、適切なドキュメントの更新、元の変更には含めるべきでなかった作業のフォローアップチケット作成などです。マージ後になると、その判断の背景を再現しにくくなることがあります。

リンクされたチケットを閉じる、バージョンを更新する、通知を送るといった作業は機械的に処理できます。一方で、変更履歴に残すべきか、周知すべきか、追跡すべきかは、プルリクエストで何が変わったかを理解して初めて判断できます。

Post-Merge Actionsは、そのコンテキストをCodeRabbitエージェントに渡します。デフォルトブランチへのプルリクエストがマージされた後に実行され、変更後の作業まで引き継ぎます。

マージ後に起こること

Post-Merge Actionsは、CodeRabbitがプルリクエストのレビュー中に評価するカスタム自動化です。マージ前には、有効なすべてのアクションがCodeRabbitのウォークスルーにチェックボックスとして表示されます。該当するアクションにはチェックが入り、該当しない、または該当するか判断できないアクションは未選択のままです。作成者とレビュアーは、マージ前にアクションをオプトアウトすることもできます。

プルリクエストがマージされると、CodeRabbitはチェックされたアクションを実行し、そのプルリクエストに1つの結果コメントを投稿します。コメントには、各アクションの結果と後続出力の詳細が記録されます。

Post-Merge Actionsのワークフロー:プルリクエストをレビューし、有効なアクションをチェックボックスで確認してマージすると、各アクションの結果を含むコメントが届きます。

Post-Merge Actionsは、Pre-Merge Checksのマージ後版です。Pre-Merge Checksは変更が入る前に要件を評価し、Post-Merge Actionsは同じプルリクエストのコンテキストを使って、マージ後のフォローアップを進めます。管理者は組織またはリポジトリ単位でアクションを設定できます。

アクションでできること

各アクションは、適用するかどうかと実行内容をプロンプトで決めます。出力には3つの形式があります。

  • コードの変更: CodeRabbitがファイルを編集または作成し、デフォルトブランチに対するフォローアップのプルリクエストを開きます。たとえば、ユーザー向けの変更後にCHANGELOG.mdのUnreleasedセクションへ項目を追加できます。
  • テキストレポート: CodeRabbitが、マージ済みプルリクエストの結果コメントに自由形式の要約を書き込みます。
  • 連携アクション: CodeRabbitが接続済みのMCPツールを使い、チケットの作成、Issueの起票、通知の投稿など、適切なシステムで後続作業を実行します。

コード変更アクションによって作成されたフォローアッププルリクエストは、マージされても別のPost-Merge Actionsの実行を開始しません。これにより、ワークフローを確認可能に保ち、意図しない再帰を防ぎます。

プルリクエストでの動作

このワークフローは、すでにエンジニアリング作業が行われている場所から始まります。CodeRabbitはプルリクエストをレビューし、その変更に関連するアクションをウォークスルーに表示します。たとえば、新しい公開機能ではドキュメントアクションが選択されるかもしれませんが、内部リファクタリングでは未選択のままです。リリース通知は、プロダクト領域のファイルが変更された場合にのみ選択されることがあります。

この判断は、作成者とレビュアーが完全なコンテキストをまだ確認できるマージ前に行われます。アクションを選択したままにする、選択を外す、チャットコマンドで特定のアクションをスキップする、といった操作が可能です。その結果、すべてのマージ済みプルリクエストで動くバックグラウンドジョブではなく、レビューからフォローアップへの意図的な引き渡しが実現します。

アクションを設定する

Post-Merge Actionsは、組織またはリポジトリレベルのCodeRabbit設定で構成するか、.coderabbit.yamlでバージョン管理できます。各アクションには、名前、有効状態、自然言語のプロンプトがあります。

プロンプトは運用ポリシーです。何を調べるか、何を変更または作成するか、何もしないのはいつかを記述します。具体的な指示ほど、アクションは有用になり、ノイズは減ります。

reviews:
  post_merge_actions:
    - name: "Update changelog"
      enabled: true
      prompt: "If this PR contains user-facing changes, append a concise entry
        to CHANGELOG.md under the Unreleased section. Skip internal refactors,
        tests, and CI-only changes."

チケット作成アクションでは、未完了の作業と見なす条件を指定します。ドキュメントアクションでは、確認するファイルと更新候補のセクションを明記します。変更が後続作業を必要としない場合にエージェントが無理に実行しないよう、明確なno-op条件も追加してください。

完全な設定リファレンスでは、YAMLとダッシュボードでの設定、アクション数の上限、レビュー担当者がプルリクエストのアクションをスキップするコマンドを確認できます。

作業が別の場所にあるときは接続済みツールを使う

結果をリポジトリの外へ届ける必要がある場合、Post-Merge Actionsは接続済みのMCPサーバーを利用できます。たとえば、記録されたフォローアップのためのLinearまたはJiraチケットの作成、GitHub Issueの起票、Slackへのリリース通知の投稿などです。該当するサーバーをCodeRabbitで設定し、必要なツールを有効にしておく必要があります。

MCP連携では、接続された各システムに何が含まれているか、エージェントがそれをどう使うべきかについても、CodeRabbitにガイダンスを与えられます。プロジェクトトラッカーやナレッジベースに、アクションに必要な情報よりはるかに多くの情報が含まれる場合、このコンテキストは重要です。

プルリクエストのコンテキストが必要な作業から始める

次に何をするべきかが、変更そのものに依存する場合にPost-Merge Actionsは最も役立ちます。

  • このユーザー向け変更は変更履歴に載せるべきか。
  • このAPIまたはワークフローで更新すべきドキュメントのセクションはどれか。
  • プルリクエストに、チケットにすべき十分に記述されたフォローアップが残っているか。

プルリクエストのコンテキストを必要としない機械的なトリガーには、既存のCIまたはWebhook自動化を検討してください。Post-Merge Actionsは、チームがマージ後に失いがちなレビューコンテキストに依存するフォローアップに使います。

Post-Merge ActionsはCodeRabbit Pro+およびEnterpriseプランで利用できます。

Post-Merge Actionsのドキュメントを読む →