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
GitHub Stars
3
First Seen
Feb 25, 2026
Installed on
claude-code48
opencode5
gemini-cli5
github-copilot5
codex5
amp5