@kood/claude-code 0.7.6 → 0.7.8

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 (31) hide show
  1. package/dist/index.js +215 -39
  2. package/package.json +1 -1
  3. package/templates/.claude/skills/design/SKILL.md +199 -0
  4. package/templates/.claude/skills/design/references/accessibility.md +106 -0
  5. package/templates/.claude/skills/design/references/checklist.md +41 -0
  6. package/templates/.claude/skills/design/references/core-principles.md +66 -0
  7. package/templates/.claude/skills/design/references/global-uiux.md +216 -0
  8. package/templates/.claude/skills/design/references/korea-uiux.md +227 -0
  9. package/templates/.claude/skills/design/references/patterns.md +250 -0
  10. package/templates/.claude/skills/design/references/responsive.md +248 -0
  11. package/templates/.claude/skills/design/references/safe-area.md +202 -0
  12. package/templates/.claude/skills/design/references/systems.md +116 -0
  13. package/templates/.claude/skills/design/references/trends.md +75 -0
  14. package/templates/.claude/skills/global-uiux-design/AGENTS.md +0 -320
  15. package/templates/.claude/skills/global-uiux-design/SKILL.md +0 -1089
  16. package/templates/.claude/skills/global-uiux-design/references/accessibility.md +0 -401
  17. package/templates/.claude/skills/global-uiux-design/references/color-system.md +0 -275
  18. package/templates/.claude/skills/global-uiux-design/references/design-philosophy.md +0 -206
  19. package/templates/.claude/skills/global-uiux-design/references/design-systems.md +0 -446
  20. package/templates/.claude/skills/korea-uiux-design/AGENTS.md +0 -310
  21. package/templates/.claude/skills/korea-uiux-design/SKILL.md +0 -980
  22. package/templates/.claude/skills/korea-uiux-design/references/accessibility.md +0 -298
  23. package/templates/.claude/skills/korea-uiux-design/references/checklist.md +0 -107
  24. package/templates/.claude/skills/korea-uiux-design/references/color-system.md +0 -156
  25. package/templates/.claude/skills/korea-uiux-design/references/design-philosophy.md +0 -25
  26. package/templates/.claude/skills/korea-uiux-design/references/icon-guide.md +0 -180
  27. package/templates/.claude/skills/korea-uiux-design/references/micro-interactions.md +0 -259
  28. package/templates/.claude/skills/korea-uiux-design/references/responsive-patterns.md +0 -115
  29. package/templates/.claude/skills/korea-uiux-design/references/service-patterns.md +0 -206
  30. package/templates/.claude/skills/korea-uiux-design/references/state-patterns.md +0 -320
  31. package/templates/.claude/skills/korea-uiux-design/references/typography.md +0 -70
