@yeongjaeyou/claude-code-config 0.4.0 → 0.5.0

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.
Files changed (37) hide show
  1. package/.claude/commands/ask-codex.md +131 -345
  2. package/.claude/commands/ask-deepwiki.md +15 -15
  3. package/.claude/commands/ask-gemini.md +134 -352
  4. package/.claude/commands/code-review.md +41 -40
  5. package/.claude/commands/commit-and-push.md +35 -36
  6. package/.claude/commands/council.md +318 -0
  7. package/.claude/commands/edit-notebook.md +34 -33
  8. package/.claude/commands/gh/create-issue-label.md +19 -17
  9. package/.claude/commands/gh/decompose-issue.md +66 -65
  10. package/.claude/commands/gh/init-project.md +46 -52
  11. package/.claude/commands/gh/post-merge.md +74 -79
  12. package/.claude/commands/gh/resolve-issue.md +38 -46
  13. package/.claude/commands/plan.md +15 -14
  14. package/.claude/commands/tm/convert-prd.md +53 -53
  15. package/.claude/commands/tm/post-merge.md +92 -112
  16. package/.claude/commands/tm/resolve-issue.md +148 -154
  17. package/.claude/commands/tm/review-prd-with-codex.md +272 -279
  18. package/.claude/commands/tm/sync-to-github.md +189 -212
  19. package/.claude/guidelines/cv-guidelines.md +30 -0
  20. package/.claude/guidelines/id-reference.md +34 -0
  21. package/.claude/guidelines/work-guidelines.md +17 -0
  22. package/.claude/skills/notion-md-uploader/SKILL.md +252 -0
  23. package/.claude/skills/notion-md-uploader/references/notion_block_types.md +323 -0
  24. package/.claude/skills/notion-md-uploader/references/setup_guide.md +156 -0
  25. package/.claude/skills/notion-md-uploader/scripts/__pycache__/markdown_parser.cpython-311.pyc +0 -0
  26. package/.claude/skills/notion-md-uploader/scripts/__pycache__/notion_client.cpython-311.pyc +0 -0
  27. package/.claude/skills/notion-md-uploader/scripts/__pycache__/notion_converter.cpython-311.pyc +0 -0
  28. package/.claude/skills/notion-md-uploader/scripts/markdown_parser.py +607 -0
  29. package/.claude/skills/notion-md-uploader/scripts/notion_client.py +337 -0
  30. package/.claude/skills/notion-md-uploader/scripts/notion_converter.py +477 -0
  31. package/.claude/skills/notion-md-uploader/scripts/upload_md.py +298 -0
  32. package/.claude/skills/skill-creator/LICENSE.txt +202 -0
  33. package/.claude/skills/skill-creator/SKILL.md +209 -0
  34. package/.claude/skills/skill-creator/scripts/init_skill.py +303 -0
  35. package/.claude/skills/skill-creator/scripts/package_skill.py +110 -0
  36. package/.claude/skills/skill-creator/scripts/quick_validate.py +65 -0
  37. package/package.json +1 -1
