91 lines
2.9 KiB
Markdown
91 lines
2.9 KiB
Markdown
---
|
|
name: init-project
|
|
description: 팀 표준 워크플로우로 프로젝트를 초기화합니다
|
|
allowed-tools: "Bash, Read, Write, Edit, Glob, Grep"
|
|
argument-hint: "[project-type: java-maven|java-gradle|react-ts|auto]"
|
|
---
|
|
|
|
팀 표준 워크플로우에 따라 프로젝트를 초기화합니다.
|
|
프로젝트 타입: $ARGUMENTS (기본: auto — 자동 감지)
|
|
|
|
## 프로젝트 타입 자동 감지
|
|
|
|
$ARGUMENTS가 "auto"이거나 비어있으면 다음 순서로 감지:
|
|
1. `pom.xml` 존재 → **java-maven**
|
|
2. `build.gradle` 또는 `build.gradle.kts` 존재 → **java-gradle**
|
|
3. `package.json` + `tsconfig.json` 존재 → **react-ts**
|
|
4. 감지 실패 → 사용자에게 타입 선택 요청
|
|
|
|
## 수행 단계
|
|
|
|
### 1. 프로젝트 분석
|
|
- 빌드 파일, 설정 파일, 디렉토리 구조 파악
|
|
- 사용 중인 프레임워크, 라이브러리 감지
|
|
- 기존 `.claude/` 디렉토리 존재 여부 확인
|
|
|
|
### 2. CLAUDE.md 생성
|
|
프로젝트 루트에 CLAUDE.md를 생성하고 다음 내용 포함:
|
|
- 프로젝트 개요 (이름, 타입, 주요 기술 스택)
|
|
- 빌드/실행 명령어 (감지된 빌드 도구 기반)
|
|
- 테스트 실행 명령어
|
|
- 프로젝트 디렉토리 구조 요약
|
|
- 팀 컨벤션 참조 (`.claude/rules/` 안내)
|
|
|
|
### 3. .claude/ 디렉토리 구성
|
|
이미 팀 표준 파일이 존재하면 건너뜀. 없는 경우:
|
|
- `.claude/settings.json` — 프로젝트 타입별 표준 권한 설정
|
|
- `.claude/rules/` — 팀 규칙 파일 (team-policy, git-workflow, code-style, naming, testing)
|
|
- `.claude/skills/` — 팀 스킬 (create-mr, fix-issue, sync-team-workflow)
|
|
|
|
### 4. Git Hooks 설정
|
|
```bash
|
|
git config core.hooksPath .githooks
|
|
```
|
|
`.githooks/` 디렉토리에 실행 권한 부여:
|
|
```bash
|
|
chmod +x .githooks/*
|
|
```
|
|
|
|
### 5. 프로젝트 타입별 추가 설정
|
|
|
|
#### java-maven
|
|
- `.sdkmanrc` 생성 (java=17.0.18-amzn 또는 프로젝트에 맞는 버전)
|
|
- `.mvn/settings.xml` Nexus 미러 설정 확인
|
|
- `mvn compile` 빌드 성공 확인
|
|
|
|
#### java-gradle
|
|
- `.sdkmanrc` 생성
|
|
- `gradle.properties.example` Nexus 설정 확인
|
|
- `./gradlew compileJava` 빌드 성공 확인
|
|
|
|
#### react-ts
|
|
- `.node-version` 생성 (프로젝트에 맞는 Node 버전)
|
|
- `.npmrc` Nexus 레지스트리 설정 확인
|
|
- `npm install && npm run build` 성공 확인
|
|
|
|
### 6. .gitignore 확인
|
|
다음 항목이 .gitignore에 포함되어 있는지 확인하고, 없으면 추가:
|
|
```
|
|
.claude/settings.local.json
|
|
.claude/CLAUDE.local.md
|
|
.env
|
|
.env.*
|
|
*.local
|
|
```
|
|
|
|
### 7. workflow-version.json 생성
|
|
`.claude/workflow-version.json` 파일을 생성하여 현재 글로벌 워크플로우 버전 기록:
|
|
```json
|
|
{
|
|
"applied_global_version": "1.0.0",
|
|
"applied_date": "현재날짜",
|
|
"project_type": "감지된타입"
|
|
}
|
|
```
|
|
|
|
### 8. 검증 및 요약
|
|
- 생성/수정된 파일 목록 출력
|
|
- `git config core.hooksPath` 확인
|
|
- 빌드 명령 실행 가능 확인
|
|
- 다음 단계 안내 (개발 시작, 첫 커밋 방법 등)
|