ワンクリックで
git-merge-pr
After owner accept: guard-checked squash-merge of the current branch's PR, base sync and branch cleanup
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
After owner accept: guard-checked squash-merge of the current branch's PR, base sync and branch cleanup
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Verify, review, and push pending work as one milestone commit
Drive the current branch's PR to merge-ready: CI green and every review comment handled, ending with an outcome label
Open a pull request for the current branch against its target, using the repo template
Triage PR review comments: fix, discuss, or decline with reason - every thread answered
Cut a release: version, changelog, tag, and release object — policy-driven across trunk/gitflow and tag-only/full
Audit documentation claims against the code; report drift vs violation
| name | git-merge-pr |
| description | After owner accept: guard-checked squash-merge of the current branch's PR, base sync and branch cleanup |
| argument-hint | [pr number] |
Take an accepted, merge-ready PR across the finish line. Deliberately non-diagnostic: it fixes nothing - if any guard fails it STOPS and names the companion skill. Fail-fast applies to every step: an error, an unexpected state, or gh opening an interactive prompt means stop, surface the exact output, act no further.
git branch --show-current - never a protected branch.git status --short prints nothing - never merge with uncommitted local work.git rev-parse HEAD equals git rev-parse @{u} - the reviewed commit must equal local HEAD; unpushed work goes through git-commit-push first.gh pr list --head <branch> --state open --json number,headRefName --jq '.[0]'. An explicit pr-number argument must have headRefName == <current branch> - otherwise refuse: never merge a PR that is not the current branch's.git-finalize-pr) - red or pending: hand off to git-finalize-pr.reviewThreads.isResolved) - unresolved: hand off to git-review-pr-comments.gh pr view <pr> --json mergeable,mergeStateStatus,reviewDecision - CONFLICTING: git-resolve-conflicts; BLOCKED / BEHIND: report and stop.merge_method (default squash): gh pr merge <pr> --squash (or --merge / --rebase). Delete the remote branch per profile delete_remote_branch (default: keep - do not pass --delete-branch).gh pr view <pr> --json state,mergedAt,mergeCommit - state != "MERGED" means STOP. Record the merge commit SHA.git switch <base> && git pull --ff-only && git fetch --prune. Confirm the merge commit is on the base before any local deletion.delete_local_branch (default: true), only after steps 2-3 confirmed the merge. The authoritative "merged" signal is the confirmed PR state == MERGED, not git ancestry: a squash or rebase merge rewrites the commits, so the feature branch is NOT an ancestor of the base and git branch -d refuses with "not fully merged". Use -d after a merge-method merge; use -D after squash / rebase - safe precisely because the merge was confirmed first.post_merge is set, run it now (e.g. regenerate committed generated outputs so the base is not left stale) - on failure STOP and report; never leave the base half-updated.spec-close. Projects without the spec pack skip this step.MERGED; the base contains the merge commit; local branch gone; clean tree on the base.git-finalize-pr; conflicts - git-resolve-conflicts; cutting a release - git-create-release.gh result.