sdd-tool 0.6.2 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
 
10
10
  ## 개요
11
11
 
12
- SDD Tool은 **Claude Code**와 함께 사용하도록 설계된 명세 기반 개발(Spec-Driven Development) CLI입니다. 슬래시 커맨드를 통해 AI와 대화하며 명세를 작성하고, 코드를 구현합니다.
12
+ SDD Tool은 **Claude Code**와 함께 사용하도록 설계된 명세 기반 개발(Spec-Driven Development) CLI입니다. **슬래시 커맨드**를 통해 AI와 대화하며 명세를 작성하고, 코드를 구현합니다.
13
13
 
14
14
  ### 핵심 개념
15
15
 
@@ -29,50 +29,129 @@ npm install -g sdd-tool
29
29
 
30
30
  ---
31
31
 
32
- ## Claude Code와 함께 시작하기
33
-
34
- SDD Tool은 Claude Code의 슬래시 커맨드와 통합되어, AI와 대화하며 명세 기반 개발을 진행합니다.
35
-
36
- ### Step 1: 프로젝트 초기화
32
+ ## 빠른 시작
37
33
 
38
34
  ```bash
35
+ # 1. 프로젝트 초기화 (슬래시 커맨드 26개 자동 생성)
39
36
  sdd init
40
- ```
41
37
 
42
- 명령은 다음을 생성합니다:
43
- - `.sdd/` - 명세 디렉토리 (constitution.md, specs/, changes/)
44
- - `.claude/commands/` - **26개의 슬래시 커맨드** 자동 생성
38
+ # 2. Claude Code 실행
39
+ claude
45
40
 
46
- ### Step 2: Claude Code 실행
41
+ # 3. 슬래시 커맨드로 워크플로우 시작
42
+ /sdd.start
43
+ ```
47
44
 
48
- 프로젝트 디렉토리에서 Claude Code를 실행합니다:
45
+ ---
46
+
47
+ ## 전체 워크플로우
49
48
 
50
- ```bash
51
- claude
52
49
  ```
50
+ ┌─────────────────────────────────────────────────────────────┐
51
+ │ SDD 슬래시 커맨드 워크플로우 │
52
+ ├─────────────────────────────────────────────────────────────┤
53
+ │ │
54
+ │ 1. /sdd.start → 워크플로우 시작 │
55
+ │ │ │
56
+ │ ▼ │
57
+ │ 2. /sdd.constitution → 프로젝트 원칙 정의 │
58
+ │ │ │
59
+ │ ▼ │
60
+ │ 3. /sdd.new → 기능 명세 작성 (spec.md) │
61
+ │ │ │
62
+ │ ▼ │
63
+ │ 4. /sdd.plan → 구현 계획 수립 (plan.md) │
64
+ │ │ │
65
+ │ ▼ │
66
+ │ 5. /sdd.tasks → 작업 분해 (tasks.md) │
67
+ │ │ │
68
+ │ ▼ │
69
+ │ 6. /sdd.prepare → 서브에이전트/스킬 점검 │
70
+ │ │ │
71
+ │ ▼ │
72
+ │ 7. /sdd.implement → 순차적 구현 │
73
+ │ │ │
74
+ │ ▼ │
75
+ │ 8. /sdd.validate → 명세 검증 │
76
+ │ │
77
+ └─────────────────────────────────────────────────────────────┘
78
+ ```
79
+
80
+ ---
81
+
82
+ ## 슬래시 커맨드 (26개)
83
+
84
+ `sdd init` 실행 시 `.claude/commands/`에 자동 생성됩니다.
85
+
86
+ ### 핵심 워크플로우
87
+
88
+ | 커맨드 | 설명 | 사용 예시 |
89
+ |--------|------|----------|
90
+ | `/sdd.start` | 통합 진입점 | `/sdd.start` |
91
+ | `/sdd.constitution` | 프로젝트 원칙 관리 | `/sdd.constitution React 기반 할일 앱` |
92
+ | `/sdd.new` | 새 기능 명세 작성 | `/sdd.new 사용자 인증 기능` |
93
+ | `/sdd.plan` | 구현 계획 작성 | `/sdd.plan` |
94
+ | `/sdd.tasks` | 작업 분해 | `/sdd.tasks` |
95
+ | `/sdd.prepare` | 서브에이전트/스킬 점검 | `/sdd.prepare` |
96
+ | `/sdd.implement` | 순차적 구현 | `/sdd.implement` |
97
+ | `/sdd.validate` | 스펙 검증 | `/sdd.validate` |
98
+
99
+ ### 변경 관리
100
+
101
+ | 커맨드 | 설명 |
102
+ |--------|------|
103
+ | `/sdd.change` | 기존 스펙 변경 제안 |
104
+ | `/sdd.impact` | 변경 영향도 분석 |
105
+ | `/sdd.transition` | new ↔ change 워크플로우 전환 |
106
+
107
+ ### 분석 및 품질
108
+
109
+ | 커맨드 | 설명 |
110
+ |--------|------|
111
+ | `/sdd.analyze` | 요청 분석 및 규모 판단 |
112
+ | `/sdd.quality` | 스펙 품질 점수 산출 |
113
+ | `/sdd.report` | 프로젝트 리포트 생성 |
114
+ | `/sdd.search` | 스펙 검색 |
115
+ | `/sdd.status` | 프로젝트 상태 확인 |
116
+ | `/sdd.list` | 항목 목록 조회 |
117
+
118
+ ### 문서 생성
53
119
 
