UseCase 초안(draft) 파일을 프로젝트의 메인 설계서에 병합한다. 메인 문서가 없으면 새로 생성하고, 있으면 기존 내용에 신규 초안을 통합한다. ID 재정렬, 도메인 모델 통합, 상태 모델 통합, 목차 갱신 등을 자동으로 수행한다. 병합 결과 리포트를 마크다운 파일에 기록한다. '병합', '머지', 'merge', '통합', '메인 문서에 추가', '초안 반영' 등의 요청에 사용한다.
How this skill is triggered — by the user, by Claude, or both
Slash command
/usecase-driven-design:uc-mergeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
하나 이상의 UseCase 초안(draft) 파일을 **메인 통합 설계서**에 병합한다.
하나 이상의 UseCase 초안(draft) 파일을 메인 통합 설계서에 병합한다. 메인 문서가 없으면 새로 생성하고, 있으면 기존 내용에 초안을 합산한다. ID 정리, 도메인 모델 통합, 상태 모델 통합, 중복 제거, Mermaid 다이어그램 재생성을 수행한다.
이 스킬은 클로드 코드 환경에서 사용한다. 병합 결과는 파일에 기록한다.
# 병합 완료 시 (예시)
병합을 완료했습니다.
메인 문서: docs/usecase/[project]-usecase-design.md
병합 리포트: docs/usecase/merge-report-[날짜].md
추가된 UC: UC-06 ~ UC-08 (3건)
추가된 엔티티: Refund, Payment (2건)
추가된 상태: Order에 REFUND_REQUESTED, REFUNDED (2건)
[project-root]/
└── docs/
└── usecase/
├── [project-name]-usecase-design.md ← 메인 문서 (이 스킬이 생성/갱신)
├── merge-report-[날짜].md ← 병합 리포트
├── drafts/
│ └── [feature]/
│ └── [feature]-draft.md ← 병합 대상 초안
└── deprecated/
ls docs/usecase/
ls docs/usecase/drafts/
확인 사항:
사용자에게 병합할 초안 파일을 확인한다:
아직 리뷰하지 않은 초안이 있으면 uc-review를 권장한다.
초안의 것을 그대로 붙여넣지 않고 통합 내용 기반으로 재생성한다:
파일: docs/usecase/[project-name]-usecase-design.md
# [프로젝트명] 유스케이스 설계서
> 최종 갱신일: [날짜]
> 포함된 기능: [기능A], [기능B], ...
> UC 범위: UC-01 ~ UC-[N]
## 목차
1. [유스케이스 목록](#1-유스케이스-목록)
2. [유스케이스 시나리오](#2-유스케이스-시나리오)
3. [변수 식별](#3-변수-식별)
4. [도메인 모델](#4-도메인-모델)
5. [상태 모델](#5-상태-모델)
6. [시스템 경계 분리](#6-시스템-경계-분리)
7. [예외 정리](#7-예외-정리)
8. [사전조건 / 사후조건](#8-사전조건--사후조건)
---
## 1. 유스케이스 목록
(통합 표)
## 2. 유스케이스 시나리오
(모든 UC 시나리오 + UC별 시퀀스 다이어그램)
## 3. 변수 식별
(모든 UC 변수 + UC별 관계도 + UC 간 의존 관계 통합도)
## 4. 도메인 모델
(통합 엔티티, 관계, 규칙 + 통합 클래스 다이어그램)
## 5. 상태 모델
(통합 상태 모델 + 엔티티별 상태 다이어그램)
## 6. 시스템 경계 분리
(통합 액터, 외부/내부 UC + UML 유스케이스 다이어그램 + 시스템 경계 다이어그램)
## 7. 예외 정리
(모든 UC 예외)
## 8. 사전조건 / 사후조건
(모든 UC 사전/사후조건)
파일: docs/usecase/merge-report-[날짜].md
# 병합 결과 리포트
> 병합일: [날짜]
> 메인 문서: docs/usecase/[project-name]-usecase-design.md
## 병합 대상
| 초안 파일 | 기능명 |
|----------|--------|
| drafts/[feature-A]/[feature-A]-draft.md | 기능A |
## 변경 내역
### UC 추가
| 신규 ID | (초안 ID) | 유스케이스명 |
|---------|----------|-------------|
| UC-06 | (UC-06) | 환불 처리 |
### 엔티티 추가/변경
| 엔티티 | 변경 유형 | 내용 |
|--------|----------|------|
| Refund | 신규 | 환불 엔티티 |
| Order | 속성 추가 | refundStatus |
### 상태 모델 추가/변경
| 엔티티 | 변경 유형 | 내용 |
|--------|----------|------|
| Order | 이벤트 추가 | 환불 요청, 환불 승인 |
| Order | 전이 추가 | PAID →(환불 요청)→ REFUND_REQUESTED |
| Order | 상태 도출 | REFUND_REQUESTED, REFUNDED |
| Refund | 신규 | 전체 상태 모델 (이벤트 → 전이 → 상태) |
### ID 재정렬 (있는 경우)
| 초안 ID | → 메인 ID |
|---------|----------|
| UC-07 | → UC-06 |
### 용어 통일 (있는 경우)
| 초안 용어 | → 메인 용어 |
|----------|------------|
| 고객 | → 사용자 |
### 도메인 규칙 충돌 (있는 경우)
(상세 내역)
### 상태 모델 충돌 (있는 경우)
(신규 전이가 기존 불허 전이와 충돌하는 경우 상세 내역)
### Mermaid 다이어그램 재생성
- 시퀀스 다이어그램 (N개)
- 변수 관계도 (N개)
- 통합 클래스/ER 다이어그램
- 통합 상태 다이어그램 (N개)
- 통합 UML 유스케이스 다이어그램 (시스템 경계 포함)
- 통합 시스템 경계 다이어그램
병합 완료된 초안의 메타 정보를 변경한다:
> 상태: 병합 완료 (merged) — [날짜]
> 병합 대상: docs/usecase/[project-name]-usecase-design.md
초안 파일은 삭제하지 않고 이력 용도로 보존한다.
병합 완료 후 채팅에 간략히 안내한다:
npx claudepluginhub gogradually/usecase-driven-design-skills --plugin usecase-driven-designCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.