@kood/claude-code 0.1.2 → 0.1.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 (61) hide show
  1. package/dist/index.js +12 -3
  2. package/package.json +2 -2
  3. package/templates/hono/CLAUDE.md +20 -2
  4. package/templates/hono/docs/architecture/architecture.md +909 -0
  5. package/templates/hono/docs/deployment/cloudflare.md +537 -190
  6. package/templates/hono/docs/deployment/docker.md +517 -0
  7. package/templates/hono/docs/deployment/index.md +181 -213
  8. package/templates/hono/docs/deployment/railway.md +416 -0
  9. package/templates/hono/docs/deployment/vercel.md +572 -0
  10. package/templates/hono/docs/git/git.md +285 -0
  11. package/templates/hono/docs/library/ai-sdk/index.md +427 -0
  12. package/templates/hono/docs/library/ai-sdk/openrouter.md +479 -0
  13. package/templates/hono/docs/library/ai-sdk/providers.md +468 -0
  14. package/templates/hono/docs/library/ai-sdk/streaming.md +447 -0
  15. package/templates/hono/docs/library/ai-sdk/structured-output.md +493 -0
  16. package/templates/hono/docs/library/ai-sdk/tools.md +513 -0
  17. package/templates/hono/docs/library/hono/env-setup.md +458 -0
  18. package/templates/hono/docs/library/hono/index.md +1 -0
  19. package/templates/hono/docs/library/pino/index.md +437 -0
  20. package/templates/hono/docs/library/prisma/cloudflare-d1.md +503 -0
  21. package/templates/hono/docs/library/prisma/config.md +362 -0
  22. package/templates/hono/docs/library/prisma/index.md +86 -13
  23. package/templates/hono/docs/skills/gemini-review/SKILL.md +116 -116
  24. package/templates/hono/docs/skills/gemini-review/references/checklists.md +125 -125
  25. package/templates/hono/docs/skills/gemini-review/references/prompt-templates.md +191 -191
  26. package/templates/npx/CLAUDE.md +309 -0
  27. package/templates/npx/docs/git/git.md +307 -0
  28. package/templates/npx/docs/library/commander/index.md +164 -0
  29. package/templates/npx/docs/library/fs-extra/index.md +171 -0
  30. package/templates/npx/docs/library/prompts/index.md +253 -0
  31. package/templates/npx/docs/mcp/index.md +60 -0
  32. package/templates/npx/docs/skills/gemini-review/SKILL.md +220 -0
  33. package/templates/npx/docs/skills/gemini-review/references/checklists.md +134 -0
  34. package/templates/npx/docs/skills/gemini-review/references/prompt-templates.md +301 -0
  35. package/templates/tanstack-start/CLAUDE.md +43 -5
  36. package/templates/tanstack-start/docs/architecture/architecture.md +134 -4
  37. package/templates/tanstack-start/docs/deployment/cloudflare.md +234 -51
  38. package/templates/tanstack-start/docs/deployment/index.md +322 -32
  39. package/templates/tanstack-start/docs/deployment/nitro.md +201 -20
  40. package/templates/tanstack-start/docs/deployment/railway.md +305 -153
  41. package/templates/tanstack-start/docs/deployment/vercel.md +353 -78
  42. package/templates/tanstack-start/docs/git/{index.md → git.md} +81 -7
  43. package/templates/tanstack-start/docs/guides/best-practices.md +203 -1
  44. package/templates/tanstack-start/docs/guides/env-setup.md +450 -0
  45. package/templates/tanstack-start/docs/library/ai-sdk/hooks.md +472 -0
  46. package/templates/tanstack-start/docs/library/ai-sdk/index.md +264 -0
  47. package/templates/tanstack-start/docs/library/ai-sdk/openrouter.md +371 -0
  48. package/templates/tanstack-start/docs/library/ai-sdk/providers.md +403 -0
  49. package/templates/tanstack-start/docs/library/ai-sdk/streaming.md +320 -0
  50. package/templates/tanstack-start/docs/library/ai-sdk/structured-output.md +454 -0
  51. package/templates/tanstack-start/docs/library/ai-sdk/tools.md +473 -0
  52. package/templates/tanstack-start/docs/library/pino/index.md +320 -0
  53. package/templates/tanstack-start/docs/library/prisma/cloudflare-d1.md +404 -0
  54. package/templates/tanstack-start/docs/library/prisma/config.md +377 -0
  55. package/templates/tanstack-start/docs/library/prisma/index.md +3 -1
  56. package/templates/tanstack-start/docs/library/prisma/schema.md +123 -25
  57. package/templates/tanstack-start/docs/library/tanstack-start/server-functions.md +80 -2
  58. package/templates/tanstack-start/docs/skills/gemini-review/SKILL.md +116 -116
  59. package/templates/tanstack-start/docs/skills/gemini-review/references/checklists.md +138 -144
  60. package/templates/tanstack-start/docs/skills/gemini-review/references/prompt-templates.md +186 -187
  61. package/templates/hono/docs/git/index.md +0 -180
