About merge-pr-check
A skill for reviewing Gitee pull requests against merge criteria and preparing a recommendation before merging. It checks PR status, review feedback, and changed files, and requires explicit user confirmation before executing a merge.
Key features
- 01Check PR status and branches
- 02Review comments and unresolved discussions
- 03Inspect changed files against PR scope
- 04Generate a merge assessment
- 05Merge only after confirmation
Use cases
- 01Assessing whether a Gitee PR is ready to merge
- 02Finding unresolved review feedback
- 03Merging an approved PR after confirmation
MCP support
Uses the Gitee MCP Server tools get_pull_detail, list_comments, get_diff_files, and merge_pull to inspect and merge pull requests.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ oschina/ gitee-agent-skills --skill merge-pr-checkAfter installing, type/merge-pr-checkin Claude Code to confirm it loaded.
Details
From the project READMENote: If you have
mcporterinstalled locally, you should usemcporterto invoke the MCP tool instead of directly calling the MCP tool. ThemcporterCLI provides a more convenient interface and better error handling.
Merge PR Check via Gitee MCP
Check whether a Pull Request meets the criteria for merging, then execute the merge after confirmation.
Prerequisites
- Gitee MCP Server configured (tools:
get_pull_detail,list_comments(resource_type: pull),get_diff_files,merge_pull) - User must provide: repository owner, repository name, PR number
Steps
Step 1: Fetch PR Status
Use get_pull_detail to retrieve PR details and check:
Basic status
- Whether the PR is open (stop if already closed/merged)
- Whether it is a Draft — if so, inform the user it must be converted to a regular PR first
- Whether source and target branches are correct
Pre-merge checklist
- Whether the PR has a description explaining the purpose of the changes
- Whether a reviewer has been assigned
Step 2: Analyze Comments and Review Feedback
Use list_comments (resource_type: pull) to retrieve all comments and check:
- Whether any reviewer has explicitly objected to merging (e.g., "NACK", "needs changes", "do not merge")
- Whether there are unresolved discussions (questions raised but not replied to)
- Whether there are any LGTM or Approved responses
Step 3: Quick Diff Check
Use get_diff_files to inspect changed files:
- Whether there are obvious omissions (e.g., code changed but related config not updated)
- Whether unexpected files are included (debug code, temp files)
- Whether the scope of changes matches the PR description
Step 4: Provide Merge Recommendation
Based on the checks above, output a merge assessment report:
## PR Merge Check Report
**PR**: #[number] [title]
**Status**: [Open/Draft/Closed]
### Checklist
✅ PR is in Open state
✅ Has a change description
⚠️ No reviewer approval yet
✅ Diff scope is reasonable
### Conclusion
[Ready to merge / Recommend waiting for review / Not recommended to merge]
Reason: [Specific explanation]
Step 5: Execute Merge (requires user confirmation)
If the checks pass, ask the user to confirm the merge.
After confirmation, use merge_pull with these parameters:
merge_method: merge strategy —merge(creates a merge commit),squash(squashes commits), orrebase- Default recommendation:
merge; suggestsquashif the PR has many messy commits
- Default recommendation:
commit_message: merge commit message (optional, defaults to PR title)
After a successful merge, output the result and ask whether the user wants to delete the source branch.
Notes
- Merging is irreversible — always wait for explicit user confirmation before proceeding
- If there are conflicts, the Gitee API will return an error — prompt the user to resolve conflicts first
- It is recommended to confirm that CI has passed before merging (check the PR's status checks)