@kood/claude-code 0.4.1 → 0.5.0

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.
Files changed (149) hide show
  1. package/dist/index.js +53 -7
  2. package/package.json +2 -1
  3. package/templates/.claude/PARALLEL_AGENTS.md +737 -0
  4. package/templates/.claude/agents/analyst.md +416 -0
  5. package/templates/.claude/agents/architect.md +569 -0
  6. package/templates/.claude/agents/code-reviewer.md +132 -133
  7. package/templates/.claude/agents/dependency-manager.md +93 -94
  8. package/templates/.claude/agents/deployment-validator.md +64 -65
  9. package/templates/.claude/agents/designer.md +655 -0
  10. package/templates/.claude/agents/document-writer.md +500 -0
  11. package/templates/.claude/agents/explore.md +499 -0
  12. package/templates/.claude/agents/git-operator.md +74 -75
  13. package/templates/.claude/agents/implementation-executor.md +138 -109
  14. package/templates/.claude/agents/ko-to-en-translator.md +18 -22
  15. package/templates/.claude/agents/lint-fixer.md +250 -93
  16. package/templates/.claude/agents/planner.md +356 -0
  17. package/templates/.claude/agents/refactor-advisor.md +135 -136
  18. package/templates/.claude/commands/bug-fix.md +296 -207
  19. package/templates/.claude/commands/git-all.md +199 -46
  20. package/templates/.claude/commands/git-session.md +113 -57
  21. package/templates/.claude/commands/lint-fix.md +219 -153
  22. package/templates/.claude/commands/lint-init.md +113 -76
  23. package/templates/.claude/commands/pre-deploy.md +190 -124
  24. package/templates/.claude/commands/refactor.md +407 -162
  25. package/templates/.claude/commands/version-update.md +138 -37
  26. package/templates/.claude/instructions/context-engineering/ANTHROPIC_CONTEXT_ENGINEERING.md +178 -0
  27. package/templates/.claude/instructions/context-engineering/references/claude-4x.md +215 -0
  28. package/templates/.claude/instructions/context-engineering/references/core-principles.md +137 -0
  29. package/templates/.claude/instructions/context-engineering/references/examples.md +351 -0
  30. package/templates/.claude/instructions/context-engineering/references/techniques.md +162 -0
  31. package/templates/.claude/instructions/parallel-agent-execution.md +874 -0
  32. package/templates/.claude/skills/docs-creator/AGENTS.md +238 -0
  33. package/templates/.claude/{commands/docs-creator.md → skills/docs-creator/SKILL.md} +61 -75
  34. package/templates/.claude/skills/docs-refactor/AGENTS.md +270 -0
  35. package/templates/.claude/{commands/docs-refactor.md → skills/docs-refactor/SKILL.md} +30 -44
  36. package/templates/.claude/skills/execute/SKILL.md +451 -0
  37. package/templates/.claude/skills/figma-to-code/AGENTS.md +287 -0
  38. package/templates/.claude/skills/figma-to-code/SKILL.md +225 -225
  39. package/templates/.claude/skills/figma-to-code/references/design-tokens.md +75 -73
  40. package/templates/.claude/skills/figma-to-code/references/figma-mcp-tools.md +73 -73
  41. package/templates/.claude/skills/figma-to-code/references/layout-mapping.md +104 -104
  42. package/templates/.claude/skills/figma-to-code/references/responsive-design.md +99 -99
  43. package/templates/.claude/skills/figma-to-code/references/verification.md +91 -91
  44. package/templates/.claude/skills/global-uiux-design/AGENTS.md +317 -0
  45. package/templates/.claude/skills/global-uiux-design/SKILL.md +738 -0
  46. package/templates/.claude/skills/global-uiux-design/references/accessibility.md +401 -0
  47. package/templates/.claude/skills/global-uiux-design/references/color-system.md +275 -0
  48. package/templates/.claude/skills/global-uiux-design/references/design-philosophy.md +206 -0
  49. package/templates/.claude/skills/global-uiux-design/references/design-systems.md +446 -0
  50. package/templates/.claude/skills/korea-uiux-design/AGENTS.md +307 -0
  51. package/templates/.claude/skills/korea-uiux-design/SKILL.md +170 -0
  52. package/templates/.claude/skills/nextjs-react-best-practices/AGENTS.md +95 -116
  53. package/templates/.claude/skills/nextjs-react-best-practices/SKILL.md +134 -152
  54. package/templates/.claude/skills/nextjs-react-best-practices/rules/advanced-event-handler-refs.md +6 -6
  55. package/templates/.claude/skills/nextjs-react-best-practices/rules/advanced-use-latest.md +5 -5
  56. package/templates/.claude/skills/nextjs-react-best-practices/rules/async-api-routes.md +5 -5
  57. package/templates/.claude/skills/nextjs-react-best-practices/rules/async-defer-await.md +22 -22
  58. package/templates/.claude/skills/nextjs-react-best-practices/rules/async-dependencies.md +5 -5
  59. package/templates/.claude/skills/nextjs-react-best-practices/rules/async-parallel.md +4 -4
  60. package/templates/.claude/skills/nextjs-react-best-practices/rules/async-suspense-boundaries.md +21 -21
  61. package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-barrel-imports.md +18 -18
  62. package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-conditional.md +4 -4
  63. package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-defer-third-party.md +4 -4
  64. package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-dynamic-imports.md +4 -4
  65. package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-preload.md +5 -5
  66. package/templates/.claude/skills/nextjs-react-best-practices/rules/client-event-listeners.md +9 -9
  67. package/templates/.claude/skills/nextjs-react-best-practices/rules/client-swr-dedup.md +7 -7
  68. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-batch-dom-css.md +13 -13
  69. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-function-results.md +14 -14
  70. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-property-access.md +4 -4
  71. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-storage.md +10 -10
  72. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-combine-iterations.md +4 -4
  73. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-early-exit.md +7 -7
  74. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-hoist-regexp.md +6 -6
  75. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-index-maps.md +6 -6
  76. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-length-check-first.md +14 -14
  77. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-min-max-loop.md +16 -16
  78. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-set-map-lookups.md +4 -4
  79. package/templates/.claude/skills/nextjs-react-best-practices/rules/js-tosorted-immutable.md +17 -17
  80. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-activity.md +4 -4
  81. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-animate-svg-wrapper.md +11 -11
  82. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-conditional-render.md +8 -8
  83. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-content-visibility.md +4 -4
  84. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-hoist-jsx.md +6 -6
  85. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-hydration-no-flicker.md +14 -14
  86. package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-svg-precision.md +5 -5
  87. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-defer-reads.md +4 -4
  88. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-dependencies.md +7 -7
  89. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-derived-state.md +5 -5
  90. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-functional-setstate.md +34 -34
  91. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-lazy-state-init.md +15 -15
  92. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-memo.md +5 -5
  93. package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-transitions.md +4 -4
  94. package/templates/.claude/skills/nextjs-react-best-practices/rules/server-after-nonblocking.md +24 -24
  95. package/templates/.claude/skills/nextjs-react-best-practices/rules/server-cache-lru.md +10 -10
  96. package/templates/.claude/skills/nextjs-react-best-practices/rules/server-cache-react.md +4 -4
  97. package/templates/.claude/skills/nextjs-react-best-practices/rules/server-parallel-fetching.md +5 -5
  98. package/templates/.claude/skills/nextjs-react-best-practices/rules/server-serialization.md +6 -6
  99. package/templates/.claude/skills/plan/SKILL.md +594 -0
  100. package/templates/.claude/skills/prd/SKILL.md +496 -0
  101. package/templates/.claude/skills/ralph/AGENTS.md +393 -0
  102. package/templates/.claude/skills/ralph/SKILL.md +1035 -0
  103. package/templates/.claude/skills/tanstack-start-react-best-practices/AGENTS.md +100 -121
  104. package/templates/.claude/skills/tanstack-start-react-best-practices/SKILL.md +139 -157
  105. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-defer-await.md +22 -22
  106. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-dependencies.md +5 -5
  107. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-loader.md +7 -7
  108. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-parallel.md +4 -4
  109. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-barrel-imports.md +18 -18
  110. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-conditional.md +4 -4
  111. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-defer-third-party.md +4 -4
  112. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-lazy-routes.md +12 -12
  113. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-preload.md +5 -5
  114. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/client-event-listeners.md +9 -9
  115. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/client-tanstack-query.md +12 -12
  116. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-batch-dom-css.md +13 -13
  117. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-function-results.md +14 -14
  118. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-property-access.md +4 -4
  119. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-storage.md +10 -10
  120. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-combine-iterations.md +4 -4
  121. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-early-exit.md +7 -7
  122. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-hoist-regexp.md +6 -6
  123. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-index-maps.md +6 -6
  124. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-length-check-first.md +14 -14
  125. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-min-max-loop.md +16 -16
  126. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-set-map-lookups.md +4 -4
  127. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-tosorted-immutable.md +17 -17
  128. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-animate-svg-wrapper.md +11 -11
  129. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-conditional-render.md +8 -8
  130. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-content-visibility.md +4 -4
  131. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-hoist-jsx.md +6 -6
  132. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-svg-precision.md +5 -5
  133. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-defer-reads.md +4 -4
  134. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-dependencies.md +7 -7
  135. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-derived-state.md +5 -5
  136. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-functional-setstate.md +34 -34
  137. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-lazy-state-init.md +15 -15
  138. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-memo.md +5 -5
  139. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-transitions.md +4 -4
  140. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-cache-lru.md +12 -12
  141. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-deferred-data.md +14 -14
  142. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-parallel-fetching.md +9 -9
  143. package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-serialization.md +6 -6
  144. package/templates/.claude/commands/agent-creator.md +0 -370
  145. package/templates/.claude/commands/command-creator.md +0 -524
  146. package/templates/.claude/commands/execute.md +0 -469
  147. package/templates/.claude/commands/git.md +0 -98
  148. package/templates/.claude/commands/plan.md +0 -526
  149. package/templates/.claude/commands/prd.md +0 -629
