@yeongjaeyou/claude-code-config 0.2.1 → 0.3.1

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.
@@ -0,0 +1,449 @@
1
+ # PRD Codex 검토 (review-prd-with-codex)
2
+
3
+ 생성된 PRD를 Codex MCP로 검토하고 Claude가 cross-check하여 합의된 결론을 전달합니다.
4
+ 합의가 도달할 때까지 최대 3회 핑퐁합니다.
5
+
6
+ **핵심 원칙:**
7
+ - Codex는 context/도구가 제한적이므로 Claude가 반드시 검증
8
+ - 불일치 시 Codex에 재질문 (컨텍스트 재전달 방식)
9
+ - 이모지 사용 금지
10
+ - 범용적 표현 사용 (특정 프로젝트 용어 지양)
11
+
12
+ ---
13
+
14
+ ## 아규먼트
15
+
16
+ `$ARGUMENTS`로 PRD 파일 경로를 받습니다.
17
+ - 예: `/tm:review-prd-with-codex .taskmaster/docs/prd.md`
18
+ - 없으면 AskUserQuestion으로 경로 입력 요청
19
+
20
+ ---
21
+
22
+ ## Codex 컨텍스트 구성 원칙
23
+
24
+ ### 1. 이번 워크플로우의 Codex 사용 범위
25
+ - 이번 명령은 **Codex MCP 도구**를 사용 (`mcp__codex__codex`)
26
+ - sandbox는 `read-only` 설정
27
+ - **네트워크/웹서치는 사용하지 않음** (재현성과 안전을 위해)
28
+ - 재현성을 위해 PRD/컨텍스트를 프롬프트에 직접 포함 (파일 탐색에 의존하지 않음)
29
+ - git history 접근 불가 (Claude가 cross-check로 보완)
30
+
31
+ ### 2. 필수 포함 정보 (풍부한 컨텍스트)
32
+ - PRD 전문 (라인 번호 포함 - `nl -ba` 형식)
33
+ - **CLAUDE.md 전문** (제한 없이 전체 포함)
34
+ - **프로젝트 기술 스택 상세** (package.json, requirements.txt 내용)
35
+ - **디렉토리 구조** (주요 폴더 구조)
36
+ - **PRD 관련 코드 요약** (선택: PRD에 언급된 파일의 심볼 개요)
37
+ - 검토 기준 명시
38
+ - 출력 형식 강제
39
+
40
+ ### 3. 포함하지 말아야 할 정보
41
+ - Claude 전용 도구 언급 (AskUserQuestion, TodoWrite 등)
42
+ - 내부 워크플로우 세부사항
43
+
44
+ ### 4. 프롬프트 구성 원칙
45
+ - **CLAUDE.md 전체 포함** (1000자 제한 제거)
46
+ - PRD 전체를 한 번에 검토 (분할하지 않음)
47
+ - 기술 스택과 디렉토리 구조로 프로젝트 맥락 제공
48
+ - 타임아웃 발생 시에만 프롬프트 축소 고려
49
+
50
+ ### 5. 출력 형식 강제
51
+ - 구조화된 형식 명시 (테이블, 리스트)
52
+ - "반드시 이 형식으로" 명시
53
+ - 라인 번호 참조 요구
54
+
55
+ ---
56
+
57
+ ## 작업 순서
58
+
59
+ ### Step 1: 사전 정보 수집 (풍부한 컨텍스트)
60
+
61
+ #### 1.1 PRD 파일 읽기 (라인 번호 포함)
62
+ ```bash
63
+ nl -ba $ARGUMENTS
64
+ ```
65
+ - `nl -ba`: 빈 줄 포함 모든 줄에 번호 부여 (cat -n보다 일관적)
66
+ - 파일이 없으면 오류 메시지 출력 후 종료
67
+
68
+ #### 1.2 PRD 파일 존재 확인
69
+ ```bash
70
+ test -f $ARGUMENTS && echo "파일 존재" || echo "파일 없음"
71
+ ```
72
+
73
+ #### 1.3 CLAUDE.md 전문 읽기
74
+ - 프로젝트 루트의 CLAUDE.md 확인
75
+ - **전체 내용을 프롬프트에 포함** (1000자 제한 없음)
76
+ - 프로젝트 컨벤션, 기술 스택, 주의사항 모두 전달
77
+
78
+ #### 1.4 프로젝트 기술 스택 상세 수집
79
+ Claude가 다음 파일들을 읽고 요약:
80
+ - `package.json` (프론트엔드 의존성)
81
+ - `requirements.txt` (백엔드 의존성)
82
+ - `go.mod`, `Cargo.toml` 등 (해당 시)
83
+ - 주요 프레임워크/라이브러리 버전 명시
84
+
85
+ #### 1.5 디렉토리 구조 수집
86
+ ```bash
87
+ # 주요 디렉토리 구조 (깊이 2-3)
88
+ tree -L 3 --dirsfirst -I 'node_modules|__pycache__|.git|dist|build|.next'
89
+ ```
90
+ 또는 `ls -la` 조합으로 구조 파악
91
+
92
+ #### 1.6 PRD 관련 코드 파일 요약 (선택)
93
+ - PRD에 언급된 주요 파일/모듈이 있으면 해당 파일의 심볼 개요 수집
94
+ - 예: "인증 시스템 개선" PRD라면 `routes/auth.py`, `middleware.ts` 등 확인
95
+ - 기존 구현과 PRD 설계의 관계 파악에 도움
96
+
97
+ #### 1.7 TaskMaster PRD 템플릿 참조
98
+ `.taskmaster/templates/example_prd.txt` 구조:
99
+ ```
100
+ <context>
101
+ # Overview
102
+ # Core Features
103
+ # User Experience
104
+ </context>
105
+ <PRD>
106
+ # Technical Architecture
107
+ # Development Roadmap
108
+ # Logical Dependency Chain
109
+ # Risks and Mitigations
110
+ # Appendix
111
+ </PRD>
112
+ ```
113
+
114
+ ### Step 2: Codex 프롬프트 구성 (풍부한 컨텍스트)
115
+
116
+ 다음 템플릿을 사용하여 프롬프트 작성:
117
+
118
+ ```
119
+ ## 역할
120
+ 당신은 PRD(Product Requirements Document) 검토 전문가입니다.
121
+
122
+ ## 프로젝트 컨텍스트
123
+
124
+ ### 기술 스택
125
+ [package.json / requirements.txt 내용 요약]
126
+ 예시:
127
+ - Frontend: Next.js 15, React 19, Tailwind CSS v4, shadcn/ui
128
+ - Backend: FastAPI, Google Gemini API, Decord
129
+ - 배포: Docker + Cloudflare Tunnel
130
+
131
+ ### 프로젝트 구조
132
+ [tree 또는 ls 출력 결과]
133
+ ```
134
+ frontend/
135
+ ├── src/app/ # App Router
136
+ ├── src/components/ # UI 컴포넌트
137
+ └── src/hooks/ # Custom hooks
138
+
139
+ services/
140
+ ├── base_video_processor.py
141
+ ├── video_processor.py
142
+ └── child_safety_processor.py
143
+ ```
144
+
145
+ ### 프로젝트 지침 (CLAUDE.md)
146
+ [CLAUDE.md 전문 - 제한 없이 전체 포함]
147
+
148
+ ### PRD 관련 기존 코드 (선택)
149
+ [PRD에 언급된 주요 파일이 있다면 심볼 개요]
150
+
151
+ ## 검토 대상
152
+ 파일: [PRD 파일 경로]
153
+
154
+ ### PRD 내용 (라인 번호 포함)
155
+ [PRD 전문 - nl -ba 형식으로]
156
+
157
+ ## TaskMaster PRD 형식 기준
158
+ <context>: Overview, Core Features, User Experience
159
+ <PRD>: Technical Architecture, Development Roadmap (Phase 단위),
160
+ Logical Dependency Chain, Risks and Mitigations, Appendix
161
+
162
+ ## 검토 기준
163
+ 1. 구조: TaskMaster PRD 형식 준수 여부
164
+ 2. 명확성: 모호한 표현, 정의되지 않은 용어, 측정 불가능한 목표
165
+ 3. 실행가능성: 구현 가능한 수준의 구체성, 기술적 현실성
166
+ 4. 완전성: 누락된 섹션 (User Stories, Acceptance Criteria,
167
+ Success Metrics, Risk/Dependencies 등)
168
+ 5. 일관성: 내부 모순, 중복 정의, 버전 불일치
169
+
170
+ ## 출력 형식 (반드시 이 형식으로)
171
+
172
+ ### 타당한 점 (Strengths)
173
+ - [항목]: [설명] (라인 번호)
174
+
175
+ ### 개선 필요 사항 (Issues)
176
+ | 항목 | 위치(라인) | 문제점 | 권장 수정 |
177
+ |------|-----------|--------|----------|
178
+
179
+ ### 개방 질문 (Open Questions)
180
+ - [질문 1]
181
+ - [질문 2]
182
+
183
+ ### 종합 평가
184
+ [1-2문장 요약]
185
+ ```
186
+
187
+ ### Step 3: Codex MCP 첫 실행
188
+
189
+ **mcp__codex__codex 도구 호출:**
190
+
191
+ 파라미터:
192
+ - `prompt`: Step 2에서 구성한 전체 프롬프트
193
+ - `sandbox`: "read-only"
194
+ - `cwd`: 프로젝트 루트 경로 (선택)
195
+
196
+ **호출 예시:**
197
+ ```
198
+ mcp__codex__codex 도구 호출:
199
+ - prompt: [구성한 프롬프트]
200
+ - sandbox: "read-only"
201
+ ```
202
+
203
+ **참고:**
204
+ - MCP 도구 응답에서 텍스트 결과를 파싱
205
+ - 타임아웃 발생 시 프롬프트 길이 줄이기
206
+
207
+ ### Step 4: Codex 피드백 수신 및 파싱
208
+
209
+ Codex 응답을 다음 구조로 정리:
210
+ - Strengths: 타당한 점 목록
211
+ - Issues: 개선 필요 사항 테이블
212
+ - Open Questions: 개방 질문 목록
213
+ - Summary: 종합 평가
214
+
215
+ ### Step 5: Claude Cross-check
216
+
217
+ **Codex가 놓칠 수 있는 항목 검증:**
218
+
219
+ 1. **이미 해결된 이슈 확인**
220
+ ```bash
221
+ git log --oneline -20
222
+ ```
223
+ - PRD에 언급된 이슈가 이미 커밋으로 해결되었는지 확인
224
+
225
+ 2. **패키지/의존성 존재 여부 검증**
226
+ - npm: `npm view [패키지명]`
227
+ - pip: `pip show [패키지명]` 또는 PyPI 검색
228
+ - 실제로 존재하지 않는 패키지 언급 여부
229
+
230
+ 3. **코드베이스-PRD 동기화 확인**
231
+ - PRD에 언급된 파일/모듈이 실제 존재하는지
232
+ - 기존 구현과 PRD 설계 일치 여부
233
+
234
+ 4. **CLAUDE.md 지침 준수 확인**
235
+ - 프로젝트 컨벤션 준수 여부
236
+ - TaskMaster 워크플로우 적합성
237
+
238
+ 5. **Codex 틀린 부분 식별**
239
+ - 검증 결과 틀린 내용 목록화
240
+ - 근거 준비 (git commit, 실제 파일 등)
241
+
242
+ ### Step 6: 불일치 확인 및 재검토 (컨텍스트 재전달 방식)
243
+
244
+ **불일치 항목이 있으면:**
245
+
246
+ `mcp__codex__codex` 새 세션으로 호출하되, **이전 대화 맥락을 프롬프트에 포함**:
247
+
248
+ #### 재검토 프롬프트 템플릿:
249
+ ```
250
+ ## 역할
251
+ 당신은 PRD 검토 전문가입니다.
252
+
253
+ ## 이전 검토 맥락
254
+
255
+ ### 1차 검토 결과 요약
256
+ [Codex 1차 응답 핵심 내용 - Strengths, Issues, Questions, Summary]
257
+
258
+ ### Claude Cross-check 결과
259
+ [불일치 항목 및 근거]
260
+
261
+ ## 재검토 요청
262
+ 위 Cross-check 결과를 반영하여 다음 항목만 재검토해주세요:
263
+ 1. [불일치 항목 1]
264
+ 2. [불일치 항목 2]
265
+
266
+ 기존 평가 중 변경이 필요한 부분만 수정된 형식으로 답변해주세요.
267
+
268
+ ## 참고 정보
269
+ [필요시 추가 컨텍스트 - 관련 코드, git log 등]
270
+ ```
271
+
272
+ **MCP 호출:**
273
+ ```
274
+ mcp__codex__codex 도구 호출:
275
+ - prompt: [재검토 프롬프트]
276
+ - sandbox: "read-only"
277
+ ```
278
+
279
+ **핑퐁 종료 조건:**
280
+ - 합의 도달 (불일치 항목 없음)
281
+ - 최대 3회 도달
282
+ - Codex가 Claude의 근거를 수용
283
+
284
+ **반복 횟수 추적:**
285
+ - 1회차: 초기 검토
286
+ - 2회차: 1차 재검토 (이전 맥락 포함)
287
+ - 3회차: 2차 재검토 (마지막)
288
+
289
+ ### Step 7: 합의 도출 및 전달
290
+
291
+ **출력 형식:**
292
+
293
+ ```markdown
294
+ ## PRD 검토 결과 (Codex + Claude 합의)
295
+
296
+ ### 검토 과정
297
+ - 핑퐁 횟수: [N]회
298
+ - 합의 상태: [완전 합의 / 부분 합의 / Claude 판단]
299
+
300
+ ### [VALID] 타당한 피드백
301
+ | 항목 | 설명 | 출처 |
302
+ |------|------|------|
303
+
304
+ ### [ISSUE] 개선 필요 사항
305
+ | 항목 | 문제점 | 권장 수정 | 출처 |
306
+ |------|--------|----------|------|
307
+
308
+ ### [CORRECTION] Codex 오류 교정
309
+ | Codex 주장 | 실제 상황 | 근거 |
310
+ |-----------|----------|------|
311
+
312
+ ### [DECISION] 결정 필요 사항
313
+ (선택지가 있으면 AskUserQuestion으로 질문)
314
+
315
+ ### [SUMMARY] 종합 결론
316
+ [최종 요약]
317
+ ```
318
+
319
+ ---
320
+
321
+ ## 작업 지침
322
+
323
+ - 한글로 답변
324
+ - 코드나 문서 작성 시 이모지 사용 금지
325
+ - **불명확한 사항은 추측하지 말고 AskUserQuestion으로 질문**
326
+ - PRD 수정 제안은 사용자 확인 후 진행
327
+ - Codex와 Claude 의견 불일치 시 근거를 명확히 제시
328
+ - 검토 기준이 애매하면 사용자에게 우선순위 질문
329
+
330
+ ---
331
+
332
+ ## 오류 처리
333
+
334
+ - **PRD 파일 없음**: "파일을 찾을 수 없습니다. 경로를 확인해주세요."
335
+ - **Codex MCP 호출 실패**: "Codex MCP 도구 호출에 실패했습니다. MCP 서버 상태를 확인해주세요."
336
+ - **타임아웃**: "Codex 응답 시간 초과. 프롬프트 길이를 줄이거나 다시 시도해주세요."
337
+ - **재검토 필요**: "이전 맥락을 포함하여 새 세션으로 재검토를 진행합니다."
338
+
339
+ ---
340
+
341
+ ## Codex MCP 도구 참조
342
+
343
+ ### Claude가 사용하는 MCP 도구
344
+ | 도구 | 파라미터 | 설명 |
345
+ |------|----------|------|
346
+ | `mcp__codex__codex` | `prompt`, `sandbox`, `cwd`, `model` 등 | 새 Codex 세션 시작 |
347
+
348
+ **주요 파라미터:**
349
+ - `prompt` (필수): 초기 프롬프트
350
+ - `sandbox`: "read-only" (파일 읽기만 허용, 안전)
351
+ - `cwd`: 작업 디렉토리 (선택)
352
+ - `model`: 모델 지정 (선택, 예: "o3", "o4-mini")
353
+
354
+ **참고:**
355
+ - 핑퐁 시에는 새 세션에 이전 맥락을 프롬프트에 포함하여 호출
356
+ - CLI의 `codex resume`과 달리 MCP에서는 컨텍스트 재전달 방식 사용
357
+
358
+ ---
359
+
360
+ ## Cross-check 체크리스트
361
+
362
+ | 검증 항목 | 방법 | 예시 |
363
+ |----------|------|------|
364
+ | 이미 해결된 이슈 | `git log --grep="이슈번호"` | 특정 이슈가 이미 커밋으로 해결됨 |
365
+ | 패키지 존재 여부 | `npm view` / `pip show` | 존재하지 않는 SDK 언급 |
366
+ | 파일/모듈 존재 | `ls`, `find`, `grep` | 특정 어댑터 파일 위치 확인 |
367
+ | 버전 일치 | `package.json`, `requirements.txt` | 명시된 버전과 실제 버전 |
368
+
369
+ ---
370
+
371
+ ## 사용 예시
372
+
373
+ ```bash
374
+ # PRD 생성 후 검토
375
+ /tm:convert-prd .taskmaster/docs/my-idea.md
376
+ # prd.md 생성됨
377
+
378
+ /tm:review-prd-with-codex .taskmaster/docs/prd.md
379
+ # Codex MCP 검토 + Claude cross-check + 핑퐁 + 합의 결과 출력
380
+ ```
381
+
382
+ ---
383
+
384
+ ## 워크플로우 다이어그램
385
+
386
+ ```
387
+ [Step 1: 풍부한 컨텍스트 수집]
388
+ |
389
+ v
390
+ [Step 2: 프롬프트 구성]
391
+ |
392
+ v
393
+ [Step 3: Codex MCP 1차 검토] ─────────────────────────┐
394
+ | (mcp__codex__codex) |
395
+ v |
396
+ [Step 4: 피드백 파싱] |
397
+ | |
398
+ v |
399
+ [Step 5: Claude Cross-check] |
400
+ | |
401
+ v |
402
+ [Step 6: 불일치 있음?] |
403
+ | |
404
+ ├─ YES & 반복 < 3 ─> [새 MCP 호출 + 컨텍스트 재전달]┘
405
+ | (이전 대화 요약 포함)
406
+ |
407
+ └─ NO 또는 반복 >= 3 ─> [Step 7: 합의 결과 전달]
408
+ ```
409
+
410
+ **핵심 플로우:**
411
+ 1. Codex MCP 검토 실행
412
+ 2. Claude가 cross-check로 검증
413
+ 3. 불일치 발견 시 새 MCP 호출 (이전 맥락을 프롬프트에 포함)
414
+ 4. 합의 도달 또는 최대 3회까지 반복
415
+ 5. 최종 결과 전달
416
+
417
+ ---
418
+
419
+ ## 예상 결과물 예시
420
+
421
+ ```markdown
422
+ ## PRD 검토 결과 (Codex + Claude 합의)
423
+
424
+ ### 검토 과정
425
+ - 핑퐁 횟수: 2회
426
+ - 합의 상태: 완전 합의
427
+
428
+ ### [VALID] 타당한 피드백
429
+ | 항목 | 설명 | 출처 |
430
+ |------|------|------|
431
+ | 성공 지표 없음 | Goals에 기능 목표만 있음, 성능/비용 기준 미정의 | Codex |
432
+ | 에러 처리 누락 | API 호출 코드에 예외 처리 없음 | Codex + Claude |
433
+ | 테스트 시나리오 | happy-path만 있고 실패 케이스 없음 | Codex |
434
+
435
+ ### [ISSUE] 개선 필요 사항
436
+ | 항목 | 문제점 | 권장 수정 | 출처 |
437
+ |------|--------|----------|------|
438
+ | 의존성 목록 | 존재하지 않는 패키지 언급 | 실제 패키지로 수정 | Claude 검증 |
439
+ | Milestone 상태 | 이미 해결된 이슈 포함 | 완료 표시 또는 제거 | Claude 검증 |
440
+
441
+ ### [CORRECTION] Codex 오류 교정
442
+ | Codex 주장 | 실제 상황 | 근거 |
443
+ |-----------|----------|------|
444
+ | 특정 기능 미구현 | 해당 기능 이미 존재 | src/modules/ 폴더 확인 |
445
+
446
+ ### [SUMMARY] 종합 결론
447
+ PRD는 구조적으로 양호하나, 비기능 요구사항(성능, 보안, 에러 처리)과
448
+ 의존성 정보 업데이트가 필요함. 이미 해결된 이슈는 Milestone에서 제거 권장.
449
+ ```
@@ -28,9 +28,10 @@ Milestone: Phase 2 Core ←── PRD Phase 2 (Task 5-7)
28
28
  ```
29
29
 
30
30
  **원칙:**
31
- - **Milestone** = PRD Phase 단위 (4개)
32
- - **Issue** = 메인 태스크 단위 (12개)
31
+ - **Milestone** = PRD Phase 단위 (PRD에 따라 개수 다름)
32
+ - **Issue** = 메인 태스크 단위 (pending/in-progress 상태만)
33
33
  - **Subtask** = Issue 내 체크박스 + TaskMaster 내부 관리
34
+ - **done 상태 태스크** = 동기화에서 제외
34
35
 
35
36
  ---
36
37
 
@@ -74,33 +75,55 @@ gh issue list --search "in:body \"Task Master 참조\"" --state all --json numbe
74
75
  task-master list
75
76
  ```
