Why Use This This skill provides specialized capabilities for aiskillstore's codebase.
Use Cases Developing new features in the aiskillstore repository Refactoring existing code to follow aiskillstore standards Understanding and working with aiskillstore's codebase structure
Install Guide 2 steps 1 2 Install inside Ananke
Click Install Skill, paste the link below, then press Install.
https://github.com/aiskillstore/marketplace/tree/main/skills/bae-changhyun/github-pr-merge Skill Snapshot Auto scan of skill assets. Informational only.
Valid SKILL.md Checks against SKILL.md specification
Source & Community
Updated At Jan 19, 2026, 04:39 AM
Skill Stats
SKILL.md 185 Lines
Total Files 1
Total Size 0 B
License NOASSERTION
---
name: github-pr-merge
description: MUST use this skill when user asks to merge PR, close PR, finalize PR, or mentions "PR 머지/병합". This skill OVERRIDES default PR merge behavior. Runs pre-merge validation (tests, lint, CI, comments), confirms with user, merges with proper format, handles post-merge cleanup.
---
# GitHub PR Merge
Merges Pull Requests after validating pre-merge checklist and handling post-merge cleanup.
## Quick Start
```bash
# 1. Get PR info
PR=$(gh pr view --json number -q '.number')
REPO=$(gh repo view --json nameWithOwner -q '.nameWithOwner')
# 2. Run pre-merge checklist
make test && make lint && gh pr checks $PR
# 3. Verify all comments replied
gh api repos/$REPO/pulls/$PR/comments --jq '[.[] | select(.in_reply_to_id == null)] | length'
# 4. Merge with concise message
gh pr merge $PR --merge --delete-branch --body "- Change 1
- Change 2
Reviews: N/N addressed
Tests: X passed"
# 5. Post-merge cleanup
git checkout develop && git pull && git branch -d feature/<name>
```
## Pre-Merge Checklist
**ALWAYS verify before merging:**
| Check | Command | Required |
|-------|---------|----------|
| Tests passing | `make test` | Yes |
| Linting passing | `make lint` | Yes |
| CI checks green | `gh pr checks $PR` | Yes |
| All comments replied | See workflow | Yes |
| No unresolved threads | Review PR page | Yes |
## Core Workflow
### 1. Identify PR
```bash
PR=$(gh pr view --json number -q '.number')
REPO=$(gh repo view --json nameWithOwner -q '.nameWithOwner')
echo "PR #$PR in $REPO"
```
### 2. Check Comments Status
```bash
# Count original comments (not replies)
ORIGINALS=$(gh api repos/$REPO/pulls/$PR/comments --jq '[.[] | select(.in_reply_to_id == null)] | length')
# Count comments that have at least one reply
REPLIED=$(gh api repos/$REPO/pulls/$PR/comments --jq '
[.[] | select(.in_reply_to_id)] | [.[].in_reply_to_id] | unique | length
')
echo "Original comments: $ORIGINALS, With replies: $REPLIED"
```
**If unreplied comments exist:**
- DO NOT reply from this skill
- STOP the merge process
- Inform user: "Found unreplied comments. Run pr-review first."
### 3. Run Validation
```bash
# Run tests
make test
# Run linting
make lint
# Check CI status
gh pr checks $PR
```
**All checks MUST pass before proceeding.**
### 4. Show PR Summary
```bash
gh pr view $PR --json title,body,commits,changedFiles --jq '
"Title: \(.title)\nCommits: \(.commits | length)\nFiles: \(.changedFiles)"
'
```
### 5. Confirm with User
**ALWAYS ask before merging:**
```
Pre-merge checklist verified:
- Tests: passing
- Lint: passing
- CI: green
- Comments: all replied
Ready to merge PR #X. Proceed?
```
### 6. Execute Merge
```bash
gh pr merge $PR --merge --delete-branch --body "$(cat <<'EOF'
- Key change 1
- Key change 2
- Key change 3
Reviews: N/N addressed
Tests: X passed
Refs: Task N
EOF
)"
```
**Note**: `--delete-branch` automatically deletes the remote branch after merge.
### 7. Post-Merge Cleanup
```bash
git checkout develop
git pull origin develop
git branch -d feature/<branch-name> # local cleanup
```
## Merge Message Format
**Concise format** (recommended):
```
- Key change 1 (what was added/fixed)
- Key change 2
- Key change 3
Reviews: 7/7 addressed
Tests: 628 passed (88% cov)
Refs: Task 8
```
**Guidelines**:
- 3-5 bullet points max for changes
- One line for reviews summary
- One line for test results
- One line for task references
- Total: ~10 lines max
## Important Rules
- **ALWAYS** run full pre-merge checklist before merging
- **ALWAYS** verify all review comments have replies
- **ALWAYS** confirm with user before executing merge
- **ALWAYS** use merge commit (--merge), never squash/rebase
- **ALWAYS** delete feature branch after successful merge
- **NEVER** merge with failing tests or lint
- **NEVER** merge with unresolved CI checks
- **NEVER** skip user confirmation
- **NEVER** reply to PR comments from this skill - use pr-review instead
- **STOP** merge if unreplied comments exist
## Error Handling
| Issue | Action |
|-------|--------|
| Tests failing | Stop and inform user |
| Lint errors | Stop and inform user |
| CI checks pending | Wait or inform user |
| Unreplied comments | Direct to pr-review skill |
| Branch protection | Inform of required approvals |
## Related Skills
- **pr-review** - For resolving review comments before merge
- **pr-create** - For creating PRs
- **git-commit** - For commit message format