@@ -1,1089 +0,0 @@
1
- ---
2
- name: global-uiux-design
3
- description: Implement modern, accessible UI/UX design for global audiences. Apply industry-standard patterns from Material Design, Apple HIG, Fluent, and other leading design systems.
4
- user-invocable: true
5
- ui-only: true
6
- ---
7
-
8
- @../../instructions/agent-patterns/read-parallelization.md
9
- @../../instructions/agent-patterns/agent-teams-usage.md
10
- @../../instructions/validation/forbidden-patterns.md
11
- @../../instructions/validation/required-behaviors.md
12
-
13
- # Global UI/UX Design
14
-
15
- <context>
16
-
17
- **Purpose:** Implement modern, accessible UI/UX design for global audiences. Apply industry-standard patterns from Material Design, Apple HIG, Fluent, and other leading design systems.
18
-
19
- **Trigger:** Frontend UI/UX implementation, React/Vue component design, responsive web/app development, international product design
20
-
21
- **Key Features:**
22
- - WCAG 2.2 AA accessibility compliance
23
- - Cross-platform consistency
24
- - Mobile-first responsive design
25
- - Industry-standard design patterns
26
-
27
- </context>
28
-
29
- ---
30
-
31
- <parallel_agent_execution>
32
-
33
- ### ⚠️ Agent Teams 우선 원칙
34
-
35
- > **복잡한 병렬 작업 시 Agent Teams를 기본으로 사용**
36
- > - Agent Teams 가용 → TeamCreate → 팀원 spawn → 병렬 협업
37
- > - Agent Teams 미가용 → Task 병렬 호출 (폴백)
38
-
39
- **Agent Teams 모드 (기본)**:
40
- ```typescript
41
- TeamCreate({ team_name: "global-uiux-team", description: "Global UI/UX 디자인" })
42
- Task(subagent_type="designer", team_name="global-uiux-team", name="designer", ...)
43
- ```
44
-
45
- **수명주기 관리:**
46
- - 팀원 태스크 완료 → 즉시 `shutdown_request` 전송
47
- - 종료 후 `TaskList`로 다음 태스크 확인
48
- - 모든 작업 완료 → `TeamDelete`로 팀 해산
49
-
50
- ---
51
-
52
- ## 병렬 에이전트 실행 (Global UX 특화)
53
-
54
- ### 핵심 원칙
55
-
56
- **Goal:** 독립적인 Global UX 작업을 동시에 처리하여 대기 시간 최소화, 다국어/반응형/접근성 병렬 구현.
57
-
58
- **Performance:** 순차 실행 → 병렬 실행으로 5-15배 성능 향상.
59
-
60
- | 원칙 | 실행 방법 | Global UX 적용 |
61
- |------|----------|----------------|
62
- | **PARALLEL** | 단일 메시지에서 여러 Tool 동시 호출 | 다국어 레이아웃 동시 구현 |
63
- | **DELEGATE** | 전문 에이전트에게 즉시 위임 | designer (UI), code-reviewer (접근성) |
64
- | **SMART MODEL** | 복잡도별 모델 선택 | haiku (탐색), sonnet (구현), opus (디자인) |
65
-
66
- **핵심 룰:**
67
- ```typescript
68
- // ❌ 순차 실행 (느림)
69
- Task(...) // 모바일 레이아웃 60초
70
- Task(...) // 데스크톱 레이아웃 60초
71
- Task(...) // 태블릿 레이아웃 60초
72
- // 총 180초
73
-
74
- // ✅ 병렬 실행 (빠름)
75
- Task(...) // 모바일
76
- Task(...) // 데스크톱 → 단일 메시지에서 동시 호출
77
- Task(...) // 태블릿
78
- // 총 60초 (가장 긴 작업 기준)
79
- ```
80
-
81
- ---
82
-
83
- ### Model Routing (Global UX 특화)
84
-
85
- | 작업 유형 | 모델 | 에이전트 | 예시 |
86
- |----------|------|---------|------|
87
- | **디자인 시스템 탐색** | haiku | explore | Material 3/Apple HIG 패턴 분석 |
88
- | **UI 구현** | sonnet | designer | 컴포넌트, 레이아웃, 반응형 |
89
- | **복잡한 디자인** | opus | designer | 공간 UI, 크로스 플랫폼 일관성 |
90
- | **접근성 검증** | opus | code-reviewer | WCAG 2.2, ARIA, 키보드 네비게이션 |
91
- | **성능 검토** | opus | code-reviewer | 60fps 애니메이션, 번들 최적화 |
92
- | **문서 작성** | haiku | document-writer | 디자인 가이드, 컴포넌트 문서 |
93
-
94
- **모델 선택 기준:**
95
- ```typescript
96
- // 간단한 탐색 → haiku
97
- Task(subagent_type="explore", model="haiku",
98
- prompt="프로젝트 기존 다국어 지원 구조 분석")
99
-
100
- // 일반 구현 → sonnet
101
- Task(subagent_type="designer", model="sonnet",
102
- prompt="모바일 레이아웃 구현 (Material 3)")
103
-
104
- // 복잡한 디자인 → opus
105
- Task(subagent_type="designer", model="opus",
106
- prompt="4개 언어 동시 지원하는 통합 디자인 시스템 설계")
107
- ```
108
-
109
- ---
110
-
111
- ### 패턴 1: 다국어 디자인 병렬 처리
112
-
113
- **목표:** EN/ES/ZH/AR 레이아웃을 동시에 구현하여 시간 단축, RTL/LTR 일관성 확보.
114
-
115
- ```typescript
116
- // ✅ 4개 언어 레이아웃 동시 구현
117
- Task(subagent_type="designer", model="sonnet",
118
- prompt=`영어(EN) 레이아웃 구현
119
- - LTR 기본
120
- - 짧은 단어 (compact)
121
- - Material 3 스타일
122
- - components/en/Header.tsx`)
123
-
124
- Task(subagent_type="designer", model="sonnet",
125
- prompt=`스페인어(ES) 레이아웃 구현
126
- - LTR, 영어보다 20% 긴 텍스트
127
- - 동적 너비 조정
128
- - components/es/Header.tsx`)
129
-
130
- Task(subagent_type="designer", model="sonnet",
131
- prompt=`중국어(ZH) 레이아웃 구현
132
- - 세로쓰기 옵션
133
- - CJK 폰트 (Noto Sans CJK)
134
- - 컴팩트 레이아웃
135
- - components/zh/Header.tsx`)
136
-
137
- Task(subagent_type="designer", model="sonnet",
138
- prompt=`아랍어(AR) 레이아웃 구현
139
- - RTL (direction: rtl)
140
- - 미러링 (아이콘, 레이아웃)
141
- - 아랍어 폰트 (Noto Sans Arabic)
142
- - components/ar/Header.tsx`)
143
-
144
- // 병렬 폰트 시스템
145
- Task(subagent_type="implementation-executor", model="sonnet",
146
- prompt=`다국어 폰트 로딩 시스템 구현
147
- - Next.js Font Optimization
148
- - 언어별 폰트 스택
149
- - 폴백 처리`)
150
- ```
151
-
152
- **예상 시간:**
153
- - 순차 실행: 240초 (60초 × 4)
154
- - 병렬 실행: 60초 (가장 긴 작업)
155
- - 개선: 4배 향상
156
-
157
- **RTL 처리 체크리스트:**
158
- - [ ] `direction: rtl` CSS 적용
159
- - [ ] 아이콘 미러링 (화살표, 햄버거 메뉴)
160
- - [ ] Flexbox/Grid 자동 반전 (justify-content)
161
- - [ ] margin/padding 논리 속성 (margin-inline-start)
162
-
163
- ---
164
-
165
- ### 패턴 2: 반응형 Breakpoint 병렬 구현
166
-
167
- **목표:** Mobile/Tablet/Desktop/4K 레이아웃을 동시에 구현.
168
-
169
- ```typescript
170
- // ✅ 4개 Breakpoint 동시 구현
171
- Task(subagent_type="designer", model="sonnet",
172
- prompt=`Mobile 레이아웃 (< 640px)
173
- - 단일 컬럼
174
- - 하단 탭 바
175
- - Safe Area 고려
176
- - 44px 터치 타겟
177
- - components/mobile/Dashboard.tsx`)
178
-
179
- Task(subagent_type="designer", model="sonnet",
180
- prompt=`Tablet 레이아웃 (640-1024px)
181
- - 2컬럼 그리드
182
- - 사이드바 토글
183
- - 제스처 지원 (스와이프)
184
- - components/tablet/Dashboard.tsx`)
185
-
186
- Task(subagent_type="designer", model="sonnet",
187
- prompt=`Desktop 레이아웃 (1024-1920px)
188
- - 3컬럼 그리드
189
- - 고정 사이드바
190
- - 호버 인터랙션
191
- - components/desktop/Dashboard.tsx`)
192
-
193
- Task(subagent_type="designer", model="sonnet",
194
- prompt=`4K/Ultra-Wide 레이아웃 (> 1920px)
195
- - 4컬럼 그리드
196
- - max-w-screen-2xl 컨테이너
197
- - 여백 최적화
198
- - 고해상도 이미지
199
- - components/4k/Dashboard.tsx`)
200
- ```
201
-
202
- **통합 전략:**
203
- ```typescript
204
- // 단일 컴포넌트로 통합
205
- Task(subagent_type="implementation-executor", model="sonnet",
206
- prompt=`반응형 Dashboard 컴포넌트 통합
207
- - Breakpoint별 동적 import
208
- - Tailwind responsive classes
209
- - 성능 최적화 (code splitting)`)
210
- ```
211
-
212
- ---
213
-
214
- ### 패턴 3: A/B 테스트 변형 병렬 생성
215
-
216
- **목표:** 디자인 변형을 동시에 구현하여 실험 속도 향상.
217
-
218
- ```typescript
219
- // ✅ A/B 테스트 3개 변형 동시 구현
220
- Task(subagent_type="designer", model="sonnet",
221
- prompt=`Variant A: 미니멀 디자인
222
- - 단색 배경
223
- - 작은 버튼 (h-10)
224
- - 텍스트 중심
225
- - components/ab-test/VariantA.tsx`)
226
-
227
- Task(subagent_type="designer", model="sonnet",
228
- prompt=`Variant B: 대담한 디자인
229
- - 그라디언트 배경
230
- - 큰 버튼 (h-14)
231
- - 애니메이션 강조
232
- - components/ab-test/VariantB.tsx`)
233
-
234
- Task(subagent_type="designer", model="sonnet",
235
- prompt=`Variant C: 하이브리드
236
- - A와 B의 중간
237
- - 조건부 애니메이션
238
- - 어댑티브 크기
239
- - components/ab-test/VariantC.tsx`)
240
-
241
- // 병렬 성능 테스트
242
- Task(subagent_type="code-reviewer", model="opus",
243
- prompt=`3개 변형 성능 비교
244
- - 번들 크기
245
- - First Contentful Paint
246
- - Interaction to Next Paint
247
- - 최적 변형 추천`)
248
- ```
249
-
250
- **A/B 테스트 인프라:**
251
- ```typescript
252
- Task(subagent_type="implementation-executor", model="sonnet",
253
- prompt=`A/B 테스트 라우팅 시스템
254
- - 사용자 그룹 분배 (33/33/33)
255
- - 쿠키 기반 고정
256
- - 분석 이벤트 전송`)
257
- ```
258
-
259
- ---
260
-
261
- ### 패턴 4: 접근성 검증 병렬
262
-
263
- **목표:** WCAG/ARIA/키보드 네비게이션을 동시에 검증하여 접근성 품질 보장.
264
-
265
- ```typescript
266
- // ✅ 3가지 접근성 검증 동시 실행
267
- Task(subagent_type="code-reviewer", model="opus",
268
- prompt=`WCAG 2.2 AA 준수 검증
269
- - 색상 대비 (4.5:1 일반, 3:1 큰 텍스트)
270
- - 포커스 표시 (2px 아웃라인)
271
- - 텍스트 크기 조정 (200%)
272
- - 모든 interactive 요소 검토`)
273
-
274
- Task(subagent_type="code-reviewer", model="opus",
275
- prompt=`ARIA 속성 검증
276
- - role, aria-label, aria-labelledby
277
- - aria-expanded, aria-controls (동적 UI)
278
- - aria-live (실시간 업데이트)
279
- - landmark 역할 (navigation, main, aside)`)
280
-
281
- Task(subagent_type="code-reviewer", model="opus",
282
- prompt=`키보드 네비게이션 검증
283
- - Tab 순서 (tabindex)
284
- - Enter/Space (버튼 활성화)
285
- - Esc (모달 닫기)
286
- - 화살표 키 (드롭다운, 슬라이더)
287
- - 포커스 트랩 (모달 내부)`)
288
-
289
- // 스크린 리더 테스트
290
- Task(subagent_type="code-reviewer", model="opus",
291
- prompt=`스크린 리더 호환성
292
- - VoiceOver (Safari)
293
- - NVDA (Firefox)
294
- - JAWS (Chrome)
295
- - 의미적 HTML 구조 검증`)
296
- ```
297
-
298
- **자동 수정 패턴:**
299
- ```typescript
300
- // 검증 후 자동 수정
301
- Task(subagent_type="lint-fixer", model="sonnet",
302
- prompt=`접근성 이슈 자동 수정
303
- - 대비 부족 색상 조정
304
- - 누락된 alt 추가
305
- - aria-label 보완
306
- - tabindex 최적화`)
307
- ```
308
-
309
- ---
310
-
311
- ### 패턴 5: 디자인 시스템 컴포넌트 병렬 구현
312
-
313
- **목표:** 여러 컴포넌트를 동시에 구현하여 디자인 시스템 구축 가속화.
314
-
315
- ```typescript
316
- // ✅ 10개 컴포넌트 동시 구현
317
- Task(subagent_type="designer", model="sonnet",
318
- prompt="Button 컴포넌트 (Primary, Secondary, Ghost)")
319
-
320
- Task(subagent_type="designer", model="sonnet",
321
- prompt="Input 컴포넌트 (Text, Email, Password, Search)")
322
-
323
- Task(subagent_type="designer", model="sonnet",
324
- prompt="Card 컴포넌트 (Default, Interactive, Elevated)")
325
-
326
- Task(subagent_type="designer", model="sonnet",
327
- prompt="Modal 컴포넌트 (Dialog, Drawer, Bottom Sheet)")
328
-
329
- Task(subagent_type="designer", model="sonnet",
330
- prompt="Toast/Notification 컴포넌트")
331
-
332
- Task(subagent_type="designer", model="sonnet",
333
- prompt="Dropdown/Select 컴포넌트")
334
-
335
- Task(subagent_type="designer", model="sonnet",
336
- prompt="Tabs 컴포넌트 (Underline, Segment Control)")
337
-
338
- Task(subagent_type="designer", model="sonnet",
339
- prompt="Avatar 컴포넌트 (User, Group, Fallback)")
340
-
341
- Task(subagent_type="designer", model="sonnet",
342
- prompt="Badge/Chip 컴포넌트 (Status, Label, Removable)")
343
-
344
- Task(subagent_type="designer", model="sonnet",
345
- prompt="Skeleton Loader 컴포넌트")
346
-
347
- // 병렬 문서 작성
348
- Task(subagent_type="document-writer", model="haiku",
349
- prompt=`Storybook 문서 생성
350
- - 10개 컴포넌트 스토리
351
- - Props 테이블
352
- - 사용 예시`)
353
- ```
354
-
355
- **예상 시간:**
356
- - 순차 실행: 600초 (60초 × 10)
357
- - 병렬 실행: 60초
358
- - 개선: 10배 향상
359
-
360
- ---
361
-
362
- ### 실전 시나리오
363
-
364
- #### 시나리오 1: 글로벌 이커머스 플랫폼
365
-
366
- **요구사항:** 10개 언어, 5개 통화, 3개 플랫폼 (Web/iOS/Android)
367
-
368
- ```typescript
369
- // Phase 1: 병렬 탐색
370
- Task(subagent_type="explore", model="haiku",
371
- prompt="Shopify Polaris 디자인 패턴 분석")
372
- Task(subagent_type="explore", model="haiku",
373
- prompt="Amazon/Alibaba 다국어 UI 구조 분석")
374
- Task(subagent_type="explore", model="haiku",
375
- prompt="결제 UI 접근성 모범 사례 (Stripe, PayPal)")
376
-
377
- // Phase 2: 다국어 레이아웃 병렬 구현
378
- Task(subagent_type="designer", model="sonnet",
379
- prompt="영어/독일어/프랑스어 상품 페이지 (LTR)")
380
- Task(subagent_type="designer", model="sonnet",
381
- prompt="아랍어/히브리어 상품 페이지 (RTL)")
382
- Task(subagent_type="designer", model="sonnet",
383
- prompt="중국어/일본어/한국어 상품 페이지 (CJK)")
384
- Task(subagent_type="designer", model="sonnet",
385
- prompt="통화별 가격 포매팅 컴포넌트 ($, €, ¥, ₩)")
386
-
387
- // Phase 3: 반응형 병렬
388
- Task(subagent_type="designer", model="sonnet",
389
- prompt="모바일 체크아웃 (1-step)")
390
- Task(subagent_type="designer", model="sonnet",
391
- prompt="데스크톱 체크아웃 (Multi-step)")
392
-
393
- // Phase 4: 접근성 검증
394
- Task(subagent_type="code-reviewer", model="opus",
395
- prompt="결제 폼 접근성 (WCAG 2.2 AA, 스크린 리더)")
396
- ```
397
-
398
- **예상 시간:**
399
- - 순차: 540초 (60초 × 9)
400
- - 병렬: 60초
401
- - 개선: 9배 향상
402
-
403
- ---
404
-
405
- #### 시나리오 2: 다국어 SaaS 대시보드
406
-
407
- **요구사항:** 4개 언어, 실시간 데이터, 어댑티브 차트
408
-
409
- ```typescript
410
- // Phase 1: 디자인 시스템
411
- Task(subagent_type="designer", model="opus",
412
- prompt="SaaS 디자인 토큰 시스템 (Carbon Design 기반)")
413
-
414
- // Phase 2: 병렬 구현
415
- Task(subagent_type="designer", model="sonnet",
416
- prompt="대시보드 레이아웃 (4개 언어 동시 지원)")
417
- Task(subagent_type="designer", model="sonnet",
418
- prompt="데이터 테이블 (정렬, 필터, 페이지네이션)")
419
- Task(subagent_type="designer", model="sonnet",
420
- prompt="차트 컴포넌트 (Recharts, 반응형)")
421
- Task(subagent_type="implementation-executor", model="sonnet",
422
- prompt="실시간 WebSocket 연동")
423
-
424
- // Phase 3: 접근성
425
- Task(subagent_type="code-reviewer", model="opus",
426
- prompt="차트 접근성 (aria-label, 데이터 테이블 대체)")
427
- Task(subagent_type="code-reviewer", model="opus",
428
- prompt="키보드 네비게이션 (테이블, 필터)")
429
- ```
430
-
431
- ---
432
-
433
- #### 시나리오 3: 모바일 우선 소셜 앱
434
-
435
- **요구사항:** iOS/Android 네이티브 느낌, 60fps 애니메이션
436
-
437
- ```typescript
438
- // Phase 1: 플랫폼별 탐색
439
- Task(subagent_type="explore", model="haiku",
440
- prompt="iOS Human Interface Guidelines 최신 패턴")
441
- Task(subagent_type="explore", model="haiku",
442
- prompt="Material 3 모바일 컴포넌트")
443
-
444
- // Phase 2: 병렬 구현
445
- Task(subagent_type="designer", model="sonnet",
446
- prompt="iOS 스타일 피드 (SF Symbols, 네이티브 제스처)")
447
- Task(subagent_type="designer", model="sonnet",
448
- prompt="Android 스타일 피드 (Material 3, FAB)")
449
- Task(subagent_type="designer", model="sonnet",
450
- prompt="공통 스토리 컴포넌트 (Instagram 스타일)")
451
- Task(subagent_type="implementation-executor", model="sonnet",
452
- prompt="60fps 애니메이션 (Framer Motion)")
453
-
454
- // Phase 3: 성능 검증
455
- Task(subagent_type="code-reviewer", model="opus",
456
- prompt="성능 검토 (FPS, 메모리, 배터리)")
457
- ```
458
-
459
- ---
460
-
461
- #### 시나리오 4: 엔터프라이즈 디자인 시스템 구축
462
-
463
- **요구사항:** 100+ 컴포넌트, Figma 동기화, 접근성 AAA
464
-
465
- ```typescript
466
- // Phase 1: 탐색
467
- Task(subagent_type="explore", model="haiku",
468
- prompt="IBM Carbon, Salesforce Lightning 분석")
469
- Task(subagent_type="explore", model="haiku",
470
- prompt="Figma Design Tokens 플러그인 조사")
471
-
472
- // Phase 2: 토큰 시스템
473
- Task(subagent_type="designer", model="opus",
474
- prompt="디자인 토큰 시스템 (색상, 타이포, 간격, 그림자)")
475
-
476
- // Phase 3: 컴포넌트 병렬 구현 (20개씩 배치)
477
- // Batch 1
478
- Task(subagent_type="designer", model="sonnet",
479
- prompt="Form 컴포넌트 (Input, Select, Checkbox, Radio, Switch)")
480
- // Batch 2
481
- Task(subagent_type="designer", model="sonnet",
482
- prompt="Navigation 컴포넌트 (Navbar, Sidebar, Tabs, Breadcrumb)")
483
- // Batch 3
484
- Task(subagent_type="designer", model="sonnet",
485
- prompt="Feedback 컴포넌트 (Toast, Modal, Alert, Progress)")
486
- // Batch 4
487
- Task(subagent_type="designer", model="sonnet",
488
- prompt="Data Display 컴포넌트 (Table, Card, List, Badge)")
489
-
490
- // Phase 4: 접근성 AAA
491
- Task(subagent_type="code-reviewer", model="opus",
492
- prompt="WCAG 2.2 AAA 검증 (7:1 대비, 모든 인터랙션)")
493
-
494
- // Phase 5: 문서
495
- Task(subagent_type="document-writer", model="sonnet",
496
- prompt="Storybook + 디자인 가이드라인 생성")
497
- ```
498
-
499
- **예상 시간:**
500
- - 순차: 1200초 (20분)
501
- - 병렬: 240초 (4분)
502
- - 개선: 5배 향상
503
-
504
- ---
505
-
506
- ### 체크리스트
507
-
508
- #### 병렬 실행 전 확인
509
-
510
- - [ ] 독립적인 작업인가? (의존성 없음)
511
- - [ ] 같은 파일을 동시 수정하지 않는가?
512
- - [ ] 컨텍스트 분리 가능한가?
513
-
514
- #### Global UX 특화 확인
515
-
516
- - [ ] 다국어 작업 → 언어별 병렬 실행
517
- - [ ] 반응형 작업 → Breakpoint별 병렬 실행
518
- - [ ] A/B 테스트 → 변형별 병렬 실행
519
- - [ ] 접근성 검증 → WCAG/ARIA/키보드 병렬
520
- - [ ] 디자인 시스템 → 컴포넌트별 병렬 실행
521
-
522
- #### 모델 선택 확인
523
-
524
- - [ ] 탐색 작업 → haiku
525
- - [ ] 일반 구현 → sonnet
526
- - [ ] 복잡한 디자인 → opus
527
- - [ ] 접근성 검증 → opus
528
- - [ ] 문서 작성 → haiku
529
-
530
- #### 성능 최적화
531
-
532
- - [ ] 3-10개 작업 동시 실행
533
- - [ ] 병렬 실행 시간 예상 (순차 대비 5-15배 향상)
534
- - [ ] 컨텍스트 크기 모니터링
535
- - [ ] 실패 시 재시도 전략 (3회 제한)
536
-
537
- #### 완료 후 검증
538
-
539
- - [ ] 모든 언어 레이아웃 정상 작동
540
- - [ ] 모든 Breakpoint 반응형 동작
541
- - [ ] 접근성 WCAG 2.2 AA 통과
542
- - [ ] 성능 목표 달성 (60fps, LCP < 2.5s)
543
-
544
- **적극적으로 병렬 실행 활용. 순차 실행은 의존성이 명확할 때만.**
545
-
546
- </parallel_agent_execution>
547
-
548
- ---
549
-
550
- <core_principles>
551
-
552
- ## Design Philosophy
553
-
554
- | Principle | Application |
555
- |-----------|-------------|
556
- | **Clarity** | Interface should not compete with content. Use subtle hierarchy and whitespace. |
557
- | **Consistency** | Follow platform conventions. iOS apps feel like iOS, web apps follow web standards. |
558
- | **Accessibility** | Design for everyone. WCAG 2.2 AA minimum, aim for AAA where possible. |
559
- | **Performance** | Fast, responsive interactions. 60fps animations, instant feedback. |
560
-
561
- **Details:** [references/design-philosophy.md](references/design-philosophy.md)
562
-
563
- </core_principles>
564
-
565
- ---
566
-
567
- <layout_patterns>
568
-
569
- ## Layout
570
-
571
- ### Container Widths
572
-
573
- ```tsx
574
- {/* Dashboard - 1280px */}
575
- <div className="max-w-screen-xl mx-auto px-4 sm:px-6 lg:px-8">
576
-
577
- {/* Content - 768px */}
578
- <div className="max-w-3xl mx-auto px-4 sm:px-6">
579
-
580
- {/* Forms - 560px */}
581
- <div className="max-w-xl mx-auto px-4">
582
- ```
583
-
584
- ### Spacing Scale
585
-
586
- ```tsx
587
- {/* 8px base grid */}
588
- <div className="space-y-8"> {/* 32px */}
589
- <section className="space-y-4"> {/* 16px */}
590
- <div className="p-6"> {/* 24px */}
591
- ```
592
-
593
- **Mobile tap targets:** Minimum 44x44px (iOS) or 48x48px (Material)
594
-
595
- </layout_patterns>
596
-
597
- ---
598
-
599
- <component_patterns>
600
-
601
- ## Components
602
-
603
- ### Buttons
604
-
605
- ```tsx
606
- {/* Primary - Material 3 style */}
607
- <button className="h-10 px-6 rounded-full bg-primary-600 hover:bg-primary-700 text-white font-medium shadow-sm transition-all">
608
- Save changes
609
- </button>
610
-
611
- {/* Secondary - iOS style */}
612
- <button className="h-10 px-6 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-900 font-semibold transition-colors">
613
- Cancel
614
- </button>
615
-
616
- {/* Ghost */}
617
- <button className="h-10 px-4 rounded-lg hover:bg-gray-100 font-medium transition-colors">
618
- Learn more
619
- </button>
620
- ```
621
-
622
- **Sizes:** Small h-8 px-3 | Medium h-10 px-6 | Large h-12 px-8
623
-
624
- ### Cards
625
-
626
- ```tsx
627
- <div className="p-6 rounded-2xl border border-gray-200 bg-white shadow-sm hover:shadow-md transition-shadow">
628
- {/* Header */}
629
- <div className="flex items-center justify-between mb-4">
630
- <h3 className="text-lg font-semibold">Card Title</h3>
631
- <button className="p-2 rounded-lg hover:bg-gray-100">
632
- <svg className="w-5 h-5 text-gray-500" />
633
- </button>
634
- </div>
635
-
636
- {/* Body */}
637
- <div className="space-y-3">
638
- <p className="text-sm text-gray-600 leading-relaxed">Content goes here</p>
639
- </div>
640
-
641
- {/* Footer */}
642
- <div className="flex items-center justify-between mt-4 pt-4 border-t">
643
- <span className="text-sm text-gray-500">2 hours ago</span>
644
- <button className="text-sm text-primary-600 font-medium">Details</button>
645
- </div>
646
- </div>
647
- ```
648
-
649
- ### List Items
650
-
651
- ```tsx
652
- <div className="flex items-center gap-4 p-4 hover:bg-gray-50 rounded-lg transition-colors cursor-pointer">
653
- {/* Avatar/Icon */}
654
- <div className="w-12 h-12 rounded-full bg-primary-100 flex items-center justify-center flex-shrink-0">
655
- <svg className="w-6 h-6 text-primary-600" />
656
- </div>
657
-
658
- {/* Content */}
659
- <div className="flex-1 min-w-0">
660
- <div className="font-semibold text-sm truncate">Item Title</div>
661
- <div className="text-sm text-gray-600 truncate">Description text</div>
662
- </div>
663
-
664
- {/* Meta */}
665
- <div className="flex items-center gap-2 flex-shrink-0">
666
- <span className="text-sm font-medium text-gray-900">$99</span>
667
- <svg className="w-5 h-5 text-gray-400" />
668
- </div>
669
- </div>
670
- ```
671
-
672
- ### Input Fields
673
-
674
- ```tsx
675
- <div className="space-y-2">
676
- <label className="block text-sm font-medium text-gray-900">
677
- Email address <span className="text-red-500">*</span>
678
- </label>
679
- <input
680
- type="email"
681
- className="w-full h-11 px-4 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary-500 focus:border-transparent transition-shadow"
682
- placeholder="name@example.com"
683
- />
684
- <p className="text-sm text-gray-500">We'll never share your email.</p>
685
- </div>
686
- ```
687
-
688
- ### Modals
689
-
690
- ```tsx
691
- <div className="fixed inset-0 bg-black/50 flex items-center justify-center p-4 z-50 backdrop-blur-sm">
692
- <div className="bg-white rounded-2xl max-w-lg w-full max-h-[90vh] overflow-auto shadow-xl">
693
- <div className="flex items-center justify-between p-6 border-b">
694
- <h2 className="text-xl font-semibold">Modal Title</h2>
695
- <button className="w-10 h-10 flex items-center justify-center rounded-lg hover:bg-gray-100 transition-colors">
696
- <svg className="w-5 h-5" />
697
- </button>
698
- </div>
699
- <div className="p-6">
700
- <p className="text-sm text-gray-700 leading-relaxed">Modal content</p>
701
- </div>
702
- <div className="flex gap-3 justify-end p-6 border-t">
703
- <button className="h-10 px-6 rounded-lg border border-gray-300 hover:bg-gray-50">
704
- Cancel
705
- </button>
706
- <button className="h-10 px-6 rounded-lg bg-primary-600 text-white hover:bg-primary-700">
707
- Confirm
708
- </button>
709
- </div>
710
- </div>
711
- </div>
712
- ```
713
-
714
- ### Tabs
715
-
716
- ```tsx
717
- {/* Underline style - iOS/Material */}
718
- <div className="border-b border-gray-200">
719
- <div className="flex gap-8">
720
- <button className="py-3 text-sm font-medium text-primary-600 border-b-2 border-primary-600">
721
- All
722
- </button>
723
- <button className="py-3 text-sm font-medium text-gray-600 hover:text-gray-900">
724
- Active
725
- </button>
726
- </div>
727
- </div>
728
-
729
- {/* Segment control - iOS style */}
730
- <div className="inline-flex p-1 bg-gray-100 rounded-lg gap-1">
731
- <button className="px-4 py-2 rounded-md bg-white shadow-sm text-sm font-medium">
732
- All
733
- </button>
734
- <button className="px-4 py-2 rounded-md text-sm font-medium text-gray-600">
735
- Active
736
- </button>
737
- </div>
738
- ```
739
-
740
- </component_patterns>
741
-
742
- ---
743
-
744
- <color_system>
745
-
746
- ## Color System
747
-
748
- | Color | Usage | Ratio |
749
- |-------|-------|-------|
750
- | **Primary** | CTA buttons, links, active states | 10% |
751
- | **Neutral** | Text, borders, backgrounds | 60% |
752
- | **Secondary** | Filters, chips, supporting actions | 30% |
753
- | **Semantic** | Success/Error/Warning/Info | As needed |
754
-
755
- ```tsx
756
- {/* 60-30-10 rule */}
757
- <button className="bg-primary-600 hover:bg-primary-700 text-white">Primary action</button>
758
- <button className="bg-secondary-100 text-secondary-900 hover:bg-secondary-200">Secondary</button>
759
- ```
760
-
761
- **WCAG 2.2 AA:** Normal text 4.5:1 | Large text 3:1 | Interactive controls 3:1
762
-
763
- **Details:** [references/color-system.md](references/color-system.md)
764
-
765
- </color_system>
766
-
767
- ---
768
-
769
- <icon_system>
770
-
771
- ## Icons
772
-
773
- | Size | Usage | Touch Target |
774
- |------|-------|--------------|
775
- | 16px, 20px | Inline with text | - |
776
- | 24px | Standard system icons | 44-48px |
777
- | 32-48px | Feature icons | Use as-is |
778
-
779
- ```tsx
780
- {/* Sufficient touch target */}
781
- <button className="w-12 h-12 flex items-center justify-center rounded-lg hover:bg-gray-100">
782
- <svg className="w-6 h-6" />
783
- </button>
784
-
785
- {/* States: Outline (inactive) | Filled (active) */}
786
- <svg className="w-6 h-6 stroke-current text-gray-600" fill="none" strokeWidth={2} />
787
- <svg className="w-6 h-6 fill-current text-primary-600" />
788
- ```
789
-
790
- **Icon libraries:** Heroicons, Lucide, Material Symbols, SF Symbols
791
-
792
- **Details:** [references/icon-guide.md](references/icon-guide.md)
793
-
794
- </icon_system>
795
-
796
- ---
797
-
798
- <typography>
799
-
800
- ## Typography
801
-
802
- ```tsx
803
- {/* Display - Landing pages */}
804
- <h1 className="text-5xl sm:text-6xl font-bold tracking-tight leading-tight">
805
- Welcome to our platform
806
- </h1>
807
-
808
- {/* Page title */}
809
- <h1 className="text-3xl font-bold tracking-tight">Dashboard</h1>
810
-
811
- {/* Section title */}
812
- <h2 className="text-xl font-semibold tracking-tight">Recent Activity</h2>
813
-
814
- {/* Body text */}
815
- <p className="text-base leading-relaxed text-gray-700">
816
- Body content with comfortable reading line-height
817
- </p>
818
-
819
- {/* Caption */}
820
- <span className="text-sm text-gray-500">2 hours ago</span>
821
- ```
822
-
823
- **Font stack:**
824
- ```css
825
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif;
826
- ```
827
-
828
- **Details:** [references/typography.md](references/typography.md)
829
-
830
- </typography>
831
-
832
- ---
833
-
834
- <responsive_patterns>
835
-
836
- ## Responsive Design
837
-
838
- ### Grid Layouts
839
-
840
- ```tsx
841
- <div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4 sm:gap-6">
842
- {items.map(item => <Card key={item.id} {...item} />)}
843
- </div>
844
- ```
845
-
846
- ### Navigation
847
-
848
- ```tsx
849
- {/* Desktop: Sidebar */}
850
- <aside className="hidden lg:block w-64 border-r" />
851
-
852
- {/* Mobile: Bottom tab bar */}
853
- <nav className="lg:hidden fixed bottom-0 inset-x-0 h-16 border-t bg-white safe-area-inset-bottom" />
854
- ```
855
-
856
- ### Breakpoints (Tailwind defaults)
857
-
858
- | Breakpoint | Width |
859
- |------------|-------|
860
- | sm | 640px |
861
- | md | 768px |
862
- | lg | 1024px |
863
- | xl | 1280px |
864
- | 2xl | 1536px |
865
-
866
- **Details:** [references/responsive-patterns.md](references/responsive-patterns.md)
867
-
868
- </responsive_patterns>
869
-
870
- ---
871
-
872
- <design_systems>
873
-
874
- ## Leading Design Systems
875
-
876
- | System | Organization | Characteristics |
877
- |--------|--------------|-----------------|
878
- | **[Material Design 3](https://m3.material.io/)** | Google | Dynamic color, expressive motion, adaptive components |
879
- | **[Human Interface Guidelines](https://developer.apple.com/design/human-interface-guidelines/)** | Apple | Clarity, deference, depth. Liquid Glass aesthetic (2026) |
880
- | **[Fluent 2](https://fluent2.microsoft.design/)** | Microsoft | Token-based, cross-platform, Figma-native |
881
- | **[Carbon](https://carbondesignsystem.com/)** | IBM | Enterprise-grade, accessibility-first, open source |
882
- | **[Ant Design](https://ant.design/)** | Ant Group | Enterprise UI, comprehensive components, i18n |
883
- | **[Polaris](https://polaris.shopify.com/)** | Shopify | E-commerce optimized, web components (2026) |
884
- | **[Lightning](https://www.lightningdesignsystem.com/)** | Salesforce | SLDS 2 with agentic design patterns |
885
- | **[Spectrum 2](https://spectrum.adobe.com/)** | Adobe | Creative tools focus, cross-app consistency |
886
- | **[Atlassian DS](https://atlassian.design/)** | Atlassian | Collaboration tools, strict 4px grid |
887
- | **[Chakra UI](https://chakra-ui.com/)** | Community | Accessible, modular, style props |
888
-
889
- **When to reference:**
890
- - B2B/Enterprise → Carbon, Ant Design, Lightning
891
- - Consumer apps → Material 3, Apple HIG
892
- - Creative tools → Spectrum 2
893
- - E-commerce → Polaris
894
- - Developer tools → Atlassian
895
-
896
- **Details:** [references/design-systems.md](references/design-systems.md)
897
-
898
- </design_systems>
899
-
900
- ---
901
-
902
- <accessibility_and_states>
903
-
904
- ## Accessibility & States
905
-
906
- ### WCAG 2.2 AA Requirements
907
-
908
- - **Contrast:** 4.5:1 normal text, 3:1 large text (18pt+)
909
- - **Keyboard:** All interactive elements accessible via keyboard
910
- - **Screen readers:** Semantic HTML, ARIA labels where needed
911
- - **Focus visible:** Clear focus indicators (2px outline minimum)
912
- - **No color alone:** Never convey information with color only
913
-
914
- ### State Patterns
915
-
916
- ```tsx
917
- {/* Loading skeleton */}
918
- <div className="animate-pulse space-y-3">
919
- <div className="h-4 bg-gray-200 rounded w-3/4" />
920
- <div className="h-4 bg-gray-200 rounded w-1/2" />
921
- </div>
922
-
923
- {/* Error state */}
924
- <div className="flex items-center gap-2 text-red-600 text-sm">
925
- <svg className="w-5 h-5" />
926
- <span>An error occurred. Please try again.</span>
927
- </div>
928
-
929
- {/* Empty state */}
930
- <div className="py-16 text-center">
931
- <div className="w-20 h-20 mx-auto mb-4 rounded-full bg-gray-100 flex items-center justify-center">
932
- <svg className="w-10 h-10 text-gray-400" />
933
- </div>
934
- <h3 className="text-lg font-semibold mb-2">No items yet</h3>
935
- <p className="text-sm text-gray-600 mb-4">Get started by creating your first item</p>
936
- <button className="h-10 px-6 rounded-lg bg-primary-600 text-white">
937
- Create item
938
- </button>
939
- </div>
940
-
941
- {/* Success toast */}
942
- <div className="flex items-center gap-3 px-4 py-3 rounded-lg bg-green-50 border border-green-200">
943
- <svg className="w-5 h-5 text-green-600" />
944
- <span className="text-sm font-medium text-green-900">Changes saved successfully</span>
945
- </div>
946
- ```
947
-
948
- **Details:**
949
- - [references/accessibility.md](references/accessibility.md)
950
- - [references/micro-interactions.md](references/micro-interactions.md)
951
- - [references/state-patterns.md](references/state-patterns.md)
952
-
953
- </accessibility_and_states>
954
-
955
- ---
956
-
957
- <references>
958
-
959
- ## Detailed Documentation
960
-
961
- | Document | Content |
962
- |----------|---------|
963
- | [design-philosophy.md](references/design-philosophy.md) | Core principles, anti-patterns |
964
- | [color-system.md](references/color-system.md) | Palette generation, semantic colors, dark mode |
965
- | [icon-guide.md](references/icon-guide.md) | Icon libraries, sizing, accessibility |
966
- | [typography.md](references/typography.md) | Scale, font stacks, i18n considerations |
967
- | [design-systems.md](references/design-systems.md) | Deep dive into Material, HIG, Fluent, etc. |
968
- | [responsive-patterns.md](references/responsive-patterns.md) | Breakpoints, layouts, mobile-first |
969
- | [accessibility.md](references/accessibility.md) | WCAG 2.2, ARIA, testing tools |
970
- | [micro-interactions.md](references/micro-interactions.md) | Hover, focus, transitions, animations |
971
- | [state-patterns.md](references/state-patterns.md) | Loading, error, empty, success states |
972
- | [checklist.md](references/checklist.md) | Pre-deployment UI/UX audit |
973
-
974
- ### External Resources
975
-
976
- | Resource | URL | Focus |
977
- |----------|-----|-------|
978
- | Material Design 3 | https://m3.material.io/ | Google's design system |
979
- | Apple HIG | https://developer.apple.com/design/human-interface-guidelines/ | iOS/macOS guidelines |
980
- | Fluent 2 | https://fluent2.microsoft.design/ | Microsoft design system |
981
- | IBM Carbon | https://carbondesignsystem.com/ | Enterprise design system |
982
- | Nielsen Norman Group | https://www.nngroup.com/ | UX research & guidelines |
983
- | WCAG 2.2 | https://www.w3.org/WAI/standards-guidelines/wcag/ | Accessibility standard |
984
- | Laws of UX | https://lawsofux.com/ | Psychology-based design principles |
985
- | Ant Design | https://ant.design/ | Enterprise component library |
986
- | Atlassian DS | https://atlassian.design/ | Collaboration tool patterns |
987
- | Shopify Polaris | https://polaris.shopify.com/ | E-commerce design system |
988
- | Salesforce Lightning | https://www.lightningdesignsystem.com/ | SLDS 2 (agentic design) |
989
- | Adobe Spectrum | https://spectrum.adobe.com/ | Creative tool design |
990
- | Chakra UI | https://chakra-ui.com/ | Accessible component library |
991
- | Smashing Magazine | https://www.smashingmagazine.com/ | UX best practices |
992
-
993
- </references>
994
-
995
- ---
996
-
997
- <prompt_examples>
998
-
999
- ## Prompt Examples
1000
-
1001
- ### Dashboard
1002
-
1003
- ```
1004
- Create a dashboard page.
1005
-
1006
- Layout:
1007
- - Desktop: Left sidebar (256px) + main content (max-w-7xl)
1008
- - Mobile: Bottom tab bar
1009
- - Responsive padding (px-4 sm:px-6 lg:px-8)
1010
-
1011
- Components:
1012
- - Header with greeting + date
1013
- - 4 stat cards (grid-cols-1 sm:grid-cols-2 lg:grid-cols-4)
1014
- - Recent activity list
1015
- - Quick action buttons
1016
-
1017
- Style:
1018
- - Material Design 3 aesthetic
1019
- - Cards: rounded-2xl, subtle shadow
1020
- - Primary color: blue-600
1021
- - Numbers: font-bold text-3xl
1022
- ```
1023
-
1024
- ### Settings Screen
1025
-
1026
- ```
1027
- Create a settings page.
1028
-
1029
- Layout:
1030
- - max-w-2xl mx-auto
1031
- - Sections with space-y-8
1032
-
1033
- Components:
1034
- - Profile: Avatar + name + email
1035
- - Notifications: Toggle switches (h-11 touch target)
1036
- - Account: Password change, sign out
1037
- - Danger zone: Delete account (red)
1038
-
1039
- Style:
1040
- - Each row: flex justify-between items-center
1041
- - Label: text-sm font-medium
1042
- - Section headers: text-xs text-gray-500 uppercase tracking-wide
1043
- ```
1044
-
1045
- ### Data Table
1046
-
1047
- ```
1048
- Create a users table.
1049
-
1050
- Layout:
1051
- - Desktop: Traditional table
1052
- - Mobile: Card list
1053
-
1054
- Components:
1055
- - Header: Search bar + filters + add button
1056
- - Columns: Avatar, name, email, joined date, status
1057
- - Pagination
1058
-
1059
- Style:
1060
- - Table header: bg-gray-50
1061
- - Row hover: hover:bg-gray-50
1062
- - No vertical borders
1063
- - Actions: Three-dot menu
1064
- - Sticky header on scroll
1065
- ```
1066
-
1067
- ### Form
1068
-
1069
- ```
1070
- Create a multi-step form.
1071
-
1072
- Layout:
1073
- - max-w-xl mx-auto
1074
- - Progress indicator at top
1075
- - Step transitions with slide animation
1076
-
1077
- Components:
1078
- - Step 1: Personal info (name, email, phone)
1079
- - Step 2: Address
1080
- - Step 3: Review + submit
1081
-
1082
- Style:
1083
- - Labels: text-sm font-medium mb-2
1084
- - Inputs: h-11 rounded-lg border focus:ring-2
1085
- - Validation: Inline errors below fields
1086
- - Buttons: Back (secondary) + Continue (primary)
1087
- ```
1088
-
1089
- </prompt_examples>