MergeChain

Chrome extension for GitHub pull requests

Stop merging pull requests out of order.

MergeChain adds merge dependencies to GitHub PRs. Say a PR is blocked by another, and its merge button stays disabled until the prerequisite lands. Works great with humans and AI coding agents (Claude, Cursor, Copilot, Grok…). Get it from the Chrome Web Store or download the ZIP directly.

Add to Chrome View source Free • No separate account required • Open source

Chrome Web Store · Download ZIP · GitHub + AI Skill

PR #143
DEP RAIL
BLOCKED
MERGE GATE
github.com/acme/api/pull/143
PR Dependencies Blocked Ready
Blocked by 1 pull request that must merge first
acme/db#128 Add migration for order tables

What it does

Order enforced where it matters: the merge button.

Blocks the merge

While any dependency (direct or indirect) is unmerged, the merge button turns red and reads “Waiting on deps.” The tooltip names the blocker.

Cross-repo & transitive

Chain A → B → C, fan in from many PRs, share a common prerequisite. Dependencies can point across repositories, and cycles are detected.

No backend

Dependencies live inside the PR body, readable with or without the extension. Your token stays in your browser and talks only to api.github.com.

How it works

Three steps. No separate accounts, no servers.

Declare the dependency

On any PR, add another as Blocked by, in the same repo (#128) or another (acme/db#128).

It’s saved in the PR

Stored as a hidden note in the PR description, so the relationship travels with the PR and survives without the extension.

Merge waits its turn

The button stays blocked until every prerequisite is merged. See the chain as a list or a graph.

Install

Get it running in a minute.

  1. Add to Chrome (recommended — direct from the Chrome Web Store)
  2. Download ZIP from GitHub Releases → extract → Load unpacked (Developer mode). Same build attached to every release. Great for sideloading or air-gapped use.
  3. Or build from source (see README on GitHub).
  4. Open the extension’s Options and sign in with GitHub (device flow or fine-grained PAT with PR read/write).

For AI Agents & Coding Assistants

Easy integration for Claude, Cursor, Copilot, Grok & more

Let your agent automatically declare merge dependencies when creating stacked PRs. The skill writes the exact same marker as the browser extension so humans see it too. Works with Claude, Cursor, Copilot, Grok and more. Copy the prompt below or grab the full skill from GitHub.

1. Universal prompt — paste into any agent
You have the MergeChain PR dependency skill.

After you create a PR (especially stacked ones), run:
node skills/mergechain-deps/mc-deps.mjs auto <pr-number>

Other commands:
- node skills/mergechain-deps/mc-deps.mjs show <pr>
- node skills/mergechain-deps/mc-deps.mjs add <pr> <dep>
- node skills/mergechain-deps/mc-deps.mjs rm <pr> <dep>

Always report the exact output. Full guide: skills/mergechain-deps/SKILL.md
Claude Code
  • Copy skills/mergechain-deps/ into your project
  • Place SKILL.md at .claude/skills/mergechain-deps/SKILL.md
  • Or paste the Universal prompt above
Cursor
  • Use skills/mergechain-deps/adapters/cursor/
  • Add to .cursor/rules/ or project rules
  • Paste the Universal prompt
GitHub Copilot
  • .github/prompts/mergechain-deps.prompt.md is included
  • Copilot picks it up automatically
  • Or paste the Universal prompt in custom instructions
Grok, Windsurf, Kiro, Codex
  • Paste the Universal prompt into context or rules
  • Use the matching adapter in skills/mergechain-deps/adapters/
  • Ensure gh + Node are available to the agent

Full details + adapters for Claude, Cursor, Copilot, Grok and more: skills/mergechain-deps on GitHub

Works great with: Claude Code • Cursor • GitHub Copilot • Grok • Windsurf • Kiro and any agent that can run shell commands.

What it looks like after an agent declares a dependency
Blocked PR after agent declares dep
Merge button blocked (agent used auto)
Transitive chain view
Transitive chain visible to the whole team