54
- ### Step 3: 워크플로우 시작
120
+ | 커맨드 | 설명 |
121
+ |--------|------|
122
+ | `/sdd.research` | 기술 리서치 문서 |
123
+ | `/sdd.data-model` | 데이터 모델 문서 |
124
+ | `/sdd.guide` | 워크플로우 가이드 |
55
125
 
56
- Claude Code에서 슬래시 커맨드를 입력합니다:
126
+ ### 운영
127
+
128
+ | 커맨드 | 설명 |
129
+ |--------|------|
130
+ | `/sdd.chat` | 대화형 SDD 어시스턴트 |
131
+ | `/sdd.watch` | 파일 감시 모드 |
132
+ | `/sdd.migrate` | 외부 도구에서 마이그레이션 |
133
+ | `/sdd.cicd` | CI/CD 설정 |
134
+ | `/sdd.prompt` | 프롬프트 출력 |
135
+
136
+ ---
137
+
138
+ ## 워크플로우 상세
139
+
140
+ ### Step 1: /sdd.start
141
+
142
+ 프로젝트 상태를 분석하고 다음 작업을 안내합니다:
57
143
 
58
144
  ```
59
145
  /sdd.start
60
146
  ```
61
147
 
62
- AI가 프로젝트 상태를 분석하고, 다음 작업을 안내합니다:
63
148
  - 신규 프로젝트: Constitution 작성 권장
64
149
  - 기존 프로젝트: 워크플로우 선택 메뉴 제공
65
150
 
66
- ### Step 4: Constitution(헌법) 작성
151
+ ### Step 2: /sdd.constitution
67
152
 
68
153
  프로젝트의 핵심 원칙을 정의합니다:
69
154
 
70
- ```
71
- /sdd.constitution
72
- ```
73
-
74
- 신규 프로젝트의 경우, 프로젝트 설명을 함께 입력할 수 있습니다:
75
-
76
155
  ```
77
156
  /sdd.constitution React 기반 할일 관리 앱
78
157
  ```
@@ -82,108 +161,99 @@ AI가 `.sdd/constitution.md`를 분석하고, 프로젝트 원칙 작성을 도
82
161
  - 기술 원칙 (Technical Principles)
83
162
  - 금지 사항 (Forbidden)
84
163
 
85
- ### Step 5: 새 기능 명세 작성
164
+ ### Step 3: /sdd.new
86
165
 
87
166
  기능 명세를 AI와 함께 작성합니다:
88
167
 
89
168
  ```
90
- /sdd.new
169
+ /sdd.new 사용자 인증 기능
91
170
  ```
92
171
 
93
- 필요한 기능을 함께 입력하면 AI가 바로 명세 작성을 시작합니다:
172
+ AI가 대화를 통해 다음을 생성합니다:
173
+ - `spec.md` - 기능 명세 (RFC 2119 + GIVEN-WHEN-THEN)
174
+
175
+ ### Step 4: /sdd.plan
176
+
177
+ 구현 계획을 수립합니다:
94
178
 
95
179
  ```
96
- /sdd.new 사용자 인증 기능
180
+ /sdd.plan
97
181
  ```
98
182
 
99
- AI가 대화를 통해 다음을 생성합니다:
100
- - `spec.md` - 기능 명세 (RFC 2119 + GIVEN-WHEN-THEN)
101
- - `plan.md` - 구현 계획
102
- - `tasks.md` - 작업 분해
183
+ - 기술 결정사항과 근거
184
+ - 구현 단계(Phase) 정의
185
+ - 리스크 분석 완화 전략
103
186
 
104
- ### Step 6: 구현 진행
187
+ ### Step 5: /sdd.tasks
105
188
 
