@kood/claude-code 0.5.0 → 0.5.3

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 (66) hide show
  1. package/dist/index.js +179 -33
  2. package/package.json +1 -1
  3. package/templates/.claude/agents/analyst.md +6 -14
  4. package/templates/.claude/agents/architect.md +6 -14
  5. package/templates/.claude/agents/code-reviewer.md +8 -14
  6. package/templates/.claude/agents/dependency-manager.md +8 -14
  7. package/templates/.claude/agents/deployment-validator.md +8 -14
  8. package/templates/.claude/agents/designer.md +8 -0
  9. package/templates/.claude/agents/document-writer.md +6 -14
  10. package/templates/.claude/agents/explore.md +8 -3
  11. package/templates/.claude/agents/git-operator.md +63 -17
  12. package/templates/.claude/agents/implementation-executor.md +14 -37
  13. package/templates/.claude/agents/ko-to-en-translator.md +8 -13
  14. package/templates/.claude/agents/lint-fixer.md +8 -172
  15. package/templates/.claude/agents/planner.md +6 -14
  16. package/templates/.claude/agents/refactor-advisor.md +8 -14
  17. package/templates/.claude/commands/git-all.md +3 -167
  18. package/templates/.claude/commands/git-session.md +3 -71
  19. package/templates/.claude/commands/lint-fix.md +119 -82
  20. package/templates/.claude/commands/lint-init.md +2 -54
  21. package/templates/.claude/commands/pre-deploy.md +143 -82
  22. package/templates/.claude/commands/version-update.md +171 -66
  23. package/templates/.claude/instructions/agent-patterns/agent-coordination.md +208 -0
  24. package/templates/.claude/instructions/agent-patterns/index.md +264 -0
  25. package/templates/.claude/instructions/agent-patterns/model-routing.md +167 -0
  26. package/templates/.claude/instructions/agent-patterns/parallel-execution.md +91 -0
  27. package/templates/.claude/instructions/agent-patterns/read-parallelization.md +106 -0
  28. package/templates/.claude/instructions/index.md +350 -0
  29. package/templates/.claude/instructions/multi-agent/agent-roster.md +811 -0
  30. package/templates/.claude/{PARALLEL_AGENTS.md → instructions/multi-agent/coordination-guide.md} +27 -336
  31. package/templates/.claude/instructions/{parallel-agent-execution.md → multi-agent/execution-patterns.md} +127 -438
  32. package/templates/.claude/instructions/multi-agent/index.md +282 -0
  33. package/templates/.claude/instructions/multi-agent/performance-optimization.md +456 -0
  34. package/templates/.claude/instructions/tech-stack/design-standards.md +282 -0
  35. package/templates/.claude/instructions/tech-stack/index.md +70 -0
  36. package/templates/.claude/instructions/tech-stack/prisma-patterns.md +352 -0
  37. package/templates/.claude/instructions/tech-stack/tanstack-patterns.md +275 -0
  38. package/templates/.claude/instructions/validation/forbidden-patterns.md +281 -0
  39. package/templates/.claude/instructions/validation/index.md +32 -0
  40. package/templates/.claude/instructions/validation/required-behaviors.md +331 -0
  41. package/templates/.claude/instructions/validation/verification-checklist.md +318 -0
  42. package/templates/.claude/instructions/workflow-patterns/index.md +18 -0
  43. package/templates/.claude/instructions/workflow-patterns/phase-based-workflow.md +250 -0
  44. package/templates/.claude/instructions/workflow-patterns/sequential-thinking.md +217 -0
  45. package/templates/.claude/instructions/workflow-patterns/todowrite-pattern.md +215 -0
  46. package/templates/.claude/skills/bug-fix/SKILL.md +972 -0
  47. package/templates/.claude/skills/docs-creator/AGENTS.md +4 -1
  48. package/templates/.claude/skills/docs-creator/SKILL.md +258 -0
  49. package/templates/.claude/skills/docs-refactor/AGENTS.md +4 -1
  50. package/templates/.claude/skills/docs-refactor/SKILL.md +145 -0
  51. package/templates/.claude/skills/execute/SKILL.md +15 -242
  52. package/templates/.claude/skills/figma-to-code/AGENTS.md +4 -1
  53. package/templates/.claude/skills/figma-to-code/SKILL.md +306 -0
  54. package/templates/.claude/skills/global-uiux-design/AGENTS.md +4 -1
  55. package/templates/.claude/skills/global-uiux-design/SKILL.md +455 -125
  56. package/templates/.claude/skills/korea-uiux-design/AGENTS.md +4 -1
  57. package/templates/.claude/skills/korea-uiux-design/SKILL.md +461 -116
  58. package/templates/.claude/skills/nextjs-react-best-practices/SKILL.md +177 -0
  59. package/templates/.claude/skills/plan/SKILL.md +1102 -98
  60. package/templates/.claude/skills/prd/SKILL.md +367 -66
  61. package/templates/.claude/skills/ralph/AGENTS.md +4 -1
  62. package/templates/.claude/skills/ralph/SKILL.md +83 -0
  63. package/templates/.claude/skills/refactor/SKILL.md +1214 -0
  64. package/templates/.claude/skills/tanstack-start-react-best-practices/SKILL.md +149 -0
  65. package/templates/.claude/commands/bug-fix.md +0 -510
  66. package/templates/.claude/commands/refactor.md +0 -788