@@ -1,65 +1,66 @@
1
- ## 작업 세분화하기
2
-
3
- 작업을 관리 가능한 독립적인 이슈들로 분해합니다. `@CLAUDE.md`의 프로젝트 지침을 준수할 것.
4
-
5
- ## 작업 순서
6
- 1. 이슈 번호 확인: `gh issue list`로 현재 이슈 번호 확인하기.
7
- 2. 작업 분석: 작업의 핵심 요구사항과 목표를 이해하기.
8
- 3. 작업 분해: 주요 작업을 작고 관리하기 쉬운 하위 작업 또는 이슈로 나누기. **너무 많은 이슈보다 최적의 개수로 분해 (관리 가능한 수준)**할 것.
9
- 4. 의존성 분석: 다른 작업이 선행돼야 하는 의존성 파악하기
10
- 5. 마일스톤 이름 제안: 분해된 작업들을 묶을 마일스톤명 제안하기
11
- 6. 관련 PR 확인 (선택): `gh pr list --state closed --limit 20`로 참고할 만한 유사 작업 찾기 (없으면 생략)
12
- 7. 분해된 이슈 출력: 분해된 이슈들을 마일스톤명과 함께 출력하기.
13
- 8. 깃허브에 마일스톤과 이슈를 생성할지 묻기: AskUserQuestion 도구로 사용자가 결정하도록 요청하기.
14
- - 마일스톤 생성: `gh api repos/:owner/:repo/milestones -f title="마일스톤명" -f description="설명"`
15
- - 이슈 생성 시 `--milestone` 옵션으로 할당
16
- 9. **GitHub Project에 이슈 추가 (선택)**
17
- - `gh project list --owner <owner> --format json`으로 프로젝트 존재 여부 확인
18
- - 프로젝트가 없으면: "프로젝트가 없습니다. `/gh:init-project`로 생성할 있습니다." 안내 후 스킵
19
- - 프로젝트가 있으면: AskUserQuestion으로 추가 여부 질문
20
- - 추가 원하면: 이슈에 대해 `gh project item-add <project-number> --owner <owner> --url <issue-url>`
21
-
22
- ## 마일스톤 description 작성 가이드
23
-
24
- 마일스톤 description에 반드시 포함할 내용:
25
- - 전체 작업의 목표와 범위
26
- - 이슈 처리 순서 (의존성 그래프)
27
- - 예: "이슈 순서: #1 -> #2 -> #3 -> #4"
28
-
29
- ## 이슈 템플릿
30
-
31
- ### 제목
32
- `[타입] 간결한 작업 설명`
33
-
34
- ### 라벨 (실제 저장소 라벨 사용)
35
- **주의**: 라벨을 지정하기 전에 `gh label list` 명령어로 저장소의 실제 라벨을 확인하세요.
36
-
37
- 예시 (프로젝트에 따라 다름, 참고용으로만 이해하고 사용하지 말 것):
38
- - **타입**: `type: feature`, `type: documentation`, `type: enhancement`, `type: bug`
39
- - **영역**: `area: model/inference`, `area: model/training`, `area: dataset`, `area: detection`
40
- - **난이도**: `complexity: easy`, `complexity: medium`, `complexity: hard`
41
- - **우선순위**: `priority: high`, `priority: medium`, `priority: low`
42
-
43
- ### 설명
44
- **목적**: [왜 필요한지]
45
-
46
- **작업 내용**:
47
- - [ ] 구체적 요구사항 1
48
- - [ ] 구체적 요구사항 2
49
-
50
- **수정할 파일**:
51
- - `경로/파일명` - 변경 내용
52
-
53
- **완료 조건**:
54
- - [ ] 기능 구현 완료
55
- - [ ] 데모 페이지에 추가 (UI 컴포넌트인 경우)
56
-
57
- **의존성**:
58
- - [ ] 없음 또는 선행 이슈 #번호
59
-
60
- **권장 에이전트** (해당되는 경우):
61
- - 아규먼트에 에이전트 사용이 명시된 경우 여기에 포함
62
-
63
- **참고 자료** (선택사항):
64
- - 관련 PR이 있으면 추가 (예: PR #36 - 간단한 설명)
65
- - 없으면 섹션 생략 가능
1
+ ## Decompose Work
2
+
3
+ Break down large work items into manageable, independent issues. Follow project guidelines in `@CLAUDE.md`.
4
+
5
+ ## Workflow
6
+
7
+ 1. Check issue numbers: Run `gh issue list` to view current issue numbers
8
+ 2. Analyze work: Understand core requirements and objectives
9
+ 3. Decompose work: Split major tasks into smaller, manageable sub-tasks or issues. **Aim for optimal count over excessive issues (keep it manageable)**
10
+ 4. Analyze dependencies: Identify prerequisite tasks
11
+ 5. Suggest milestone name: Propose a milestone to group decomposed tasks
12
+ 6. Check related PRs (optional): Run `gh pr list --state closed --limit 20` for similar work references (skip if none)
13
+ 7. Output decomposed issues: Display issues with proposed milestone name
14
+ 8. Ask about GitHub creation: Use AskUserQuestion to let user decide on milestone and issue creation
15
+ - Create milestone: `gh api repos/:owner/:repo/milestones -f title="Milestone Name" -f description="Description"`
16
+ - Assign issues with `--milestone` option
17
+ 9. **Add issues to GitHub Project (optional)**
18
+ - Check for existing projects: `gh project list --owner <owner> --format json`
19
+ - If no project exists: Display "No project found. You can create one with `/gh:init-project`" and skip
20
+ - If project exists: Ask user via AskUserQuestion whether to add issues
21
+ - If yes: Run `gh project item-add <project-number> --owner <owner> --url <issue-url>` for each issue
22
+
23
+ ## Milestone Description Guidelines
24
+
25
+ Milestone description must include:
26
+ - Overall objectives and scope
27
+ - Issue processing order (dependency graph)
28
+ - Example: "Issue order: #1 -> #2 -> #3 -> #4"
29
+
30
+ ## Issue Template
31
+
32
+ ### Title
33
+ `[Type] Concise task description`
34
+
35
+ ### Labels (Use actual repository labels)
36
+ **Note**: Before assigning labels, verify repository labels with `gh label list`.
37
+
38
+ Examples (vary by project, for reference only):
39
+ - **Type**: `type: feature`, `type: documentation`, `type: enhancement`, `type: bug`
40
+ - **Area**: `area: model/inference`, `area: model/training`, `area: dataset`, `area: detection`
41
+ - **Complexity**: `complexity: easy`, `complexity: medium`, `complexity: hard`
42
+ - **Priority**: `priority: high`, `priority: medium`, `priority: low`
43
+
44
+ ### Description
45
+ **Purpose**: [Why this is needed]
46
+
47
+ **Tasks**:
48
+ - [ ] Specific requirement 1
49
+ - [ ] Specific requirement 2
50
+
51
+ **Files to modify**:
52
+ - `path/filename` - Change description
53
+
54
+ **Completion criteria**:
55
+ - [ ] Feature implementation complete
56
+ - [ ] Added to demo page (for UI components)
57
+
58
+ **Dependencies**:
59
+ - [ ] None or prerequisite issue #number
60
+
61
+ **Recommended agent** (if applicable):
62
+ - Include here if agent usage is specified in arguments
63
+
64
+ **References** (optional):
65
+ - Add related PRs if available (e.g., PR #36 - brief description)
66
+ - Omit this section if none
@@ -1,48 +1,48 @@
1
1
  ---
2
- description: GitHub Project 보드 초기화 설정
2
+ description: Initialize and configure GitHub Project board
3
3
  ---
4
4
 
5
- # GitHub Project 초기화
5
+ # Initialize GitHub Project
6
6
 
7
- GitHub Project 보드를 생성하고 기본 필드를 설정합니다. `@CLAUDE.md`의 프로젝트 지침을 준수할 것.
7
+ Create a GitHub Project board and configure default fields. Follow project guidelines in `@CLAUDE.md`.
8
8
 
9
- ## 사전 요구사항
9
+ ## Prerequisites
10
10
 
11
- `gh` CLI project 스코프가 필요합니다. 없으면 다음 명령어로 추가:
11
+ The `gh` CLI requires project scope. Add it with:
12
12
  ```bash
13
13
  gh auth refresh -s project --hostname github.com
14
14
  ```
15
15
 
16
- ## 아규먼트
16
+ ## Arguments
17
17
 
18
- - 프로젝트 이름 (선택): 없으면 저장소 이름을 기본값으로 사용
18
+ - Project name (optional): Uses repository name as default if not provided
19
19
 
20
- ## 작업 순서
20
+ ## Workflow
21
21
 
22
- 1. **사전 확인**
23
- - `gh auth status`로 project 스코프 확인
24
- - 없으면 사용자에게 `gh auth refresh -s project --hostname github.com` 실행 안내
25
- - `gh repo view --json nameWithOwner,owner -q ".owner.login"`로 owner 확인
22
+ 1. **Pre-check**
23
+ - Verify project scope with `gh auth status`
24
+ - If missing, instruct user to run `gh auth refresh -s project --hostname github.com`
25
+ - Get owner with `gh repo view --json nameWithOwner,owner -q ".owner.login"`
26
26
 
27
- 2. **기존 프로젝트 확인**
28
- - `gh project list --owner <owner> --format json`으로 기존 프로젝트 목록 확인
29
- - 동일한 이름의 프로젝트가 있으면 AskUserQuestion으로 처리 방법 질문:
30
- - 기존 프로젝트 사용
31
- - 프로젝트 생성 (다른 이름으로)
32
- - 작업 취소
27
+ 2. **Check existing projects**
28
+ - List existing projects with `gh project list --owner <owner> --format json`
29
+ - If a project with the same name exists, use AskUserQuestion to determine action:
30
+ - Use existing project
31
+ - Create new project (with different name)
32
+ - Cancel operation
33
33
 
34
- 3. **프로젝트 생성**
35
- - `gh project create --owner <owner> --title "<프로젝트명>" --format json`
36
- - 생성된 프로젝트 번호(number) 저장
34
+ 3. **Create project**
35
+ - Run `gh project create --owner <owner> --title "<project-name>" --format json`
36
+ - Save the generated project number
37
37
 
38
- 4. **Status 필드 확인**
39
- - `gh project field-list <project-number> --owner <owner> --format json`으로 필드 확인
40
- - GitHub Project 기본적으로 Status 필드 제공 (Todo, In Progress, Done)
41
- - 기본 필드가 있으면 그대로 사용
38
+ 4. **Verify Status field**
39
+ - Check fields with `gh project field-list <project-number> --owner <owner> --format json`
40
+ - GitHub Project provides default Status field (Todo, In Progress, Done)
41
+ - Use default fields if available
42
42
 
43
- 5. **Priority 필드 생성 (선택)**
44
- - AskUserQuestion으로 Priority 필드 생성 여부 질문
45
- - 원하면 생성:
43
+ 5. **Create Priority field (optional)**
44
+ - Ask user via AskUserQuestion whether to create Priority field
45
+ - If yes, create:
46
46
  ```bash
47
47
  gh project field-create <project-number> --owner <owner> \
48
48
  --name "Priority" \
@@ -50,39 +50,33 @@ gh auth refresh -s project --hostname github.com
50
50
  --single-select-options "High,Medium,Low"
51
51
  ```
52
52
 
53
- 6. **저장소에 프로젝트 링크**
54
- - `gh repo view --json name -q .name`로 현재 저장소 이름 확인
55
- - `gh project link <project-number> --owner <owner> --repo <repo>`로 연결
56
- - 주의: `--repo`에는 저장소 이름만 지정 (owner/repo 형식 아님)
53
+ 6. **Link repository to project**
54
+ - Get current repository name with `gh repo view --json name -q .name`
55
+ - Link with `gh project link <project-number> --owner <owner> --repo <repo>`
56
+ - Note: `--repo` takes only the repository name (not owner/repo format)
57
57
 
58
- 7. **결과 출력**
59
- - 생성된 프로젝트 정보 요약
60
- - 웹에서 확인할 수 있는 URL 제공: `gh project view <project-number> --owner <owner> --web`
58
+ 7. **Output results**
59
+ - Summarize created project information
60
+ - Provide web URL: `gh project view <project-number> --owner <owner> --web`
61
61
 
62
- ## 출력 예시
62
+ ## Output Example
63
63
 
64
64
  ```
65
- GitHub Project 초기화 완료!
65
+ GitHub Project initialization complete!
66
66
 
67
- 프로젝트: my-project
68
- 번호: 5
67
+ Project: my-project
68
+ Number: 5
69
69
  URL: https://github.com/users/<username>/projects/5
70
70
 
71
- 기본 필드:
71
+ Default fields:
72
72
  - Status: Todo, In Progress, Done
73
- - Priority: High, Medium, Low (선택적으로 추가됨)
73
+ - Priority: High, Medium, Low (optionally added)
74
74
 
75
- 연결된 저장소: owner/repo
75
+ Linked repository: owner/repo
76
76
 
77
- 다음 단계:
78
- - 이슈 추가: gh project item-add 5 --owner <owner> --url <issue-url>
79
- - 보드 확인: gh project view 5 --owner <owner> --web
77
+ Next steps:
78
+ - Add issue: gh project item-add 5 --owner <owner> --url <issue-url>
79
+ - View board: gh project view 5 --owner <owner> --web
80
80
  ```
81
81
 
82
- ## 작업 지침
83
-
84
- - 한글로 답변
85
- - 코드나 문서 작성 시 이모지 사용 금지
86
- - 오류 발생 시 명확한 해결 방법 제시
87
- - 프로젝트 번호는 이후 명령어에서 사용되므로 사용자에게 안내
88
- - `@me`는 일부 명령어에서 동작하지 않으므로 실제 owner를 사용
82
+ > See [Work Guidelines](../guidelines/work-guidelines.md)
@@ -1,93 +1,88 @@
1
1
  ---
2
- description: PR 머지 브랜치 정리 CLAUDE.md 업데이트
2
+ description: Clean up branch and update CLAUDE.md after PR merge
3
3
  ---
4
4
 
5
- # PR 머지 후 정리
5
+ # Post-Merge Cleanup
6
6
 
7
- PR이 머지된 브랜치 정리와 CLAUDE.md 업데이트를 수행합니다. `@CLAUDE.md`의 프로젝트 지침을 준수할 것.
7
+ Perform branch cleanup and CLAUDE.md updates after a PR has been merged. Follow project guidelines in `@CLAUDE.md`.
8
8
 
9
- ## 아규먼트
9
+ ## Arguments
10
10
 
11
- - PR 번호 (선택): 없으면 대화 맥락에서 파악하거나 최근 머지된 PR 목록에서 선택 요청
11
+ - PR number (optional): If not provided, infer from conversation context or prompt user to select from recent merged PRs
12
12
 
13
- ## 작업 순서
13
+ ## Workflow
14
14
 
15
- 1. **PR 정보 확인**
16
- - 아규먼트로 PR 번호가 주어지면 해당 PR 사용
17
- - 없으면 대화 맥락에서 관련 PR/이슈 번호 파악 시도
18
- - 파악 불가하면 `gh pr list --state merged --limit 5`로 최근 머지 PR 목록 보여주고 AskUserQuestion으로 선택 요청
19
- - `gh pr view <PR번호> --json number,title,baseRefName,headRefName,body,state`로 PR 정보 확인
20
- - `state`가 MERGED인지 확인
15
+ 1. **Identify PR**
16
+ - Use PR number if provided as argument
17
+ - Otherwise, attempt to infer related PR/issue number from conversation context
18
+ - If unable to determine, run `gh pr list --state merged --limit 5` to show recent merged PRs and prompt user to select
21
19
 
22
- 2. **로컬 변경사항 확인**
23
- - `git status --porcelain`으로 uncommitted 변경사항 확인
24
- - **Untracked 파일 (`??`)**: 브랜치 이동에 영향 없으므로 무시하고 진행
25
- - **Modified/Staged 파일 (`M`, `A`, `D` 등)**: AskUserQuestion으로 처리 방법 질문:
26
- - **stash 후 진행**: `git stash push -m "post-merge: 임시 저장"`
27
- - **변경사항 버리기**: `git checkout -- . && git clean -fd`
28
- - **작업 중단**: 사용자가 직접 처리하도록 중단
29
- - **stash 선택 시**: 작업 완료 후 AskUserQuestion으로 stash 복원 여부 질문:
30
- - **pop**: `git stash pop` (stash 제거하면서 복원)
31
- - **apply**: `git stash apply` (stash 유지하면서 복원)
32
- - **나중에**: 사용자가 직접 처리
20
+ - Run `gh pr view <PR_NUMBER> --json number,title,baseRefName,headRefName,body,state` to get PR details
21
+ - Verify `state` is MERGED
33
22
 
34
- 3. **베이스 브랜치로 이동**
23
+ 2. **Check Local Changes**
24
+ - Run `git status --porcelain` to check for uncommitted changes
25
+ - **Untracked files (`??`)**: Ignore and proceed (do not affect branch switching)
26
+ - **Modified/Staged files (`M`, `A`, `D`, etc.)**: Prompt user for action:
27
+ - **Stash and proceed**: `git stash push -m "post-merge: temp save"`
28
+ - **Discard changes**: `git checkout -- . && git clean -fd`
29
+ - **Abort**: Let user handle manually
30
+ - **If stash selected**: After workflow completion, prompt user for stash restoration:
31
+ - **pop**: `git stash pop` (restore and remove stash)
32
+ - **apply**: `git stash apply` (restore and keep stash)
33
+ - **later**: Let user handle manually
34
+
35
+ 3. **Switch to Base Branch**
35
36
  - `git fetch origin`
36
37
  - `git checkout <baseRefName>`
37
38
  - `git pull origin <baseRefName>`
38
39
 
39
- 4. **이슈 브랜치 정리 (선택)**
40
- - AskUserQuestion으로 로컬 브랜치 삭제 여부 질문
41
- - 삭제 원하면: `git branch -d <headRefName>`
42
-
43
- 5. **GitHub Project 상태 업데이트 (선택)**
44
- - PR body에서 관련 이슈 번호 파악: `Closes #N`, `Fixes #N`, `Resolves #N` 패턴 검색
45
- - `gh project list --owner <owner> --format json`으로 프로젝트 확인
46
- - 프로젝트가 없으면 스킵 (경고 없이 진행)
47
- - 프로젝트가 있으면:
48
- - `gh project item-list`로 해당 이슈의 item-id 확인
49
- - `gh project field-list`로 Status 필드 ID "Done" 옵션 ID 획득
50
- - `gh project item-edit`로 Status "Done"으로 변경
51
- - 이슈가 프로젝트에 없거나 Status 필드가 없으면 스킵
52
-
53
- 6. **CLAUDE.md 분석 및 업데이트**
54
- - CLAUDE.md 존재 여부 확인
55
- - 없으면: AskUserQuestion으로 생성 여부 또는 스킵 여부 질문
56
- - 기존 내용 분석:
57
- - 해결된 이슈 관련 임시 지침 찾기 (예: `#<이슈번호>`, `issue-<번호>` 언급)
58
- - 오래되거나 부정확한 정보 식별
59
- - 중복되거나 불필요한 내용 식별
60
- - 업데이트 제안 작성:
61
- - **삭제 대상**: 해결된 이슈 관련 임시 메모/지침
62
- - **추가 대상**: 이슈 해결 과정에서 발견한 새로운 패턴/컨벤션
63
- - **수정 대상**: 오래되거나 부정확한 정보
64
- - AskUserQuestion으로 제안 내용 확인 적용
65
-
66
- 7. **변경사항 커밋 (선택)**
67
- - CLAUDE.md 변경되었으면 AskUserQuestion으로 커밋 여부 질문
68
- - 커밋 원하면: Conventional Commits 형식으로 커밋
69
-
70
- ## 작업 지침
71
-
72
- - 한글로 답변
73
- - 코드나 문서 작성 시 이모지 사용 금지
74
- - 불명확한 사항은 추측하지 말고 AskUserQuestion 도구로 질문
75
- - CLAUDE.md 변경은 반드시 사용자 확인 진행
76
- - 브랜치 삭제, 커밋 되돌리기 어려운 작업은 항상 사용자 확인 필요
77
-
78
- ## CLAUDE.md 업데이트 가이드
79
-
80
- ### 삭제 대상 예시
81
- - `TODO: #123 해결 제거` 형태의 임시 메모
82
- - 특정 이슈 해결을 위한 임시 워크어라운드 설명
83
- - 이미 해결된 알려진 이슈 목록
84
-
85
- ### 추가 대상 예시
86
- - 이슈 해결 중 발견한 코드 컨벤션
87
- - 자주 발생하는 실수 방지 가이드
88
- - 새로 도입된 패턴이나 아키텍처 결정
89
-
90
- ### 수정 대상 예시
91
- - 변경된 디렉토리 구조 설명
92
- - 업데이트된 의존성 정보
93
- - 더 이상 유효하지 않은 명령어나 설정
40
+ 4. **Clean Up Issue Branch (Optional)**
41
+ - Prompt user to confirm local branch deletion
42
+ - If confirmed: `git branch -d <headRefName>`
43
+
44
+ 5. **Update GitHub Project Status (Optional)**
45
+ - Extract related issue numbers from PR body: search for `Closes #N`, `Fixes #N`, `Resolves #N` patterns
46
+ - Run `gh project list --owner <owner> --format json` to check for projects
47
+ - If no projects exist, skip silently
48
+ - If projects exist:
49
+ - Run `gh project item-list` to get the issue's item-id
50
+ - Run `gh project field-list` to get Status field ID and "Done" option ID
51
+ - Run `gh project item-edit` to set Status to "Done"
52
+ - Skip if issue is not in project or Status field does not exist
53
+
54
+ 6. **Analyze and Update CLAUDE.md**
55
+ - Check if CLAUDE.md exists
56
+ - If not: Prompt user to create or skip
57
+ - Analyze existing content:
58
+ - Find temporary instructions related to resolved issue (e.g., mentions of `#<issue_number>`, `issue-<number>`)
59
+ - Identify outdated or inaccurate information
60
+ - Identify redundant or unnecessary content
61
+ - Prepare update proposal:
62
+ - **To remove**: Temporary notes/instructions related to resolved issue
63
+ - **To add**: New patterns/conventions discovered during issue resolution
64
+ - **To modify**: Outdated or inaccurate information
65
+ - Present proposal to user for confirmation before applying
66
+
67
+ 7. **Commit Changes (Optional)**
68
+ - If CLAUDE.md was modified, prompt user to confirm commit
69
+ - If confirmed: Commit using Conventional Commits format
70
+
71
+ > See [Work Guidelines](../guidelines/work-guidelines.md)
72
+
73
+ ## CLAUDE.md Update Guide
74
+
75
+ ### Examples of Content to Remove
76
+ - Temporary notes like `TODO: remove after #123 is resolved`
77
+ - Temporary workaround descriptions for specific issues
78
+ - Known issues lists that have been resolved
79
+
80
+ ### Examples of Content to Add
81
+ - Code conventions discovered during issue resolution
82
+ - Guidelines to prevent common mistakes
83
+ - Newly introduced patterns or architecture decisions
84
+
85
+ ### Examples of Content to Modify
86
+ - Changed directory structure descriptions
87
+ - Updated dependency information
88
+ - Commands or configurations that are no longer valid
@@ -1,67 +1,59 @@
1
1
 
2
- # 깃허브 이슈 해결하기
2
+ # Resolve GitHub Issue
3
3
 
4
- 깃허브 이슈를 체계적으로 분석하고 해결하는 전문 개발자 역할을 수행합니다. 아규먼트로 깃허브 이슈 번호를 받아 해당 이슈를 해결합니다. `@CLAUDE.md`의 프로젝트 지침을 준수할 것.
4
+ Act as an expert developer who systematically analyzes and resolves GitHub issues. Receive a GitHub issue number as argument and resolve the issue. Follow project guidelines in `@CLAUDE.md`.
5
5
 
6
- ## 작업 순서
6
+ ## Workflow
7
7
 
8
- 1. **이슈 분석**:
9
- - `gh issue view $ISSUE_NUMBER --json title,body,comments,milestone`로 이슈의 제목, 본문, 레이블, 마일스톤을 확인
10
- - 마일스톤이 있다면 `gh issue list --milestone "<milestone-name>" --json number,title,state`로 관련 이슈들을 확인하여 전체 맥락 파악
11
- - 요구사항을 정확히 파악
8
+ 1. **Analyze Issue**:
9
+ - Run `gh issue view $ISSUE_NUMBER --json title,body,comments,milestone` to get issue title, body, labels, and milestone
10
+ - If milestone exists, run `gh issue list --milestone "<milestone-name>" --json number,title,state` to view related issues and understand overall context
11
+ - Identify requirements precisely
12
12
 
13
- 2. **브랜치 생성**: `main` 또는 `master` 브랜치에서 `issue-$ISSUE_NUMBER` 형태로 브랜치를 생성하고 체크아웃합니다.
14
- - **서브모듈 초기화**: Worktree 사용 `git submodule update --init --recursive` 실행 필요
13
+ 2. **Create Branch**: Create and checkout a new branch named `issue-$ISSUE_NUMBER` from `main` or `master` branch.
14
+ - **Initialize submodules**: When using worktree, run `git submodule update --init --recursive`
15
15
 
16
- 3. **GitHub Project 상태 업데이트 (선택)**
17
- - `gh project list --owner <owner> --format json`으로 프로젝트 확인
18
- - 프로젝트가 없으면 스킵 (경고 없이 진행)
19
- - 프로젝트가 있으면:
20
- - `gh project item-list <project-number> --owner <owner> --format json`으로 이슈가 프로젝트에 있는지 확인
21
- - 없으면 `gh project item-add`로 추가
22
- - `gh project field-list <project-number> --owner <owner> --format json`으로 Status 필드 ID "In Progress" 옵션 ID 획득
23
- - Status 필드를 "In Progress"로 변경:
16
+ 3. **Update GitHub Project Status (Optional)**
17
+ - Run `gh project list --owner <owner> --format json` to check for projects
18
+ - If no projects exist, skip silently
19
+ - If projects exist:
20
+ - Run `gh project item-list <project-number> --owner <owner> --format json` to check if issue is in project
21
+ - If not, add with `gh project item-add`
22
+ - Run `gh project field-list <project-number> --owner <owner> --format json` to get Status field ID and "In Progress" option ID
23
+ - Update Status field to "In Progress":
24
24
  ```bash
25
25
  gh project item-edit --project-id <project-id> --id <item-id> --field-id <status-field-id> --single-select-option-id <in-progress-option-id>
26
26
  ```
27
- - Status 필드가 없으면 스킵
27
+ - Skip if Status field does not exist
28
28
 
29
- 4. **코드베이스 분석**: 이슈 해결에 필요한 관련 파일과 구조를 파악하기 위해 서브에이전트를 활용하여 코드베이스를 병렬로 분석합니다.
29
+ 4. **Analyze Codebase**: Use sub-agents to analyze the codebase in parallel, identifying relevant files and structure needed to resolve the issue.
30
30
 
31
- 5. **해결 계획 수립**: 분석 결과를 바탕으로 구체적인 해결 방안을 계획하고 작업 단계를 정의합니다.
31
+ 5. **Plan Resolution**: Based on analysis results, develop a concrete resolution plan and define work steps.
32
32
 
33
- 6. **이슈 해결**: 서브에이전트를 생성하여 계획에 따라 코드를 수정하고 기능을 구현합니다.
34
- - **실행 검증 필수**: Python 스크립트, 실행 파일, 또는 동작 가능한 코드의 경우 반드시 실제 실행하여 정상 동작을 확인합니다. 단순히 파일 존재나 이전 결과만으로 판단하지 않습니다.
33
+ 6. **Resolve Issue**: Spawn sub-agents to modify code and implement features according to the plan.
34
+ - **Execution verification required**: For Python scripts, executables, or any runnable code, always execute to verify correct behavior. Do not rely solely on file existence or previous results.
35
35
 
36
- 7. **테스트 작성**: 파일별로 독립적인 서브에이전트를 생성하여 병렬로 단위 테스트를 작성하고 80% 이상의 커버리지를 확보합니다.
36
+ 7. **Write Tests**: Spawn independent sub-agents per file to write unit tests in parallel, achieving at least 80% coverage.
37
37
 
38
- 8. **검증**: 테스트 실행, 린트 검사, 빌드 확인을 각각 독립적인 서브에이전트로 병렬 실행하여 코드 품질을 검증합니다.
38
+ 8. **Validate**: Run tests, lint checks, and build verification in parallel using independent sub-agents to validate code quality.
39
39
 
40
- 9. **PR 생성**: 해결된 이슈에 대한 리퀘스트를 생성합니다.
40
+ 9. **Create PR**: Create a pull request for the resolved issue.
41
41
 
42
- 10. **이슈 체크박스 업데이트**: 해당 이슈의 체크박스 항목들을 완료된 것으로 체크하여 업데이트합니다.
42
+ 10. **Update Issue Checkboxes**: Mark completed checkbox items in the issue as done.
43
43
 
44
- ## 작업 지침
45
- - 불명확한 요구사항이나 구현 방향이 여러 가지일 경우 AskUserQuestion 도구로 사용자에게 확인
46
- - 마일스톤이 있다면 마일스톤 description을 읽어 전체 맥락과 이슈 순서를 파악
47
- - 한글로 답할 것, 주석 및 마크다운도 한글로 작성할 것
48
- - 코드나 문서 작성 시 이모지 사용 금지
49
- - PR 설명은 한글로 작성
50
- - 컴포넌트가 데모 페이지에 추가되는 경우, Playwright MCP를 사용해 해당 컴포넌트를 E2E 테스트로 검증합니다.
51
- - 일회성 테스트 스크립트나 임시 헬퍼 파일은 작업 완료 후 반드시 삭제합니다.
52
- - 커밋, PR, 이슈에 'Generated with Claude', 'Co-Authored-By: Claude' 등 Claude attribution 금지
44
+ > See [Work Guidelines](../guidelines/work-guidelines.md)
53
45
 
54
- ## 검증 완료 기준
46
+ ## Verification and Completion Criteria
55
47
 
56
- **중요**: 체크박스를 완료로 표시하기 전에 반드시 실제 동작을 확인해야 합니다.
48
+ **Important**: Always verify actual behavior before marking checkboxes as complete.
57
49
 
58
- ### 검증 원칙
59
- 1. **실제 실행 필수**: 코드/설정이 실제로 동작하는지 직접 실행하여 확인
60
- 2. **증거 제시**: 완료를 증명할 있는 실제 출력이나 결과를 보여줄 것
61
- 3. **추측 금지**: 확인하지 않은 것은 "미확인" 또는 "추정됨"으로 명시
62
- 4. **부분 완료 구분**: 코드는 작성했지만 테스트하지 않은 경우 명확히 구분
50
+ ### Verification Principles
51
+ 1. **Execution required**: Directly run code/configuration to confirm it actually works
52
+ 2. **Provide evidence**: Show actual output or results that prove completion
53
+ 3. **No guessing**: Explicitly mark unverified items as "unverified" or "assumed"
54
+ 4. **Distinguish partial completion**: Clearly separate code written but not tested
63
55
 
64
- ### 금지 사항
65
- - 실행하지 않고 "동작할 것으로 예상됩니다"라고 보고
66
- - 로그를 보지 않고 "로그에 나타날 것입니다"라고 단언
67
- - 추측을 사실처럼 보고
56
+ ### Prohibited Actions
57
+ - Reporting "expected to work" without execution
58
+ - Stating "will appear in logs" without checking logs
59
+ - Presenting assumptions as facts
@@ -1,25 +1,26 @@
1
1
  ---
2
- description: 요구사항 분석 구현 계획만 수립
2
+ description: Analyze requirements and create implementation plan only
3
3
  ---
4
4
 
5
- # 구현 계획 수립
5
+ # Implementation Planning
6
6
 
7
- 아규먼트로 받은 요구사항을 신중히 분석하고, 코드베이스를 이해한 후, **실제 구현 없이** 실행 계획만 제시합니다.
7
+ Carefully analyze the requirements provided as arguments, understand the codebase, and present an execution plan **without actual implementation**.
8
8
 
9
9
  ## IMPORTANT
10
10
  - When you need clarification or there are multiple options, please ask me interactive questions (USE interactive question tool `AskUserQuestion`) before proceeding.
11
11
 
12
- ## 수행 작업
12
+ ## Tasks
13
13
 
14
- 1. 요구사항의 의도 파악 (불명확하면 질문)
15
- 2. 관련 코드베이스 조사 이해
16
- 3. 단계별 실행 계획 작성
17
- 4. 주의사항 결정 필요 사항 제시
14
+ 1. Understand the intent of requirements (ask questions if unclear)
15
+ 2. Investigate and understand the relevant codebase
16
+ 3. Create a step-by-step execution plan
17
+ 4. Present considerations and items requiring decisions
18
18
 
19
- ## 처리 원칙
19
+ ## Guidelines
20
+
21
+ - **No implementation**: Do not write code immediately; only create the plan
22
+ - **Thorough investigation**: Understand the codebase first, then plan
23
+ - **Ask first**: Do not guess; always ask about uncertainties or ambiguities
24
+ - **Follow CLAUDE.md**: Adhere to project guidelines in `@CLAUDE.md`
25
+ - **Transparent communication**: Clearly state unclear areas, risks, and alternatives
20
26
 
21
- - **구현 금지**: 바로 코드 작성하지 말고 계획만 수립
22
- - **충분한 조사**: 코드베이스를 먼저 이해한 후 계획
23
- - **질문 우선**: 모르는 것이나 헷갈리는 것은 추측하지 말고 반드시 질문
24
- - **CLAUDE.md 준수**: `@CLAUDE.md`의 프로젝트 지침을 준수할 것
25
- - **투명한 소통**: 불명확한 부분, 위험 요소, 대안 등 명시