@@ -1,629 +0,0 @@
1
- ---
2
- description: PRD(Product Requirements Document) 생성
3
- allowed-tools: Read, Write, Glob, Grep, Task, mcp__sequential-thinking__sequentialthinking
4
- argument-hint: <feature/product description>
5
- ---
6
-
7
- <critical_instruction>
8
-
9
- **CRITICAL: 사용자와의 모든 커뮤니케이션은 반드시 한국어로 작성하세요.**
10
-
11
- - 내부 사고와 분석은 영어로 해도 됨
12
- - 설명, 요약, 보고서, 피드백 등 사용자에게 전달하는 모든 내용은 반드시 한국어
13
- - 사용자가 영어로 말하더라도 답변은 한국어로
14
- - 진행 상황 업데이트와 상태 보고는 반드시 한국어
15
-
16
- 이 규칙은 절대적이며 예외가 없습니다.
17
-
18
- </critical_instruction>
19
-
20
- ---
21
-
22
-
23
- @../instructions/sequential-thinking-guide.md
24
-
25
- # PRD Command
26
-
27
- Write Product Requirements Document (PRD) for feature/product.
28
-
29
- **Target**: $ARGUMENTS
30
-
31
- ---
32
-
33
- <workflow>
34
-
35
- ## Execution Flow
36
-
37
- | Step | Task | Tool |
38
- |------|------|------|
39
- | 1. Validate input | Verify ARGUMENT, ask if missing | - |
40
- | 2. Sequential Thinking | Analyze PRD structure in 3-5 steps | sequentialthinking |
41
- | 3. Check codebase | Explore related code/documents (if needed) | Task (Explore) |
42
- | 4. Write PRD | Write in 15-section structure | Write |
43
- | 5. Save | Save to `.claude/plans/` or `docs/prd/` | - |
44
-
45
- </workflow>
46
-
47
- ---
48
-
49
- <forbidden>
50
-
51
- | Category | Forbidden |
52
- |----------|-----------|
53
- | **Problem definition** | Include solutions/feature list |
54
- | **Scope** | List without In/Out distinction |
55
- | **Expression** | Vague expressions ("good UX", "fast") |
56
- | **Style** | Marketing language, excessive adjectives |
57
-
58
- </forbidden>
59
-
60
- ---
61
-
62
- <required>
63
-
64
- | Category | Required |
65
- |----------|----------|
66
- | **Structure** | 15 sections (metadata ~ template) |
67
- | **Feature requirements** | User Stories + Functional + Non-functional |
68
- | **Metrics** | Current value → target value format |
69
- | **Assumptions/Risks** | Specify in separate section |
70
- | **Style** | Short clear sentences, concrete examples |
71
-
72
- </required>
73
-
74
- ---
75
-
76
- <prd_structure>
77
-
78
- ## PRD 15개 섹션 구조
79
-
80
- ### 1. 메타데이터
81
-
82
- | 항목 | 내용 |
83
- |------|------|
84
- | **제목** | 제품명 + 버전/설명 |
85
- | **작성자** | PM/오너 |
86
- | **버전** | v0.1 (초안), v1.0 (확정) 등 |
87
- | **날짜** | 최초 작성일, 마지막 수정일 |
88
- | **관련 문서** | 전략 문서, 디자인, 기술 설계 링크 |
89
-
90
- ### 2. 비전 & 배경
91
-
92
- ```text
93
- ✅ 3-5문장 이내
94
- ✅ "어떤 사용자, 어떤 문제, 어떤 임팩트"
95
-
96
- 포함 내용:
97
- - 제품 비전 (1-2문장)
98
- - 배경/컨텍스트 (왜 지금 하는지)
99
- - 이전 시도/기존 제품 한계 (간단히)
100
- ```
101
-
102
- ### 3. 문제 정의 & 목표
103
-
104
- | 섹션 | 내용 | 포함 요소 |
105
- |------|------|----------|
106
- | **문제 정의** | 어떤 문제/기회가 있는지 | 유저 피드백, 지표 (전환율, 이탈률) |
107
- | **목표** | 비즈니스/사용자 목표 | 측정 가능한 KPI (예: 결제율 +5%) |
108
-
109
- ```text
110
- ❌ 솔루션/기능 목록 넣지 않기
111
- ✅ "무엇이 문제이고 무엇을 달성하려 하는지"만
112
- ```
113
-
114
- ### 4. 범위 (Scope)
115
-
116
- | 구분 | 내용 |
117
- |------|------|
118
- | **In Scope** | 이번 릴리즈 포함 기능 (P0/P1 표시) |
119
- | **Out of Scope** | 하지 않는 것 (후속 릴리즈 메모) |
120
-
121
- ### 5. 타깃 유저 & 페르소나
122
-
123
- ```markdown
124
- ## 주요 타깃 유저
125
- - 세그먼트 1
126
- - 세그먼트 2
127
-
128
- ## 페르소나 (1-3개)
129
- **이름(가명)**:
130
- **역할**:
131
- **목표**:
132
- **Pain Point**:
133
-
134
- **Primary Persona**: [가장 우선 해결]
135
- ```
136
-
137
- ```text
138
- ✅ 행동/맥락/목표 중심
139
- ❌ 기능 설명 아님
140
- ```
141
-
142
- ### 6. 사용자 여정 & 시나리오
143
-
144
- ```markdown
145
- ## 주요 여정 단계
146
- 랜딩 → 가입 → 첫 세팅 → 핵심 기능 → 반복 → 업그레이드
147
-
148
- ## 이번 PRD 구간
149
- [해당 구간 표시]
150
-
151
- ## 대표 시나리오
152
- 사용자 A는 X를 하기 위해 앱을 연다.
153
- ...
154
- 그래서 Y를 할 수 있게 된다.
155
- ```
156
-
157
- ```text
158
- ✅ 사용자 목적과 단계만 요약
159
- ❌ 상세한 UI 단계 나열 금지
160
- ```
161
-
162
- ### 7. 기능 요구사항 (핵심)
163
-
164
- #### 기능 구조
165
-
166
- 각 기능마다 포함:
167
-
168
- | 필드 | 내용 |
169
- |------|------|
170
- | **기능 이름** | - |
171
- | **설명** | 1-2문장 |
172
- | **목표/가치** | 어떤 문제 해결, 어떤 지표 영향 |
173
- | **우선순위** | P0/P1 또는 Must/Should/Could |
174
- | **관련 시나리오** | 사용자 시나리오/페르소나 |
175
-
176
- #### 기능 상세
177
-
178
- ```markdown
179
- ### [기능 1]
180
-
181
- #### User Stories
182
- - As a [유저 타입], I want to [행동] so that [가치]
183
- - ...
184
-
185
- #### 기능 설명
186
- 동작, 상태, 변형 설명.
187
- - Happy Path
188
- - Alternative Flow
189
- - Edge Case
190
-
191
- #### Functional Requirements
192
- - 시스템은 X 버튼 클릭 시 Y API 호출해야 함
193
- - 성공 시 Z 화면 이동해야 함
194
-
195
- #### Non-functional Requirements
196
- - 퍼포먼스: 응답 시간 < 200ms
197
- - 보안: JWT 인증 필수
198
- - 사용성: 키보드 네비게이션 지원
199
- ```
200
-
201
- ### 8. UX/UI 요구사항
202
-
203
- | 항목 | 내용 |
204
- |------|------|
205
- | **핵심 원칙** | "간편함 우선", "모바일 우선" 등 |
206
- | **UI 제약** | 필수 정보, 숨기면 안 되는 액션 |
207
- | **접근성** | 다국어, 키보드, 대비, 폰트 제한 |
208
-
209
- ```text
210
- ✅ 디자인이 꼭 지켜야 하는 제약/원칙
211
- ❌ 상세 디자인 아님
212
- ```
213
-
214
- ### 9. 기술/데이터 요구사항
215
-
216
- | 항목 | 내용 |
217
- |------|------|
218
- | **기술 제약** | 스택, 호환성, 아키텍처 연결 |
219
- | **통합/의존성** | 외부 서비스 API, 내부 시스템 |
220
- | **데이터** | 저장/조회/집계 데이터, 엔티티 |
221
- | **보안/규제** | 인증/인가, 개인정보, 감사 로그 |
222
-
223
- ```text
224
- ✅ 개발 설계 시작 전 꼭 알아야 할 제약
225
- ❌ 구현 세부 코드 수준 금지
226
- ```
227
-
228
- ### 10. 성공 지표 & KPI
229
-
230
- ```markdown
231
- | 지표 | 현재값 | 목표값 | 측정 방법 |
232
- |------|--------|--------|----------|
233
- | 활성 사용자 | 1,000 | 1,500 | GA 이벤트 |
234
- | 전환율 | 20% | 25% | 결제 완료 / 방문 |
235
- | 이탈률 | 40% | 25% 이하 | 가입 플로우 |
236
- ```
237
-
238
- ```text
239
- ✅ 현재값 → 목표값 형태
240
- ✅ 측정 방법 명시
241
- ```
242
-
243
- ### 11. 리스크, 가정, 의존성
244
-
245
- | 분류 | 내용 |
246
- |------|------|
247
- | **가정** | "유저는 이메일 인증 완료 상태", "마케팅 캠페인 진행" |
248
- | **리스크** | 기술/비즈니스/UX 리스크, 심각도/가능성 |
249
- | **의존성** | 다른 팀/프로젝트/벤더, 선행 작업 |
250
-
251
- ```text
252
- ✅ 별도 섹션으로 명확히
253
- ❌ 기능 설명에 섞지 않기
254
- ```
255
-
256
- ### 12. 릴리즈 전략 & 마일스톤
257
-
258
- ```markdown
259
- ## 릴리즈 전략
260
- - 전체 론칭 / 단계적 롤아웃 / A/B 테스트
261
-
262
- ## 마일스톤
263
- - 설계 완료: 2025-02-15
264
- - 개발 완료: 2025-03-01
265
- - 베타 릴리즈: 2025-03-15
266
- - GA: 2025-04-01
267
-
268
- ## 롤백 계획
269
- - Feature Flag 사용
270
- - 문제 발생 시 즉시 비활성화
271
- ```
272
-
273
- ```text
274
- ✅ 타임라인 + 큰 이벤트만
275
- ❌ 상세 스프린트 계획 금지
276
- ```
277
-
278
- ### 13. 오픈 이슈 & Todo
279
-
280
- ```markdown
281
- ## Open Questions
282
-
283
- | 질문 | 결정자 | 기한 |
284
- |------|--------|------|
285
- | 가격 정책 | PM | 2025-02-10 |
286
- | 온보딩 플로우 구성 | UX팀 | 2025-02-15 |
287
- | 정책 문구 확정 | Legal | 2025-02-20 |
288
- ```
289
-
290
- ```text
291
- ✅ 불확실한 부분 명시
292
- ❌ 숨기지 않기
293
- ```
294
-
295
- ### 14. 작성 스타일 가이드 (Claude용)
296
-
297
- | 원칙 | 적용 |
298
- |------|------|
299
- | **톤** | 짧고 명확한 문장, 수식어 제거 |
300
- | **구조** | 1-13 섹션 순서 유지 |
301
- | **구체성** | "좋은 UX" → 구체적 기준/예시 |
302
- | **트레이드오프** | 선택 이유 한 줄 설명 |
303
-
304
- ### 15. Claude 최종 지시
305
-
306
- ```text
307
- 1. 15개 섹션 구조 기준으로 PRD 구성
308
- 2. 입력(아이디어, 회의 메모)을 다음으로 재구성:
309
- - 문제/목표
310
- - 범위
311
- - 기능 요구사항
312
- - 리스크/가정
313
- - 성공 지표
314
-
315
- 3. 기능/요구사항 작성 시 포함:
316
- - User Stories
317
- - 기능 설명
318
- - Functional Requirements
319
- - Non-functional Requirements
320
-
321
- 4. 불명확한 부분:
322
- - "Open Questions" 섹션에 질문 리스트
323
-
324
- 5. 기존 PRD 수정 시:
325
- - Change log (변경 요약)
326
- ```
327
-
328
- </prd_structure>
329
-
330
- ---
331
-
332
- <template>
333
-
334
- ## PRD 템플릿
335
-
336
- ```markdown
337
- # [제품/기능명] PRD
338
-
339
- ## 메타데이터
340
-
341
- | 항목 | 내용 |
342
- |------|------|
343
- | **작성자** | [이름] |
344
- | **버전** | v0.1 |
345
- | **작성일** | YYYY-MM-DD |
346
- | **수정일** | YYYY-MM-DD |
347
- | **관련 문서** | [링크] |
348
-
349
- ---
350
-
351
- ## 1. 비전 & 배경
352
-
353
- **비전**: [1-2문장]
354
-
355
- **배경**: [왜 지금 하는지]
356
-
357
- **기존 한계**: [간단히]
358
-
359
- ---
360
-
361
- ## 2. 문제 정의 & 목표
362
-
363
- ### 문제
364
- [어떤 문제/기회]
365
-
366
- **인사이트**:
367
- - 유저 피드백: [요약]
368
- - 지표: 전환율 15%, 이탈률 50%
369
-
370
- ### 목표
371
-
372
- | 분류 | 목표 |
373
- |------|------|
374
- | **비즈니스** | 결제 완료율 +5% |
375
- | **사용자** | 작업 시간 30% 단축 |
376
-
377
- ---
378
-
379
- ## 3. 범위
380
-
381
- ### In Scope (P0/P1)
382
- - [ ] 기능 1 (P0)
383
- - [ ] 기능 2 (P1)
384
-
385
- ### Out of Scope
386
- - 기능 X (후속 릴리즈)
387
-
388
- ---
389
-
390
- ## 4. 타깃 유저 & 페르소나
391
-
392
- ### 주요 세그먼트
393
- - 세그먼트 1
394
- - 세그먼트 2
395
-
396
- ### 페르소나
397
-
398
- **이름**: 김OO
399
- **역할**: 소규모 쇼핑몰 운영자
400
- **목표**: 재고 관리 자동화
401
- **Pain Point**: 수동 입력 시간 과다
402
-
403
- **Primary Persona**: 김OO
404
-
405
- ---
406
-
407
- ## 5. 사용자 여정 & 시나리오
408
-
409
- ### 여정 단계
410
- `랜딩 → [가입 → 첫 세팅] → 핵심 기능 → 반복 → 업그레이드`
411
-
412
- ### 대표 시나리오
413
- 사용자는 재고를 빠르게 등록하기 위해 앱을 연다.
414
- ...
415
- 5분 안에 100개 상품을 등록할 수 있다.
416
-
417
- ---
418
-
419
- ## 6. 기능 요구사항
420
-
421
- ### 기능 1: [이름]
422
-
423
- **설명**: [1-2문장]
424
-
425
- **목표**: [어떤 문제 해결]
426
-
427
- **우선순위**: P0
428
-
429
- #### User Stories
430
- - As a 쇼핑몰 운영자, I want to 엑셀로 재고를 일괄 등록 so that 시간을 절약할 수 있다
431
-
432
- #### 기능 설명
433
- - 엑셀 파일 업로드 (최대 1,000행)
434
- - 검증: 필수 필드, 중복 체크
435
- - 성공/실패 피드백
436
-
437
- #### Functional Requirements
438
- - 시스템은 엑셀 업로드 시 필수 필드(상품명, 가격) 검증해야 함
439
- - 중복 상품은 경고 표시 후 사용자 선택(덮어쓰기/건너뛰기)
440
- - 성공 시 재고 목록 페이지로 이동
441
-
442
- #### Non-functional Requirements
443
- - 성능: 1,000행 처리 < 3초
444
- - 보안: 파일 크기 제한 5MB
445
- - 사용성: 진행률 표시
446
-
447
- ---
448
-
449
- ### 기능 2: [이름]
450
- ...
451
-
452
- ---
453
-
454
- ## 7. UX/UI 요구사항
455
-
456
- | 항목 | 내용 |
457
- |------|------|
458
- | **핵심 원칙** | 간편함 우선, 3클릭 이내 완료 |
459
- | **필수 정보** | 진행률 바, 에러 메시지 |
460
- | **접근성** | 키보드 네비게이션, 한/영 지원 |
461
-
462
- ---
463
-
464
- ## 8. 기술/데이터 요구사항
465
-
466
- | 항목 | 내용 |
467
- |------|------|
468
- | **기술 스택** | React, TanStack Query, Prisma |
469
- | **통합** | Excel Parser (xlsx.js) |
470
- | **데이터** | Product 테이블 (name, price, quantity) |
471
- | **보안** | JWT 인증, File validation |
472
-
473
- ---
474
-
475
- ## 9. 성공 지표 & KPI
476
-
477
- | 지표 | 현재값 | 목표값 | 측정 방법 |
478
- |------|--------|--------|----------|
479
- | 등록 시간 | 평균 15분 | 5분 이하 | 업로드 완료 이벤트 |
480
- | 에러율 | 30% | 10% 이하 | 실패 업로드 / 전체 |
481
- | 주간 활성 | 500명 | 800명 | GA 이벤트 |
482
-
483
- ---
484
-
485
- ## 10. 리스크, 가정, 의존성
486
-
487
- | 분류 | 내용 |
488
- |------|------|
489
- | **가정** | 사용자는 엑셀 형식을 알고 있음 |
490
- | **리스크** | 대용량 파일 처리 성능 (완화: 행 수 제한) |
491
- | **의존성** | xlsx.js 라이브러리 |
492
-
493
- ---
494
-
495
- ## 11. 릴리즈 전략
496
-
497
- **전략**: 단계적 롤아웃 (베타 → GA)
498
-
499
- **마일스톤**:
500
- - 설계 완료: 2025-02-20
501
- - 베타 릴리즈: 2025-03-10 (100명)
502
- - GA: 2025-03-25
503
-
504
- **롤백**: Feature Flag 사용
505
-
506
- ---
507
-
508
- ## 12. 오픈 이슈
509
-
510
- | 질문 | 결정자 | 기한 |
511
- |------|--------|------|
512
- | 엑셀 템플릿 제공 여부 | PM | 2025-02-15 |
513
- | 에러 메시지 문구 확정 | UX | 2025-02-20 |
514
- ```
515
-
516
- </template>
517
-
518
- ---
519
-
520
- <examples>
521
-
522
- ## 실전 예시
523
-
524
- ### 예시 1: 사용자 프로필 편집
525
-
526
- ```bash
527
- 사용자: /prd 사용자 프로필 편집 기능
528
-
529
- 1. Sequential Thinking (5단계):
530
- thought 1: "프로필 편집 - 보통 복잡도, CRUD 기본 기능"
531
- thought 2: "현재 User 모델 확인 필요, 인증 방식 파악"
532
- thought 3: "편집 가능 필드: 이름, 이메일, 프로필 이미지"
533
- thought 4: "검증: 이메일 중복, 이미지 크기, 형식"
534
- thought 5: "API: PUT /api/user/:id, 클라이언트: useQuery + useMutation"
535
-
536
- 2. Task 탐색:
537
- Task (Explore): "User 모델 및 인증 구조 분석"
538
-
539
- 3. PRD 작성:
540
- → .claude/plans/profile-edit-prd.md
541
-
542
- 4. 주요 섹션:
543
- - 문제: 사용자가 정보를 수정할 방법이 없음
544
- - 목표: 프로필 편집 완료율 90% 이상
545
- - 기능: 이름/이메일/이미지 편집, 실시간 검증
546
- - KPI: 편집 완료율, 에러율
547
- ```
548
-
549
- ### 예시 2: 실시간 알림
550
-
551
- ```bash
552
- 사용자: /prd 실시간 알림 시스템 추가
553
-
554
- 1. Sequential Thinking (7단계):
555
- thought 1: "실시간 알림 - 복잡도 높음, 새 인프라 필요"
556
- thought 2: "현재 통신: REST만, 폴링 없음"
557
- thought 3: "제약: 서버 부하, 클라이언트 연결 관리"
558
- thought 4: "접근: WebSocket vs SSE vs Firebase"
559
- thought 5: "WebSocket - 양방향, 복잡. SSE - 단방향, 간단"
560
- thought 6: "옵션 3개: WebSocket(추천), SSE, Firebase"
561
- thought 7: "WebSocket 추천 - 확장성, 제어 가능"
562
-
563
- 2. PRD 작성:
564
- - 비전: "사용자가 즉시 중요한 업데이트를 받는다"
565
- - 범위:
566
- * In: 주문 상태, 메시지 알림
567
- * Out: 푸시 알림 (후속)
568
- - 기술: WebSocket (ws 라이브러리), Redis Pub/Sub
569
- - 리스크: 연결 안정성 (완화: 자동 재연결)
570
- ```
571
-
572
- ### 예시 3: 대시보드 분석 기능
573
-
574
- ```bash
575
- 사용자: /prd 대시보드 분석 기능 - 매출, 주문, 트래픽 차트
576
-
577
- 1. Sequential Thinking (5단계):
578
- thought 1: "대시보드 - 보통 복잡도, 데이터 집계 + 시각화"
579
- thought 2: "데이터: Order, Payment, Analytics 테이블"
580
- thought 3: "차트: 라인(트렌드), 바(비교), 파이(비율)"
581
- thought 4: "필터: 기간(일/주/월), 카테고리"
582
- thought 5: "성능: 집계 쿼리 최적화, 캐싱 필요"
583
-
584
- 2. PRD 핵심:
585
- - 문제: 매출 데이터를 확인하려면 여러 페이지 접근 필요
586
- - 목표: 대시보드 사용률 70% 이상
587
- - 기능 요구사항:
588
- * User Story: "As a 관리자, I want to 매출 트렌드를 한눈에 보고 싶다"
589
- * Functional: 기간별 매출 집계, 차트 렌더링
590
- * Non-functional: 쿼리 < 500ms, 캐싱 5분
591
- - 성공 지표:
592
- * 페이지뷰: 0 → 500/일
593
- * 로딩 시간: - → 500ms 이하
594
- ```
595
-
596
- </examples>
597
-
598
- ---
599
-
600
- <validation>
601
-
602
- ## 검증 체크리스트
603
-
604
- 실행 전:
605
-
606
- ```text
607
- ✅ ARGUMENT 확인 (없으면 질문)
608
- ✅ Sequential Thinking 3-5단계
609
- ✅ Task (Explore)로 코드베이스 확인 (필요시)
610
- ✅ 15개 섹션 구조 준수
611
- ✅ User Stories 형식 작성
612
- ✅ Functional/Non-functional 구분
613
- ✅ 현재값 → 목표값 지표
614
- ✅ Open Questions 명시 (불확실한 부분)
615
- ```
616
-
617
- 절대 금지:
618
-
619
- ```text
620
- ❌ ARGUMENT 없이 PRD 작성
621
- ❌ Sequential Thinking 3단계 미만
622
- ❌ 문제 정의에 솔루션 포함
623
- ❌ In/Out Scope 구분 없이 나열
624
- ❌ 모호한 표현만 사용 ("좋은 UX")
625
- ❌ User Stories 없이 기능만 나열
626
- ❌ 불확실한 부분 숨기기
627
- ```
628
-
629
- </validation>