@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,92 +1,106 @@
1
1
  ---
2
- description: 프로젝트 분석 후 ESLint flat config 설정. Sequential Thinking 필수.
3
- allowed-tools: Read, Write, Edit, Glob, Bash(npm:*, yarn:*, pnpm:*, npx:*, node:*), mcp__sequential-thinking__sequentialthinking
2
+ description: 프로젝트 분석 후 ESLint flat config 설정
3
+ allowed-tools: Read, Write, Edit, Glob, Bash, mcp__sequential-thinking__sequentialthinking
4
4
  ---
5
5
 
6
+ @../instructions/sequential-thinking-guide.md
7
+
6
8
  # Lint Init Command
7
9
 
8
- 프로젝트 구조를 분석하고 ESLint flat config 설정하는 커맨드.
10
+ 프로젝트 분석 ESLint flat config 자동 생성.
9
11
 
10
- ## CRITICAL: 필수 요구사항
12
+ <requirements>
11
13
 
12
- | 요구사항 | 설명 |
13
- |----------|------|
14
- | **Sequential Thinking** | `mcp__sequential-thinking__sequentialthinking` 도구로 프로젝트 분석 |
15
- | **Flat Config** | ESLint v9+ flat config (`eslint.config.js`) 사용 |
16
- | **기존 설정 확인** | 기존 ESLint 설정 존재 시 사용자 확인 |
14
+ | 분류 | 필수 |
15
+ |------|------|
16
+ | **Thinking** | Sequential 5-7단계 (@sequential-thinking-guide.md) |
17
+ | **Config** | ESLint v9+ flat config (`eslint.config.js`) |
18
+ | **Detection** | 언어/프레임워크/런타임 자동 감지 |
17
19
 
18
- ## 실행 흐름
20
+ </requirements>
19
21
 
20
- ```
21
- 1. Sequential Thinking으로 프로젝트 분석 시작 (최소 5단계)
22
- 2. 핵심 파일 수집:
23
- - package.json (의존성, 스크립트)
24
- - tsconfig.json (TypeScript 설정)
25
- - 기존 ESLint 설정 (.eslintrc.*, eslint.config.*)
26
- 3. 프로젝트 특성 파악:
27
- - 언어: TypeScript / JavaScript
28
- - 런타임: Node.js / Browser / 둘 다
29
- - 프레임워크: React, Vue, Next.js, Express 등
30
- 4. 적절한 ESLint 설정 생성
31
- 5. 필요 패키지 목록 제공
32
- 6. 설치 명령어 안내
33
- ```
22
+ ---
34
23
 
35
- ## Sequential Thinking 단계
24
+ <workflow>
36
25
 
37
- ```
38
- thought 1: package.json 분석 - 의존성에서 프레임워크/라이브러리 파악
39
- thought 2: tsconfig.json 분석 - TypeScript 설정 확인
40
- thought 3: 디렉토리 구조 분석 - src/, app/, pages/ 등 패턴 파악
41
- thought 4: 기존 ESLint 설정 확인 - 마이그레이션 필요 여부 판단
42
- thought 5: 최적 ESLint 설정 결정 - 감지된 특성에 맞는 규칙 선택
43
- ```
26
+ <step number="1">
27
+ <action>Sequential Thinking 시작</action>
28
+ <detail>프로젝트 구조, 의존성, 기존 설정 분석 (5-7단계)</detail>
29
+ </step>
30
+
31
+ <step number="2">
32
+ <action>핵심 파일 수집</action>
33
+ <tools>Read (package.json, tsconfig.json, 기존 ESLint 설정)</tools>
34
+ </step>
35
+
36
+ <step number="3">
37
+ <action>프로젝트 특성 감지</action>
38
+ <detail>언어(TS/JS), 런타임(Node/Browser), 프레임워크(React/Vue/등)</detail>
39
+ </step>
40
+
41
+ <step number="4">
42
+ <action>ESLint 설정 생성</action>
43
+ <deliverable>eslint.config.js</deliverable>
44
+ </step>
45
+
46
+ <step number="5">
47
+ <action>패키지 설치 안내</action>
48
+ <detail>필요 패키지 목록 + npm/yarn/pnpm 명령어</detail>
49
+ </step>
50
+
51
+ </workflow>
52
+
53
+ ---
54
+
55
+ <detection>
44
56
 
