Agent Skillspostmelee/alhangeul-macos › pr-merge-cleanup

pr-merge-cleanup

GitHub

在PR合并后,执行清理流程:关闭关联Issue、更新基础分支、删除远程publish和本地task分支及worktree。需严格验证合并状态,谨慎处理本地独有提交,确保环境整洁。

mydocs/skills/pr-merge-cleanup/SKILL.md postmelee/alhangeul-macos

Trigger Scenarios

用户明确指示进行“merge后整理”或“任务清理” 直接调用本Skill

Install

npx skills add postmelee/alhangeul-macos --skill pr-merge-cleanup -g -y
More Options

Non-standard path

npx skills add https://github.com/postmelee/alhangeul-macos/tree/main/mydocs/skills/pr-merge-cleanup -g -y

Use without installing

npx skills use postmelee/alhangeul-macos@pr-merge-cleanup

指定 Agent (Claude Code)

npx skills add postmelee/alhangeul-macos --skill pr-merge-cleanup -a claude-code -g -y

安装 repo 全部 skill

npx skills add postmelee/alhangeul-macos --all -g -y

预览 repo 内 skill

npx skills add postmelee/alhangeul-macos --list

SKILL.md

Frontmatter
{
    "name": "pr-merge-cleanup",
    "description": "PR merge 확인 후 부산물을 정리하는 절차를 적용한다. 명시 호출 시에만 사용한다.\nGitHub 이슈 close, publish\/task{N} 원격 브랜치 삭제,\n로컬 local\/task{N} 브랜치와 분리 worktree 정리, 대상 통합 브랜치 복귀를 수행한다.\n외부 PR 운영 기록 커밋이 대상 통합 브랜치에 로컬로만 남아 있으면 직접 push 여부를 확인한다.\nPR이 실제로 merge된 직후에만 호출.\n",
    "allow_implicit_invocation": false
}

PR merge 후 부산물 정리

트리거

  • 명시 호출만: 작업지시자가 "merge 후 정리", "타스크 정리"를 명시 지시한 경우
  • 본 SKILL을 직접 호출한 경우

사전 조건

  • 대상 PR이 GitHub에서 실제 merged 상태 (gh pr view {번호} --json state,mergeCommit)
  • 작업지시자의 이슈 close 승인 (또는 PR 본문에 closes #N 명시되어 자동 close된 상태)

절차

  1. PR과 이슈 상태 확인
    gh pr view {번호} --json state,mergedAt,mergeCommit,headRefName
    gh issue view {N} --json state
    
    • PR state == MERGED 아니면 즉시 중단하고 작업지시자 보고
  2. 이슈 close (자동 close 안 된 경우만)
    gh issue close {N}
    
  3. 대상 통합 브랜치 최신화
    git fetch origin --prune
    BASE_BRANCH=$(gh pr view {번호} --json baseRefName --jq .baseRefName)
    git checkout "$BASE_BRANCH"
    git pull --ff-only
    
    • git pull --ff-only가 실패하면 git status --short --branchgit log --oneline origin/$BASE_BRANCH..$BASE_BRANCH를 확인한다.
    • local-only 커밋이 외부 PR 운영 기록(PR #N 검토, PR #N 완료 처리)이고 변경 파일이 mydocs/pr/**에만 있으면, 작업지시자 승인 후 git rebase origin/$BASE_BRANCH로 최신화하고 git push origin "$BASE_BRANCH"로 직접 반영한다.
    • Skill, 매뉴얼, 코드, 빌드 설정, 앱 동작 변경이 섞여 있으면 직접 push하지 말고 별도 Issue/브랜치/PR 절차로 분리한다.
    • local-only 커밋 성격이 불명확하면 reset/rebase/force push를 하지 말고 작업지시자에게 보고한다.
  4. 원격 publish 브랜치 삭제 (이미 PR merge 시 --delete-branch로 삭제된 경우 skip)
    git push origin --delete publish/task{N} 2>&1 || echo "이미 삭제됨"
    
  5. 분리 worktree 사용했다면 제거
    git worktree remove ../{repo}-task{N}
    git worktree prune
    
  6. 로컬 작업 브랜치 삭제 (재사용 가능성 없을 때만)
    git branch -d local/task{N}
    # 강제 삭제는 작업지시자 명시 승인 후에만: git branch -D local/task{N}
    
  7. 오늘할일 최종 정리: mydocs/orders/{yyyymmdd}.md의 #{N} 행이 완료 + 시각 기록되어 있는지 재확인
  8. 결과 보고: 정리된 항목 목록을 작업지시자에게 짧게 회신

검증

  • gh pr view {번호} state == MERGED 확인
  • git branch -vv | grep local/task{N} 출력 없음 (삭제된 경우)
  • git ls-remote origin publish/task{N} 빈 출력 (원격 삭제 확인)
  • git worktree list 출력에 정리 대상 worktree 미존재
  • git branch --show-current가 대상 PR의 baseRefName
  • 외부 PR 운영 기록을 직접 반영했다면 git status --short --branch에 대상 branch의 local-only ahead가 남지 않음

절대 하지 말 것

  • PR이 merged 상태가 아닌데 이슈 close
  • 작업지시자 다른 task 브랜치(local/task{다른번호})나 메인 worktree 삭제
  • git branch -D 강제 삭제 무단 사용 (병합 안 된 커밋이 있을 때 손실 위험)
  • 외부 PR 운영 기록이 아닌 local-only 커밋을 cleanup 과정에서 직접 push
  • non-fast-forward 상태에서 강제 push
  • 다른 작업자의 stash 삭제

호출 방법

  • Codex: $pr-merge-cleanup 또는 /skills 메뉴
  • Claude Code: /pr-merge-cleanup

Version History

  • 5dac67c Current 2026-07-06 00:02

Same Skill Collection

mydocs/skills/external-pr-complete/SKILL.md
mydocs/skills/external-pr-review/SKILL.md
mydocs/skills/task-final-report/SKILL.md
mydocs/skills/task-register/SKILL.md
mydocs/skills/task-stage-report/SKILL.md
mydocs/skills/task-start/SKILL.md

Metadata

Files
0
Version
5dac67c
Hash
60f1e68f
Indexed
2026-07-06 00:02

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-09 04:38
浙ICP备14020137号-1 $Гость$