♻️ refactor: 공통 지침의 저장소 이름을 gameservice-fe-agent로 변경
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
# 팀 공통 Claude 지침 (fe-common-rules)
|
# 팀 공통 Claude 지침 (gameservice-fe-agent)
|
||||||
|
|
||||||
이 파일은 팀 전체에서 공통으로 사용하는 Claude 작업 지침의 **엔트리 포인트**입니다.
|
이 파일은 팀 전체에서 공통으로 사용하는 Claude 작업 지침의 **엔트리 포인트**입니다.
|
||||||
각 프로젝트의 `CLAUDE.md`에서 `@.claude/common/CLAUDE.md` 형태로 참조하여 사용합니다.
|
각 프로젝트의 `CLAUDE.md`에서 `@.claude/common/CLAUDE.md` 형태로 참조하여 사용합니다.
|
||||||
@@ -34,6 +34,6 @@
|
|||||||
|
|
||||||
## 업데이트
|
## 업데이트
|
||||||
|
|
||||||
- 공통 지침은 이 레파지토리(`fe-common-rules`)에서만 수정합니다.
|
- 공통 지침은 이 레파지토리(`gameservice-fe-agent`)에서만 수정합니다.
|
||||||
- 각 프로젝트는 `scripts/update.sh`(또는 `git submodule update --remote`)로 최신 버전을 받아갑니다.
|
- 각 프로젝트는 `scripts/update.sh`(또는 `git submodule update --remote`)로 최신 버전을 받아갑니다.
|
||||||
- 수정 제안은 PR로 받습니다. 자세한 내용은 루트 `README.md` 참고.
|
- 수정 제안은 PR로 받습니다. 자세한 내용은 루트 `README.md` 참고.
|
||||||
|
|||||||
14
README.md
14
README.md
@@ -1,4 +1,4 @@
|
|||||||
# fe-common-rules
|
# gameservice-fe-agent
|
||||||
|
|
||||||
팀 전체에서 공통으로 사용하는 **프론트엔드 Claude 지침 저장소**입니다.
|
팀 전체에서 공통으로 사용하는 **프론트엔드 Claude 지침 저장소**입니다.
|
||||||
각 프로젝트는 이 저장소를 **Git submodule**로 포함하고, `CLAUDE.md`의 `@import` 구문으로 공통 지침을 불러와 사용합니다.
|
각 프로젝트는 이 저장소를 **Git submodule**로 포함하고, `CLAUDE.md`의 `@import` 구문으로 공통 지침을 불러와 사용합니다.
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
## 📁 저장소 구조
|
## 📁 저장소 구조
|
||||||
|
|
||||||
```
|
```
|
||||||
fe-common-rules/
|
gameservice-fe-agent/
|
||||||
├── CLAUDE.md # 공통 지침 엔트리 포인트 (rules/* 를 @import)
|
├── CLAUDE.md # 공통 지침 엔트리 포인트 (rules/* 를 @import)
|
||||||
├── README.md # 이 파일
|
├── README.md # 이 파일
|
||||||
├── rules/
|
├── rules/
|
||||||
@@ -47,7 +47,7 @@ fe-common-rules/
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 원격 저장소 URL은 팀 내부 Git 주소로 교체하세요
|
# 원격 저장소 URL은 팀 내부 Git 주소로 교체하세요
|
||||||
git submodule add <fe-common-rules-repo-url> .claude/common
|
git submodule add https://git.sginfra.net/sgp-web-d/gameservice-fe-agent.git .claude/common
|
||||||
git submodule update --init --recursive
|
git submodule update --init --recursive
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -62,7 +62,7 @@ curl -fsSL <install.sh raw URL> | bash
|
|||||||
```
|
```
|
||||||
your-project/
|
your-project/
|
||||||
├── .claude/
|
├── .claude/
|
||||||
│ ├── common/ ← submodule (fe-common-rules)
|
│ ├── common/ ← submodule (gameservice-fe-agent)
|
||||||
│ └── project/ ← 프로젝트 고유 지침
|
│ └── project/ ← 프로젝트 고유 지침
|
||||||
├── CLAUDE.md ← 공통 + 프로젝트 지침을 @import
|
├── CLAUDE.md ← 공통 + 프로젝트 지침을 @import
|
||||||
└── ...
|
└── ...
|
||||||
@@ -101,7 +101,7 @@ bash .claude/common/scripts/update.sh
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
git add .claude/common
|
git add .claude/common
|
||||||
git commit -m "chore: update fe-common-rules submodule"
|
git commit -m "chore: update gameservice-fe-agent submodule"
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -115,7 +115,7 @@ git commit -m "chore: update fe-common-rules submodule"
|
|||||||
### 신규 프로젝트 — install.sh 한 번으로 끝
|
### 신규 프로젝트 — install.sh 한 번으로 끝
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
bash .claude/common/scripts/install.sh git@github.com:<org>/fe-common-rules.git
|
bash .claude/common/scripts/install.sh https://git.sginfra.net/sgp-web-d/gameservice-fe-agent.git
|
||||||
# → .claude/common 에 submodule 설치
|
# → .claude/common 에 submodule 설치
|
||||||
# → templates/project/*.md 를 .claude/project/ 로 복사
|
# → templates/project/*.md 를 .claude/project/ 로 복사
|
||||||
# → templates/CLAUDE.md.tpl 을 루트 CLAUDE.md 로 복사
|
# → templates/CLAUDE.md.tpl 을 루트 CLAUDE.md 로 복사
|
||||||
@@ -199,7 +199,7 @@ bash .claude/common/scripts/link-skills.sh --unlink
|
|||||||
git submodule update --remote .claude/common
|
git submodule update --remote .claude/common
|
||||||
bash .claude/common/scripts/link-skills.sh # 새로 추가된 skill 이 자동 링크됨
|
bash .claude/common/scripts/link-skills.sh # 새로 추가된 skill 이 자동 링크됨
|
||||||
git add .gitmodules .claude
|
git add .gitmodules .claude
|
||||||
git commit -m "chore: sync fe-common-rules"
|
git commit -m "chore: sync gameservice-fe-agent"
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ Refs: #123
|
|||||||
## 체크리스트
|
## 체크리스트
|
||||||
- [ ] 로컬에서 빌드/테스트 통과
|
- [ ] 로컬에서 빌드/테스트 통과
|
||||||
- [ ] 린트/포맷 통과
|
- [ ] 린트/포맷 통과
|
||||||
- [ ] 공통 지침(fe-common-rules) 준수
|
- [ ] 공통 지침(gameservice-fe-agent) 준수
|
||||||
- [ ] 관련 문서 업데이트
|
- [ ] 관련 문서 업데이트
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#
|
#
|
||||||
# fe-common-rules project template initializer
|
# gameservice-fe-agent project template initializer
|
||||||
# 이미 .claude/common 이 설치된 프로젝트에서 templates/project/ 의
|
# 이미 .claude/common 이 설치된 프로젝트에서 templates/project/ 의
|
||||||
# 양식을 .claude/project/ 에 복사합니다.
|
# 양식을 .claude/project/ 에 복사합니다.
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#
|
#
|
||||||
# fe-common-rules installer
|
# gameservice-fe-agent installer
|
||||||
# 현재 Git 프로젝트의 .claude/common 경로에 fe-common-rules 저장소를
|
# 현재 Git 프로젝트의 .claude/common 경로에 gameservice-fe-agent 저장소를
|
||||||
# submodule 로 추가하고, templates/ 에서 프로젝트 지침 양식과
|
# submodule 로 추가하고, templates/ 에서 프로젝트 지침 양식과
|
||||||
# CLAUDE.md 템플릿을 복사합니다.
|
# CLAUDE.md 템플릿을 복사합니다.
|
||||||
#
|
#
|
||||||
@@ -9,18 +9,18 @@
|
|||||||
# bash scripts/install.sh <repo-url> [<branch>]
|
# bash scripts/install.sh <repo-url> [<branch>]
|
||||||
#
|
#
|
||||||
# 예:
|
# 예:
|
||||||
# bash scripts/install.sh git@github.com:our-team/fe-common-rules.git main
|
# bash scripts/install.sh https://git.sginfra.net/sgp-web-d/gameservice-fe-agent master
|
||||||
#
|
#
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
REPO_URL="${1:-}"
|
REPO_URL="${1:-}"
|
||||||
BRANCH="${2:-main}"
|
BRANCH="${2:-master}"
|
||||||
TARGET_PATH=".claude/common"
|
TARGET_PATH=".claude/common"
|
||||||
PROJECT_PATH=".claude/project"
|
PROJECT_PATH=".claude/project"
|
||||||
|
|
||||||
if [[ -z "$REPO_URL" ]]; then
|
if [[ -z "$REPO_URL" ]]; then
|
||||||
echo "❌ 사용법: bash scripts/install.sh <repo-url> [branch]" >&2
|
echo "❌ 사용법: bash scripts/install.sh <repo-url> [branch]" >&2
|
||||||
echo " 예: bash scripts/install.sh git@github.com:our-team/fe-common-rules.git main" >&2
|
echo " 예: bash scripts/install.sh https://git.sginfra.net/sgp-web-d/gameservice-fe-agent master" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ cd "$(git rev-parse --show-toplevel)"
|
|||||||
if [[ -d "$TARGET_PATH" ]]; then
|
if [[ -d "$TARGET_PATH" ]]; then
|
||||||
echo "⚠️ '$TARGET_PATH' 경로가 이미 존재합니다. submodule 추가를 건너뜁니다."
|
echo "⚠️ '$TARGET_PATH' 경로가 이미 존재합니다. submodule 추가를 건너뜁니다."
|
||||||
else
|
else
|
||||||
echo "📦 fe-common-rules 를 submodule 로 추가합니다..."
|
echo "📦 gameservice-fe-agent 를 submodule 로 추가합니다..."
|
||||||
git submodule add -b "$BRANCH" "$REPO_URL" "$TARGET_PATH"
|
git submodule add -b "$BRANCH" "$REPO_URL" "$TARGET_PATH"
|
||||||
git submodule update --init --recursive
|
git submodule update --init --recursive
|
||||||
echo "✅ submodule 추가 완료: $TARGET_PATH"
|
echo "✅ submodule 추가 완료: $TARGET_PATH"
|
||||||
@@ -132,4 +132,4 @@ echo "다음 작업을 진행해 주세요:"
|
|||||||
echo " 1) $PROJECT_PATH/*.md 내용을 프로젝트에 맞게 채우기"
|
echo " 1) $PROJECT_PATH/*.md 내용을 프로젝트에 맞게 채우기"
|
||||||
echo " 2) 변경 사항을 커밋하기"
|
echo " 2) 변경 사항을 커밋하기"
|
||||||
echo " git add .gitmodules .claude CLAUDE.md"
|
echo " git add .gitmodules .claude CLAUDE.md"
|
||||||
echo " git commit -m 'chore: add fe-common-rules submodule'"
|
echo " git commit -m 'chore: add gameservice-fe-agent submodule'"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#
|
#
|
||||||
# fe-common-rules skill linker
|
# gameservice-fe-agent skill linker
|
||||||
# 공통 저장소의 skills/* 를 프로젝트의 .claude/skills/* 로 심볼릭 링크합니다.
|
# 공통 저장소의 skills/* 를 프로젝트의 .claude/skills/* 로 심볼릭 링크합니다.
|
||||||
# 심볼릭 링크이므로 submodule 업데이트 시 skill 도 자동으로 최신 버전이 됩니다.
|
# 심볼릭 링크이므로 submodule 업데이트 시 skill 도 자동으로 최신 버전이 됩니다.
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#
|
#
|
||||||
# fe-common-rules updater
|
# gameservice-fe-agent updater
|
||||||
# 현재 프로젝트에 설치된 .claude/common submodule 을 최신 버전으로 갱신합니다.
|
# 현재 프로젝트에 설치된 .claude/common submodule 을 최신 버전으로 갱신합니다.
|
||||||
#
|
#
|
||||||
# 사용법:
|
# 사용법:
|
||||||
@@ -20,7 +20,7 @@ if [[ ! -d "$TARGET_PATH" ]]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "🔄 fe-common-rules 를 최신 버전으로 업데이트합니다..."
|
echo "🔄 gameservice-fe-agent 를 최신 버전으로 업데이트합니다..."
|
||||||
git submodule update --remote --merge "$TARGET_PATH"
|
git submodule update --remote --merge "$TARGET_PATH"
|
||||||
|
|
||||||
# 변경 사항 확인
|
# 변경 사항 확인
|
||||||
@@ -33,4 +33,4 @@ echo ""
|
|||||||
echo "✅ 업데이트가 완료되었습니다. 변경된 submodule 포인터를 커밋하세요:"
|
echo "✅ 업데이트가 완료되었습니다. 변경된 submodule 포인터를 커밋하세요:"
|
||||||
echo ""
|
echo ""
|
||||||
echo " git add $TARGET_PATH"
|
echo " git add $TARGET_PATH"
|
||||||
echo " git commit -m 'chore: update fe-common-rules submodule'"
|
echo " git commit -m 'chore: update gameservice-fe-agent submodule'"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
name: conventional-commit
|
name: conventional-commit
|
||||||
description: Git 변경사항을 팀의 Conventional Commits 규칙(fe-common-rules/rules/commit-pr.md)에 맞춰 커밋 메시지로 작성할 때 사용합니다. 사용자가 "커밋 메시지 만들어줘", "commit", "커밋해줘" 등을 요청하면 트리거됩니다.
|
description: Git 변경사항을 팀의 Conventional Commits 규칙(gameservice-fe-agent/rules/commit-pr.md)에 맞춰 커밋 메시지로 작성할 때 사용합니다. 사용자가 "커밋 메시지 만들어줘", "commit", "커밋해줘" 등을 요청하면 트리거됩니다.
|
||||||
---
|
---
|
||||||
|
|
||||||
# Conventional Commit 작성
|
# Conventional Commit 작성
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
name: vue-component-review
|
name: vue-component-review
|
||||||
description: Vue 3 / Nuxt 컴포넌트 파일을 팀 공통 지침(fe-common-rules) 기준으로 리뷰할 때 사용합니다. 사용자가 "이 컴포넌트 리뷰해줘", "컨벤션 맞는지 봐줘", "컴포넌트 체크" 등을 요청하면 트리거됩니다.
|
description: Vue 3 / Nuxt 컴포넌트 파일을 팀 공통 지침(gameservice-fe-agent) 기준으로 리뷰할 때 사용합니다. 사용자가 "이 컴포넌트 리뷰해줘", "컨벤션 맞는지 봐줘", "컴포넌트 체크" 등을 요청하면 트리거됩니다.
|
||||||
---
|
---
|
||||||
|
|
||||||
# Vue 컴포넌트 리뷰
|
# Vue 컴포넌트 리뷰
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# 아키텍처
|
# 아키텍처
|
||||||
|
|
||||||
> 이 파일은 `fe-common-rules/templates/project/architecture.md` 에서 복사된 양식입니다.
|
> 이 파일은 `gameservice-fe-agent/templates/project/architecture.md` 에서 복사된 양식입니다.
|
||||||
> 프로젝트의 레이어 구조와 데이터 흐름을 간단히 설명해주세요.
|
> 프로젝트의 레이어 구조와 데이터 흐름을 간단히 설명해주세요.
|
||||||
|
|
||||||
## 레이어 구조
|
## 레이어 구조
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# 프로젝트 전용 컨벤션
|
# 프로젝트 전용 컨벤션
|
||||||
|
|
||||||
> 이 파일은 `fe-common-rules/templates/project/conventions.md` 에서 복사된 양식입니다.
|
> 이 파일은 `gameservice-fe-agent/templates/project/conventions.md` 에서 복사된 양식입니다.
|
||||||
> 공통 지침(`.claude/common/`) 외에 **이 프로젝트에서만** 적용되는 규칙을 작성하세요.
|
> 공통 지침(`.claude/common/`) 외에 **이 프로젝트에서만** 적용되는 규칙을 작성하세요.
|
||||||
> 공통 지침과 충돌할 경우 이 문서가 우선합니다.
|
> 공통 지침과 충돌할 경우 이 문서가 우선합니다.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# 프로젝트 개요
|
# 프로젝트 개요
|
||||||
|
|
||||||
> 이 파일은 `fe-common-rules/templates/project/overview.md` 에서 복사된 양식입니다.
|
> 이 파일은 `gameservice-fe-agent/templates/project/overview.md` 에서 복사된 양식입니다.
|
||||||
> 프로젝트 세팅 후 실제 내용으로 채워주세요.
|
> 프로젝트 세팅 후 실제 내용으로 채워주세요.
|
||||||
|
|
||||||
## 서비스
|
## 서비스
|
||||||
|
|||||||
Reference in New Issue
Block a user