@kood/claude-code 0.5.1 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +604 -261
- package/package.json +1 -1
- package/templates/.claude/agents/analyst.md +6 -14
- package/templates/.claude/agents/architect.md +6 -14
- package/templates/.claude/agents/code-reviewer.md +8 -14
- package/templates/.claude/agents/dependency-manager.md +8 -14
- package/templates/.claude/agents/deployment-validator.md +8 -14
- package/templates/.claude/agents/designer.md +8 -0
- package/templates/.claude/agents/document-writer.md +75 -316
- package/templates/.claude/agents/explore.md +8 -3
- package/templates/.claude/agents/git-operator.md +63 -17
- package/templates/.claude/agents/implementation-executor.md +14 -37
- package/templates/.claude/agents/ko-to-en-translator.md +8 -13
- package/templates/.claude/agents/lint-fixer.md +8 -172
- package/templates/.claude/agents/planner.md +6 -14
- package/templates/.claude/agents/refactor-advisor.md +8 -14
- package/templates/.claude/commands/git-all.md +3 -167
- package/templates/.claude/commands/git-session.md +3 -71
- package/templates/.claude/commands/lint-fix.md +119 -82
- package/templates/.claude/commands/lint-init.md +2 -54
- package/templates/.claude/commands/pre-deploy.md +143 -82
- package/templates/.claude/commands/version-update.md +171 -66
- package/templates/.claude/instructions/agent-patterns/agent-coordination.md +208 -0
- package/templates/.claude/instructions/agent-patterns/index.md +264 -0
- package/templates/.claude/instructions/agent-patterns/model-routing.md +167 -0
- package/templates/.claude/instructions/agent-patterns/parallel-execution.md +91 -0
- package/templates/.claude/instructions/agent-patterns/read-parallelization.md +106 -0
- package/templates/.claude/instructions/document-templates/ralph-templates.md +71 -0
- package/templates/.claude/instructions/index.md +350 -0
- package/templates/.claude/instructions/multi-agent/agent-roster.md +811 -0
- package/templates/.claude/{PARALLEL_AGENTS.md → instructions/multi-agent/coordination-guide.md} +27 -336
- package/templates/.claude/instructions/{parallel-agent-execution.md → multi-agent/execution-patterns.md} +127 -438
- package/templates/.claude/instructions/multi-agent/index.md +282 -0
- package/templates/.claude/instructions/multi-agent/performance-optimization.md +456 -0
- package/templates/.claude/instructions/tech-stack/design-standards.md +282 -0
- package/templates/.claude/instructions/tech-stack/index.md +70 -0
- package/templates/.claude/instructions/tech-stack/prisma-patterns.md +352 -0
- package/templates/.claude/instructions/tech-stack/tanstack-patterns.md +275 -0
- package/templates/.claude/instructions/validation/forbidden-patterns.md +281 -0
- package/templates/.claude/instructions/validation/index.md +32 -0
- package/templates/.claude/instructions/validation/required-behaviors.md +331 -0
- package/templates/.claude/instructions/validation/verification-checklist.md +318 -0
- package/templates/.claude/instructions/workflow-patterns/index.md +18 -0
- package/templates/.claude/instructions/workflow-patterns/phase-based-workflow.md +250 -0
- package/templates/.claude/instructions/workflow-patterns/sequential-thinking.md +217 -0
- package/templates/.claude/instructions/workflow-patterns/todowrite-pattern.md +215 -0
- package/templates/.claude/skills/bug-fix/SKILL.md +972 -0
- package/templates/.claude/skills/docs-creator/AGENTS.md +54 -173
- package/templates/.claude/skills/docs-creator/SKILL.md +146 -254
- package/templates/.claude/skills/docs-refactor/AGENTS.md +61 -187
- package/templates/.claude/skills/docs-refactor/SKILL.md +84 -315
- package/templates/.claude/skills/execute/SKILL.md +454 -154
- package/templates/.claude/skills/figma-to-code/AGENTS.md +4 -1
- package/templates/.claude/skills/figma-to-code/SKILL.md +306 -0
- package/templates/.claude/skills/global-uiux-design/AGENTS.md +4 -1
- package/templates/.claude/skills/global-uiux-design/SKILL.md +455 -125
- package/templates/.claude/skills/korea-uiux-design/AGENTS.md +4 -1
- package/templates/.claude/skills/korea-uiux-design/SKILL.md +461 -116
- package/templates/.claude/skills/nextjs-react-best-practices/SKILL.md +177 -0
- package/templates/.claude/skills/plan/SKILL.md +1157 -87
- package/templates/.claude/skills/prd/SKILL.md +367 -66
- package/templates/.claude/skills/ralph/AGENTS.md +4 -1
- package/templates/.claude/skills/ralph/SKILL.md +100 -14
- package/templates/.claude/skills/refactor/AGENTS.md +269 -0
- package/templates/.claude/skills/refactor/SKILL.md +1572 -0
- package/templates/.claude/skills/stitch-design/README.md +34 -0
- package/templates/.claude/skills/stitch-design/SKILL.md +213 -0
- package/templates/.claude/skills/stitch-design/examples/DESIGN.md +154 -0
- package/templates/.claude/skills/stitch-loop/README.md +54 -0
- package/templates/.claude/skills/stitch-loop/SKILL.md +316 -0
- package/templates/.claude/skills/stitch-loop/examples/SITE.md +73 -0
- package/templates/.claude/skills/stitch-loop/examples/next-prompt.md +25 -0
- package/templates/.claude/skills/stitch-loop/resources/baton-schema.md +61 -0
- package/templates/.claude/skills/stitch-loop/resources/site-template.md +104 -0
- package/templates/.claude/skills/stitch-react/README.md +36 -0
- package/templates/.claude/skills/stitch-react/SKILL.md +323 -0
- package/templates/.claude/skills/stitch-react/examples/gold-standard-card.tsx +88 -0
- package/templates/.claude/skills/stitch-react/package-lock.json +231 -0
- package/templates/.claude/skills/stitch-react/package.json +16 -0
- package/templates/.claude/skills/stitch-react/resources/architecture-checklist.md +15 -0
- package/templates/.claude/skills/stitch-react/resources/component-template.tsx +37 -0
- package/templates/.claude/skills/stitch-react/resources/stitch-api-reference.md +14 -0
- package/templates/.claude/skills/stitch-react/resources/style-guide.json +24 -0
- package/templates/.claude/skills/stitch-react/scripts/fetch-stitch.sh +30 -0
- package/templates/.claude/skills/stitch-react/scripts/validate.js +77 -0
- package/templates/.claude/skills/tanstack-start-react-best-practices/SKILL.md +149 -0
- package/templates/.claude/commands/bug-fix.md +0 -510
- package/templates/.claude/commands/refactor.md +0 -788
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: docs-creator
|
|
3
|
-
description: Claude Code 문서
|
|
3
|
+
description: Claude Code 문서 작성. CLAUDE.md, SKILL.md, COMMAND.md 효율적 작성.
|
|
4
4
|
metadata:
|
|
5
5
|
author: kood
|
|
6
|
-
version: "
|
|
6
|
+
version: "2.0.0"
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
@../../instructions/workflow-patterns/sequential-thinking.md
|
|
10
|
+
@../../instructions/validation/forbidden-patterns.md
|
|
11
|
+
@../../instructions/validation/required-behaviors.md
|
|
12
|
+
|
|
9
13
|
# Docs Creator Skill
|
|
10
14
|
|
|
11
|
-
>
|
|
15
|
+
> Anthropic 가이드라인 기반 고밀도 문서 작성
|
|
12
16
|
|
|
13
17
|
<purpose>
|
|
14
|
-
|
|
15
|
-
**목표:** 고밀도, 실행 가능한, 유지보수 가능한 문서 작성
|
|
16
|
-
|
|
18
|
+
고밀도, 실행 가능, 유지보수 가능한 문서 작성
|
|
17
19
|
</purpose>
|
|
18
20
|
|
|
19
21
|
---
|
|
@@ -22,25 +24,104 @@ metadata:
|
|
|
22
24
|
|
|
23
25
|
| 상황 | 작성 필요 |
|
|
24
26
|
|------|----------|
|
|
25
|
-
| **새 프로젝트** | CLAUDE.md
|
|
26
|
-
| **새 스킬** | SKILL.md
|
|
27
|
-
| **새 커맨드** | COMMAND.md
|
|
28
|
-
| **문서 부재** | 프로젝트 규칙 문서화 |
|
|
29
|
-
| **지식 공유** | 팀 온보딩 가이드 |
|
|
27
|
+
| **새 프로젝트** | CLAUDE.md |
|
|
28
|
+
| **새 스킬** | SKILL.md |
|
|
29
|
+
| **새 커맨드** | COMMAND.md |
|
|
30
30
|
|
|
31
31
|
</trigger_conditions>
|
|
32
32
|
|
|
33
33
|
---
|
|
34
34
|
|
|
35
|
+
<parallel_agent_execution>
|
|
36
|
+
|
|
37
|
+
## 핵심 원칙
|
|
38
|
+
|
|
39
|
+
| 원칙 | 방법 | 효과 |
|
|
40
|
+
|------|------|------|
|
|
41
|
+
| **PARALLEL** | 단일 메시지 여러 에이전트 호출 | 5-10배 속도 |
|
|
42
|
+
| **DELEGATE** | 전문 에이전트 즉시 위임 | 품질 향상 |
|
|
43
|
+
| **SMART MODEL** | 작업 복잡도별 모델 | 비용 최적화 |
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
// ❌ 순차 (120초)
|
|
47
|
+
Task(...) // 60초
|
|
48
|
+
Task(...) // 60초
|
|
49
|
+
|
|
50
|
+
// ✅ 병렬 (60초) - 단일 메시지
|
|
51
|
+
Task(subagent_type="explore", model="haiku", prompt="...")
|
|
52
|
+
Task(subagent_type="document-writer", model="haiku", prompt="...")
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Phase별 활용
|
|
58
|
+
|
|
59
|
+
| Phase | 작업 | 에이전트 | 모델 | 병렬 |
|
|
60
|
+
|-------|------|---------|------|------|
|
|
61
|
+
| **1** | 구조 파악 | explore | haiku | ✅ |
|
|
62
|
+
| **1** | 규칙 추출 | analyst | sonnet | ✅ |
|
|
63
|
+
| **2** | 문서 작성 | document-writer | haiku/sonnet | ✅ |
|
|
64
|
+
| **3** | 검증 (복잡) | architect | opus | ✅ |
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## 실전 패턴
|
|
69
|
+
|
|
70
|
+
### 패턴 1: 다중 문서 동시 작성
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
// CLAUDE.md + 3개 라이브러리 가이드 (60초)
|
|
74
|
+
Task(subagent_type="document-writer", model="haiku",
|
|
75
|
+
prompt="CLAUDE.md 작성 - 프로젝트 규칙")
|
|
76
|
+
Task(subagent_type="document-writer", model="haiku",
|
|
77
|
+
prompt="TanStack Start 가이드")
|
|
78
|
+
Task(subagent_type="document-writer", model="haiku",
|
|
79
|
+
prompt="Prisma 가이드")
|
|
80
|
+
Task(subagent_type="document-writer", model="haiku",
|
|
81
|
+
prompt="Zod 가이드")
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**효과:** 순차 240초 → 병렬 60초 (4배)
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
### 패턴 2: 조사 + 작성 병렬
|
|
89
|
+
|
|
90
|
+
```typescript
|
|
91
|
+
// 탐색과 작성 동시
|
|
92
|
+
Task(subagent_type="explore", model="haiku",
|
|
93
|
+
prompt="프로젝트 React Query 사용 패턴 조사")
|
|
94
|
+
Task(subagent_type="document-writer", model="haiku",
|
|
95
|
+
prompt="React Query 가이드 초안 (버전 나중 추가)")
|
|
96
|
+
|
|
97
|
+
// 탐색 결과로 버전 정보 추가
|
|
98
|
+
Read(".../react-query-usage.md")
|
|
99
|
+
Edit("docs/library/react-query/index.md", ...)
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
### 모델 라우팅
|
|
105
|
+
|
|
106
|
+
| 복잡도 | 모델 | 문서 | 비용 |
|
|
107
|
+
|--------|------|------|------|
|
|
108
|
+
| **LOW** | haiku | 간단 규칙, 반복 패턴 | 💰 |
|
|
109
|
+
| **MEDIUM** | sonnet | CLAUDE.md, 라이브러리 가이드 | 💰💰 |
|
|
110
|
+
| **HIGH** | opus | 아키텍처, 보안/성능 | 💰💰💰 |
|
|
111
|
+
|
|
112
|
+
</parallel_agent_execution>
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
35
116
|
<forbidden>
|
|
36
117
|
|
|
37
|
-
| 분류 | 금지
|
|
38
|
-
|
|
39
|
-
| **설명** |
|
|
40
|
-
| **구조** | XML 태그
|
|
41
|
-
| **표현** | 부정형
|
|
42
|
-
| **복잡도** |
|
|
43
|
-
| **강조** |
|
|
118
|
+
| 분류 | 금지 |
|
|
119
|
+
|------|------|
|
|
120
|
+
| **설명** | 장황, 중복, Claude가 아는 것 반복 |
|
|
121
|
+
| **구조** | XML 태그 없음, 모호한 지시 |
|
|
122
|
+
| **표현** | 부정형 (Don't X → Do Y) |
|
|
123
|
+
| **복잡도** | 조건문, 엣지 케이스 나열 |
|
|
124
|
+
| **강조** | CRITICAL/MUST 남발 |
|
|
44
125
|
|
|
45
126
|
</forbidden>
|
|
46
127
|
|
|
@@ -48,13 +129,13 @@ metadata:
|
|
|
48
129
|
|
|
49
130
|
<required>
|
|
50
131
|
|
|
51
|
-
| 분류 | 필수
|
|
52
|
-
|
|
53
|
-
| **구조** | XML 태그
|
|
54
|
-
| **표현** | 표
|
|
55
|
-
| **예시** |
|
|
56
|
-
| **로딩** | @imports
|
|
57
|
-
| **지시** | 명시적
|
|
132
|
+
| 분류 | 필수 |
|
|
133
|
+
|------|------|
|
|
134
|
+
| **구조** | XML 태그 섹션, 명확한 계층 |
|
|
135
|
+
| **표현** | 표 형식, ✅/❌ 마커 |
|
|
136
|
+
| **예시** | 코드 중심, 복사 가능 |
|
|
137
|
+
| **로딩** | @imports just-in-time |
|
|
138
|
+
| **지시** | 긍정형, 명시적 |
|
|
58
139
|
| **버전** | 라이브러리 버전 명시 |
|
|
59
140
|
|
|
60
141
|
</required>
|
|
@@ -63,17 +144,14 @@ metadata:
|
|
|
63
144
|
|
|
64
145
|
<document_types>
|
|
65
146
|
|
|
66
|
-
## CLAUDE.md
|
|
147
|
+
## CLAUDE.md
|
|
67
148
|
|
|
68
|
-
**용도:** 프로젝트별 코딩 규칙, 금지/필수 사항, 빠른 참조
|
|
69
|
-
|
|
70
|
-
**구조:**
|
|
71
149
|
```markdown
|
|
72
150
|
# CLAUDE.md - [프로젝트명]
|
|
73
151
|
|
|
74
152
|
<instructions>
|
|
75
|
-
@path/to/common
|
|
76
|
-
@docs/library/[
|
|
153
|
+
@path/to/common.md
|
|
154
|
+
@docs/library/[lib]/index.md
|
|
77
155
|
</instructions>
|
|
78
156
|
|
|
79
157
|
---
|
|
@@ -81,7 +159,7 @@ metadata:
|
|
|
81
159
|
<forbidden>
|
|
82
160
|
| 분류 | 금지 |
|
|
83
161
|
|------|------|
|
|
84
|
-
| **Git** | AI 표시,
|
|
162
|
+
| **Git** | AI 표시, 이모지 |
|
|
85
163
|
</forbidden>
|
|
86
164
|
|
|
87
165
|
---
|
|
@@ -104,28 +182,25 @@ metadata:
|
|
|
104
182
|
|
|
105
183
|
<quick_patterns>
|
|
106
184
|
```typescript
|
|
107
|
-
// 복사
|
|
108
|
-
const
|
|
185
|
+
// 복사 가능 패턴
|
|
186
|
+
const fn = (): ReturnType => { ... }
|
|
109
187
|
```
|
|
110
188
|
</quick_patterns>
|
|
111
189
|
```
|
|
112
190
|
|
|
113
191
|
---
|
|
114
192
|
|
|
115
|
-
## SKILL.md
|
|
116
|
-
|
|
117
|
-
**용도:** 특정 작업 자동화 스킬 정의
|
|
193
|
+
## SKILL.md
|
|
118
194
|
|
|
119
|
-
**구조:**
|
|
120
195
|
```markdown
|
|
121
196
|
---
|
|
122
197
|
name: skill-name
|
|
123
|
-
description:
|
|
198
|
+
description: 한 줄 설명
|
|
124
199
|
---
|
|
125
200
|
|
|
126
201
|
<trigger_conditions>
|
|
127
|
-
|
|
|
128
|
-
|
|
202
|
+
| 트리거 | 반응 |
|
|
203
|
+
|--------|------|
|
|
129
204
|
| "키워드" | 즉시 실행 |
|
|
130
205
|
</trigger_conditions>
|
|
131
206
|
|
|
@@ -133,8 +208,8 @@ description: 짧은 설명 (1줄)
|
|
|
133
208
|
|
|
134
209
|
<workflow>
|
|
135
210
|
<step number="1">
|
|
136
|
-
<action
|
|
137
|
-
<tools>Tool1
|
|
211
|
+
<action>작업</action>
|
|
212
|
+
<tools>Tool1</tools>
|
|
138
213
|
</step>
|
|
139
214
|
</workflow>
|
|
140
215
|
|
|
@@ -142,23 +217,20 @@ description: 짧은 설명 (1줄)
|
|
|
142
217
|
|
|
143
218
|
<examples>
|
|
144
219
|
```typescript
|
|
145
|
-
//
|
|
220
|
+
// 실행 가능 코드
|
|
146
221
|
```
|
|
147
222
|
</examples>
|
|
148
223
|
```
|
|
149
224
|
|
|
150
225
|
---
|
|
151
226
|
|
|
152
|
-
## COMMAND.md
|
|
227
|
+
## COMMAND.md
|
|
153
228
|
|
|
154
|
-
**용도:** 슬래시 커맨드 정의 (/commit, /review)
|
|
155
|
-
|
|
156
|
-
**구조:**
|
|
157
229
|
```markdown
|
|
158
230
|
---
|
|
159
231
|
description: 커맨드 설명
|
|
160
|
-
allowed-tools: Read, Edit
|
|
161
|
-
argument-hint:
|
|
232
|
+
allowed-tools: Read, Edit
|
|
233
|
+
argument-hint: <인자>
|
|
162
234
|
---
|
|
163
235
|
|
|
164
236
|
<purpose>
|
|
@@ -174,7 +246,7 @@ argument-hint: <인자 설명>
|
|
|
174
246
|
---
|
|
175
247
|
|
|
176
248
|
<examples>
|
|
177
|
-
✅/❌ 비교
|
|
249
|
+
✅/❌ 비교
|
|
178
250
|
</examples>
|
|
179
251
|
```
|
|
180
252
|
|
|
@@ -182,169 +254,14 @@ argument-hint: <인자 설명>
|
|
|
182
254
|
|
|
183
255
|
---
|
|
184
256
|
|
|
185
|
-
<templates>
|
|
186
|
-
|
|
187
|
-
## Template 1: CLAUDE.md
|
|
188
|
-
|
|
189
|
-
```markdown
|
|
190
|
-
# CLAUDE.md - [프로젝트명]
|
|
191
|
-
|
|
192
|
-
<instructions>
|
|
193
|
-
@.claude/instructions/git-rules.md
|
|
194
|
-
@docs/library/react/index.md
|
|
195
|
-
</instructions>
|
|
196
|
-
|
|
197
|
-
---
|
|
198
|
-
|
|
199
|
-
<forbidden>
|
|
200
|
-
| 분류 | 금지 |
|
|
201
|
-
|------|------|
|
|
202
|
-
| **Git** | AI 표시, 이모지 |
|
|
203
|
-
| **타입** | any (unknown 사용) |
|
|
204
|
-
</forbidden>
|
|
205
|
-
|
|
206
|
-
---
|
|
207
|
-
|
|
208
|
-
<required>
|
|
209
|
-
| 분류 | 필수 |
|
|
210
|
-
|------|------|
|
|
211
|
-
| **함수** | const 선언, 명시적 return type |
|
|
212
|
-
| **Import** | 절대 경로 (@/) |
|
|
213
|
-
</required>
|
|
214
|
-
|
|
215
|
-
---
|
|
216
|
-
|
|
217
|
-
<quick_patterns>
|
|
218
|
-
```typescript
|
|
219
|
-
// ✅ 올바른 패턴
|
|
220
|
-
const fetchUser = async (id: string): Promise<User> => {
|
|
221
|
-
return await prisma.user.findUnique({ where: { id } })
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
// ❌ 잘못된 패턴
|
|
225
|
-
function fetchUser(id) { ... }
|
|
226
|
-
```
|
|
227
|
-
</quick_patterns>
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
---
|
|
231
|
-
|
|
232
|
-
## Template 2: SKILL.md
|
|
233
|
-
|
|
234
|
-
```markdown
|
|
235
|
-
---
|
|
236
|
-
name: test-runner
|
|
237
|
-
description: 테스트 실행 및 실패 수정
|
|
238
|
-
---
|
|
239
|
-
|
|
240
|
-
<trigger_conditions>
|
|
241
|
-
| 트리거 | 반응 |
|
|
242
|
-
|--------|------|
|
|
243
|
-
| 코드 수정 완료 | 자동 실행 |
|
|
244
|
-
| "테스트 실행" | 즉시 실행 |
|
|
245
|
-
</trigger_conditions>
|
|
246
|
-
|
|
247
|
-
---
|
|
248
|
-
|
|
249
|
-
<forbidden>
|
|
250
|
-
| 금지 |
|
|
251
|
-
|------|
|
|
252
|
-
| 테스트 삭제로 통과, 테스트 없이 완료 |
|
|
253
|
-
</forbidden>
|
|
254
|
-
|
|
255
|
-
---
|
|
256
|
-
|
|
257
|
-
<required>
|
|
258
|
-
| 필수 |
|
|
259
|
-
|------|
|
|
260
|
-
| 모든 테스트 통과, 실패 원인 설명 |
|
|
261
|
-
</required>
|
|
262
|
-
|
|
263
|
-
---
|
|
264
|
-
|
|
265
|
-
<workflow>
|
|
266
|
-
<step number="1">
|
|
267
|
-
<action>테스트 실행</action>
|
|
268
|
-
<tools>Bash</tools>
|
|
269
|
-
<command>npm test</command>
|
|
270
|
-
</step>
|
|
271
|
-
|
|
272
|
-
<step number="2">
|
|
273
|
-
<action>실패 분석</action>
|
|
274
|
-
<tools>Read</tools>
|
|
275
|
-
</step>
|
|
276
|
-
|
|
277
|
-
<step number="3">
|
|
278
|
-
<action>코드 수정</action>
|
|
279
|
-
<tools>Edit</tools>
|
|
280
|
-
</step>
|
|
281
|
-
|
|
282
|
-
<step number="4">
|
|
283
|
-
<action>재실행</action>
|
|
284
|
-
<criteria>모든 테스트 통과</criteria>
|
|
285
|
-
</step>
|
|
286
|
-
</workflow>
|
|
287
|
-
|
|
288
|
-
---
|
|
289
|
-
|
|
290
|
-
<examples>
|
|
291
|
-
```typescript
|
|
292
|
-
// ❌ 버그
|
|
293
|
-
const sum = (a: number, b: number) => a - b
|
|
294
|
-
|
|
295
|
-
// ✅ 수정
|
|
296
|
-
const sum = (a: number, b: number) => a + b
|
|
297
|
-
```
|
|
298
|
-
</examples>
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
</templates>
|
|
302
|
-
|
|
303
|
-
---
|
|
304
|
-
|
|
305
257
|
<workflow>
|
|
306
258
|
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
- 라이브러리 버전 확인
|
|
314
|
-
</output>
|
|
315
|
-
</step>
|
|
316
|
-
|
|
317
|
-
<step number="2">
|
|
318
|
-
<action>핵심 규칙 추출</action>
|
|
319
|
-
<priority>
|
|
320
|
-
1. 절대 금지 사항 (forbidden)
|
|
321
|
-
2. 필수 사항 (required)
|
|
322
|
-
3. 일반적 패턴 (patterns)
|
|
323
|
-
</priority>
|
|
324
|
-
</step>
|
|
325
|
-
|
|
326
|
-
<step number="3">
|
|
327
|
-
<action>템플릿 선택 및 작성</action>
|
|
328
|
-
<guidelines>
|
|
329
|
-
- XML 태그로 섹션 구분
|
|
330
|
-
- 표 형식으로 정보 압축
|
|
331
|
-
- 코드 예시 중심
|
|
332
|
-
- @imports로 공통 규칙 분리
|
|
333
|
-
- 버전 명시
|
|
334
|
-
</guidelines>
|
|
335
|
-
</step>
|
|
336
|
-
|
|
337
|
-
<step number="4">
|
|
338
|
-
<action>품질 검증</action>
|
|
339
|
-
<checklist>
|
|
340
|
-
- [ ] 토큰 효율 (500줄 이하)
|
|
341
|
-
- [ ] XML 태그 올바른 중첩
|
|
342
|
-
- [ ] 코드 예시 실행 가능
|
|
343
|
-
- [ ] 긍정형 지시 (Don't → Do)
|
|
344
|
-
- [ ] 버전 명시
|
|
345
|
-
- [ ] ✅/❌ 마커 사용
|
|
346
|
-
</checklist>
|
|
347
|
-
</step>
|
|
259
|
+
| Step | 작업 | 도구 |
|
|
260
|
+
|------|------|------|
|
|
261
|
+
| **1** | 유형 결정, 구조 파악 | Glob, Read |
|
|
262
|
+
| **2** | 규칙 추출 (forbidden → required → patterns) | Grep |
|
|
263
|
+
| **3** | 작성 (XML 태그, 표, 코드, @imports) | Write |
|
|
264
|
+
| **4** | 검증 (체크리스트) | - |
|
|
348
265
|
|
|
349
266
|
</workflow>
|
|
350
267
|
|
|
@@ -352,19 +269,14 @@ const sum = (a: number, b: number) => a + b
|
|
|
352
269
|
|
|
353
270
|
<examples>
|
|
354
271
|
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
**상황:** 새 TanStack Start 프로젝트, Prisma + Zod 사용
|
|
272
|
+
## TanStack Start CLAUDE.md
|
|
358
273
|
|
|
359
|
-
**작성 결과:**
|
|
360
274
|
```markdown
|
|
361
|
-
# CLAUDE.md - TanStack Start
|
|
275
|
+
# CLAUDE.md - TanStack Start
|
|
362
276
|
|
|
363
277
|
<instructions>
|
|
364
278
|
@.claude/instructions/git-rules.md
|
|
365
279
|
@docs/library/tanstack-start/index.md
|
|
366
|
-
@docs/library/prisma/index.md
|
|
367
|
-
@docs/library/zod/index.md
|
|
368
280
|
</instructions>
|
|
369
281
|
|
|
370
282
|
---
|
|
@@ -373,7 +285,6 @@ const sum = (a: number, b: number) => a + b
|
|
|
373
285
|
| 분류 | 금지 |
|
|
374
286
|
|------|------|
|
|
375
287
|
| **API** | `/api` 라우터 (명시 요청 제외) |
|
|
376
|
-
| **Server Function** | handler 내부 수동 검증/인증 |
|
|
377
288
|
| **타입** | any (unknown 사용) |
|
|
378
289
|
</forbidden>
|
|
379
290
|
|
|
@@ -383,7 +294,6 @@ const sum = (a: number, b: number) => a + b
|
|
|
383
294
|
| 분류 | 필수 |
|
|
384
295
|
|------|------|
|
|
385
296
|
| **Server Function** | POST/PUT → inputValidator + middleware |
|
|
386
|
-
| **클라이언트** | Server Function → TanStack Query |
|
|
387
297
|
| **타입** | 명시적 return type |
|
|
388
298
|
</required>
|
|
389
299
|
|
|
@@ -392,7 +302,6 @@ const sum = (a: number, b: number) => a + b
|
|
|
392
302
|
<tech_stack>
|
|
393
303
|
| 기술 | 버전 | 주의 |
|
|
394
304
|
|------|------|------|
|
|
395
|
-
| TanStack Start | 최신 | File-based routing |
|
|
396
305
|
| Prisma | 7.x | prisma-client, output 필수 |
|
|
397
306
|
| Zod | 4.x | z.email(), z.url() |
|
|
398
307
|
</tech_stack>
|
|
@@ -401,7 +310,7 @@ const sum = (a: number, b: number) => a + b
|
|
|
401
310
|
|
|
402
311
|
<quick_patterns>
|
|
403
312
|
```typescript
|
|
404
|
-
// Server Function
|
|
313
|
+
// Server Function
|
|
405
314
|
export const createUser = createServerFn({ method: 'POST' })
|
|
406
315
|
.middleware([authMiddleware])
|
|
407
316
|
.inputValidator(createUserSchema)
|
|
@@ -412,17 +321,10 @@ const schema = z.object({
|
|
|
412
321
|
email: z.email(),
|
|
413
322
|
website: z.url().optional(),
|
|
414
323
|
})
|
|
415
|
-
|
|
416
|
-
// TanStack Query
|
|
417
|
-
const mutation = useMutation({
|
|
418
|
-
mutationFn: createUser,
|
|
419
|
-
onSuccess: () => queryClient.invalidateQueries({ queryKey: ['users'] }),
|
|
420
|
-
})
|
|
421
324
|
```
|
|
422
325
|
</quick_patterns>
|
|
423
326
|
```
|
|
424
327
|
|
|
425
|
-
|
|
426
328
|
</examples>
|
|
427
329
|
|
|
428
330
|
---
|
|
@@ -431,10 +333,10 @@ const mutation = useMutation({
|
|
|
431
333
|
|
|
432
334
|
| 항목 | 기준 | 검증 |
|
|
433
335
|
|------|------|------|
|
|
434
|
-
|
|
|
435
|
-
| **XML
|
|
436
|
-
|
|
|
437
|
-
| **긍정형** | Don't < 5 |
|
|
336
|
+
| **토큰** | 500줄 이하 | wc -l |
|
|
337
|
+
| **XML** | 올바른 중첩 | 수동 |
|
|
338
|
+
| **예시** | 실행 가능 | 테스트 |
|
|
339
|
+
| **긍정형** | Don't < 5 | grep -c |
|
|
438
340
|
|
|
439
341
|
**체크리스트:**
|
|
440
342
|
- [ ] XML 태그 섹션 구분
|
|
@@ -451,32 +353,22 @@ const mutation = useMutation({
|
|
|
451
353
|
|
|
452
354
|
<best_practices>
|
|
453
355
|
|
|
454
|
-
## 작성 원칙
|
|
455
|
-
|
|
456
356
|
| 원칙 | 방법 |
|
|
457
357
|
|------|------|
|
|
458
|
-
| **Show, Don't Tell** |
|
|
459
|
-
| **High Density** | 1줄당 최대 정보
|
|
460
|
-
| **Copy-Paste Ready** | 바로 사용
|
|
461
|
-
| **Version Explicit** |
|
|
462
|
-
| **Positive Language** |
|
|
358
|
+
| **Show, Don't Tell** | 설명 < 코드 |
|
|
359
|
+
| **High Density** | 1줄당 최대 정보 |
|
|
360
|
+
| **Copy-Paste Ready** | 바로 사용 가능 |
|
|
361
|
+
| **Version Explicit** | 버전 명시 |
|
|
362
|
+
| **Positive Language** | Do X > Don't Y |
|
|
463
363
|
|
|
464
364
|
## 일반적 실수
|
|
465
365
|
|
|
466
366
|
| 실수 | 올바른 방법 |
|
|
467
367
|
|------|------------|
|
|
468
|
-
| 장황한 설명 | 표
|
|
469
|
-
| XML 태그 없음 |
|
|
470
|
-
| 추상적 예시 | 실행
|
|
471
|
-
| 중복 정보 | @imports
|
|
472
|
-
| 버전 누락 |
|
|
473
|
-
|
|
474
|
-
## 문서별 팁
|
|
475
|
-
|
|
476
|
-
| 문서 | 핵심 |
|
|
477
|
-
|------|------|
|
|
478
|
-
| **CLAUDE.md** | @imports 최대 활용, tech_stack 표준화 |
|
|
479
|
-
| **SKILL.md** | trigger_conditions 명확, workflow 코드 중심 |
|
|
480
|
-
| **COMMAND.md** | purpose 간결, workflow 실행 가능 코드 |
|
|
368
|
+
| 장황한 설명 | 표 + 코드 |
|
|
369
|
+
| XML 태그 없음 | 섹션 태그 구분 |
|
|
370
|
+
| 추상적 예시 | 실행 가능 코드 |
|
|
371
|
+
| 중복 정보 | @imports |
|
|
372
|
+
| 버전 누락 | 버전 명시 |
|
|
481
373
|
|
|
482
374
|
</best_practices>
|