76
77
 
77
- **PRD Phase 매핑 (prd.md 참조):**
78
+ **PRD Phase 매핑 (동적 확인 필요):**
79
+
80
+ 실행 전 아래 명령으로 동기화 대상 태스크를 확인합니다:
81
+
82
+ ```bash
83
+ # pending/in-progress 태스크만 조회 (done 제외)
84
+ task-master list --status pending
85
+ task-master list --status in-progress
86
+
87
+ # 또는 전체 목록에서 상태 확인
88
+ task-master list
89
+ ```
90
+
91
+ **Phase 매핑 작성 방법:**
92
+ 1. 해당 PRD 파일(`.taskmaster/docs/`)의 Phase 구조 확인
93
+ 2. `task-master list` 결과에서 실제 Task ID 범위 확인
94
+ 3. 아래 템플릿에 맞춰 매핑 테이블 작성
78
95
 
79
96
  | Phase | TaskMaster Task IDs | 설명 |
80
97
  |-------|---------------------|------|
81
- | Phase 1: MVP | task 1, 2, 3, 4 | 초기 설정, 디자인, 레이아웃, 인증 |
82
- | Phase 2: Core Features | task 5, 6, 7 | 대시보드, VLM, VLM-CoT |
83
- | Phase 3: UX Enhancement | task 8, 9, 10 | 애니메이션, 에러처리, 성능 |
84
- | Phase 4: Deploy | task 11, 12 | CORS, Docker |
98
+ | [PRD Phase 이름] | task N, N+1, ... | [PRD에서 확인] |
99
+ | ... | ... | ... |
100
+
101
+ **참고 - 버전별 Milestone 접두어:**
102
+ - 기존 v1 PRD 태스크: `Phase 1: MVP`, `Phase 2: Core` 등
103
+ - v2 이후 PRD 태스크: `V2 Phase 1: ...`, `V3 Phase 1: ...` 등으로 구분 권장
85
104
 
