Automated PR processing and merging powered by AI agents. Loop over open PRs across all your repos and let an agent resolve conflicts, address reviews, fix failing CI, and merge — from one live dashboard.
Docs: https://jrepp.github.io/merge-god/ · In-repo docs: docs/ · Agent guide: AGENTS.md
Review backlogs, trivial conflicts, and flaky CI drain velocity. merge-god offloads the mechanical work of landing PRs to an agent. You steer it with GitHub labels; the agent does the rest. A single TUI dashboard watches every configured repository at once.
- Continuous PR loop — iterates open PRs in order, syncing with
origin/mainfirst. - Deep context — feeds the agent full PR metadata, comments, reviews, diffs, conflict detection, and CI status.
- Label-driven —
for-landingto merge,for-reviewfor a quality second pass,for-implon issues to implement them as PRs. No label = skipped. - Multi-repo dashboard — live, color-coded status for every repo, with non-TUI fallback for CI.
- Observable — JSON event logging and optional real-time notifications.
See How it works for the gather -> prompt -> act pipeline.
# Prerequisites: Node.js 22+, gh, and `pi` on PATH
npx merge-god@latest init
npx merge-god@latest doctor
npx merge-god@latest dashboarddoctor accepts existing GitHub auth from GITHUB_TOKEN, GH_TOKEN, or
gh auth token; run gh auth login only if no token is available.
For local development from source:
git clone https://github.com/jrepp/merge-god.git
cd merge-god
npm install
npm run dashboardThen label a PR for-landing or for-review on GitHub and watch it land.
Full setup: Installation · Quickstart
Labels are how you tell merge-god what to do.
| Label | On | Effect |
|---|---|---|
for-landing |
PR | Resolve conflicts -> address reviews -> fix CI -> merge. |
for-review |
PR | Everything above, plus a second quality/security review pass. |
duplicate |
PR | Hold processing while merge-god duplicates proves whether the patch is already represented. |
for-impl |
Issue | Implement the issue as a PR (requires watch_issues: true). |
| (none) | PR | Skipped. Drafts and WIP PRs are always excluded. |
See Usage and Configuration.
The website renders the canonical public docs in docs/. Read them on the
website or directly in the repo:
- Getting started — Introduction, Installation, Quickstart
- Guides — Configuration, Usage, How it works
- Reference — Prompt example, Architecture decisions, uv guide
- Project — Development, Testing, Agent testing
Design and governance docs live in docs-cms/: PRDs, ADRs, RFCs, and technical memos.
Other root files: CHANGELOG.md · PRD.md · archive/ (historical review notes).
Node.js 22+, gh, and
pi on your PATH
(driven through the bundled merge-god pi extension + coordination API).
Optional: doormat for AWS credentials. Details in Installation.
The core runtime is TypeScript/ESM (Node.js, no native build step — SQLite via the built-in
node:sqlite). GitHub integration lives in the dedicated@merge-god/github-syncworkspace package (packages/github-sync/) — a multi-forge (GitHub / Gitea / Codeberg / GitLab) async sync library.
PRs welcome. Install hooks with pre-commit install, then emulate CI locally
with just ci (or npm run ci, which runs tsc --noEmit and the node:test suite).
See Development and Testing.