@@ -0,0 +1,309 @@
1
+ # CLAUDE.md - Claude Code Instructions
2
+
3
+ > NPX CLI 도구 프로젝트 작업 지침
4
+
5
+ ---
6
+
7
+ ## 🚨 STOP - 작업 전 필수 확인
8
+
9
+ ```
10
+ ┌─────────────────────────────────────────────────────────────┐
11
+ │ 이 프로젝트에서 작업하기 전에 이 문서를 끝까지 읽으세요. │
12
+ │ 특히 ⛔ NEVER DO 섹션의 규칙은 절대 위반하지 마세요. │
13
+ │ │
14
+ │ 📖 작업 유형별 상세 문서: docs/ 폴더 참조 │
15
+ └─────────────────────────────────────────────────────────────┘
16
+ ```
17
+
18
+ ---
19
+
20
+ ## ⛔ NEVER DO (절대 금지 - 예외 없음)
21
+
22
+ ### Git 커밋 금지 사항
23
+ ```
24
+ ❌ "Generated with Claude Code" 포함 금지
25
+ ❌ "🤖" 또는 AI 관련 이모지 포함 금지
26
+ ❌ "Co-Authored-By:" 헤더 포함 금지
27
+ ❌ AI/봇이 작성했다는 어떤 표시도 금지
28
+ ❌ 커밋 메시지 여러 줄 작성 금지
29
+ ❌ 커밋 메시지에 이모지 사용 금지
30
+ ```
31
+
32
+ ### CLI 구현 금지 사항
33
+ ```
34
+ ❌ process.exit() 없이 에러 상황 종료 금지
35
+ ❌ console.log 직접 사용 금지 (logger 사용)
36
+ ❌ 동기 파일 작업 (fs.readFileSync 등) 금지
37
+ ❌ hardcoded 경로 사용 금지 (path.join 사용)
38
+ ❌ 사용자 입력 검증 없이 처리 금지
39
+ ```
40
+
41
+ ### 코드 검색 금지 사항
42
+ ```
43
+ ❌ grep, rg 등 기본 검색 도구 사용 금지
44
+ ❌ find 명령어로 코드 검색 금지
45
+ ✅ 코드베이스 검색 시 sgrep 사용 필수
46
+ ```
47
+
48
+ ---
49
+
50
+ ## ✅ ALWAYS DO (필수 실행)
51
+
52
+ ### 1. 작업 전: 관련 문서 읽기
53
+ ```
54
+ CLI 작업 → docs/library/commander/ 읽기
55
+ 파일 작업 → docs/library/fs-extra/ 읽기
56
+ 사용자 입력 → docs/library/prompts/ 읽기
57
+ ```
58
+
59
+ ### 2. MCP 도구 적극 활용
60
+ ```
61
+ 코드베이스 검색 → sgrep 사용 (grep/rg 금지)
62
+ 복잡한 분석/디버깅 → Sequential Thinking 사용
63
+ 라이브러리 문서 → Context7 사용
64
+ ```
65
+ **상세**: `docs/mcp/` 참고
66
+
67
+ ### 3. 작업 완료 후: Git 커밋
68
+ ```bash
69
+ git add .
70
+ git commit -m "<prefix>: <설명>"
71
+ ```
72
+
73
+ **커밋 형식**: `<prefix>: <설명>` (한 줄, 본문 없음)
74
+
75
+ **Prefix**: `feat` | `fix` | `refactor` | `style` | `docs` | `test` | `chore` | `perf` | `ci`
76
+
77
+ **예시**:
78
+ ```bash
79
+ feat: 템플릿 복사 기능 추가
80
+ fix: 경로 처리 오류 수정
81
+ docs: README 업데이트
82
+ ```
83
+
84
+ ---
85
+
86
+ ## 📚 문서 참조 테이블
87
+
88
+ | 작업 | 문서 경로 | 필독 여부 |
89
+ |------|----------|----------|
90
+ | **Git 규칙** | `docs/git/git.md` | 🔴 필수 |
91
+ | **MCP 도구** | `docs/mcp/` | 🔴 필수 |
92
+ | **Commander** | `docs/library/commander/` | 🔴 필수 |
93
+ | **fs-extra** | `docs/library/fs-extra/` | 🔴 필수 |
94
+ | **prompts** | `docs/library/prompts/` | 🔴 필수 |
95
+
96
+ ---
97
+
98
+ ## 🛠 Tech Stack (버전 주의)
99
+
100
+ | 기술 | 버전 | 주의사항 |
101
+ |------|------|----------|
102
+ | Node.js | >= 18 | ESM 모듈 사용 |
103
+ | TypeScript | 5.x | strict mode |
104
+ | Commander | 12.x | CLI 프레임워크 |
105
+ | fs-extra | 11.x | 파일 시스템 유틸리티 |
106
+ | prompts | 2.x | Interactive CLI prompts |
107
+ | picocolors | 1.x | 터미널 색상 출력 |
108
+ | tsup | 8.x | TypeScript 번들러 |
109
+
110
+ ---
111
+
112
+ ## 📁 Directory Structure
113
+
114
+ ```
115
+ src/
116
+ ├── index.ts # Entry point (CLI 정의)
117
+ ├── commands/ # 명령어 모듈
118
+ │ └── init.ts # init 명령어
119
+ ├── utils/ # 유틸리티
120
+ │ ├── copy.ts # 파일 복사 유틸
121
+ │ └── logger.ts # 로깅 유틸
122
+ └── types/ # 타입 정의
123
+ └── index.ts # 공통 타입
124
+
125
+ templates/ # 템플릿 파일 (빌드 시 복사)
126
+ scripts/ # 빌드 스크립트
127
+ dist/ # 빌드 결과물
128
+ ```
129
+
130
+ ---
131
+
132
+ ## 🔧 Code Conventions
133
+
134
+ ### File Naming
135
+ - **kebab-case**: `copy-template.ts`, `file-utils.ts`
136
+ - **index.ts**: 모듈 진입점
137
+
138
+ ### TypeScript
139
+ - `const` 선언 사용 (function 대신)
140
+ - 명시적 return type
141
+ - `interface` (객체) / `type` (유니온)
142
+ - `any` 금지 → `unknown` 사용
143
+
144
+ ### ESM Module
145
+ ```typescript
146
+ // ✅ ESM import
147
+ import fs from 'fs-extra';
148
+ import path from 'path';
149
+ import { fileURLToPath } from 'url';
150
+
151
+ // __dirname 대체
152
+ const __filename = fileURLToPath(import.meta.url);
153
+ const __dirname = path.dirname(__filename);
154
+ ```
155
+
156
+ ---
157
+
158
+ ## 📝 Quick Patterns (복사용)
159
+
160
+ ### CLI Entry Point
161
+ ```typescript
162
+ #!/usr/bin/env node
163
+ import { Command } from 'commander';
164
+
165
+ const program = new Command();
166
+
167
+ program
168
+ .name('my-cli')
169
+ .description('CLI description')
170
+ .version('1.0.0');
171
+
172
+ program
173
+ .option('-t, --template <name>', 'template name')
174
+ .option('-f, --force', 'overwrite existing files')
175
+ .action(async (options) => {
176
+ // 명령어 실행
177
+ });
178
+
179
+ program.parse();
180
+ ```
181
+
182
+ ### Logger 유틸
183
+ ```typescript
184
+ import pc from 'picocolors';
185
+
186
+ export const logger = {
187
+ info: (msg: string) => console.log(pc.blue('ℹ'), msg),
188
+ success: (msg: string) => console.log(pc.green('✔'), msg),
189
+ warn: (msg: string) => console.log(pc.yellow('⚠'), msg),
190
+ error: (msg: string) => console.log(pc.red('✖'), msg),
191
+ step: (msg: string) => console.log(pc.gray(' →'), msg),
192
+ blank: () => console.log(),
193
+ };
194
+ ```
195
+
196
+ ### Interactive Prompts
197
+ ```typescript
198
+ import prompts from 'prompts';
199
+
200
+ // Select (단일 선택)
201
+ const { template } = await prompts({
202
+ type: 'select',
203
+ name: 'template',
204
+ message: 'Select a template:',
205
+ choices: [
206
+ { title: 'Template A', value: 'a' },
207
+ { title: 'Template B', value: 'b' },
208
+ ],
209
+ });
210
+
211
+ // Multiselect (다중 선택)
212
+ const { templates } = await prompts({
213
+ type: 'multiselect',
214
+ name: 'templates',
215
+ message: 'Select templates:',
216
+ choices: [
217
+ { title: 'Template A', value: 'a' },
218
+ { title: 'Template B', value: 'b' },
219
+ ],
220
+ min: 1,
221
+ hint: '- Space to select. Return to submit',
222
+ });
223
+
224
+ // Confirm
225
+ const { confirmed } = await prompts({
226
+ type: 'confirm',
227
+ name: 'confirmed',
228
+ message: 'Overwrite existing files?',
229
+ initial: false,
230
+ });
231
+ ```
232
+
233
+ ### File Copy 유틸
234
+ ```typescript
235
+ import fs from 'fs-extra';
236
+ import path from 'path';
237
+
238
+ export const copyRecursive = async (
239
+ src: string,
240
+ dest: string,
241
+ ): Promise<{ files: number; directories: number }> => {
242
+ const counter = { files: 0, directories: 0 };
243
+
244
+ const copy = async (s: string, d: string): Promise<void> => {
245
+ const stat = await fs.stat(s);
246
+
247
+ if (stat.isDirectory()) {
248
+ await fs.ensureDir(d);
249
+ counter.directories++;
250
+
251
+ const items = await fs.readdir(s);
252
+ for (const item of items) {
253
+ await copy(path.join(s, item), path.join(d, item));
254
+ }
255
+ } else {
256
+ await fs.copy(s, d);
257
+ counter.files++;
258
+ }
259
+ };
260
+
261
+ await copy(src, dest);
262
+ return counter;
263
+ };
264
+ ```
265
+
266
+ ### Package.json 설정
267
+ ```json
268
+ {
269
+ "name": "@scope/my-cli",
270
+ "version": "1.0.0",
271
+ "type": "module",
272
+ "bin": "./dist/index.js",
273
+ "files": ["dist", "templates"],
274
+ "scripts": {
275
+ "build": "tsup",
276
+ "dev": "tsup --watch",
277
+ "prepublishOnly": "npm run build"
278
+ },
279
+ "engines": {
280
+ "node": ">=18"
281
+ }
282
+ }
283
+ ```
284
+
285
+ ### tsup.config.ts
286
+ ```typescript
287
+ import { defineConfig } from 'tsup';
288
+
289
+ export default defineConfig({
290
+ entry: ['src/index.ts'],
291
+ format: ['esm'],
292
+ target: 'node18',
293
+ clean: true,
294
+ dts: true,
295
+ banner: {
296
+ js: '#!/usr/bin/env node',
297
+ },
298
+ });
299
+ ```
300
+
301
+ ---
302
+
303
+ ## 🔗 Quick Links
304
+
305
+ - [Commander 가이드](./docs/library/commander/index.md)
306
+ - [fs-extra 가이드](./docs/library/fs-extra/index.md)
307
+ - [prompts 가이드](./docs/library/prompts/index.md)
308
+ - [Git 규칙](./docs/git/git.md)
309
+ - [MCP 가이드](./docs/mcp/index.md)
@@ -0,0 +1,307 @@
1
+ # Git 워크플로우
2
+
3
+ > NPX CLI 프로젝트 Git 컨벤션
4
+
5
+ ---
6
+
7
+ ## ⛔ NEVER (절대 금지)
8
+
9
+ ```
10
+ ❌ 커밋에 "Generated with Claude Code" 포함
11
+ ❌ 커밋에 "🤖" 또는 AI 관련 이모지 포함
12
+ ❌ 커밋에 "Co-Authored-By:" 헤더 포함
13
+ ❌ 커밋에 AI/봇이 작성했다는 어떤 표시도 포함
14
+ ❌ 커밋 메시지 여러 줄 작성
15
+ ❌ 커밋 메시지에 이모지 사용
16
+ ❌ 커밋 메시지에 마침표(.) 사용
17
+ ❌ 여러 작업을 하나의 커밋으로 퉁치기
18
+ ```
19
+
20
+ ---
21
+
22
+ ## ✅ ALWAYS (필수)
23
+
24
+ ### 작업 완료 후 반드시 실행
25
+
26
+ ```bash
27
+ git add <관련 파일들>
28
+ git commit -m "<prefix>: <설명>"
29
+ ```
30
+
31
+ ### ⭐ 커밋 분리 원칙
32
+
33
+ **하나의 커밋 = 하나의 논리적 변경 단위**
34
+
35
+ ```bash
36
+ # ❌ 잘못된 방식: 모든 작업을 하나로 퉁침
37
+ git add .
38
+ git commit -m "feat: 여러 기능 추가"
39
+
40
+ # ✅ 올바른 방식: 논리적 단위로 분리
41
+ git add src/commands/init.ts src/utils/copy.ts
42
+ git commit -m "feat: 템플릿 복사 기능 추가"
43
+
44
+ git add src/commands/list.ts
45
+ git commit -m "feat: 템플릿 목록 조회 기능 추가"
46
+
47
+ git add docs/
48
+ git commit -m "docs: CLI 사용법 문서 추가"
49
+ ```
50
+
51
+ ---
52
+
53
+ ## 📝 커밋 형식
54
+
55
+ ```
56
+ <prefix>: <설명>
57
+ ```
58
+
59
+ **한 줄로 간결하게** 작성합니다. 본문이나 푸터는 작성하지 않습니다.
60
+
61
+ ---
62
+
63
+ ## 🏷 Prefix 목록
64
+
65
+ | Prefix | 용도 | 예시 |
66
+ |--------|------|------|
67
+ | `feat` | 새로운 기능 | `feat: 템플릿 복사 기능 추가` |
68
+ | `fix` | 버그 수정 | `fix: 경로 처리 오류 수정` |
69
+ | `refactor` | 리팩토링 | `refactor: copy 유틸 분리` |
70
+ | `style` | 코드 스타일 | `style: prettier 적용` |
71
+ | `docs` | 문서 수정 | `docs: README 업데이트` |
72
+ | `test` | 테스트 | `test: copy 유틸 테스트 추가` |
73
+ | `chore` | 빌드/설정 | `chore: 버전 업데이트` |
74
+ | `perf` | 성능 개선 | `perf: 파일 복사 최적화` |
75
+ | `ci` | CI/CD | `ci: GitHub Actions 추가` |
76
+
77
+ ---
78
+
79
+ ## ✅ 올바른 예시
80
+
81
+ ```bash
82
+ feat: CLI 옵션 추가
83
+ fix: 템플릿 경로 오류 수정
84
+ docs: 사용법 문서 추가
85
+ refactor: logger 유틸 분리
86
+ chore: 의존성 업데이트
87
+ ```
88
+
89
+ ---
90
+
91
+ ## ❌ 잘못된 예시
92
+
93
+ ```bash
94
+ # prefix 없음
95
+ 템플릿 기능 추가함
96
+
97
+ # 마침표 불필요
98
+ feat: 새 기능 추가.
99
+
100
+ # 대문자 사용
101
+ FEAT: 새 기능 추가
102
+
103
+ # scope 불필요
104
+ feat(cli): 옵션 추가
105
+
106
+ # AI 작성 표시 (절대 금지!)
107
+ feat: 기능 추가
108
+
109
+ 🤖 Generated with Claude Code
110
+
111
+ # Co-Author 표시 (절대 금지!)
112
+ feat: 기능 추가
113
+
114
+ Co-Authored-By: Claude <noreply@anthropic.com>
115
+
116
+ # 여러 줄 본문 (금지)
117
+ feat: 새 기능 추가
118
+
119
+ - 옵션 A 추가
120
+ - 옵션 B 추가
121
+
122
+ # 여러 작업을 하나로 퉁침 (금지)
123
+ feat: init, list, copy 명령어 추가
124
+ ```
125
+
126
+ ---
127
+
128
+ ## 🔄 작업 흐름
129
+
130
+ ```bash
131
+ # 1. 작업 전 최신 코드 동기화
132
+ git pull origin main
133
+
134
+ # 2. 명령어 작업 완료 → 커밋
135
+ git add src/commands/init.ts src/utils/copy.ts
136
+ git commit -m "feat: 템플릿 초기화 명령어 추가"
137
+
138
+ # 3. 유틸리티 작업 완료 → 커밋
139
+ git add src/utils/logger.ts src/utils/spinner.ts
140
+ git commit -m "feat: 로깅 및 스피너 유틸 추가"
141
+
142
+ # 4. 문서 작업 완료 → 커밋
143
+ git add docs/
144
+ git commit -m "docs: CLI 사용법 문서 추가"
145
+
146
+ # 5. 푸시
147
+ git push origin main
148
+ ```
149
+
150
+ ---
151
+
152
+ ## 📦 커밋 분리 가이드
153
+
154
+ ### 언제 커밋을 분리해야 하나요?
155
+
156
+ | 상황 | 커밋 분리 |
157
+ |------|----------|
158
+ | 서로 다른 CLI 명령어 | ✅ 분리 |
159
+ | 버그 수정 + 새 기능 | ✅ 분리 |
160
+ | 코드 변경 + 문서 변경 | ✅ 분리 |
161
+ | 리팩토링 + 기능 추가 | ✅ 분리 |
162
+ | 동일 명령어의 핸들러 + 유틸 | 🔄 묶어도 됨 |
163
+ | 동일 기능의 타입 + 구현 | 🔄 묶어도 됨 |
164
+
165
+ ### 예시: CLI 도구 개발
166
+
167
+ ```bash
168
+ # 1. init 명령어 커밋
169
+ git add src/commands/init.ts src/utils/copy.ts
170
+ git commit -m "feat: 템플릿 초기화 명령어 추가"
171
+
172
+ # 2. list 명령어 커밋
173
+ git add src/commands/list.ts
174
+ git commit -m "feat: 템플릿 목록 조회 명령어 추가"
175
+
176
+ # 3. 공통 유틸 커밋
177
+ git add src/utils/logger.ts src/utils/spinner.ts
178
+ git commit -m "feat: CLI 유틸리티 함수 추가"
179
+
180
+ # 4. 테스트 커밋
181
+ git add tests/
182
+ git commit -m "test: CLI 명령어 테스트 추가"
183
+
184
+ # 5. 문서 커밋
185
+ git add docs/ README.md
186
+ git commit -m "docs: CLI 사용법 및 README 추가"
187
+ ```
188
+
189
+ ---
190
+
191
+ ## 🌿 브랜치 전략
192
+
193
+ ### 간단한 프로젝트
194
+ ```
195
+ main ← 모든 작업 직접 커밋
196
+ ```
197
+
198
+ ### 팀 프로젝트
199
+ ```
200
+ main
201
+ └── feature/기능명
202
+ └── fix/버그명
203
+ └── hotfix/긴급수정
204
+ ```
205
+
206
+ ### 브랜치 명명
207
+ ```bash
208
+ feature/multi-template
209
+ feature/interactive-mode
210
+ fix/path-resolution
211
+ hotfix/security-patch
212
+ ```
213
+
214
+ ---
215
+
216
+ ## 📋 자주 사용하는 명령어
217
+
218
+ ```bash
219
+ # 상태 확인
220
+ git status
221
+
222
+ # 변경 내용 확인
223
+ git diff
224
+
225
+ # 최근 커밋 로그
226
+ git log --oneline -10
227
+
228
+ # 커밋 취소 (작업 내용 유지)
229
+ git reset --soft HEAD~1
230
+
231
+ # 스테이징 취소
232
+ git restore --staged .
233
+
234
+ # 변경사항 임시 저장
235
+ git stash
236
+ git stash pop
237
+
238
+ # 특정 파일만 스테이징
239
+ git add <파일경로>
240
+
241
+ # 대화형 스테이징 (부분 커밋용)
242
+ git add -p
243
+ ```
244
+
245
+ ---
246
+
247
+ ## 🏷 버전 관리
248
+
249
+ ### 버전 업데이트
250
+
251
+ ```bash
252
+ # 패치 버전 (0.1.0 → 0.1.1)
253
+ npm version patch
254
+
255
+ # 마이너 버전 (0.1.0 → 0.2.0)
256
+ npm version minor
257
+
258
+ # 메이저 버전 (0.1.0 → 1.0.0)
259
+ npm version major
260
+ ```
261
+
262
+ ### 배포 전 체크리스트
263
+
264
+ ```
265
+ □ 버전 업데이트 완료
266
+ □ CHANGELOG 작성 완료
267
+ □ 테스트 통과 확인
268
+ □ 빌드 성공 확인
269
+ ```
270
+
271
+ ---
272
+
273
+ ## 📚 .gitignore
274
+
275
+ ```gitignore
276
+ # Dependencies
277
+ node_modules/
278
+
279
+ # Build
280
+ dist/
281
+ lib/
282
+
283
+ # Environment
284
+ .env
285
+ .env.local
286
+
287
+ # IDE
288
+ .idea/
289
+ .vscode/
290
+ *.swp
291
+
292
+ # OS
293
+ .DS_Store
294
+
295
+ # Logs
296
+ *.log
297
+ npm-debug.log*
298
+
299
+ # Cache
300
+ .cache/
301
+ ```
302
+
303
+ ---
304
+
305
+ ## 🔗 관련 문서
306
+
307
+ - [CLAUDE.md](../../CLAUDE.md)