@@ -0,0 +1,331 @@
1
+ # Required Behaviors (필수 행동)
2
+
3
+ **목적**: 모든 작업에서 반드시 따라야 할 규칙
4
+
5
+ ## 작업 시작
6
+
7
+ ### 필수 1: Sequential Thinking
8
+
9
+ **복잡도 MEDIUM 이상 작업은 반드시 Sequential Thinking 실행**
10
+
11
+ | 복잡도 | 최소 단계 | 예시 |
12
+ |--------|----------|------|
13
+ | LOW | 1-2 | 파일 읽기, 간단한 검색 |
14
+ | MEDIUM | 3-5 | 기능 구현, 버그 수정 |
15
+ | HIGH | 7-10+ | 아키텍처 설계, 대규모 리팩토링 |
16
+
17
+ ```typescript
18
+ // ✅ 필수: 작업 전 Sequential Thinking
19
+ mcp__sequential-thinking__sequentialthinking({
20
+ thought: "User API 구현 계획: 요구사항 분석 → 스키마 → 구현 → 검증",
21
+ thoughtNumber: 1,
22
+ totalThoughts: 5,
23
+ nextThoughtNeeded: true
24
+ })
25
+ ```
26
+
27
+ ### 필수 2: 파일 읽기 전 Read 사용
28
+
29
+ **코드 수정 전 반드시 Read로 파일 읽기**
30
+
31
+ ```typescript
32
+ // ✅ 필수 순서
33
+ Read({ file_path: "src/functions/auth.ts" }) // 1. 읽기
34
+ Edit({ ... }) // 2. 수정
35
+
36
+ // ❌ 금지
37
+ Edit({ ... }) // 읽지 않고 수정
38
+ ```
39
+
40
+ ### 필수 3: 병렬 읽기
41
+
42
+ **3개 이상 독립 파일은 반드시 병렬로 읽기**
43
+
44
+ ```typescript
45
+ // ✅ 필수: 병렬 읽기
46
+ Read({ file_path: "file1.ts" })
47
+ Read({ file_path: "file2.ts" })
48
+ Read({ file_path: "file3.ts" })
49
+ ```
50
+
51
+ ## 코드 작성
52
+
53
+ ### 필수 4: UTF-8 인코딩
54
+
55
+ **모든 파일은 UTF-8 인코딩 사용**
56
+
57
+ ### 필수 5: 코드 묶음 단위 한글 주석
58
+
59
+ ```typescript
60
+ // ✅ 필수: 코드 블록 상단에 한글 주석
61
+ // 사용자 인증 검증
62
+ const isAuthenticated = await checkAuth(session)
63
+ if (!isAuthenticated) throw new Error('Unauthorized')
64
+
65
+ // 사용자 데이터 조회
66
+ const user = await prisma.user.findUnique({ where: { id: session.userId } })
67
+ ```
68
+
69
+ ### 필수 6: TypeScript strict 모드
70
+
71
+ ```typescript
72
+ // ✅ 필수: 명시적 타입
73
+ function createUser(data: CreateUserInput): Promise<User> {
74
+ return prisma.user.create({ data })
75
+ }
76
+
77
+ // ❌ 금지: any 사용
78
+ function createUser(data: any): any {
79
+ return prisma.user.create({ data })
80
+ }
81
+ ```
82
+
83
+ ## API 구현
84
+
85
+ ### 필수 7: Server Function 패턴
86
+
87
+ **POST/PUT/PATCH는 inputValidator 필수**
88
+
89
+ ```typescript
90
+ // ✅ 필수
91
+ export const createUser = createServerFn({ method: 'POST' })
92
+ .inputValidator(createUserSchema) // 필수
93
+ .handler(async ({ data }) => {
94
+ return prisma.user.create({ data })
95
+ })
96
+ ```
97
+
98
+ **인증 필요 시 middleware 필수**
99
+
100
+ ```typescript
101
+ // ✅ 필수
102
+ export const getProfile = createServerFn({ method: 'GET' })
103
+ .middleware([authMiddleware]) // 필수
104
+ .handler(async ({ context }) => {
105
+ return prisma.user.findUnique({ where: { id: context.userId } })
106
+ })
107
+ ```
108
+
109
+ ### 필수 8: TanStack Query 사용
110
+
111
+ **클라이언트에서 Server Function 호출 시 반드시 TanStack Query 사용**
112
+
113
+ ```typescript
114
+ // ✅ 필수: useQuery/useMutation
115
+ const { data } = useQuery({
116
+ queryKey: ['users'],
117
+ queryFn: getUsers
118
+ })
119
+
120
+ const mutation = useMutation({
121
+ mutationFn: createUser,
122
+ onSuccess: () => queryClient.invalidateQueries({ queryKey: ['users'] })
123
+ })
124
+
125
+ // ❌ 금지: 직접 호출
126
+ const users = await getUsers()
127
+ ```
128
+
129
+ ## 검증
130
+
131
+ ### 필수 9: 4-Phase 순차 진행
132
+
133
+ **Phase 1 → 2 → 3 → 4 순서 엄수**
134
+
135
+ ```markdown
136
+ ✅ Phase 1: 작업 실행 (모든 요구사항 완료)
137
+ ✅ Phase 2: 자동 검증 (/pre-deploy + TODO)
138
+ ✅ Phase 3: Planner 검증 (승인 필수)
139
+ ✅ Phase 4: 완료 (<promise> 출력)
140
+ ```
141
+
142
+ ### 필수 10: /pre-deploy 전체 실행
143
+
144
+ **typecheck, lint, build 모두 통과 필수**
145
+
146
+ ```typescript
147
+ // ✅ 필수: 전체 검증
148
+ Skill("pre-deploy")
149
+
150
+ // ❌ 금지: 부분 검증
151
+ Bash({ command: "tsc --noEmit" }) // typecheck만
152
+ ```
153
+
154
+ ### 필수 11: Planner 검증
155
+
156
+ **Phase 3에서 Planner 승인 필수**
157
+
158
+ ```typescript
159
+ // ✅ 필수
160
+ Task(
161
+ subagent_type="planner",
162
+ model="opus",
163
+ prompt=`구현 완료 검증 요청
164
+
165
+ 【원본 작업】
166
+ ${PROMPT}
167
+
168
+ 【검증 결과】
169
+ - /pre-deploy: ✅
170
+ - TODO: ✅ 0개
171
+
172
+ 완료 여부 판단 요청`
173
+ )
174
+ ```
175
+
176
+ ## 문서화
177
+
178
+ ### 필수 12: Ralph 세션 문서
179
+
180
+ **Ralph 스킬 사용 시 반드시 문서화**
181
+
182
+ ```
183
+ .claude/ralph/{YYYY-MM-DD_HH-MM}/
184
+ ├── TASKS.md # 필수
185
+ ├── PROCESS.md # 필수
186
+ ├── VERIFICATION.md # 필수
187
+ └── NOTES.md # 선택
188
+ ```
189
+
190
+ ### 필수 13: 문서 업데이트 시점
191
+
192
+ | 시점 | 업데이트 파일 | 내용 |
193
+ |------|--------------|------|
194
+ | Phase 전환 | PROCESS.md | Phase N 완료 → Phase N+1 시작 |
195
+ | 요구사항 완료 | TASKS.md | 체크박스 체크 |
196
+ | 검증 실행 | VERIFICATION.md | /pre-deploy 결과, TODO 개수 |
197
+ | 주요 의사결정 | PROCESS.md | 결정 내용 및 이유 |
198
+
199
+ ### 필수 14: Prisma Multi-File
200
+
201
+ **Prisma Multi-File 구조 사용 시 모든 요소에 한글 주석 필수**
202
+
203
+ ```prisma
204
+ // ✅ 필수: 모든 모델/필드/enum에 주석
205
+
206
+ /// 사용자
207
+ model User {
208
+ /// 고유 식별자
209
+ id Int @id @default(autoincrement())
210
+ /// 이메일 (고유)
211
+ email String @unique
212
+ /// 이름
213
+ name String
214
+ /// 생성 시각
215
+ createdAt DateTime @default(now())
216
+ }
217
+
218
+ /// 사용자 역할
219
+ enum UserRole {
220
+ /// 관리자
221
+ ADMIN
222
+ /// 일반 사용자
223
+ USER
224
+ }
225
+ ```
226
+
227
+ ## Git 작업
228
+
229
+ ### 필수 15: git-operator 사용
230
+
231
+ **Git 작업은 반드시 git-operator 에이전트 사용**
232
+
233
+ ```typescript
234
+ // ✅ 필수
235
+ Task(subagent_type="git-operator", model="haiku",
236
+ prompt="변경사항 커밋 및 푸시")
237
+
238
+ // ❌ 금지
239
+ Bash({ command: "git add . && git commit -m 'feat: ...' && git push" })
240
+ ```
241
+
242
+ ### 필수 16: 커밋 메시지 형식
243
+
244
+ **`<prefix>: <설명>` 형식 필수 (한 줄)**
245
+
246
+ ```bash
247
+ # ✅ 필수
248
+ feat: 로그인 API 구현
249
+ fix: 타입 에러 수정
250
+ refactor: auth 모듈 리팩토링
251
+
252
+ # ❌ 금지
253
+ 로그인 기능 추가 # prefix 없음
254
+ feat: 로그인 API 구현\n\nCo-Authored-By: ... # 여러 줄
255
+ 🤖 feat: 로그인 # 이모지
256
+ ```
257
+
258
+ **Prefix 종류:**
259
+ - feat, fix, refactor, style, docs, test, chore, perf, ci
260
+
261
+ ## 에이전트 활용
262
+
263
+ ### 필수 17: 에이전트 위임
264
+
265
+ **다음 조건 시 반드시 에이전트 위임:**
266
+
267
+ - [ ] 독립적인 작업
268
+ - [ ] 새 컨텍스트 필요
269
+ - [ ] 전문 지식 필요
270
+ - [ ] 10분 이상 소요 예상
271
+
272
+ ```typescript
273
+ // ✅ 필수: 적절한 에이전트 위임
274
+ Task(subagent_type="implementation-executor", model="sonnet", ...)
275
+ Task(subagent_type="designer", model="sonnet", ...)
276
+ Task(subagent_type="code-reviewer", model="opus", ...)
277
+ ```
278
+
279
+ ### 필수 18: 모델 선택
280
+
281
+ **에이전트 호출 시 model 파라미터 필수**
282
+
283
+ | 모델 | 사용 시점 |
284
+ |------|----------|
285
+ | haiku | 탐색, 문서, Git |
286
+ | sonnet | 구현, 수정, 분석 (기본) |
287
+ | opus | 아키텍처, 보안, 검증 |
288
+
289
+ ```typescript
290
+ // ✅ 필수: model 명시
291
+ Task(subagent_type="explore", model="haiku", ...)
292
+ Task(subagent_type="planner", model="opus", ...)
293
+
294
+ // ❌ 금지: model 누락
295
+ Task(subagent_type="explore", ...)
296
+ ```
297
+
298
+ ## 종합 체크리스트
299
+
300
+ 작업 시작 전:
301
+
302
+ - [ ] Sequential Thinking 실행 (MEDIUM 이상)
303
+ - [ ] 파일 읽기 계획 (병렬 여부)
304
+ - [ ] 에이전트 활용 계획
305
+
306
+ 코드 작성 시:
307
+
308
+ - [ ] UTF-8 인코딩
309
+ - [ ] 한글 주석 (코드 블록 단위)
310
+ - [ ] TypeScript strict 모드
311
+ - [ ] Server Function 패턴 준수
312
+ - [ ] TanStack Query 사용
313
+
314
+ 검증 시:
315
+
316
+ - [ ] Phase 1 → 2 → 3 → 4 순서
317
+ - [ ] /pre-deploy 전체 실행
318
+ - [ ] Planner 승인 확인
319
+
320
+ 문서화:
321
+
322
+ - [ ] Ralph 세션 폴더 생성
323
+ - [ ] Phase 전환 시 업데이트
324
+ - [ ] 검증 결과 기록
325
+
326
+ Git:
327
+
328
+ - [ ] git-operator 사용
329
+ - [ ] 커밋 메시지 형식 준수
330
+
331
+ **모든 필수 항목 준수 → 품질 보장**
@@ -0,0 +1,318 @@
1
+ # Verification Checklist
2
+
3
+ **목적**: 작업 완료 전 표준 검증 절차
4
+
5
+ ## Phase별 검증
6
+
7
+ ### Phase 1: 작업 실행 검증
8
+
9
+ **완료 조건:**
10
+
11
+ - [ ] 모든 요구사항 구현 완료
12
+ - [ ] TASKS.md 체크리스트 100% 완료
13
+ - [ ] 주요 의사결정 PROCESS.md 기록
14
+ - [ ] 독립 작업 병렬 실행 확인
15
+
16
+ **검증 방법:**
17
+
18
+ ```typescript
19
+ // TASKS.md 읽기
20
+ Read({ file_path: ".claude/ralph/{timestamp}/TASKS.md" })
21
+
22
+ // 모든 체크박스가 [x]인지 확인
23
+ // 진행률이 100%인지 확인
24
+ ```
25
+
26
+ ### Phase 2: 자동 검증
27
+
28
+ **완료 조건:**
29
+
30
+ - [ ] typecheck 통과 (tsc --noEmit)
31
+ - [ ] lint 통과 (eslint, 0 에러)
32
+ - [ ] build 통과 (프로젝트 빌드 성공)
33
+ - [ ] pending/in_progress TODO = 0개
34
+ - [ ] VERIFICATION.md 업데이트 완료
35
+
36
+ **검증 방법:**
37
+
38
+ ```typescript
39
+ // 1. /pre-deploy 실행
40
+ Skill("pre-deploy")
41
+
42
+ // 2. 결과 확인
43
+ // - typecheck: ✅ (에러 없음)
44
+ // - lint: ✅ (warning/error 0개)
45
+ // - build: ✅ (성공)
46
+
47
+ // 3. TODO 확인
48
+ TaskList()
49
+ // pending: 0
50
+ // in_progress: 0
51
+
52
+ // 4. VERIFICATION.md 업데이트
53
+ Task(subagent_type="document-writer", model="haiku",
54
+ prompt="VERIFICATION.md에 검증 결과 기록")
55
+ ```
56
+
57
+ ### Phase 3: Planner 검증
58
+
59
+ **완료 조건:**
60
+
61
+ - [ ] Planner 에이전트 호출 완료
62
+ - [ ] Planner 응답: "승인" 또는 "완료"
63
+ - [ ] VERIFICATION.md에 Planner 응답 기록
64
+ - [ ] Phase 2 검증 결과 포함하여 전달
65
+
66
+ **검증 방법:**
67
+
68
+ ```typescript
69
+ // 1. Planner 호출
70
+ Task(
71
+ subagent_type="planner",
72
+ model="opus",
73
+ prompt=`구현 완료 검증 요청
74
+
75
+ 【원본 작업】
76
+ ${ORIGINAL_PROMPT}
77
+
78
+ 【수행 내용】
79
+ - 요구사항 1: ✅ (구체적 설명)
80
+ - 요구사항 2: ✅ (구체적 설명)
81
+ - 요구사항 3: ✅ (구체적 설명)
82
+
83
+ 【검증 결과】
84
+ - /pre-deploy: ✅ typecheck/lint/build 통과
85
+ - TODO: ✅ 0개
86
+
87
+ 완료 여부를 판단하고, 미흡한 점이 있다면 구체적으로 지적해주세요.`
88
+ )
89
+
90
+ // 2. 응답 확인
91
+ // "승인", "완료", "문제없음" → Phase 4 진행
92
+ // "수정 필요", "미흡" → Phase 2 복귀
93
+
94
+ // 3. VERIFICATION.md 업데이트
95
+ Task(subagent_type="document-writer", model="haiku",
96
+ prompt="VERIFICATION.md: Planner 응답 기록")
97
+ ```
98
+
99
+ ### Phase 4: 완료
100
+
101
+ **완료 조건:**
102
+
103
+ - [ ] TASKS.md 최종 확인 (모든 항목 체크)
104
+ - [ ] PROCESS.md 완료 시각 기록
105
+ - [ ] VERIFICATION.md 모든 검증 통과 확인
106
+ - [ ] `<promise>` 태그 출력
107
+
108
+ **검증 방법:**
109
+
110
+ ```typescript
111
+ // 1. 최종 문서 확인
112
+ Read({ file_path: ".claude/ralph/{timestamp}/TASKS.md" })
113
+ Read({ file_path: ".claude/ralph/{timestamp}/PROCESS.md" })
114
+ Read({ file_path: ".claude/ralph/{timestamp}/VERIFICATION.md" })
115
+
116
+ // 2. PROCESS.md 완료 기록
117
+ Task(subagent_type="document-writer", model="haiku",
118
+ prompt="PROCESS.md: 완료 시각 및 총 소요 시간 기록")
119
+
120
+ // 3. <promise> 출력
121
+ <promise>작업 완료</promise>
122
+ ```
123
+
124
+ ## 코드 품질 검증
125
+
126
+ ### TypeScript 검증
127
+
128
+ ```bash
129
+ # typecheck 실행
130
+ tsc --noEmit
131
+
132
+ # 예상 출력
133
+ # (에러 없음)
134
+ ```
135
+
136
+ **확인 사항:**
137
+
138
+ - [ ] 타입 에러 0개
139
+ - [ ] any 타입 사용 없음
140
+ - [ ] @ts-ignore 주석 없음
141
+ - [ ] 모든 함수에 명시적 return type
142
+
143
+ ### ESLint 검증
144
+
145
+ ```bash
146
+ # lint 실행
147
+ eslint .
148
+
149
+ # 예상 출력
150
+ # ✔ No problems
151
+ ```
152
+
153
+ **확인 사항:**
154
+
155
+ - [ ] ESLint 에러 0개
156
+ - [ ] ESLint 경고 0개 (또는 정당한 이유)
157
+ - [ ] Prettier 포맷 일치
158
+
159
+ ### Build 검증
160
+
161
+ ```bash
162
+ # 빌드 실행
163
+ npm run build
164
+ # 또는
165
+ vite build
166
+
167
+ # 예상 출력
168
+ # ✓ built in XXXms
169
+ ```
170
+
171
+ **확인 사항:**
172
+
173
+ - [ ] 빌드 성공
174
+ - [ ] 번들 크기 적절
175
+ - [ ] 빌드 경고 없음
176
+
177
+ ## 기능 검증
178
+
179
+ ### API 검증
180
+
181
+ - [ ] Server Function 올바른 메서드 (GET/POST/PUT/DELETE)
182
+ - [ ] POST/PUT/PATCH는 inputValidator 사용
183
+ - [ ] 인증 필요 시 middleware 사용
184
+ - [ ] 에러 처리 적절
185
+
186
+ ```typescript
187
+ // ✅ 검증 예시
188
+ export const createUser = createServerFn({ method: 'POST' })
189
+ .middleware([authMiddleware]) // 인증 확인
190
+ .inputValidator(createUserSchema) // 입력 검증 확인
191
+ .handler(async ({ data }) => { // 핸들러 확인
192
+ return prisma.user.create({ data })
193
+ })
194
+ ```
195
+
196
+ ### UI 검증
197
+
198
+ - [ ] TanStack Query 사용 (useQuery/useMutation)
199
+ - [ ] 에러 상태 처리
200
+ - [ ] 로딩 상태 처리
201
+ - [ ] 낙관적 업데이트 (필요 시)
202
+
203
+ ```typescript
204
+ // ✅ 검증 예시
205
+ const { data, isLoading, error } = useQuery({
206
+ queryKey: ['users'],
207
+ queryFn: getUsers
208
+ })
209
+
210
+ const mutation = useMutation({
211
+ mutationFn: createUser,
212
+ onSuccess: () => {
213
+ queryClient.invalidateQueries({ queryKey: ['users'] })
214
+ }
215
+ })
216
+ ```
217
+
218
+ ### Database 검증
219
+
220
+ - [ ] Prisma 스키마 일관성
221
+ - [ ] 관계 올바름 (1:N, N:N)
222
+ - [ ] Index 적절
223
+ - [ ] 한글 주석 (Multi-File 사용 시 필수)
224
+
225
+ ## 문서 검증
226
+
227
+ ### TASKS.md
228
+
229
+ ```markdown
230
+ - [x] 요구사항 1: 완료
231
+ - [x] 요구사항 2: 완료
232
+ - [x] 요구사항 3: 완료
233
+
234
+ 완료: 3 / 총 3
235
+ 진행률: 100%
236
+ ```
237
+
238
+ ### PROCESS.md
239
+
240
+ ```markdown
241
+ ## Phase 4: 완료
242
+
243
+ **완료 시각:** 2026-01-24 17:00
244
+ **총 소요 시간:** 30분
245
+
246
+ 모든 요구사항 구현 및 검증 완료
247
+ ```
248
+
249
+ ### VERIFICATION.md
250
+
251
+ ```markdown
252
+ ## /pre-deploy 검증
253
+
254
+ **실행 시각:** 2026-01-24 16:50
255
+
256
+ **결과:**
257
+ - Typecheck: ✅ 통과
258
+ - Lint: ✅ 0 에러
259
+ - Build: ✅ 성공
260
+
261
+ ## TODO 확인
262
+
263
+ **실행 시각:** 2026-01-24 16:52
264
+
265
+ **결과:** pending/in_progress = 0
266
+
267
+ ## Planner 검증
268
+
269
+ **실행 시각:** 2026-01-24 16:55
270
+
271
+ **응답:** "구현 완료 승인. 요구사항 모두 충족."
272
+ ```
273
+
274
+ ## Git 검증
275
+
276
+ ### 커밋 메시지
277
+
278
+ ```bash
279
+ # ✅ 올바른 형식
280
+ feat: 로그인 API 구현
281
+ fix: 타입 에러 수정
282
+
283
+ # ❌ 잘못된 형식
284
+ 로그인 기능 # prefix 없음
285
+ feat: 로그인\n\nCo-Authored-By: ... # 여러 줄
286
+ ```
287
+
288
+ ### 커밋 내용
289
+
290
+ - [ ] 논리적 단위로 분리
291
+ - [ ] 관련 없는 변경 혼재 없음
292
+ - [ ] AI 표시 없음 (Co-Authored-By, 🤖 등)
293
+
294
+ ## 실패 시 조치
295
+
296
+ | 실패 항목 | 조치 |
297
+ |----------|------|
298
+ | typecheck 실패 | lint-fixer 에이전트로 수정 |
299
+ | lint 실패 | lint-fixer 에이전트로 수정 |
300
+ | build 실패 | 에러 로그 분석 후 수정 |
301
+ | Planner 거절 | 피드백 반영 → Phase 2부터 재실행 |
302
+ | TODO 미완료 | 남은 작업 완료 |
303
+
304
+ **절대 검증 스킵하지 않음. 실패 시 수정 → 재검증 반복.**
305
+
306
+ ## 최종 체크리스트
307
+
308
+ 작업 완료 전 확인:
309
+
310
+ - [ ] Phase 1-4 순차 진행 완료
311
+ - [ ] /pre-deploy 전체 통과
312
+ - [ ] TODO 리스트 0개
313
+ - [ ] Planner 승인 획득
314
+ - [ ] 문서 업데이트 완료
315
+ - [ ] Git 커밋 형식 준수
316
+ - [ ] 코드 품질 기준 충족
317
+
318
+ **모든 항목 체크 완료 후 `<promise>` 출력**
@@ -0,0 +1,18 @@
1
+ # Workflow Patterns
2
+
3
+ 작업 흐름 및 사고 패턴
4
+
5
+ ## 파일 목록
6
+
7
+ | 파일 | 설명 |
8
+ |------|------|
9
+ | [sequential-thinking.md](./sequential-thinking.md) | Sequential Thinking - 구조화된 사고 과정 |
10
+ | [todowrite-pattern.md](./todowrite-pattern.md) | TodoWrite 패턴 - 작업 단계 관리 |
11
+ | [phase-based-workflow.md](./phase-based-workflow.md) | Phase 기반 워크플로우 - 4단계 검증 |
12
+
13
+ ## 사용법
14
+
15
+ ```markdown
16
+ @.claude/instructions/workflow-patterns/sequential-thinking.md
17
+ @.claude/instructions/workflow-patterns/phase-based-workflow.md
18
+ ```