86
105
  ### 3. 변환 계획 수립 및 사용자 확인
87
106
 
88
107
  아래 형식으로 변환 계획을 출력하고 **반드시 사용자 확인** 요청:
89
108
 
90
109
  ```
91
- [Milestone 생성 계획] (4개)
92
- - Phase 1: MVP (task 1-4 포함)
93
- - Phase 2: Core Features (task 5-7 포함)
94
- - Phase 3: UX Enhancement (task 8-10 포함)
95
- - Phase 4: Deploy (task 11-12 포함)
96
-
97
- [Issue 생성 계획] (12)
98
- Phase 1: MVP 하위:
99
- - Issue: [feature] task 1 - Next.js 15 프로젝트 초기 설정
100
- - Issue: [feature] task 2 - 디자인 시스템 및 테마 구축
101
- - Issue: [feature] task 3 - 공통 레이아웃 및 네비게이션 구현
102
- - Issue: [feature] task 4 - 인증 시스템 및 보호된 라우트 구현
103
- Phase 2: Core Features 하위:
110
+ [PRD 정보]
111
+ - 파일: .taskmaster/docs/<prd-파일명>.md
112
+ - 버전: V2 (또는 해당 버전)
113
+
114
+ [동기화 대상 태스크]
115
+ - Task ID 범위: N ~ M (pending/in-progress 상태)
116
+ - 태스크 수: X
117
+
118
+ [Milestone 생성 계획] (Phase 수에 따라)
119
+ - [버전] Phase 1: [이름] (task N-M 포함)
120
+ - [버전] Phase 2: [이름] (task N-M 포함)
121
+ - ...
122
+
123
+ [Issue 생성 계획] (태스크 수에 따라)
124
+ [버전] Phase 1 하위:
125
+ - Issue: [타입] task N - [태스크 제목]
126
+ - Issue: [타입] task N+1 - [태스크 제목]
104
127
  ...
105
128
  ```