45
57
  ## 프로젝트 특성 감지
46
58
 
47
- ### 언어 감지
59
+ ### 언어
48
60
 
49
- | 파일/설정 | 판단 |
50
- |-----------|------|
61
+ | 조건 | 판단 |
62
+ |------|------|
51
63
  | `tsconfig.json` 존재 | TypeScript |
52
64
  | `devDependencies.typescript` | TypeScript |
53
- | `*.ts`, `*.tsx` 파일 | TypeScript |
65
+ | `src/**/*.{ts,tsx}` 파일 | TypeScript |
54
66
  | 그 외 | JavaScript |
55
67
 
56
- ### 프레임워크 감지
68
+ ### 프레임워크
57
69
 
58
- | 의존성 | 프레임워크 |
59
- |--------|-----------|
60
- | `react`, `react-dom` | React |
61
- | `next` | Next.js |
62
- | `vue` | Vue |
63
- | `@angular/core` | Angular |
64
- | `express` | Express |
65
- | `hono` | Hono |
66
- | `fastify` | Fastify |
70
+ | 의존성 | 프레임워크 | 추가 플러그인 |
71
+ |--------|-----------|-------------|
72
+ | `react` | React | `eslint-plugin-react`, `eslint-plugin-react-hooks` |
73
+ | `next` | Next.js | React + Next.js 규칙 |
74
+ | `vue` | Vue | `eslint-plugin-vue`, `vue-eslint-parser` |
75
+ | `express`, `hono`, `fastify` | Node.js 서버 | - |
67
76
 
68
- ### 런타임 감지
77
+ ### 런타임
69
78
 
70
- | 조건 | 런타임 |
71
- |------|--------|
72
- | `express`, `fastify`, `hono` | Node.js |
73
- | `react`, `vue`, `angular` | Browser |
74
- | `next`, `nuxt` | |
75
- | `package.json` type: "module" | ESM |
79
+ | 조건 | globals |
80
+ |------|---------|
81
+ | `express`, `fastify`, `hono` | `globals.node` |
82
+ | `react`, `vue`, `angular` | `globals.browser` |
83
+ | `next`, `nuxt` | `globals.node` + `globals.browser` |
76
84
 
77
- ## ESLint Flat Config 템플릿
85
+ </detection>
86
+
87
+ ---
78
88
 
79
- ### TypeScript + Node.js
89
+ <templates>
90
+
91
+ ## ESLint Flat Config 패턴
92
+
93
+ ### 기본 구조 (TypeScript + Node.js)
80
94
 
81
95
  ```javascript
82
- import eslint from '@eslint/js';
83
- import tseslint from '@typescript-eslint/eslint-plugin';
84
- import tsparser from '@typescript-eslint/parser';
85
- import globals from 'globals';
96
+ import eslint from '@eslint/js'
97
+ import tseslint from '@typescript-eslint/eslint-plugin'
98
+ import tsparser from '@typescript-eslint/parser'
99
+ import globals from 'globals'
86
100
 
87
101
  export default [
88
102
  {
89
- ignores: ['dist/**', 'node_modules/**'],
103
+ ignores: ['dist/**', 'node_modules/**', 'build/**'],
90
104
  },
91
105
  eslint.configs.recommended,
92
106
  {
@@ -107,90 +121,49 @@ export default [
107
121
  },
108
122
  rules: {
109
123
  ...tseslint.configs.recommended.rules,
110
- '@typescript-eslint/explicit-function-return-type': 'warn',
111
- '@typescript-eslint/no-unused-vars': [
112
- 'error',
113
- { argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
114
- ],
124
+ '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
115
125
  '@typescript-eslint/no-explicit-any': 'error',
116
- '@typescript-eslint/consistent-type-imports': [
117
- 'error',
118
- { prefer: 'type-imports' },
119
- ],
120
- 'no-unused-vars': 'off',
121
- 'no-undef': 'off',
122
- 'prefer-const': 'error',
123
- 'no-var': 'error',
124
- eqeqeq: ['error', 'always'],
126
+ '@typescript-eslint/consistent-type-imports': ['error', { prefer: 'type-imports' }],
125
127
  },
126
128
  },
127
- ];
129
+ ]
128
130
  ```
