Skip to content

Commit 1028542

Browse files
authored
Merge pull request #164 from SEMOSAN/feat/#163-claude-setting
[Chore] Claude 커스텀 커맨드 개선 및 추가
2 parents fc86a14 + 80e3483 commit 1028542

3 files changed

Lines changed: 100 additions & 9 deletions

File tree

.claude/commands/branch.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# 브랜치 생성 커맨드
2+
3+
## 사용법
4+
5+
```
6+
/branch <이슈번호> <설명>
7+
```
8+
9+
예시: `/branch 156 course-like`
10+
11+
## 동작 순서
12+
13+
1. `$ARGUMENTS`에서 이슈번호와 설명을 파싱한다.
14+
2. 커밋 타입을 선택하도록 사용자에게 묻는다.
15+
3. 브랜치명을 조합하고 확인을 요청한다.
16+
4. 확인 후 아래 순서로 명령을 실행한다.
17+
- `git fetch origin develop` — 최신 develop 동기화
18+
- `git checkout -b <브랜치명> origin/develop` — 로컬 브랜치 생성
19+
- `git push -u origin <브랜치명>` — 원격 브랜치 생성 및 추적 설정
20+
5. 완료 후 생성된 브랜치명을 출력한다.
21+
22+
## 브랜치 명명 규칙
23+
24+
```
25+
<type>/#<이슈번호>-<설명>
26+
```
27+
28+
### 타입 선택 기준
29+
30+
| 타입 | 사용 시점 |
31+
|------|----------|
32+
| `feat` | 새로운 기능 추가 |
33+
| `fix` | 버그 수정 |
34+
| `refactor` | 기능 변경 없는 코드 개선 |
35+
| `docs` | 문서, 주석 변경 |
36+
| `test` | 테스트 코드 추가/수정 |
37+
| `chore` | 빌드, 설정, 의존성 등 기타 변경 |
38+
39+
### 예시
40+
41+
```
42+
feat/#156-course-like
43+
fix/#149-semofeed-image-url-quote
44+
refactor/#160-tracking-buffer-flush
45+
```
46+
47+
## 실행 명령 예시
48+
49+
```bash
50+
git fetch origin develop
51+
git checkout -b feat/#156-course-like origin/develop
52+
git push -u origin feat/#156-course-like
53+
```

.claude/commands/issue.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010

1111
1. `$ARGUMENTS`로 전달된 설명을 바탕으로 작업 내용을 파악한다.
1212
2. 아래 이슈 템플릿을 채워 초안을 제안한다.
13-
3. 사용자 확인 후 `gh issue create` 명령으로 GitHub에 이슈를 생성한다.
13+
3. 사용자에게 초안을 보여주고 "생성할까요?" 라고 확인을 요청한다.
14+
4. 사용자가 확인하면 즉시 `gh issue create` 명령을 실행하고 생성된 이슈 URL을 출력한다.
15+
5. 수정 요청이 있으면 해당 항목을 수정한 뒤 다시 확인을 요청한다.
1416

1517
## 이슈 템플릿
1618

@@ -65,11 +67,24 @@
6567
- 논의가 필요하거나 고민되는 부분을 작성
6668
- 없으면 `없음`으로 작성
6769

68-
## 이슈 생성 명령 예시
70+
## 이슈 생성 명령
71+
72+
사용자 확인 후 아래 순서로 실행한다.
73+
본문은 특수문자·마크다운 이스케이프 오류를 막기 위해 임시 파일로 작성 후 `--body-file`로 전달한다.
6974

7075
```bash
76+
# 1. 본문을 임시 파일에 저장
77+
cat > /tmp/issue_body.md << 'EOF'
78+
<채워진 템플릿 내용>
79+
EOF
80+
81+
# 2. 이슈 생성
7182
gh issue create \
7283
--title "<이슈 제목>" \
73-
--body "<채워진 템플릿 내용>" \
74-
--label "feat"
84+
--body-file /tmp/issue_body.md
85+
86+
# 3. 임시 파일 삭제
87+
rm /tmp/issue_body.md
7588
```
89+
90+
생성 완료 후 반환된 이슈 URL을 사용자에게 출력한다.

.claude/commands/pr.md

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
1. `git log``git diff <base-branch>...HEAD`로 현재 브랜치의 전체 변경사항을 파악한다.
66
2. 브랜치명에서 이슈 번호를 추출한다. (예: `feat/#151-claude-command``#151`)
77
3. 아래 PR 템플릿을 채워 초안을 제안한다.
8-
4. 사용자 확인 후 `gh pr create` 명령으로 GitHub에 PR을 생성한다.
8+
4. 사용자에게 초안을 보여주고 "생성할까요?" 라고 확인을 요청한다.
9+
5. 사용자가 확인하면 즉시 `gh pr create` 명령을 실행하고 생성된 PR URL을 출력한다.
10+
6. 수정 요청이 있으면 해당 항목을 수정한 뒤 다시 확인을 요청한다.
911

1012
## PR 템플릿
1113

@@ -27,6 +29,13 @@
2729

2830
## 각 항목 작성 규칙
2931

32+
### PR 제목 형식
33+
- `[Feat] ~기능 추가` — 새로운 기능
34+
- `[Fix] ~버그 수정` — 버그 수정
35+
- `[Refactor] ~개선` — 리팩토링
36+
- `[Chore] ~` — 설정, 빌드, 기타
37+
- `[Docs] ~` — 문서
38+
3039
### 🧾 요약
3140
- 이 PR이 무엇을 왜 하는지 한 줄로 작성
3241
- 예: `산 좋아요 토글 API 구현 — 사용자가 관심 산을 저장할 수 있도록`
@@ -46,17 +55,31 @@
4655
### ✅ 확인
4756
- `빌드 OK` / `테스트 OK` 항목은 사용자가 직접 체크하도록 체크박스로 남겨둔다.
4857

49-
## PR 생성 명령 예시
58+
## PR 생성 명령
59+
60+
사용자 확인 후 아래 순서로 실행한다.
61+
본문은 특수문자·마크다운 이스케이프 오류를 막기 위해 임시 파일로 작성 후 `--body-file`로 전달한다.
5062

5163
```bash
64+
# 1. 본문을 임시 파일에 저장
65+
cat > /tmp/pr_body.md << 'EOF'
66+
<채워진 템플릿 내용>
67+
EOF
68+
69+
# 2. PR 생성
5270
gh pr create \
53-
--title "<타입>: <한글 제목>" \
54-
--body "<채워진 템플릿 내용>" \
71+
--title "[<타입>] <한글 제목>" \
72+
--body-file /tmp/pr_body.md \
5573
--base develop
74+
75+
# 3. 임시 파일 삭제
76+
rm /tmp/pr_body.md
5677
```
5778

79+
생성 완료 후 반환된 PR URL을 사용자에게 출력한다.
80+
5881
## 주의사항
5982

60-
- base 브랜치는 기본적으로 `develop`으로 설정한다. `main`으로 보내는 경우 사용자에게 확인한다.
83+
- base 브랜치는 항상 `develop`으로 설정한다. `main`으로 보내는 경우 반드시 사용자에게 확인한다.
6184
- 리뷰어 2명 승인 필요 — PR 생성 후 리뷰어 지정을 안내한다.
6285
- 셀프 머지 금지 규칙을 사용자에게 상기시킨다.

0 commit comments

Comments
 (0)