106
129
 
@@ -217,16 +240,17 @@ gh issue create \
217
240
 
218
241
  ### 6. 의존성 연결 및 ID 매핑 기록
219
242
 
220
- **Issue 생성 순서**: task 1부터 순서대로 생성하면 Issue 번호도 순차적
243
+ **Issue 생성 순서**: 동기화 대상 태스크 가장 낮은 ID부터 순서대로 생성
221
244
 
222
245
  | TaskMaster ID | GitHub Issue | 제목 |
223
246
  |---------------|--------------|------|
224
- | task 1 | #1 | Next.js 15 프로젝트 초기 설정 |
225
- | task 2 | #2 | 디자인 시스템 및 테마 구축 |
247
+ | task N | #X | [태스크 제목] |
248
+ | task N+1 | #X+1 | [태스크 제목] |
226
249
  | ... | ... | ... |
227
250
 
228
251
  **의존성 변환:**
229
- - task 2의 dependencies: [1] Issue #2 본문에 "선행 작업: #1 (task 1)"
252
+ - 동기화 대상 의존성: Issue 본문에 "선행 작업: #X (task N)"
253
+ - done 상태 태스크 의존성: Issue 본문에 "선행 작업: task N (완료됨)" - GitHub Issue 없음
230
254
 
231
255
  ### 7. 결과 보고 및 매핑 테이블 출력
