@kood/claude-code 0.2.4 → 0.3.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 (130) hide show
  1. package/dist/index.js +13 -8
  2. package/package.json +1 -1
  3. package/templates/.claude/agents/code-reviewer.md +371 -19
  4. package/templates/.claude/agents/dependency-manager.md +197 -0
  5. package/templates/.claude/agents/deployment-validator.md +136 -0
  6. package/templates/.claude/agents/git-operator.md +147 -0
  7. package/templates/.claude/agents/implementation-executor.md +202 -0
  8. package/templates/.claude/agents/lint-fixer.md +155 -0
  9. package/templates/.claude/agents/refactor-advisor.md +339 -29
  10. package/templates/.claude/commands/agent-creator.md +355 -0
  11. package/templates/.claude/commands/docs-creator.md +404 -163
  12. package/templates/.claude/commands/docs-refactor.md +400 -113
  13. package/templates/.claude/commands/execute.md +357 -185
  14. package/templates/.claude/commands/git-all.md +16 -70
  15. package/templates/.claude/commands/git-session.md +36 -68
  16. package/templates/.claude/commands/git.md +20 -69
  17. package/templates/.claude/commands/lint-fix.md +164 -107
  18. package/templates/.claude/commands/lint-init.md +142 -168
  19. package/templates/.claude/commands/plan.md +300 -84
  20. package/templates/.claude/commands/prd.md +613 -0
  21. package/templates/.claude/commands/pre-deploy.md +242 -0
  22. package/templates/.claude/commands/subagent-creator.md +118 -0
  23. package/templates/.claude/commands/version-update.md +45 -57
  24. package/templates/hono/CLAUDE.md +99 -54
  25. package/templates/hono/docs/guides/conventions.md +352 -0
  26. package/templates/hono/docs/guides/env-setup.md +347 -0
  27. package/templates/hono/docs/guides/getting-started.md +239 -0
  28. package/templates/hono/docs/library/hono/error-handling.md +20 -29
  29. package/templates/hono/docs/library/hono/index.md +25 -52
  30. package/templates/hono/docs/library/hono/middleware.md +16 -75
  31. package/templates/hono/docs/library/hono/rpc.md +7 -35
  32. package/templates/hono/docs/library/hono/validation.md +25 -45
  33. package/templates/hono/docs/library/t3-env/index.md +374 -0
  34. package/templates/npx/CLAUDE.md +165 -65
  35. package/templates/npx/docs/library/commander/index.md +10 -73
  36. package/templates/npx/docs/library/fs-extra/index.md +21 -113
  37. package/templates/npx/docs/library/prompts/index.md +30 -176
  38. package/templates/npx/docs/references/patterns.md +75 -48
  39. package/templates/tanstack-start/CLAUDE.md +101 -77
  40. package/templates/tanstack-start/docs/architecture.md +427 -0
  41. package/templates/tanstack-start/docs/design.md +558 -0
  42. package/templates/tanstack-start/docs/guides/conventions.md +132 -32
  43. package/templates/tanstack-start/docs/guides/env-setup.md +127 -62
  44. package/templates/tanstack-start/docs/guides/getting-started.md +81 -20
  45. package/templates/tanstack-start/docs/guides/hooks.md +241 -36
  46. package/templates/tanstack-start/docs/guides/routes.md +213 -61
  47. package/templates/tanstack-start/docs/guides/services.md +260 -24
  48. package/templates/tanstack-start/docs/library/better-auth/index.md +469 -16
  49. package/templates/tanstack-start/docs/library/t3-env/index.md +307 -0
  50. package/templates/tanstack-start/docs/library/tanstack-query/index.md +12 -21
  51. package/templates/tanstack-start/docs/library/tanstack-query/invalidation.md +22 -35
  52. package/templates/tanstack-start/docs/library/tanstack-query/optimistic-updates.md +7 -24
  53. package/templates/tanstack-start/docs/library/tanstack-query/use-mutation.md +26 -39
  54. package/templates/tanstack-start/docs/library/tanstack-query/use-query.md +23 -26
  55. package/templates/tanstack-start/docs/library/tanstack-router/error-handling.md +32 -147
  56. package/templates/tanstack-start/docs/library/tanstack-router/hooks.md +25 -167
  57. package/templates/tanstack-start/docs/library/tanstack-router/index.md +39 -74
  58. package/templates/tanstack-start/docs/library/tanstack-router/navigation.md +46 -116
  59. package/templates/tanstack-start/docs/library/tanstack-router/route-context.md +35 -154
  60. package/templates/tanstack-start/docs/library/tanstack-router/search-params.md +32 -171
  61. package/templates/tanstack-start/docs/library/tanstack-start/auth-patterns.md +7 -15
  62. package/templates/tanstack-start/docs/library/tanstack-start/routing.md +16 -23
  63. package/templates/tanstack-start/docs/library/zod/complex-types.md +12 -31
  64. package/templates/tanstack-start/docs/library/zod/index.md +18 -35
  65. package/templates/tanstack-start/docs/library/zod/transforms.md +11 -25
  66. package/templates/tanstack-start/docs/library/zod/validation.md +12 -34
  67. package/templates/.claude/agents/debug-detective.md +0 -37
  68. package/templates/.claude/agents/test-writer.md +0 -41
  69. package/templates/.claude/commands/feedback.md +0 -199
  70. package/templates/.claude/commands/ts-fix.md +0 -176
  71. package/templates/.claude/skills/command-creator/LICENSE.txt +0 -202
  72. package/templates/.claude/skills/command-creator/SKILL.md +0 -245
  73. package/templates/.claude/skills/command-creator/scripts/init_command.py +0 -244
  74. package/templates/.claude/skills/command-creator/scripts/package_command.py +0 -125
  75. package/templates/.claude/skills/command-creator/scripts/quick_validate.py +0 -143
  76. package/templates/.claude/skills/frontend-design/SKILL.md +0 -310
  77. package/templates/.claude/skills/frontend-design/references/animation-patterns.md +0 -446
  78. package/templates/.claude/skills/frontend-design/references/colors-2026.md +0 -244
  79. package/templates/.claude/skills/frontend-design/references/typography-2026.md +0 -302
  80. package/templates/.claude/skills/gemini-review/SKILL.md +0 -118
  81. package/templates/.claude/skills/gemini-review/references/checklists.md +0 -129
  82. package/templates/.claude/skills/gemini-review/references/prompt-templates.md +0 -274
  83. package/templates/.claude/skills/skill-creator/LICENSE.txt +0 -202
  84. package/templates/.claude/skills/skill-creator/SKILL.md +0 -184
  85. package/templates/.claude/skills/skill-creator/scripts/init_skill.py +0 -303
  86. package/templates/.claude/skills/skill-creator/scripts/package_skill.py +0 -110
  87. package/templates/.claude/skills/skill-creator/scripts/quick_validate.py +0 -65
  88. package/templates/hono/docs/library/ai-sdk/index.md +0 -190
  89. package/templates/hono/docs/library/ai-sdk/openrouter.md +0 -111
  90. package/templates/hono/docs/library/ai-sdk/providers.md +0 -102
  91. package/templates/hono/docs/library/ai-sdk/streaming.md +0 -146
  92. package/templates/hono/docs/library/ai-sdk/structured-output.md +0 -161
  93. package/templates/hono/docs/library/ai-sdk/tools.md +0 -144
  94. package/templates/hono/docs/library/drizzle/cloudflare-d1.md +0 -247
  95. package/templates/hono/docs/library/drizzle/config.md +0 -167
  96. package/templates/hono/docs/library/drizzle/index.md +0 -259
  97. package/templates/hono/docs/library/hono/env-setup.md +0 -169
  98. package/templates/hono/docs/library/pino/index.md +0 -146
  99. package/templates/tanstack-start/docs/architecture/architecture.md +0 -243
  100. package/templates/tanstack-start/docs/deployment/cloudflare.md +0 -132
  101. package/templates/tanstack-start/docs/deployment/index.md +0 -163
  102. package/templates/tanstack-start/docs/deployment/nitro.md +0 -110
  103. package/templates/tanstack-start/docs/deployment/railway.md +0 -147
  104. package/templates/tanstack-start/docs/deployment/vercel.md +0 -135
  105. package/templates/tanstack-start/docs/design/components.md +0 -175
  106. package/templates/tanstack-start/docs/design/index.md +0 -151
  107. package/templates/tanstack-start/docs/design/safe-area.md +0 -118
  108. package/templates/tanstack-start/docs/design/tailwind-setup.md +0 -156
  109. package/templates/tanstack-start/docs/library/ai-sdk/hooks.md +0 -472
  110. package/templates/tanstack-start/docs/library/ai-sdk/index.md +0 -264
  111. package/templates/tanstack-start/docs/library/ai-sdk/openrouter.md +0 -371
  112. package/templates/tanstack-start/docs/library/ai-sdk/providers.md +0 -403
  113. package/templates/tanstack-start/docs/library/ai-sdk/streaming.md +0 -320
  114. package/templates/tanstack-start/docs/library/ai-sdk/structured-output.md +0 -454
  115. package/templates/tanstack-start/docs/library/ai-sdk/tools.md +0 -473
  116. package/templates/tanstack-start/docs/library/better-auth/2fa.md +0 -48
  117. package/templates/tanstack-start/docs/library/better-auth/advanced.md +0 -55
  118. package/templates/tanstack-start/docs/library/better-auth/plugins.md +0 -34
  119. package/templates/tanstack-start/docs/library/better-auth/session.md +0 -47
  120. package/templates/tanstack-start/docs/library/better-auth/setup.md +0 -41
  121. package/templates/tanstack-start/docs/library/drizzle/cloudflare-d1.md +0 -147
  122. package/templates/tanstack-start/docs/library/drizzle/config.md +0 -118
  123. package/templates/tanstack-start/docs/library/drizzle/crud.md +0 -205
  124. package/templates/tanstack-start/docs/library/drizzle/index.md +0 -79
  125. package/templates/tanstack-start/docs/library/drizzle/relations.md +0 -202
  126. package/templates/tanstack-start/docs/library/drizzle/schema.md +0 -154
  127. package/templates/tanstack-start/docs/library/drizzle/setup.md +0 -96
  128. package/templates/tanstack-start/docs/library/drizzle/transactions.md +0 -127
  129. package/templates/tanstack-start/docs/library/pino/index.md +0 -320
  130. /package/templates/hono/docs/{architecture/architecture.md → architecture.md} +0 -0