106
- 작업 목록을 기반으로 순차적 구현:
189
+ 작업을 실행 가능한 단위로 분해합니다:
107
190
 
108
191
  ```
109
- /sdd.implement
192
+ /sdd.tasks
110
193
  ```
111
194
 
112
- AI가 tasks.md를 읽고, TDD 방식으로 구현을 안내합니다.
195
+ - 작업은 2-4시간 완료 가능한 크기
196
+ - 작업 간 의존성 표시
197
+ - 우선순위: HIGH(🔴), MEDIUM(🟡), LOW(🟢)
113
198
 
114
- ---
199
+ ### Step 6: /sdd.prepare
115
200
 
116
- ## 전체 워크플로우 예시
201
+ 구현에 필요한 Claude Code 도구를 점검합니다:
117
202
 
118
203
  ```
119
- ┌─────────────────────────────────────────────────────────────┐
120
- │ 1. sdd init → 프로젝트 초기화 │
121
- │ 2. claude → Claude Code 실행 │
122
- │ 3. /sdd.start → 워크플로우 시작 │
123
- │ 4. /sdd.constitution → 프로젝트 원칙 정의 │
124
- │ 5. /sdd.new → 기능 명세 작성 │
125
- │ 6. /sdd.plan → 구현 계획 수립 │
126
- │ 7. /sdd.tasks → 작업 분해 │
127
- │ 8. /sdd.implement → 순차적 구현 │
128
- │ 9. /sdd.validate → 명세 검증 │
129
- └─────────────────────────────────────────────────────────────┘
204
+ /sdd.prepare
130
205
  ```
131
206
 
132
- ---
207
+ **기능:**
208
+ - tasks.md 분석하여 필요한 도구 자동 감지
209
+ - 서브에이전트 (`.claude/agents/`) 존재 여부 확인
210
+ - 스킬 (`.claude/skills/`) 존재 여부 확인
211
+ - 누락된 도구 자동 생성
133
212
 
134
- ## 슬래시 커맨드 (26개)
213
+ **감지 대상:**
135
214
 
136
- `sdd init` 실행 `.claude/commands/`에 자동 생성됩니다.
215
+ | 키워드 | 서브에이전트 | 스킬 |
216
+ |--------|-------------|------|
217
+ | 테스트, test | test-runner | test |
218
+ | api, rest | api-scaffold | gen-api |
219
+ | component | component-gen | gen-component |
220
+ | database | - | db-migrate |
221
+ | 문서, doc | - | gen-doc |
222
+ | review | code-reviewer | review |
137
223
 
138
- ### 핵심 워크플로우
224
+ **CLI에서도 사용 가능:**
139
225
 
140
- | 커맨드 | 설명 | 사용 시점 |
141
- |--------|------|----------|
142
- | `/sdd.start` | 통합 진입점 | 작업 시작 시 |
143
- | `/sdd.constitution` | 프로젝트 원칙 관리 | 프로젝트 초기 설정 |
144
- | `/sdd.new` | 새 기능 명세 작성 | 새 기능 개발 시 |
145
- | `/sdd.plan` | 구현 계획 작성 | 명세 작성 후 |
146
- | `/sdd.tasks` | 작업 분해 | 계획 수립 후 |
147
- | `/sdd.implement` | 순차적 구현 | 작업 분해 후 |
148
- | `/sdd.validate` | 스펙 검증 | 작성/수정 후 |
226
+ ```bash
227
+ sdd prepare user-auth # 대화형
228
+ sdd prepare user-auth --dry-run # 미리보기
229
+ sdd prepare user-auth --auto-approve # 자동 생성
230
+ ```
149
231
 
150
- ### 변경 관리
232
+ ### Step 7: /sdd.implement
151
233
 
152
- | 커맨드 | 설명 |
153
- |--------|------|
154
- | `/sdd.change` | 기존 스펙 변경 제안 |
155
- | `/sdd.impact` | 변경 영향도 분석 |
156
- | `/sdd.transition` | new ↔ change 워크플로우 전환 |
234
+ 작업 목록을 기반으로 순차적 구현:
157
235
 
158
- ### 분석 및 품질
236
+ ```
237
+ /sdd.implement
238
+ ```
159
239
 
160
- | 커맨드 | 설명 |
161
- |--------|------|
162
- | `/sdd.analyze` | 요청 분석 및 규모 판단 |
163
- | `/sdd.quality` | 스펙 품질 점수 산출 |
164
- | `/sdd.report` | 프로젝트 리포트 생성 |
165
- | `/sdd.search` | 스펙 검색 |
166
- | `/sdd.status` | 프로젝트 상태 확인 |
240
+ AI가 tasks.md를 읽고, TDD 방식으로 구현을 안내합니다:
241
+ 1. 작업 상태를 "진행 중"으로 변경
242
+ 2. 테스트 작성
243
+ 3. 코드 구현
244
+ 4. 작업 상태를 "완료"로 변경
167
245
 