232
256
 
@@ -235,23 +259,22 @@ gh issue create \
235
259
  ```
236
260
  [동기화 완료]
237
261
 
238
- Milestones (4개):
239
- - Phase 1: MVP
240
- - Phase 2: Core Features
241
- - Phase 3: UX Enhancement
242
- - Phase 4: Deploy
262
+ PRD: .taskmaster/docs/<파일명>.md
263
+ 버전: [V1/V2/...]
243
264
 
244
- Issues (12개):
265
+ Milestones ([개수]개):
266
+ - [버전] Phase 1: [이름]
267
+ - [버전] Phase 2: [이름]
268
+ - ...
269
+
270
+ Issues ([개수]개):
245
271
  | GitHub Issue | TaskMaster | 제목 | Milestone |
246
272
  |--------------|------------|------|-----------|
247
- | #N | task 1 | Next.js 15 프로젝트 초기 설정 | Phase 1: MVP |
248
- | #N+1 | task 2 | 디자인 시스템 테마 구축 | Phase 1: MVP |
249
- | #N+2 | task 3 | 공통 레이아웃 및 네비게이션 | Phase 1: MVP |
250
- | #N+3 | task 4 | 인증 시스템 구현 | Phase 1: MVP |
251
- | #N+4 | task 5 | 대시보드 홈 구현 | Phase 2: Core |
273
+ | #X | task N | [태스크 제목] | [버전] Phase 1: [이름] |
274
+ | #X+1 | task N+1 | [태스크 제목] | [버전] Phase 1: [이름] |
252
275
  | ... | ... | ... | ... |
253
276
 
254
- (N = 기존 최대 Issue/PR 번호 + 1)
277
+ (X = 기존 최대 Issue/PR 번호 + 1, N = 동기화 대상 시작 Task ID)
255
278
  ```
