Getting started
Install the GitHub App, sign into the panel, and pick one of two ways to get AI review: your own provider key on the hosted service, or the open-source runner on your machine. With neither, you still get a rules-only review.
1. Install the GitHub App
Install the MergeJudge GitHub App on your account or organization and pick the repositories. See the hosted service for what the App can do. The open-source runner also works today; with device login it needs Device Flow enabled on the App, or an enrollment code from the MergeJudge panel.
2. Open the panel and sign in
Open the manager panel and sign in with GitHub. You see only installations you administer.
3. Choose how AI review runs
Pick one:
a) Your own provider key (hosted). Save a provider key in the panel (stored encrypted, shown as name + last 4 only), then set provider.type and provider.model in .mergejudge.yml on your default branch:
provider:
type: anthropic # anthropic | openai | zai | openai-compatible | workers-ai
model: claude-sonnet-5-5 # example; use whatever your provider offersSee LLM providers. The diff and context review modes run on our hosted service, which calls your provider with your key. (Deep mode with a hosted code index is not offered; a runner can do deep.) Your code is processed briefly to run the review and not kept.
b) The runner, on your machine. Open Runners in the panel and create an enrollment code, then run the open-source runner (source, npm) with your own Claude Code, Codex or GLM login. In deep-local mode it reads your local clone.
Every other key in .mergejudge.yml is optional. It is read from the base branch, so a PR cannot change its own rules. See the config reference.
With neither a key nor a runner, every PR still gets a rules-only review, with this note:
Rules-only review: no AI provider is set up for this repo. To add AI review, save your provider key in the MergeJudge panel and set provider.type and provider.model in .mergejudge.yml, or connect a runner.
4. Open a PR
You get:
- one sticky comment (edited in place) with lanes, reasons, rubric results and a split suggestion;
- a
mergejudge/lanecheck run:success= auto,neutral= review,failure= block; - line comments on the exact diff lines for model and rubric findings.
Make mergejudge/lane a required check in branch protection if you want block to stop merges.