@@ -1,239 +1,480 @@
1
1
  ---
2
- description: Claude Code 문서 작성 가이드. CLAUDE.md, SKILL.md 등 효과적인 문서 작성 시 사용.
2
+ description: Claude Code 문서 작성 가이드
3
+ allowed-tools: Read, Write, Glob, Grep
4
+ argument-hint: <문서 유형: CLAUDE.md | SKILL.md | COMMAND.md>
3
5
  ---
4
6
 
5
- # Docs Creator
7
+ # Docs Creator Command
6
8
 
7
- Claude Code 문서 작성 베스트 프랙티스 가이드.
9
+ > Claude Code 문서 (CLAUDE.md, SKILL.md, COMMAND.md)를 Anthropic 가이드라인에 따라 효과적으로 작성
8
10
 
9
- ## 핵심 원칙
11
+ <purpose>
10
12
 
11
- | 원칙 | 설명 |
12
- |------|------|
13
- | **간결함** | 컨텍스트 윈도우는 공공재. 모든 토큰이 비용 |
14
- | **점진적 공개** | 핵심만 메인 파일에, 상세는 참조 파일로 분리 |
15
- | **보편적 적용** | 모든 세션에 필요한 정보만 포함 |
13
+ **목표:** 고밀도, 실행 가능한, 유지보수 가능한 문서 작성
14
+
15
+ </purpose>
16
+
17
+ ---
18
+
19
+ <trigger_conditions>
20
+
21
+ | 상황 | 작성 필요 |
22
+ |------|----------|
23
+ | **새 프로젝트** | CLAUDE.md 생성 |
24
+ | **새 스킬** | SKILL.md 생성 |
25
+ | **새 커맨드** | COMMAND.md 생성 |
26
+ | **문서 부재** | 프로젝트 규칙 문서화 |
27
+ | **지식 공유** | 팀 온보딩 가이드 |
28
+
29
+ </trigger_conditions>
16
30
 