256
279
 
257
280
  **생성 후 검증:**
@@ -273,9 +296,9 @@ gh issue view <번호> --json body | grep "Task Master 참조"
273
296
  ## 옵션 처리
274
297
 
275
298
  ### 아규먼트
276
- - ARGUMENTS 비어있음: 전체 Task 동기화 (12개)
277
- - ARGUMENTS가 Phase 번호: 해당 Phase만 (예: phase1, 1)
278
- - ARGUMENTS가 Task ID: 해당 Task만 (예: task 1, 1,2,3)
299
+ - ARGUMENTS 비어있음: 동기화 대상 전체 Task (pending/in-progress 상태)
300
+ - ARGUMENTS가 Phase 번호: 해당 Phase만 (예: phase1, 1, v2-phase1)
301
+ - ARGUMENTS가 Task ID: 해당 Task만 (예: task 11, 11,12,13)
279
302
 
280
303
  ### 상태 필터
281
304
  - pending, in-progress 상태만 동기화
@@ -283,6 +306,31 @@ gh issue view <번호> --json body | grep "Task Master 참조"
283
306
 
284
307
  ---
285
308
 
309
+ ## 작업 지침
310
+
311
+ - 한글로 답할 것, Issue 제목/본문도 한글로 작성할 것
312
+ - 코드나 문서 작성 시 이모지 사용 금지
313
+ - 불명확한 사항은 추측하지 말고 AskUserQuestion 도구로 질문
314
+ - 커밋, PR, 이슈에 'Generated with Claude', 'Co-Authored-By: Claude' 등 Claude attribution 금지
315
+
316
+ ### 한글 인코딩 주의사항
317
+
318
+ **문제**: `gh issue create --title` 명령에서 한글이 가끔 `\uXXXX` 유니코드 이스케이프로 깨짐
319
+
320
+ **대응 방법**: Issue 생성 완료 후 제목이 깨졌는지 확인하고, 깨진 경우 `gh issue edit`로 수정
321
+
322
+ ```bash
323
+ # Issue 생성 후 제목 확인
324
+ gh issue list --state open --limit 10 --json number,title
325
+
326
+ # 제목이 깨진 경우 수정
327
+ gh issue edit <번호> --title "[bugfix] 다크모드 비디오 재생 버튼 색상 수정"
328
+ ```
329
+
330
+ **체크포인트**: 모든 Issue 생성 완료 후 `gh issue list`로 제목 확인 필수
331
+
332
+ ---
333
+
286
334
  ## 주의사항