168
- ### 문서 생성
246
+ ### Step 8: /sdd.validate
169
247
 
170
- | 커맨드 | 설명 |
171
- |--------|------|
172
- | `/sdd.research` | 기술 리서치 문서 |
173
- | `/sdd.data-model` | 데이터 모델 문서 |
174
- | `/sdd.guide` | 워크플로우 가이드 |
175
- | `/sdd.prepare` | 환경 준비 가이드 |
248
+ 명세 검증:
176
249
 
177
- ### 운영
250
+ ```
251
+ /sdd.validate
252
+ ```
178
253
 
179
- | 커맨드 | 설명 |
180
- |--------|------|
181
- | `/sdd.chat` | 대화형 SDD 어시스턴트 |
182
- | `/sdd.list` | 항목 목록 조회 |
183
- | `/sdd.watch` | 파일 감시 모드 |
184
- | `/sdd.migrate` | 외부 도구에서 마이그레이션 |
185
- | `/sdd.cicd` | CI/CD 설정 |
186
- | `/sdd.prompt` | 프롬프트 출력 |
254
+ - RFC 2119 키워드 사용 여부
255
+ - GIVEN-WHEN-THEN 형식 준수
256
+ - 메타데이터 필수 필드 확인
187
257
 
188
258
  ---
189
259
 
@@ -269,6 +339,7 @@ sdd list # 목록 조회
269
339
  ```bash
270
340
  sdd new <name> # 새 기능 생성
271
341
  sdd new <name> --all # spec + plan + tasks 모두 생성
342
+ sdd prepare <name> # 서브에이전트/스킬 점검
272
343
  ```
273
344
 
274
345
  ### 변경 관리
@@ -283,42 +354,13 @@ sdd impact <feature> # 영향도 분석
283
354
 
284
355
  ```bash
285
356
  sdd quality # 품질 분석
286
- sdd quality --min-score 70 # 최소 점수 기준
287
357
  sdd report # 리포트 생성
288
358
  sdd search <query> # 스펙 검색
289
359
  ```
290
360
 
291
- ### 운영
292
-
293
- ```bash
294
- sdd watch # 파일 감시
295
- sdd migrate detect # 외부 도구 감지
296
- sdd cicd setup # CI/CD 설정
297
- ```
298
-
299
361
  ---
300
362
 
301
- ## CI/CD 통합
302
-
303
- ### GitHub Actions
304
-
305
- ```bash
306
- sdd cicd setup github
307
- ```
308
-
309
- ### Git Hooks
310
-
311
- ```bash
312
- sdd cicd hooks
313
- ```
314
-
315
- 커밋 전 자동으로 스펙 검증이 실행됩니다.
316
-
317
- ---
318
-
319
- ## 디렉토리 구조
320
-
321
- `sdd init` 실행 후 생성되는 구조:
363
+ ## Claude Code 도구 구조
322
364
 
323
365
  ```
324
366
  your-project/
@@ -329,16 +371,25 @@ your-project/
329
371
  │ │ └── feature-name/
330
372
  │ │ ├── spec.md
331
373
  │ │ ├── plan.md
332
- │ │ └── tasks.md
374
+ │ │ ├── tasks.md
375
+ │ │ └── prepare.md # 도구 점검 결과
333
376
  │ ├── changes/ # 변경 제안
334
- ├── archive/ # 완료된 변경
335
- └── templates/ # 템플릿
377
+ └── archive/ # 완료된 변경
378
+
336
379
  └── .claude/
337
- └── commands/ # 슬래시 커맨드 (26개)
338
- ├── sdd.start.md
339
- ├── sdd.new.md
340
- ├── sdd.constitution.md
341
- └── ...
380
+ ├── commands/ # 슬래시 커맨드 (26개)
381
+ ├── sdd.start.md
382
+ ├── sdd.new.md
383
+ ├── sdd.prepare.md
384
+ └── ...
385
+ ├── agents/ # 서브에이전트
386
+ │ ├── test-runner.md
387
+ │ └── api-scaffold.md
388
+ └── skills/ # 스킬
389
+ ├── test/
390
+ │ └── SKILL.md
391
+ └── gen-api/
392
+ └── SKILL.md
342
393
  ```
343
394
 
344
395
  ---