129
131
 
130
- ### TypeScript + React
132
+ ### React 추가
131
133
 
132
134
  ```javascript
133
- import eslint from '@eslint/js';
134
- import tseslint from '@typescript-eslint/eslint-plugin';
135
- import tsparser from '@typescript-eslint/parser';
136
- import reactPlugin from 'eslint-plugin-react';
137
- import reactHooksPlugin from 'eslint-plugin-react-hooks';
138
- import globals from 'globals';
135
+ // 기본 구조에 추가:
136
+ import reactPlugin from 'eslint-plugin-react'
137
+ import reactHooksPlugin from 'eslint-plugin-react-hooks'
139
138
 
140
139
  export default [
141
- {
142
- ignores: ['dist/**', 'node_modules/**', 'build/**'],
143
- },
144
- eslint.configs.recommended,
140
+ // ...
145
141
  {
146
142
  files: ['src/**/*.{ts,tsx}'],
147
- languageOptions: {
148
- parser: tsparser,
149
- parserOptions: {
150
- ecmaVersion: 'latest',
151
- sourceType: 'module',
152
- project: './tsconfig.json',
153
- ecmaFeatures: {
154
- jsx: true,
155
- },
156
- },
157
- globals: {
158
- ...globals.browser,
159
- },
160
- },
161
143
  plugins: {
162
144
  '@typescript-eslint': tseslint,
163
145
  'react': reactPlugin,
164
146
  'react-hooks': reactHooksPlugin,
165
147
  },
166
148
  settings: {
167
- react: {
168
- version: 'detect',
169
- },
149
+ react: { version: 'detect' },
170
150
  },
171
151
  rules: {
172
- ...tseslint.configs.recommended.rules,
152
+ // ...rules +
173
153
  ...reactPlugin.configs.recommended.rules,
174
154
  ...reactHooksPlugin.configs.recommended.rules,
175
- '@typescript-eslint/no-unused-vars': [
176
- 'error',
177
- { argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
178
- ],
179
- '@typescript-eslint/no-explicit-any': 'error',
180
155
  'react/react-in-jsx-scope': 'off',
181
156
  'react/prop-types': 'off',
182
- 'no-unused-vars': 'off',
183
- 'no-undef': 'off',
184
157
  },
185
158
  },
186
- ];
159
+ ]
187
160
  ```
188
161
 
189
- ### JavaScript + Node.js
162
+ ### JavaScript Only
190
163
 
191
164
  ```javascript
192
- import eslint from '@eslint/js';
193
- import globals from 'globals';
165
+ import eslint from '@eslint/js'
166
+ import globals from 'globals'
194
167
 
195
168
  export default [
196
169
  {
@@ -202,67 +175,71 @@ export default [
202
175
  languageOptions: {
203
176
  ecmaVersion: 'latest',
204
177
  sourceType: 'module',
205
- globals: {
206
- ...globals.node,
207
- },
178
+ globals: { ...globals.node },
208
179
  },
209
180
  rules: {
210
- 'no-unused-vars': [
211
- 'error',
212
- { argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
213
- ],
181
+ 'no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
214
182
  'prefer-const': 'error',
215
183
  'no-var': 'error',
216
- eqeqeq: ['error', 'always'],
217
184
  },
218
185
  },
219
- ];
186
+ ]
220
187
  ```
221
188
 
189
+ </templates>
190
+
191
+ ---
192
+
193
+ <packages>
194
+
222
195
  ## 필요 패키지
223
196
 
224
- ### 기본 (모든 프로젝트)
197
+ | 조건 | 패키지 |
198
+ |------|--------|
199
+ | **기본** | `eslint @eslint/js globals` |
200
+ | **TypeScript** | 위 + `@typescript-eslint/parser @typescript-eslint/eslint-plugin` |
201
+ | **React** | 위 + `eslint-plugin-react eslint-plugin-react-hooks` |
202
+ | **Vue** | 위 + `eslint-plugin-vue vue-eslint-parser` |
203
+
204
+ ### 설치 명령어
225
205
 