287
335
 
288
336
  1. **중복 생성 방지**
package/README.md CHANGED
@@ -7,7 +7,9 @@ Claude Code CLI를 위한 커스텀 슬래시 커맨드, 에이전트, 스킬
7
7
  ```
8
8
  .claude/
9
9
  ├── commands/ # 슬래시 커맨드
10
+ │ ├── ask-codex.md # Codex MCP로 코드 검토 요청
10
11
  │ ├── ask-deepwiki.md # DeepWiki로 GitHub 리포 심층 질의
12
+ │ ├── ask-gemini.md # Gemini CLI로 코드 검토 요청
11
13
  │ ├── code-review.md # CodeRabbit 등 외부 리뷰 처리
12
14
  │ ├── commit-and-push.md # Git 커밋 및 푸시 자동화
13
15
  │ ├── edit-notebook.md # Jupyter Notebook 안전 편집
@@ -15,11 +17,14 @@ Claude Code CLI를 위한 커스텀 슬래시 커맨드, 에이전트, 스킬
15
17
  │ ├── gh/
16
18
  │ │ ├── create-issue-label.md # GitHub 이슈 라벨 생성
17
19
  │ │ ├── decompose-issue.md # 큰 작업을 이슈로 분해
20
+ │ │ ├── init-project.md # GitHub Project 보드 초기화
18
21
  │ │ ├── post-merge.md # PR 머지 후 정리 작업
19
22
  │ │ └── resolve-issue.md # GitHub 이슈 해결 워크플로우
20
23
  │ └── tm/
24
+ │ ├── convert-prd.md # PRD 초안을 TaskMaster 형식으로 변환
21
25
  │ ├── post-merge.md # TaskMaster 연동 PR 머지 후 정리
22
26
  │ ├── resolve-issue.md # TaskMaster 기반 이슈 해결
27
+ │ ├── review-prd-with-codex.md # PRD를 Codex로 검토
23
28
  │ └── sync-to-github.md # TaskMaster -> GitHub 동기화
24
29
  ├── agents/ # 커스텀 에이전트
25
30
  │ ├── web-researcher.md # 다중 플랫폼 웹 리서치
@@ -48,6 +53,8 @@ Claude Code CLI를 위한 커스텀 슬래시 커맨드, 에이전트, 스킬
48
53
  | `/code-review` | CodeRabbit 등 외부 코드 리뷰 결과를 분석하고 자동 수정 적용 |
49
54
  | `/edit-notebook` | Jupyter Notebook 파일을 NotebookEdit 도구로 안전하게 편집 |
50
55
  | `/ask-deepwiki` | DeepWiki MCP를 활용하여 GitHub 리포지토리에 심층 질의 |
56
+ | `/ask-codex` | Codex MCP로 현재 작업 코드 검토 요청 (Claude cross-check 포함) |
57
+ | `/ask-gemini` | Gemini CLI로 현재 작업 코드 검토 요청 (Claude cross-check 포함) |
51
58
 
52
59
  ### GitHub 워크플로우 커맨드 (`/gh/`)
53
60
 
@@ -55,6 +62,7 @@ Claude Code CLI를 위한 커스텀 슬래시 커맨드, 에이전트, 스킬
55
62
  |--------|------|
56
63
  | `/gh/create-issue-label` | 프로젝트 구조 분석 후 적절한 GitHub 이슈 라벨 생성 |
57
64
  | `/gh/decompose-issue` | 큰 작업을 관리 가능한 독립적인 이슈들로 분해 |
65
+ | `/gh/init-project` | GitHub Project 보드 초기화 및 설정 |
58
66
  | `/gh/post-merge` | PR 머지 후 브랜치 정리 및 CLAUDE.md 업데이트 |
59
67
  | `/gh/resolve-issue` | GitHub 이슈 번호를 받아 체계적으로 분석하고 해결 |
60
68
 
@@ -62,8 +70,10 @@ Claude Code CLI를 위한 커스텀 슬래시 커맨드, 에이전트, 스킬
62
70
 
63
71
  | 커맨드 | 설명 |
64
72
  |--------|------|
73
+ | `/tm/convert-prd` | PRD 초안을 TaskMaster PRD 형식으로 변환 |
65
74
  | `/tm/sync-to-github` | TaskMaster tasks.json을 GitHub Issue/Milestone으로 동기화 |
66
75
  | `/tm/resolve-issue` | GitHub Issue를 TaskMaster subtask 단위로 체계적 해결 |
76
+ | `/tm/review-prd-with-codex` | PRD를 Codex MCP로 검토하고 Claude가 cross-check |
67
77
  | `/tm/post-merge` | PR 머지 후 TaskMaster 상태 업데이트 및 브랜치 정리 |
68
78
 
69
79
  ## 에이전트