@kood/claude-code 0.3.0 → 0.3.2
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 +1 -1
- package/package.json +1 -1
- package/templates/.claude/commands/git-all.md +49 -1
- package/templates/.claude/commands/git-session.md +49 -1
- package/templates/.claude/commands/git.md +46 -1
- package/templates/.claude/commands/lint-fix.md +61 -3
- package/templates/tanstack-start/docs/architecture.md +19 -1
- package/templates/tanstack-start/docs/guides/conventions.md +10 -2
package/dist/index.js
CHANGED
|
@@ -409,7 +409,7 @@ var init = async (options) => {
|
|
|
409
409
|
|
|
410
410
|
// src/index.ts
|
|
411
411
|
var program = new Command();
|
|
412
|
-
program.name("claude-code").description("Claude Code documentation installer for projects").version("0.3.
|
|
412
|
+
program.name("claude-code").description("Claude Code documentation installer for projects").version("0.3.2");
|
|
413
413
|
program.option(
|
|
414
414
|
"-t, --template <names>",
|
|
415
415
|
"template names (comma-separated: tanstack-start,hono)"
|
package/package.json
CHANGED
|
@@ -4,7 +4,55 @@ description: 모든 변경사항 커밋 후 푸시
|
|
|
4
4
|
|
|
5
5
|
# Git All Command
|
|
6
6
|
|
|
7
|
-
@git-operator 에이전트를 사용하여 모든 변경사항을 커밋하고 푸시.
|
|
7
|
+
> @git-operator 에이전트를 사용하여 모든 변경사항을 커밋하고 푸시.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<critical_requirements>
|
|
12
|
+
|
|
13
|
+
## ⚠️ CRITICAL: 작업 시작 전 필수 확인
|
|
14
|
+
|
|
15
|
+
**이 커맨드는 반드시 @git-operator 에이전트를 사용해야 합니다.**
|
|
16
|
+
|
|
17
|
+
### MANDATORY: Task 도구로 @git-operator 호출
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
Task({
|
|
21
|
+
subagent_type: 'git-operator',
|
|
22
|
+
description: '모든 변경사항 커밋 후 푸시',
|
|
23
|
+
prompt: `
|
|
24
|
+
전체 커밋 모드:
|
|
25
|
+
- 모든 변경사항을 논리적 단위로 분리하여 전부 커밋
|
|
26
|
+
- 반드시 푸시 (git push)
|
|
27
|
+
- clean working directory 확인 필수
|
|
28
|
+
`
|
|
29
|
+
})
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**❌ 절대 금지:**
|
|
33
|
+
- Bash 도구로 git 명령 직접 실행
|
|
34
|
+
- @git-operator 없이 커밋/푸시 수행
|
|
35
|
+
- 커맨드 내에서 직접 파일 분석
|
|
36
|
+
|
|
37
|
+
**✅ 필수:**
|
|
38
|
+
- Task 도구로 @git-operator 에이전트 호출
|
|
39
|
+
- 모든 git 작업을 에이전트에 위임
|
|
40
|
+
- 완료 후 clean working directory 확인
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
**진행 전 자가 점검:**
|
|
45
|
+
```text
|
|
46
|
+
□ Task 도구 사용 준비?
|
|
47
|
+
□ @git-operator 에이전트로 작업 위임?
|
|
48
|
+
□ Bash로 git 직접 실행 안 함?
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**⚠️ 위 체크리스트를 통과하지 않으면 작업을 시작하지 마세요.**
|
|
52
|
+
|
|
53
|
+
</critical_requirements>
|
|
54
|
+
|
|
55
|
+
---
|
|
8
56
|
|
|
9
57
|
<mode>
|
|
10
58
|
|
|
@@ -4,7 +4,55 @@ description: 현재 세션에서 수정한 파일만 커밋 후 푸시
|
|
|
4
4
|
|
|
5
5
|
# Git Session Command
|
|
6
6
|
|
|
7
|
-
@git-operator 에이전트를 사용하여 현재 세션 파일만 선택적으로 커밋하고 푸시.
|
|
7
|
+
> @git-operator 에이전트를 사용하여 현재 세션 파일만 선택적으로 커밋하고 푸시.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<critical_requirements>
|
|
12
|
+
|
|
13
|
+
## ⚠️ CRITICAL: 작업 시작 전 필수 확인
|
|
14
|
+
|
|
15
|
+
**이 커맨드는 반드시 @git-operator 에이전트를 사용해야 합니다.**
|
|
16
|
+
|
|
17
|
+
### MANDATORY: Task 도구로 @git-operator 호출
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
Task({
|
|
21
|
+
subagent_type: 'git-operator',
|
|
22
|
+
description: '세션 파일만 커밋 후 푸시',
|
|
23
|
+
prompt: `
|
|
24
|
+
세션 커밋 모드:
|
|
25
|
+
- 현재 세션 관련 파일만 선택적 커밋
|
|
26
|
+
- 반드시 푸시 (git push)
|
|
27
|
+
- 이전 세션의 미완성 작업은 제외
|
|
28
|
+
`
|
|
29
|
+
})
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**❌ 절대 금지:**
|
|
33
|
+
- Bash 도구로 git 명령 직접 실행
|
|
34
|
+
- @git-operator 없이 커밋/푸시 수행
|
|
35
|
+
- 커맨드 내에서 직접 파일 분석
|
|
36
|
+
|
|
37
|
+
**✅ 필수:**
|
|
38
|
+
- Task 도구로 @git-operator 에이전트 호출
|
|
39
|
+
- 모든 git 작업을 에이전트에 위임
|
|
40
|
+
- 현재 세션 파일만 선택
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
**진행 전 자가 점검:**
|
|
45
|
+
```text
|
|
46
|
+
□ Task 도구 사용 준비?
|
|
47
|
+
□ @git-operator 에이전트로 작업 위임?
|
|
48
|
+
□ Bash로 git 직접 실행 안 함?
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**⚠️ 위 체크리스트를 통과하지 않으면 작업을 시작하지 마세요.**
|
|
52
|
+
|
|
53
|
+
</critical_requirements>
|
|
54
|
+
|
|
55
|
+
---
|
|
8
56
|
|
|
9
57
|
<mode>
|
|
10
58
|
|
|
@@ -5,7 +5,52 @@ argument-hint: [push|pull|커밋 지시사항...]
|
|
|
5
5
|
|
|
6
6
|
# Git Command
|
|
7
7
|
|
|
8
|
-
@git-operator 에이전트를 사용하여 Git 작업 수행.
|
|
8
|
+
> @git-operator 에이전트를 사용하여 Git 작업 수행.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
<critical_requirements>
|
|
13
|
+
|
|
14
|
+
## ⚠️ CRITICAL: 작업 시작 전 필수 확인
|
|
15
|
+
|
|
16
|
+
**이 커맨드는 반드시 @git-operator 에이전트를 사용해야 합니다.**
|
|
17
|
+
|
|
18
|
+
### MANDATORY: Task 도구로 @git-operator 호출
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
Task({
|
|
22
|
+
subagent_type: 'git-operator',
|
|
23
|
+
description: 'Git 커밋 작업',
|
|
24
|
+
prompt: `
|
|
25
|
+
$ARGUMENTS 처리:
|
|
26
|
+
[사용자 인수 또는 기본 동작 설명]
|
|
27
|
+
`
|
|
28
|
+
})
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**❌ 절대 금지:**
|
|
32
|
+
- Bash 도구로 git 명령 직접 실행
|
|
33
|
+
- @git-operator 없이 커밋/푸시 수행
|
|
34
|
+
- 커맨드 내에서 직접 파일 분석
|
|
35
|
+
|
|
36
|
+
**✅ 필수:**
|
|
37
|
+
- Task 도구로 @git-operator 에이전트 호출
|
|
38
|
+
- 모든 git 작업을 에이전트에 위임
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
**진행 전 자가 점검:**
|
|
43
|
+
```text
|
|
44
|
+
□ Task 도구 사용 준비?
|
|
45
|
+
□ @git-operator 에이전트로 작업 위임?
|
|
46
|
+
□ Bash로 git 직접 실행 안 함?
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**⚠️ 위 체크리스트를 통과하지 않으면 작업을 시작하지 마세요.**
|
|
50
|
+
|
|
51
|
+
</critical_requirements>
|
|
52
|
+
|
|
53
|
+
---
|
|
9
54
|
|
|
10
55
|
<mode>
|
|
11
56
|
|
|
@@ -1,12 +1,70 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: tsc/eslint 오류 검사 및 하나씩 꼼꼼히 수정.
|
|
3
|
-
allowed-tools:
|
|
2
|
+
description: tsc/eslint 오류 검사 및 하나씩 꼼꼼히 수정. @lint-fixer 에이전트 필수 사용.
|
|
3
|
+
allowed-tools: Task
|
|
4
4
|
argument-hint: [파일/디렉토리 경로...]
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Lint Fix Command
|
|
8
8
|
|
|
9
|
-
> tsc/eslint 오류를
|
|
9
|
+
> @lint-fixer 에이전트를 사용하여 tsc/eslint 오류를 자동으로 수정.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<critical_requirements>
|
|
14
|
+
|
|
15
|
+
## ⚠️ CRITICAL: 작업 시작 전 필수 확인
|
|
16
|
+
|
|
17
|
+
**이 커맨드는 반드시 @lint-fixer 에이전트를 사용해야 합니다.**
|
|
18
|
+
|
|
19
|
+
### MANDATORY: Task 도구로 @lint-fixer 호출
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
Task({
|
|
23
|
+
subagent_type: 'lint-fixer',
|
|
24
|
+
description: 'tsc/eslint 오류 수정',
|
|
25
|
+
prompt: `
|
|
26
|
+
$ARGUMENTS 처리:
|
|
27
|
+
${$ARGUMENTS ? `특정 경로: ${$ARGUMENTS}` : '전체 프로젝트 검사'}
|
|
28
|
+
|
|
29
|
+
수행할 작업:
|
|
30
|
+
1. tsc + eslint 병렬 검사
|
|
31
|
+
2. 오류 분류 (간단/복잡)
|
|
32
|
+
3. TodoWrite로 오류 목록 생성
|
|
33
|
+
4. 간단한 오류: 즉시 수정
|
|
34
|
+
5. 복잡한 오류: Sequential Thinking으로 분석 후 수정
|
|
35
|
+
6. 전체 재검사로 완료 확인
|
|
36
|
+
`
|
|
37
|
+
})
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**❌ 절대 금지:**
|
|
41
|
+
- Bash 도구로 tsc/eslint 직접 실행 후 수동 수정
|
|
42
|
+
- @lint-fixer 없이 오류 수정
|
|
43
|
+
- 커맨드 내에서 직접 오류 분석/수정
|
|
44
|
+
|
|
45
|
+
**✅ 필수:**
|
|
46
|
+
- Task 도구로 @lint-fixer 에이전트 호출
|
|
47
|
+
- 모든 lint 작업을 에이전트에 위임
|
|
48
|
+
- 에이전트가 자동으로 간단/복잡 판단 후 처리
|
|
49
|
+
|
|
50
|
+
**@lint-fixer 에이전트 장점:**
|
|
51
|
+
- 간단한 오류는 즉시 수정 (Sequential Thinking 불필요)
|
|
52
|
+
- 복잡한 오류만 Sequential Thinking 사용 (효율적)
|
|
53
|
+
- TodoWrite로 진행 상황 자동 추적
|
|
54
|
+
- 우선순위 자동 정렬 (타입 오류 → 린트 오류)
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
**진행 전 자가 점검:**
|
|
59
|
+
```text
|
|
60
|
+
□ Task 도구 사용 준비?
|
|
61
|
+
□ @lint-fixer 에이전트로 작업 위임?
|
|
62
|
+
□ Bash로 tsc/eslint 직접 실행 안 함?
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**⚠️ 위 체크리스트를 통과하지 않으면 작업을 시작하지 마세요.**
|
|
66
|
+
|
|
67
|
+
</critical_requirements>
|
|
10
68
|
|
|
11
69
|
---
|
|
12
70
|
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
| **레이어** | Service Layer 건너뛰기, Routes에서 직접 DB 접근 |
|
|
20
20
|
| **검증** | Handler 내부 수동 검증, 인증 로직 분산 |
|
|
21
21
|
| **Server Fn** | `createServerFn` 사용 (명시 요청 없으면 `createServerOnlyFn`) |
|
|
22
|
+
| **Barrel Export** | `functions/index.ts` 생성 (Tree Shaking 실패, 서버 라이브러리 Client 오염) |
|
|
22
23
|
|
|
23
24
|
</forbidden>
|
|
24
25
|
|
|
@@ -144,7 +145,6 @@ services/<domain>/
|
|
|
144
145
|
|
|
145
146
|
```
|
|
146
147
|
functions/ # 글로벌 (재사용)
|
|
147
|
-
├── index.ts
|
|
148
148
|
├── <function-name>.ts # 파일당 하나
|
|
149
149
|
└── middlewares/
|
|
150
150
|
└── <middleware-name>.ts
|
|
@@ -153,6 +153,24 @@ routes/<route>/-functions/ # 페이지 전용
|
|
|
153
153
|
└── <function-name>.ts
|
|
154
154
|
```
|
|
155
155
|
|
|
156
|
+
> ⚠️ **`functions/index.ts` 생성 금지**
|
|
157
|
+
>
|
|
158
|
+
> `functions/` 폴더에 `index.ts` (barrel export) 파일을 만들지 마세요.
|
|
159
|
+
>
|
|
160
|
+
> **문제점:**
|
|
161
|
+
> 1. **Tree Shaking 실패** - 번들러가 사용하지 않는 함수도 포함
|
|
162
|
+
> 2. **Client 번들 오염** - `pg`, `prisma` 등 서버 전용 라이브러리가 클라이언트에 import되어 빌드 에러 발생
|
|
163
|
+
>
|
|
164
|
+
> ```typescript
|
|
165
|
+
> // ❌ functions/index.ts 만들지 말 것
|
|
166
|
+
> export * from './get-users'
|
|
167
|
+
> export * from './create-post' // pg import → 클라이언트 빌드 실패
|
|
168
|
+
>
|
|
169
|
+
> // ✅ 개별 파일에서 직접 import
|
|
170
|
+
> import { getUsers } from '@/functions/get-users'
|
|
171
|
+
> import { createPost } from '@/functions/create-post'
|
|
172
|
+
> ```
|
|
173
|
+
|
|
156
174
|
### 4. Database Layer
|
|
157
175
|
|
|
158
176
|
```typescript
|
|
@@ -8,12 +8,20 @@
|
|
|
8
8
|
|
|
9
9
|
## 파일 네이밍
|
|
10
10
|
|
|
11
|
+
> ⚠️ **camelCase 파일명 금지** - 모든 파일명은 **kebab-case** 사용
|
|
12
|
+
|
|
11
13
|
| 타입 | 규칙 | 예시 |
|
|
12
14
|
|------|------|------|
|
|
13
15
|
| **일반 파일** | kebab-case | `user-profile.tsx`, `auth-service.ts` |
|
|
14
16
|
| **Route 파일** | TanStack Router 규칙 | `__root.tsx`, `index.tsx`, `$id.tsx` |
|
|
15
|
-
| **Hook 파일** | `use-` 접두사 | `use-user-filter.ts`, `use-auth.ts` |
|
|
16
|
-
| **Component** | PascalCase
|
|
17
|
+
| **Hook 파일** | `use-` 접두사 + kebab-case | `use-user-filter.ts`, `use-auth.ts` |
|
|
18
|
+
| **Component** | PascalCase 컴포넌트, kebab-case 파일 | `UserCard` in `user-card.tsx` |
|
|
19
|
+
| **Server Function** | kebab-case | `get-users.ts`, `create-post.ts` |
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
❌ camelCase 금지: getUserById.ts, authService.ts, useUserFilter.ts
|
|
23
|
+
✅ kebab-case 필수: get-user-by-id.ts, auth-service.ts, use-user-filter.ts
|
|
24
|
+
```
|
|
17
25
|
|
|
18
26
|
</naming>
|
|
19
27
|
|