Merge Check
by @tag-assistant
Analyze a GitHub pull request for mergeability — predict whether it will get merged based on technical, architectural, process, social, and compliance factor...
clawhub install merge-check📖 About This Skill
name: merge-check description: Analyze a GitHub pull request for mergeability — predict whether it will get merged based on technical, architectural, process, social, and compliance factors. Use when asked to review a PR, check if a PR will be merged, assess PR quality, or predict PR acceptance. Works with any GitHub PR via
owner/repo#number or URL.
Merge Check
Predicts whether a GitHub PR will get merged by analyzing it against a comprehensive rejection vector taxonomy. Not a generic code quality tool — this answers: "Will this PR get merged by the maintainer?"
Quick Start
1. Run the data gathering script:
bash skills/merge-check/scripts/merge-check.sh owner/repo#123
# or
bash skills/merge-check/scripts/merge-check.sh https://github.com/owner/repo/pull/123
2. Parse the JSON output
3. Analyze against the dimensions below
4. Produce the mergeability reportAnalysis Dimensions
After gathering data, analyze across ALL of these dimensions. Load skills/merge-check/references/rejection-taxonomy.md for the detailed rejection vector framework.
1. Technical Signals (Automated Gates)
2. PR Hygiene
3. Architectural Fit
4. Review Status
5. Process Compliance
6. Social/Meta Signals
Output Format
Produce a structured report:
Mergeability Score
Report Sections
1. Mergeability Score: 🟢/🟡/🔴 with percentage estimate 2. Risk Factors: Bullet list of specific concerns, ordered by severity 3. Strengths: What's working in the PR's favor 4. Recommendations: Actionable steps to improve mergeability (if not already 🟢) 5. Verdict: One-sentence summaryExample Output
## PR Mergeability Report: owner/repo#123Score: 🟡 Medium (~55%)
Risk Factors
⚠️ 847 lines changed — approaching reviewer fatigue threshold
⚠️ Changes requested by @maintainer not yet addressed
⚠️ Touches 12 files across 6 directories — scattered scope
ℹ️ No linked issue Strengths
✅ All 14 CI checks passing
✅ Clear title and detailed description
✅ Author has 73% merge rate in this repo (8/11 recent PRs)
✅ Active discussion — last update 2 hours ago Recommendations
1. Address @maintainer's review comments before requesting re-review
2. Consider splitting into smaller PRs (config changes vs logic changes)
3. Link the relevant issue for traceabilityVerdict
Solid PR with passing CI and an active author, but stalled on unaddressed review feedback — resolving those comments is the critical path to merge.
Script Reference
The script (scripts/merge-check.sh) gathers all data via gh CLI and outputs a single JSON object with these keys:
| Key | Contents |
|-----|----------|
| pr | Full PR metadata (title, body, author, state, draft, labels, reviewers) |
| files | List of changed files with patch stats |
| diff_stats | Total additions, deletions, changed files count |
| checks | CI/check run results for the head commit |
| reviews | All reviews (approved, changes_requested, commented) |
| review_comments | Inline review comments |
| issue_comments | PR conversation comments |
| commits | Commit list with messages |
| repo | Repository metadata (language, size, defaults) |
| author_history | Author's recent closed PRs and merge rate |
| has_codeowners | Boolean |
| has_contributing | Boolean |
Error Handling
The script outputs "error" fields when individual API calls fail (e.g., rate limits, 404s). Analyze what's available and note any missing data in the report.
💡 Examples
1. Run the data gathering script:
bash skills/merge-check/scripts/merge-check.sh owner/repo#123
# or
bash skills/merge-check/scripts/merge-check.sh https://github.com/owner/repo/pull/123
2. Parse the JSON output
3. Analyze against the dimensions below
4. Produce the mergeability report