08-wrap
SKILL.md
작업 마무리
개요
구현이 끝나면 깔끔하게 마무리하세요.
마무리 없이 끝내면:
- 변경사항이 흩어짐
- 다음에 어디까지 했는지 모름
- 불필요한 파일이 남음
- 배운 것이 사라짐
시작할 때 알림: "wrap 스킬을 사용하여 작업을 마무리하겠습니다."
┌──────────────────────────────────────────────────────────────────────┐
│ Wrap 워크플로우 (Enhanced) │
└──────────────────────────────────────────────────────────────────────┘
┌─────────────────┐
│ 구현 완료 │
└────────┬────────┘
│
▼
┌─────────────────┐
│ 1. 테스트 확인 │ npm test / pytest
└────────┬────────┘
│
┌─────┴─────┐
│ │
▼ ▼
┌──────┐ ┌──────┐
│ PASS │ │ FAIL │──▶ 테스트 먼저 수정!
└──┬───┘ └──────┘
│
▼
┌─────────────────┐
│ 2. 상태 확인 │ git status / branch
└────────┬────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 3. 세션 인사이트 추출 │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Phase 1: 병렬 분석 │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │
│ │ │ doc-updater │ │ automation- │ │ learning- │ │ │
│ │ │ │ │ scout │ │ extractor │ │ │
│ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │
│ │ │ │ │ │ │
│ │ └────────────────┼────────────────┘ │ │
│ │ ▼ │ │
│ │ Phase 2: 순차 검증 │ │
│ │ ┌────────────────────────────────┐ │ │
│ │ │ duplicate-checker │ │ │
│ │ └────────────────┬───────────────┘ │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌────────────────────────────────┐ │ │
│ │ │ followup-suggester │ │ │
│ │ └────────────────────────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
└────────────────────────┬────────────────────────────────────────┘
│
▼
┌─────────────────┐
│ 4. 옵션 선택 │
└────────┬────────┘
│
┌────────┼────────┬────────┐
│ │ │ │
▼ ▼ ▼ ▼
┌────┐ ┌────┐ ┌────┐ ┌────┐
│ 1 │ │ 2 │ │ 3 │ │ 4 │
│로컬│ │ PR │ │유지│ │삭제│
│머지│ │생성│ │ │ │ │
└─┬──┘ └─┬──┘ └─┬──┘ └─┬──┘
│ │ │ │
▼ ▼ │ ▼
┌─────┐ ┌─────┐ │ ┌─────┐
│main │ │push │ │ │확인 │
│머지 │ │+PR │ │ │후 │
│ │ │ │ │ │삭제 │
└──┬──┘ └──┬──┘ │ └──┬──┘
│ │ │ │
└───────┴──────┴───────┘
│
▼
┌─────────────────┐
│ 5. Worktree │ (사용했다면)
│ 정리 │
└────────┬────────┘
│
▼
┌─────────────────┐
│ 완료! 🎉 │
└─────────────────┘
═══════════════════════════════════════════════════════════════════
옵션 1: 로컬 머지 → merge + branch 삭제 + worktree 정리
옵션 2: PR 생성 → push + gh pr create + worktree 정리
옵션 3: 유지 → 그대로 (나중에 처리)
옵션 4: 삭제 → 확인 후 강제 삭제
═══════════════════════════════════════════════════════════════════
전문 에이전트 (2-Phase Pipeline)
세션 인사이트 추출을 위해 5개의 전문 에이전트가 협력합니다.
Phase 1: 병렬 분석 (동시 실행)
| 에이전트 | 역할 | 모델 |
|---|---|---|
| doc-updater | CLAUDE.md, context.md, decision-record 업데이트 분석 | sonnet |
| automation-scout | 반복 작업을 skill/command/agent로 자동화할 기회 탐지 | sonnet |
| learning-extractor | 세션에서 배운 것, 실수, 새 발견 추출 | sonnet |
Phase 2: 순차 검증
| 에이전트 | 역할 | 모델 |
|---|---|---|
| duplicate-checker | Phase 1 제안의 중복 여부 검증 | haiku |
| followup-suggester | 미완성 작업, 개선 포인트, 다음 세션 작업 정리 | opus |
에이전트 실행 방법
# Phase 1: 병렬 실행 (Task tool로 동시 호출)
Task(subagent_type="general-purpose", prompt="doc-updater 에이전트 실행...")
Task(subagent_type="general-purpose", prompt="automation-scout 에이전트 실행...")
Task(subagent_type="general-purpose", prompt="learning-extractor 에이전트 실행...")
# Phase 2: Phase 1 결과를 입력으로 순차 실행
Task(subagent_type="general-purpose", prompt="duplicate-checker: Phase 1 결과 검증...")
Task(subagent_type="general-purpose", prompt="followup-suggester: 후속 작업 정리...")
에이전트 상세
각 에이전트의 상세 프롬프트는 references/ 폴더에 있습니다:
references/
├── automation-scout.md # 자동화 기회 탐지
├── doc-updater.md # 문서 업데이트 분석
├── duplicate-checker.md # 중복 검증 (Phase 2)
├── followup-suggester.md # 후속 작업 제안
└── learning-extractor.md # 학습 포인트 추출
절차
1단계: 테스트 확인
마무리 전에 테스트가 통과해야 합니다.
# 프로젝트에 맞는 테스트 명령어
npm test
# 또는
pytest
# 또는
go test ./...
테스트 실패 시:
테스트 실패:
- 실패: 2개
- 통과: 45개
[실패 내용 표시]
테스트를 먼저 수정해야 합니다. 마무리를 진행할 수 없습니다.
테스트 통과 시: 2단계로 진행
2단계: 현재 상태 확인
# 어떤 브랜치에 있는지
git branch --show-current
# 변경사항 확인
git status --short
# worktree인지 확인
git worktree list
3단계: 옵션 선택
사용자에게 4가지 옵션을 제시합니다:
작업이 완료되었습니다. 어떻게 마무리할까요?
1. 로컬에서 main에 머지
2. PR 생성
3. 브랜치 유지 (나중에 처리)
4. 작업 취소 (삭제)
어떤 옵션을 선택하시겠습니까?
4단계: 선택에 따른 실행
옵션 1: 로컬 머지
# 메인 브랜치로 이동
git checkout main
# 최신 상태로 업데이트
git pull
# 기능 브랜치 머지
git merge feature/my-feature
# 테스트 재확인
npm test
# 브랜치 삭제
git branch -d feature/my-feature
옵션 2: PR 생성
# 원격에 푸시
git push -u origin feature/my-feature
# PR 생성
gh pr create --title "기능 제목" --body "$(cat <<'EOF'
## 요약
- 변경 내용 1
- 변경 내용 2
## 테스트
- [ ] 확인 사항 1
- [ ] 확인 사항 2
EOF
)"
PR URL을 사용자에게 알려줍니다.
옵션 3: 브랜치 유지
브랜치 feature/my-feature를 유지합니다.
다음에 이어서 작업하거나 마무리할 수 있습니다.
워크트리도 그대로 유지합니다.
옵션 4: 작업 취소
확인을 받습니다:
정말로 삭제하시겠습니까?
삭제될 항목:
- 브랜치: feature/my-feature
- 커밋: abc1234, def5678
- 워크트리: .worktrees/my-feature (있는 경우)
'삭제'를 입력하면 실행됩니다.
확인 후:
git checkout main
git branch -D feature/my-feature
5단계: Worktree 정리
옵션 1, 2, 4를 선택한 경우 worktree 정리:
# worktree 목록 확인
git worktree list
# 해당 worktree가 있으면 삭제
git worktree remove .worktrees/my-feature
옵션 3을 선택한 경우 worktree 유지.
마무리 체크리스트
- 테스트 통과 확인
- 적절한 마무리 옵션 선택
- 커밋 메시지 명확
- PR 설명 (옵션 2의 경우)
- worktree 정리 (해당되는 경우)
옵션별 요약
| 옵션 | 머지 | 푸시 | 브랜치 삭제 | Worktree 정리 |
|---|---|---|---|---|
| 1. 로컬 머지 | O | - | O | O |
| 2. PR 생성 | - | O | - | O |
| 3. 유지 | - | - | - | - |
| 4. 삭제 | - | - | O (강제) | O |
주의사항
- 테스트 실패 상태로 머지하지 마세요
- 삭제는 되돌릴 수 없습니다 - 반드시 확인
- PR은 리뷰 후 머지하세요
예시 흐름
사용자: /wrap
Claude: wrap 스킬을 사용하여 작업을 마무리하겠습니다.
[테스트 실행]
npm test
결과: 12개 통과, 0개 실패 ✅
[상태 확인]
브랜치: feature/login
변경사항: 5개 파일, 커밋 3개
[옵션 제시]
작업이 완료되었습니다. 어떻게 마무리할까요?
1. 로컬에서 main에 머지
2. PR 생성
3. 브랜치 유지
4. 작업 취소
사용자: 2
Claude: PR을 생성합니다.
[푸시]
git push -u origin feature/login
[PR 생성]
gh pr create --title "로그인 기능 추가" --body "..."
PR이 생성되었습니다: https://github.com/...
[Worktree 정리]
.worktrees/login 삭제 완료
마무리가 완료되었습니다!
Weekly Installs
50
Repository
team-attention/…-upstageGitHub Stars
3
First Seen
Feb 25, 2026
Security Audits
Installed on
claude-code48
opencode5
gemini-cli5
github-copilot5
codex5
amp5