- 작업 마무리
- 개요
- 구현이 끝나면 깔끔하게 마무리하세요.
- 마무리 없이 끝내면:
- 변경사항이 흩어짐
- 다음에 어디까지 했는지 모름
- 불필요한 파일이 남음
- 배운 것이 사라짐
- 시작할 때 알림
- "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 삭제 완료 마무리가 완료되었습니다!