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.
View on GitHubplugins/gitwf/skills/github-pr-merge/SKILL.md
February 4, 2026
Select agents to install to:
npx add-skill https://github.com/Bae-ChangHyun/cc-plugins-bch/blob/main/plugins/gitwf/skills/github-pr-merge/SKILL.md -a claude-code --skill github-pr-mergeInstallation paths:
.claude/skills/github-pr-merge/# 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 ```ba