226
206
  ```bash
207
+ # 기본 (JavaScript)
227
208
  npm install -D eslint @eslint/js globals
228
- ```
229
209
 
230
- ### TypeScript 추가
210
+ # TypeScript
211
+ npm install -D eslint @eslint/js globals @typescript-eslint/parser @typescript-eslint/eslint-plugin
231
212
 
232
- ```bash
233
- npm install -D @typescript-eslint/parser @typescript-eslint/eslint-plugin
213
+ # TypeScript + React
214
+ npm install -D eslint @eslint/js globals @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-react eslint-plugin-react-hooks
234
215
  ```
235
216
 
236
- ### React 추가
237
-
238
- ```bash
239
- npm install -D eslint-plugin-react eslint-plugin-react-hooks
240
- ```
217
+ </packages>
241
218
 
242
- ### Vue 추가
219
+ ---
243
220
 
244
- ```bash
245
- npm install -D eslint-plugin-vue vue-eslint-parser
246
- ```
221
+ <migration>
247
222
 
248
223
  ## 기존 설정 처리
249
224
 
250
- ### .eslintrc.* 마이그레이션
225
+ | 파일 | 처리 |
226
+ |------|------|
227
+ | `.eslintrc.{json,js,yml}` | flat config 변환 → 백업 후 제거 |
228
+ | `package.json` `eslintConfig` | flat config 변환 → `package.json`에서 제거 |
251
229
 
252
- 기존 `.eslintrc.json`, `.eslintrc.js` 등 발견 시:
253
- 1. 사용자에게 마이그레이션 제안
254
- 2. 기존 규칙을 flat config 형식으로 변환
255
- 3. 기존 파일 백업 후 삭제
230
+ **변환 방법:**
231
+ 1. 기존 `rules`, `extends`, `plugins` 추출
232
+ 2. flat config 형식으로 변환
233
+ 3. 원본 백업 (`.eslintrc.backup`)
234
+ 4. `eslint.config.js` 생성
256
235
 
257
- ### package.json eslintConfig
236
+ </migration>
258
237
 
259
- `package.json` 내 `eslintConfig` 발견 시:
260
- 1. 해당 설정을 flat config로 변환
261
- 2. `package.json`에서 `eslintConfig` 제거
238
+ ---
262
239
 
263
- ## package.json 스크립트
240
+ <scripts>
264
241
 
265
- 설정 완료 후 추가할 스크립트:
242
+ ## package.json 스크립트
266
243
 
267
244
  ```json
268
245
  {
@@ -273,28 +250,25 @@ npm install -D eslint-plugin-vue vue-eslint-parser
273
250
  }
274
251
  ```
275
252
 
276
- ## 체크리스트
253
+ 설정 완료 후 자동 추가 제안.
254
+
255
+ </scripts>
277
256
 
278
- ### 분석 단계
257
+ ---
258
+
259
+ <validation>
279
260
 
280
- - [ ] package.json 읽기
281
- - [ ] tsconfig.json 확인
282
- - [ ] 기존 ESLint 설정 확인
283
- - [ ] 디렉토리 구조 파악
284
- - [ ] 소스 파일 패턴 확인
261
+ ## 검증 단계
285
262
 
286
- ### 설정 단계
263
+ ```bash
264
+ # 1. 설정 문법 확인
265
+ npx eslint --print-config src/index.ts
287
266
 
288
- - [ ] 적절한 템플릿 선택
289
- - [ ] ignores 패턴 설정
290
- - [ ] 파일 패턴 (files) 설정
291
- - [ ] globals 설정
292
- - [ ] 규칙 커스터마이징
267
+ # 2. Lint 실행
268
+ npm run lint
293
269
 
294
- ### 완료 단계
270
+ # 3. 자동 수정 테스트
271
+ npm run lint:fix
272
+ ```
295
273
 
296
- - [ ] eslint.config.js 생성
297
- - [ ] 필요 패키지 목록 제공
298
- - [ ] 설치 명령어 안내
299
- - [ ] package.json 스크립트 추가 제안
300
- - [ ] 테스트 실행 안내
274
+ </validation>