17
- ## 문서 유형별 가이드
31
+ ---
32
+
33
+ <forbidden>
18
34
 
19
- | 문서 | 권장 길이 | 용도 |
20
- |------|----------|------|
21
- | CLAUDE.md | 60-200줄 | 프로젝트 전역 설정, 컨벤션 |
22
- | SKILL.md | 500줄 이하 | 특화 워크플로우, 도구 사용법 |
23
- | references/ | 무제한 | 상세 API 문서, 스키마 |
35
+ | 분류 | 금지 사항 |
36
+ |------|----------|
37
+ | **설명** | 장황한 설명, 불필요한 텍스트, 중복 정보 |
38
+ | **구조** | XML 태그 없는 복잡 구조, 모호한 지시 |
39
+ | **표현** | 부정형 지시 (Don't X Do Y) |
40
+ | **복잡도** | 복잡한 조건문, 모든 엣지 케이스 |
41
+ | **강조** | 과도한 강조 (CRITICAL, MUST 남발) |
24
42
 
25
- **지침 개수 한계**: 150-200개 (Claude Code 자체 ~50개 사용)
43
+ </forbidden>
44
+
45
+ ---
26
46
 
27
- ## 구조 템플릿
47
+ <required>
28
48
 
29
- ### CLAUDE.md
49
+ | 분류 | 필수 사항 |
50
+ |------|----------|
51
+ | **구조** | XML 태그 섹션 구분, 명확한 계층 |
52
+ | **표현** | 표 형식 압축, ✅/❌ 마커 |
53
+ | **예시** | 코드/예시 중심, 복사 가능 패턴 |
54
+ | **로딩** | @imports로 just-in-time |
55
+ | **지시** | 명시적 지시, 긍정형 표현 |
56
+ | **버전** | 라이브러리 버전 명시 |
57
+
58
+ </required>
59
+
60
+ ---
30
61
 
62
+ <document_types>
63
+
64
+ ## CLAUDE.md - 프로젝트 규칙
65
+
66
+ **용도:** 프로젝트별 코딩 규칙, 금지/필수 사항, 빠른 참조
67
+
68
+ **구조:**
31
69
  ```markdown
32
- # 프로젝트명
70
+ # CLAUDE.md - [프로젝트명]
33
71
 
34
- ## 개요
35
- 프로젝트 목적 (1-2문장)
72
+ <instructions>
73
+ @path/to/common-rules.md
74
+ @docs/library/[라이브러리]/index.md
75
+ </instructions>
36
76
 
37
- ## 기술 스택
38
- - 프레임워크: X
39
- - 언어: Y
40
- - DB: Z
77
+ ---
41
78
 
42
- ## 명령어
43
- | 명령 | 설명 |
79
+ <forbidden>
80
+ | 분류 | 금지 |
44
81
  |------|------|
45
- | `yarn dev` | 개발 서버 |
46
- | `yarn test` | 테스트 실행 |
82
+ | **Git** | AI 표시, 이모지, 여러 줄 |
83
+ </forbidden>
47
84
 
48
- ## 컨벤션
49
- - 파일명: kebab-case
50
- - 함수: const 화살표 함수
51
- - 타입: interface (객체), type (유니온)
85
+ ---
86
+
87
+ <required>
88
+ | 분류 | 필수 |
89
+ |------|------|
90
+ | **타입** | 명시적 return type |
91
+ </required>
92
+
93
+ ---
94
+
95
+ <tech_stack>
96
+ | 기술 | 버전 | 주의 |
97
+ |------|------|------|
98
+ | TypeScript | 5.x | strict |
99
+ </tech_stack>
100
+
101
+ ---
52
102
 
53
- ## 워크플로우
54
- 기능 추가 → 테스트 → 린트 → 커밋
103
+ <quick_patterns>
104
+ ```typescript
105
+ // 복사 가능한 패턴
106
+ const example = () => { ... }
55
107
  ```
108
+ </quick_patterns>
109
+ ```
110
+
111
+ ---
112
+
113
+ ## SKILL.md - 재사용 작업
56
114
 
57
- ### SKILL.md
115
+ **용도:** 특정 작업 자동화 스킬 정의
58
116
 
117
+ **구조:**
59
118
  ```markdown
60
119
  ---
61
120
  name: skill-name
62
- description: 무엇을 하는지 + 언제 사용하는지. (scope)
121
+ description: 짧은 설명 (1줄)
63
122
  ---
64
123
 
65
- # Skill Name
124
+ <trigger_conditions>
125
+ | 키워드/상황 | 반응 |
126
+ |-----------|------|
127
+ | "키워드" | 즉시 실행 |
128
+ </trigger_conditions>
66
129
 
67
- 스킬 목적 (2-3문장)
68
-
69
- ## 사용 시점
70
- - 조건 1
71
- - 조건 2
130
+ ---
72
131
 
73
- ## 사용 방법
132
+ <workflow>
133
+ <step number="1">
134
+ <action>액션 설명</action>
135
+ <tools>Tool1, Tool2</tools>
136
+ </step>
137
+ </workflow>
74
138
 
75
- ### 기본 워크플로우
76
- 1. 단계 1
77
- 2. 단계 2
139
+ ---
78
140
 
79
- ### 참조
80
- - 상세 API: [references/api.md](references/api.md)
81
- - 스키마: [references/schema.md](references/schema.md)
141
+ <examples>
142
+ ```typescript
143
+ // 실제 코드
82
144
  ```
145
+ </examples>
146
+ ```
147
+
148
+ ---
83
149
 
84
- ## Progressive Disclosure
150
+ ## COMMAND.md - CLI 커맨드
85
151
 
86
- ```
87
- project/
88
- ├── CLAUDE.md # 핵심만 (60-200줄)
89
- ├── docs/
90
- │ ├── api.md # API 상세
91
- │ └── architecture.md # 아키텍처
92
- └── .claude/skills/
93
- └── my-skill/
94
- ├── SKILL.md # 개요 (<500줄)
95
- └── references/ # 상세 정보
152
+ **용도:** 슬래시 커맨드 정의 (/commit, /review)
153
+
154
+ **구조:**
155
+ ```markdown
156
+ ---
157
+ description: 커맨드 설명
158
+ allowed-tools: Read, Edit, Bash
159
+ argument-hint: <인자 설명>
160
+ ---
161
+
162
+ <purpose>
163
+ 구체적 목표
164
+ </purpose>
165
+
166
+ ---
167
+
168
+ <workflow>
169
+ 실행 단계
170
+ </workflow>
171
+
172
+ ---
173
+
174
+ <examples>
175
+ ✅/❌ 비교 예시
176
+ </examples>
96
177
  ```
97
178
 
98
- **토큰 로드 단계:**
179
+ </document_types>
99
180
 
100
- | 단계 | 내용 | 크기 |
101
- |------|------|------|
102
- | 1. 메타데이터 | name + description | 30-50 토큰 |
103
- | 2. 활성화 | SKILL.md 본문 | <5k 단어 |
104
- | 3. 참조 | 번들 리소스 | 필요 시만 |
181
+ ---
105
182
 
106
- ## 작성 규칙
183
+ <templates>
107
184
 
108
- ### DO
185
+ ## Template 1: CLAUDE.md
109
186
 
110
- - 불릿 포인트 + 짧은 문장
111
- - 코드 예시 중심
112
- - 표로 정보 구조화
113
- - 강조: `IMPORTANT:`, `YOU MUST:`
114
- - 1단계 깊이 참조 (A→B ✅, A→B→C ❌)
187
+ ```markdown
188
+ # CLAUDE.md - [프로젝트명]
189
+
190
+ <instructions>
191
+ @.claude/instructions/git-rules.md
192
+ @docs/library/react/index.md
193
+ </instructions>
115
194
 
116
- ### DON'T
195
+ ---
117
196
 
118
- - 긴 서술형 문단
119
- - Claude가 아는 설명
120
- - 린터 역할 강요 (도구 사용)
121
- - 시간 의존적 정보
122
- - /init 자동 생성 의존
197
+ <forbidden>
198
+ | 분류 | 금지 |
199
+ |------|------|
200
+ | **Git** | AI 표시, 이모지 |
201
+ | **타입** | any (unknown 사용) |
202
+ </forbidden>
123
203
 
124
- ## Description 작성
204
+ ---
125
205
 
126
- SKILL.md의 description은 스킬 발견에 핵심.
206
+ <required>
207
+ | 분류 | 필수 |
208
+ |------|------|
209
+ | **함수** | const 선언, 명시적 return type |
210
+ | **Import** | 절대 경로 (@/) |
211
+ </required>
127
212
 
128
- ```yaml
129
- # Good - 구체적 + 트리거 포함
130
- description: PDF에서 텍스트/표 추출, 폼 작성. PDF 작업 시 사용.
213
+ ---
214
+
215
+ <quick_patterns>
216
+ ```typescript
217
+ // ✅ 올바른 패턴
218
+ const fetchUser = async (id: string): Promise<User> => {
219
+ return await prisma.user.findUnique({ where: { id } })
220
+ }
131
221
 
132
- # Bad - 모호함
133
- description: 문서 처리
222
+ // 잘못된 패턴
223
+ function fetchUser(id) { ... }
224
+ ```
225
+ </quick_patterns>
134
226
  ```
135
227
 
136
- **규칙:**
137
- - 3인칭 작성 (시스템 프롬프트에 주입됨)
138
- - 무엇을 하는지 + 언제 사용하는지
139
- - 구체적 키워드 포함
228
+ ---
140
229
 
141
- ## Context 관리
230
+ ## Template 2: SKILL.md
142
231
 
143
- | 명령어 | 용도 | 시점 |
144
- |--------|------|------|
145
- | `/compact` | 컨텍스트 요약 | 70% 도달 |
146
- | `/clear` | 세션 초기화 | 새 기능 시작 |
147
- | `/resume` | 세션 복원 | 작업 재개 |
232
+ ```markdown
233
+ ---
234
+ name: test-runner
235
+ description: 테스트 실행 실패 수정
236
+ ---
148
237
 
149
- **주의:** 마지막 20%는 복잡한 작업 피할 것
238
+ <trigger_conditions>
239
+ | 트리거 | 반응 |
240
+ |--------|------|
241
+ | 코드 수정 완료 | 자동 실행 |
242
+ | "테스트 실행" | 즉시 실행 |
243
+ </trigger_conditions>
150
244
 
151
- ## Subagent 활용
245
+ ---
152
246
 
153
- 문서 작성 시 subagent를 적극 활용하여 메인 컨텍스트 보호.
247
+ <forbidden>
248
+ | 금지 |
249
+ |------|
250
+ | 테스트 삭제로 통과, 테스트 없이 완료 |
251
+ </forbidden>
154
252
 
155
- ### Subagent 종류
253
+ ---
156
254
 
157
- | 타입 | 용도 | 문서 작성 활용 |
158
- |------|------|---------------|
159
- | `Explore` | 코드베이스 탐색 | 프로젝트 구조 파악, 패턴 분석 |
160
- | `Plan` | 구현 계획 수립 | 문서 구조 설계, 섹션 계획 |
161
- | `general-purpose` | 범용 조사 | 베스트 프랙티스 조사, 예시 수집 |
255
+ <required>
256
+ | 필수 |
257
+ |------|
258
+ | 모든 테스트 통과, 실패 원인 설명 |
259
+ </required>
162
260
 
163
- ### 활용 시점
261
+ ---
164
262
 
165
- **CLAUDE.md 작성 시:**
166
- ```
167
- 1. Explore agent → 프로젝트 구조/기술 스택 파악
168
- 2. Explore agent → 기존 컨벤션/패턴 분석
169
- 3. 메인 에이전트 → 요약 기반 문서 작성
170
- ```
263
+ <workflow>
264
+ <step number="1">
265
+ <action>테스트 실행</action>
266
+ <tools>Bash</tools>
267
+ <command>npm test</command>
268
+ </step>
269
+
270
+ <step number="2">
271
+ <action>실패 분석</action>
272
+ <tools>Read</tools>
273
+ </step>
274
+
275
+ <step number="3">
276
+ <action>코드 수정</action>
277
+ <tools>Edit</tools>
278
+ </step>
279
+
280
+ <step number="4">
281
+ <action>재실행</action>
282
+ <criteria>모든 테스트 통과</criteria>
283
+ </step>
284
+ </workflow>
285
+
286
+ ---
171
287
 
172
- **SKILL.md 작성 시:**
288
+ <examples>
289
+ ```typescript
290
+ // ❌ 버그
291
+ const sum = (a: number, b: number) => a - b
292
+
293
+ // ✅ 수정
294
+ const sum = (a: number, b: number) => a + b
173
295
  ```
174
- 1. Explore agent → 관련 코드/워크플로우 분석
175
- 2. Plan agent → 스킬 구조 설계
176
- 3. 메인 에이전트 → 설계 기반 작성
296
+ </examples>
177
297
  ```
178
298
 
179
- ### 효과
299
+ </templates>
180
300
 
181
- | 방식 | 컨텍스트 사용 |
182
- |------|--------------|
183
- | 직접 탐색 | 전체 파일 내용 로드 |
184
- | Subagent | 요약만 반환 → 90%+ 절약 |
301
+ ---
185
302
 
186
- ### 프롬프트 예시
303
+ <workflow>
304
+
305
+ <step number="1">
306
+ <action>문서 유형 결정 및 프로젝트 분석</action>
307
+ <output>
308
+ - CLAUDE.md | SKILL.md | COMMAND.md 선택
309
+ - 프로젝트 구조 파악 (Glob, Read)
310
+ - 기존 패턴 식별 (Grep)
311
+ - 라이브러리 버전 확인
312
+ </output>
313
+ </step>
314
+
315
+ <step number="2">
316
+ <action>핵심 규칙 추출</action>
317
+ <priority>
318
+ 1. 절대 금지 사항 (forbidden)
319
+ 2. 필수 사항 (required)
320
+ 3. 일반적 패턴 (patterns)
321
+ </priority>
322
+ </step>
323
+
324
+ <step number="3">
325
+ <action>템플릿 선택 및 작성</action>
326
+ <guidelines>
327
+ - XML 태그로 섹션 구분
328
+ - 표 형식으로 정보 압축
329
+ - 코드 예시 중심
330
+ - @imports로 공통 규칙 분리
331
+ - 버전 명시
332
+ </guidelines>
333
+ </step>
334
+
335
+ <step number="4">
336
+ <action>품질 검증</action>
337
+ <checklist>
338
+ - [ ] 토큰 효율 (500줄 이하)
339
+ - [ ] XML 태그 올바른 중첩
340
+ - [ ] 코드 예시 실행 가능
341
+ - [ ] 긍정형 지시 (Don't → Do)
342
+ - [ ] 버전 명시
343
+ - [ ] ✅/❌ 마커 사용
344
+ </checklist>
345
+ </step>
346
+
347
+ </workflow>
187
348
 
188
- ```
189
- Explore agent에게:
190
- "프로젝트 구조와 기술 스택을 분석하고,
191
- CLAUDE.md에 포함할 핵심 정보만 요약해줘.
192
- - 디렉토리 구조
193
- - 주요 의존성
194
- - 빌드/테스트 명령어
195
- - 코드 컨벤션"
196
- ```
349
+ ---
350
+
351
+ <examples>
352
+
353
+ ### Example 1: TanStack Start CLAUDE.md
354
+
355
+ **상황:** TanStack Start 프로젝트, Prisma + Zod 사용
197
356
 
357
+ **작성 결과:**
358
+ ```markdown
359
+ # CLAUDE.md - TanStack Start Project
360
+
361
+ <instructions>
362
+ @.claude/instructions/git-rules.md
363
+ @docs/library/tanstack-start/index.md
364
+ @docs/library/prisma/index.md
365
+ @docs/library/zod/index.md
366
+ </instructions>
367
+
368
+ ---
369
+
370
+ <forbidden>
371
+ | 분류 | 금지 |
372
+ |------|------|
373
+ | **API** | `/api` 라우터 (명시 요청 제외) |
374
+ | **Server Function** | handler 내부 수동 검증/인증 |
375
+ | **타입** | any (unknown 사용) |
376
+ </forbidden>
377
+
378
+ ---
379
+
380
+ <required>
381
+ | 분류 | 필수 |
382
+ |------|------|
383
+ | **Server Function** | POST/PUT → inputValidator + middleware |
384
+ | **클라이언트** | Server Function → TanStack Query |
385
+ | **타입** | 명시적 return type |
386
+ </required>
387
+
388
+ ---
389
+
390
+ <tech_stack>
391
+ | 기술 | 버전 | 주의 |
392
+ |------|------|------|
393
+ | TanStack Start | 최신 | File-based routing |
394
+ | Prisma | 7.x | prisma-client, output 필수 |
395
+ | Zod | 4.x | z.email(), z.url() |
396
+ </tech_stack>
397
+
398
+ ---
399
+
400
+ <quick_patterns>
401
+ ```typescript
402
+ // Server Function (POST + Validation + Auth)
403
+ export const createUser = createServerFn({ method: 'POST' })
404
+ .middleware([authMiddleware])
405
+ .inputValidator(createUserSchema)
406
+ .handler(async ({ data }) => prisma.user.create({ data }))
407
+
408
+ // Zod v4
409
+ const schema = z.object({
410
+ email: z.email(),
411
+ website: z.url().optional(),
412
+ })
413
+
414
+ // TanStack Query
415
+ const mutation = useMutation({
416
+ mutationFn: createUser,
417
+ onSuccess: () => queryClient.invalidateQueries({ queryKey: ['users'] }),
418
+ })
198
419
  ```
199
- Plan agent에게:
200
- "이 스킬의 SKILL.md 구조를 설계해줘.
201
- - 스킬 목적
202
- - 주요 섹션
203
- - 참조 파일 분리 계획
204
- - 워크플로우 단계"
420
+ </quick_patterns>
205
421
  ```
206
422
 
207
- ## 체크리스트
208
423
 
209
- ### CLAUDE.md
424
+ </examples>
210
425
 
211
- - [ ] 60-200줄 이내
212
- - [ ] 기술 스택 명시
213
- - [ ] 주요 명령어 포함
214
- - [ ] 컨벤션 정리
215
- - [ ] 민감 정보 제외
426
+ ---
216
427
 
217
- ### SKILL.md
428
+ <validation>
218
429
 
219
- - [ ] 500줄 이하
220
- - [ ] description 구체적 (무엇 + 언제)
221
- - [ ] 3인칭 작성
222
- - [ ] 참조 1단계 깊이
223
- - [ ] 100줄+ 파일은 목차 포함
224
- - [ ] 워크플로우에 체크리스트
430
+ | 항목 | 기준 | 검증 |
431
+ |------|------|------|
432
+ | **토큰 효율** | 500줄 이하 | `wc -l` |
433
+ | **XML 태그** | 올바른 중첩 | `grep -o '<[^>]*>'` |
434
+ | **예시 품질** | 실행 가능 | 테스트 |
435
+ | **긍정형** | Don't < 5 | `grep -c "Don't"` |
436
+
437
+ **체크리스트:**
438
+ - [ ] XML 태그 섹션 구분
439
+ - [ ] 표 형식 압축
440
+ - [ ] 코드 예시 실행 가능
441
+ - [ ] ✅/❌ 마커
442
+ - [ ] @imports 중복 제거
443
+ - [ ] 버전 명시
444
+ - [ ] 긍정형 지시
445
+
446
+ </validation>
447
+
448
+ ---
225
449
 
226
- ### 공통
450
+ <best_practices>
227
451
 
228
- - [ ] 간결한 작성
229
- - [ ] 코드 예시 포함
230
- - [ ] 표로 구조화
231
- - [ ] 시간 의존 정보 없음
232
- - [ ] Subagent로 사전 조사 완료
233
- - [ ] 테스트 완료
452
+ ## 작성 원칙
234
453
 
235
- ## 참조
454
+ | 원칙 | 방법 |
455
+ |------|------|
456
+ | **Show, Don't Tell** | 설명보다 코드 예시 |
457
+ | **High Density** | 1줄당 최대 정보 압축 |
458
+ | **Copy-Paste Ready** | 바로 사용 가능한 패턴 |
459
+ | **Version Explicit** | 라이브러리 버전 명시 |
460
+ | **Positive Language** | "Do X" > "Don't Y" |
461
+
462
+ ## 일반적 실수
463
+
464
+ | 실수 | 올바른 방법 |
465
+ |------|------------|
466
+ | 장황한 설명 | 표 형식 + 코드 예시 |
467
+ | XML 태그 없음 | 모든 섹션 태그 구분 |
468
+ | 추상적 예시 | 실행 가능한 코드 |
469
+ | 중복 정보 | @imports 분리 |
470
+ | 버전 누락 | 모든 라이브러리 버전 명시 |
471
+
472
+ ## 문서별 팁
473
+
474
+ | 문서 | 핵심 |
475
+ |------|------|
476
+ | **CLAUDE.md** | @imports 최대 활용, tech_stack 표준화 |
477
+ | **SKILL.md** | trigger_conditions 명확, workflow 코드 중심 |
478
+ | **COMMAND.md** | purpose 간결, workflow 실행 가능 코드 |
236
479
 
237
- - [Claude Code Best Practices](https://www.anthropic.com/engineering/claude-code-best-practices)
238
- - [Using CLAUDE.MD files](https://claude.com/blog/using-claude-md-files)
239
- - [Skill Best Practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)
480
+ </best_practices>