Agent skill
create-pr
Create structured PR. Default: create new PR. Args: update (existing PR body). Trigger: 'PR 만들어줘', 'PR 생성', 'PR 올려', 'create PR', 'PR 업데이트', 'Human Test'. NOT for DA (use run-da). NOT for PR 코멘트 (use review-pr-feedback).
Stars
1
Forks
0
Install this agent skill to your Project
npx add-skill https://github.com/greenheadHQ/nixos-config/tree/main/modules/shared/programs/claude/files/skills/create-pr
SKILL.md
상세 PR 작성
$ARGUMENTS가 비어있으면 새 PR을 생성하고, update이면 기존 PR 본문을 업데이트한다.
빠른 참조
| 항목 | 위치 |
|---|---|
| 8섹션 PR 본문 템플릿 상세 | references/pr-template.md |
| Pre-Merge E2E 테스트 가이드 작성 규칙 | references/pre-merge-guide.md |
필수 8섹션 템플릿
PR 본문은 반드시 다음 8개 섹션을 포함한다.
| # | 섹션 | 역할 |
|---|---|---|
| 1 | Summary | 핵심 변경 1-3 bullet + Closes #N |
| 2 | 기존 문제/배경 | Pain point — 왜 이 변경이 필요한지 |
| 3 | CIR (Change Intent Record) | 발견 경위 + 설계 의도 + 대안 검토 이력 |
| 4 | ADR (Architecture Decision Record) | 대안 비교 테이블 (대안/설명/장점/단점/결정) |
| 5 | 구현 상세 | 변경 파일 테이블 + 핵심 코드 스니펫 |
| 6 | 참고 레퍼런스 | 관련 PR/이슈/외부 링크 (커밋 해시 포함) |
| 7 | Human Test Plan | 단계별 기대동작 + 실패 시 진단 가이드 |
| 8 | Pre-Merge E2E 테스트 가이드 | LLM이 직접 실행하는 자동 검증 절차 |
각 섹션의 작성 규칙, 예시, 흔한 실수는 references/pr-template.md 참조.
PR 전 결정
PR을 생성하기 전에, 작업 결과의 처리 방향을 결정한다:
| 선택지 | 조건 | 행동 |
|---|---|---|
| PR 생성 | 리뷰가 필요한 변경 | 이 스킬의 절차를 진행 |
| 직접 merge | 사용자가 명시적으로 승인한 단순 변경 | main에 현재 브랜치를 git merge 후 종료 |
| 보류 (keep) | 추가 작업이 필요하거나 다른 브랜치와 조율 필요 | 사용자에게 보고 후 종료 |
| 폐기 (discard) | 접근 방식이 잘못되었거나 불필요해짐 | 사용자 확인 후 브랜치 삭제 |
판단이 어려우면 PR 생성을 기본으로 선택한다.
절차
새 PR 생성 (기본)
$ARGUMENTS가 비어있거나 update가 아닌 경우 새 PR을 생성한다.
- 변경 분석:
git diff main...HEAD와 커밋 히스토리(git log main..HEAD --oneline)를 분석하여 변경 범위를 파악한다. - 연관 이슈 탐색: 커밋 메시지, 브랜치명, 변경 내용에서 이슈 번호를 추출한다. 관련 이슈가 있으면 Summary에
Closes #N을 포함한다. - CIR 수집: 코드 인라인 주석(
# CIR:,# === Change Intent Record ===)과 커밋 메시지에서 의사결정 이력을 추출한다. 현재 대화 컨텍스트에서도 방향 전환/대안 거부 이력을 수집한다. - ADR 테이블 구성: 검토한 대안들을 비교 테이블로 정리한다. 대안이 1개뿐이면 ADR 섹션을 간소화한다.
- 8섹션 템플릿 작성: references/pr-template.md의 템플릿에 따라 전체 PR 본문을 작성한다.
- Pre-Merge E2E 가이드 작성: references/pre-merge-guide.md의 규칙에 따라 Phase 기반 검증 가이드를 포함한다.
- PR 생성:
gh pr create --title "<제목>" --body "<본문>"으로 PR을 생성한다. 제목은 70자 미만, conventional commit 형식을 따른다.
기존 PR 업데이트 (update)
$ARGUMENTS가 update인 경우 기존 PR 본문을 보강한다.
- 현재 PR 확인:
gh pr view --json body,title,number로 현재 PR 본문을 가져온다. - 누락 섹션 탐지: 8섹션 중 빠진 섹션을 식별한다.
- 부실 섹션 강화: 있지만 내용이 부실한 섹션(예: Summary만 있고 CIR 없음)을 보강한다. 커밋 히스토리, 코드 변경, 대화 컨텍스트에서 추가 정보를 수집한다.
- 업데이트 적용:
gh pr edit <number> --body "<새 본문>"으로 PR 본문을 업데이트한다.
Pre-Merge E2E 테스트 가이드 작성 규칙
PR 본문의 8번째 섹션으로, LLM이 PR을 머지하기 전에 직접 실행할 수 있는 검증 절차를 기술한다.
핵심 구조:
- Phase 0 (정적 검증): 파일 존재 확인, 값 반영 확인, old 값 부재 확인을 grep/ls 등으로 수행한다.
- Phase 1-N (기능 검증): 기능별로 프롬프트 + 기대동작 + 실패 시 진단을 기술한다.
- Phase N+1 (Regression): 인접 기능이 깨지지 않았는지 의도적으로 혼동 가능한 쿼리로 검증한다.
상세 작성 규칙은 references/pre-merge-guide.md 참조.
주의사항
- ADR 테이블 표기: 채택한 대안은 ✅, 기각한 대안은 ❌로 표시한다.
- 참고 레퍼런스에 해시 필수: 관련 PR/커밋을 언급할 때 반드시 커밋 해시(단축 7자) + 1줄 설명을 포함한다. 해시 없는 "관련 PR 참조" 식의 모호한 레퍼런스는 금지한다.
- DA 피드백 분리: DA 피드백 루프 결과는 PR 본문이 아닌 별도 코멘트로 분리한다. PR 본문에는 최종 결론만 반영한다.
- CIR 없는 PR: 단순 변경(타이포 수정, 버전 업데이트 등)은 CIR/ADR 섹션을 "해당 없음 — 단순 변경"으로 간소화한다. 무리하게 의사결정 이력을 만들어내지 않는다.
- Codex 호환: 특정 도구명을 하드코딩하지 않는다. "gh pr create를 실행한다"가 아니라 "PR을 생성한다"처럼 행동 의도로 기술한다. 단, 참조/예시에서의 CLI 명령은 예외로 허용한다.
참조 자료
- references/pr-template.md — 8섹션 PR 본문 마크다운 템플릿 + 섹션별 작성 규칙/예시/흔한 실수
- references/pre-merge-guide.md — Pre-Merge E2E 테스트 가이드 작성 규칙 + Phase 구조 + 결과 보고 형식
Didn't find tool you were looking for?