diff --git a/src/content/ClaudeCodeSkills.tsx b/src/content/ClaudeCodeSkills.tsx index 5ecb01b..a8b9bde 100644 --- a/src/content/ClaudeCodeSkills.tsx +++ b/src/content/ClaudeCodeSkills.tsx @@ -57,73 +57,182 @@ export default function ClaudeCodeSkills() { Gitea 리포 설정에서 확인할 수 있습니다. - {/* 일상적인 개발 흐름 */} -
- Claude Code 스킬을 활용한 일반적인 개발 흐름입니다. + {/* 개발 프로세스 전체 흐름 */} +
+ 기능 개발부터 릴리즈까지, Claude Code 스킬을 활용한 전체 개발 흐름입니다.
+ + {/* 시각적 플로우 */} +작업 후 변경 사항을 확인하고 커밋+푸시합니다.
+복잡한 기능은 구현 전에 계획을 먼저 세웁니다. Claude Code가 코드베이스를 분석하고 구현 방향을 설계합니다.
3개 이상 파일 수정이 필요하거나, 아키텍처에 영향을 주는 변경은 자동으로 플랜 모드로 전환됩니다.
> ), }, { - title: 'MR 생성 — /mr', + title: '2. 브랜치 분리 — feature 브랜치 생성', content: ( <> -feature 브랜치에서 develop으로 MR을 생성합니다.
+develop에서 feature 브랜치를 생성하여 독립적으로 개발합니다.
- /mr은{' '}
- /push + MR + 릴리즈 노트를 한 번에 처리합니다.
- MR 생성 후 리뷰 대기 또는 claude-bot 자동 승인+머지를 선택할 수 있습니다.
+ 이슈 기반 개발 시 /fix-issue 42를 사용하면
+ 이슈 분석 + 브랜치 생성을 자동으로 처리합니다.
develop → main 릴리즈 MR을 생성하고, 봇이 자동 승인합니다.
+코드 수정 후 /push로 커밋+푸시합니다.
/release는 리포 admin 권한이 필요합니다.
+ /push는 모든 변경을 단일 커밋으로 정리합니다.
기능 완성 후 develop으로 MR(Merge Request)을 생성합니다.
+사용 가능: /push, /mr, /create-mr, /fix-issue
+/push — 변경 커밋+푸시
+ /mr — develop으로 MR 생성
+ /release와 /version은
+ admin 권한이 필요합니다. 관리자에게 요청하세요.
+ 추가 사용: /release, /version
+/push → /mr → "봇 승인+머지" 선택
+ /release — develop→main 릴리즈 MR
+ /version — VERSION-HISTORY.md 생성 (SemVer)
+ @@ -161,38 +270,32 @@ export default function ClaudeCodeSkills() { - {/* 사전 준비 */} -
- 스킬을 사용하려면 다음이 필요합니다.
+ Claude Code 스킬을 사용하려면 프로젝트에서 /init-project를 한 번 실행하면 됩니다.
+
npm install -g @anthropic-ai/claude-code
+ claude 실행 → /init-project
+
+ CLAUDE_BOT_TOKEN은{' '}
+ settings.json에 팀 공통으로 포함되어 있어 별도 설정이 필요 없습니다.
+ 팀 워크플로우(rules, skills, agents)는 /push 실행 시 서버 해시 비교를 통해 자동 동기화됩니다.
npm install -g @anthropic-ai/claude-code
-
- /init-project 실행으로 팀 설정 자동 적용
-
- GITEA_TOKEN은{' '}
- settings.json의{' '}
- env 필드에서도 설정할 수 있습니다.
- 환경변수와 settings.json 모두 설정된 경우 환경변수가 우선합니다.
-
Claude Code 스킬(/push,{' '}
/mr,{' '}
- /release 등)을 사용하려면 Gitea API 토큰이 필요합니다.
+ /release 등)과 Git push에 필요한 개인 토큰입니다.
+ Token Name: claude-code (자유롭게 지정)
+ Repository and Organization Access: All (public, private, and limited)
+
Select permissions (아래 4개만 설정, 나머지는 No Access 유지):
+| 항목 | +권한 | +용도 | +
|---|---|---|
| issue | Read and Write | /fix-issue 이슈 조회/코멘트 |
| organization | Read | gc 조직 리포 접근 |
| repository | Read and Write | /push, /mr, /release API 호출 |
| user | Read | API 사용자 인증 확인 |
두 가지 방법 중 하나를 선택하세요.
+방법 A: settings.local.json (권장 — Claude Code 사용 시)
+
+ /init-project 실행 시 토큰 입력 안내가 표시됩니다. 입력하면 자동 저장됩니다.
+
이 파일은 .gitignore에 포함되어 리포에 커밋되지 않습니다.
+방법 B: 환경변수 (~/.zshrc)
+CLAUDE_BOT_TOKEN은 프로젝트{' '}
- settings.json에 팀 공통으로 포함되어 있어 별도 설정이 필요 없습니다.
- /push, /mr, /release 등 Git API 호출에 사용settings.json에 포함되어 자동 적용. PR 자동 승인용 봇 계정 토큰. 별도 설정 불필요
Gitea → gc 조직 → 새 저장소를 클릭합니다.
- "템플릿에서 생성"에서 프로젝트 유형에 맞는 템플릿(template-java-maven,{' '}
- template-java-gradle,{' '}
- template-react-ts)을 선택하고 프로젝트 이름을 입력합니다.
+ "템플릿에서 생성"에서 프로젝트 유형에 맞는 템플릿을 선택하고 프로젝트 이름을 입력합니다.
- Claude Code를 사용한다면 세션에서 프로젝트 초기화 스킬을 실행합니다. -
- /init-project가 수행하는 작업: -
+/init-project가 한 번에 처리하는 작업:
.githooks/를 로컬 hooks로 연결).claude/scripts/)
- Claude Code를 사용하지 않는 경우에도 Git hooks는 클론 시 포함되어 있으며,{' '}
+ git config core.hooksPath .githooks로
- 수동 설정할 수 있습니다.
-
- 모든 프로젝트 템플릿에 포함되는 공통 파일입니다. 이 파일들은 Git에 커밋되어 팀 전체가 공유합니다.
+ 팀 파일은 리포에 커밋되는 부트스트랩 파일과{' '}
+ 로컬 전용 팀 관리 파일로 나뉩니다. 팀 관리 파일은 .gitignore에 포함되어 리포에 커밋되지 않으며,{' '}
+ /sync-team-workflow가 서버에서 최신 버전을 자동으로 다운로드합니다.
.claude/settings.json — 팀 정책 (Git에 커밋). 팀 전체에 적용되는 권한과 규칙..claude/settings.local.json — 개인 확장 (.gitignore). 팀 정책 위에 개인 설정 추가. 없어도 무방.
+ /push, /mr,{' '}
+ /release 실행 시 로컬 팀 파일의 SHA256 해시를 서버와 비교합니다.
+ 불일치가 감지되면 자동으로 최신 파일을 다운로드합니다.
+ 팀 관리 파일이 리포에 커밋되지 않으므로, 코드 롤백으로 워크플로우가 구버전으로 되돌아가는 문제가 없습니다.
+
/sync-team-workflow를 실행하여 최신 규칙을 동기화하세요.
+ /push,{' '}
+ /mr,{' '}
+ /release 실행 시 자동으로 최신 버전이 동기화됩니다.
+ 별도로 /sync-team-workflow를 수동 실행할 필요가 없습니다.