lee-spec-kit 0.2.1 → 0.2.3
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.
- package/package.json +1 -1
- package/templates/en/common/agents/constitution.md +4 -2
- package/templates/en/common/agents/git-workflow.md +19 -11
- package/templates/en/common/agents/issue-template.md +20 -4
- package/templates/en/common/agents/pr-template.md +19 -3
- package/templates/en/common/agents/skills/create-feature.md +23 -1
- package/templates/en/common/agents/skills/create-pr.md +6 -6
- package/templates/en/common/agents/skills/execute-task.md +15 -7
- package/templates/en/fullstack/agents/agents.md +9 -4
- package/templates/en/single/agents/agents.md +15 -10
- package/templates/ko/common/agents/constitution.md +2 -0
- package/templates/ko/common/agents/git-workflow.md +19 -11
- package/templates/ko/common/agents/issue-template.md +3 -3
- package/templates/ko/common/agents/pr-template.md +23 -7
- package/templates/ko/common/agents/skills/create-feature.md +23 -1
- package/templates/ko/common/agents/skills/create-pr.md +4 -4
- package/templates/ko/common/agents/skills/execute-task.md +14 -6
- package/templates/ko/fullstack/agents/agents.md +6 -1
- package/templates/ko/single/agents/agents.md +4 -5
package/package.json
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
# {{projectName}} Constitution
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
> ⚠️ **Replace `{{projectName}}` and `{{date}}` with actual project name and date.**
|
|
4
|
+
|
|
5
|
+
Core principles and technical decision guidelines for this project.
|
|
6
|
+
All development decisions are based on this document.
|
|
5
7
|
|
|
6
8
|
> **📌 Document Scope**
|
|
7
9
|
>
|
|
@@ -85,21 +85,29 @@ main
|
|
|
85
85
|
git checkout -b feat/{issue-number}-{feature-name}
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
-
### Document Commit
|
|
88
|
+
### Document Commit Rules (Continuous Sync)
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
| ------------------------------------------------- | ----------------------------------- | --------------------------------------------- |
|
|
92
|
-
| When planning complete (spec+plan+tasks approved) | `F{number}-{feature-name}/` folder | `docs(#{issue}): F{number} spec, plan, tasks` |
|
|
93
|
-
| When Feature complete (all tasks done) | `F{number}-{feature-name}/` changes | `docs(#{issue}): F{number} Feature complete` |
|
|
90
|
+
> 🔄 **Docs synchronization is mandatory when Project code changes.**
|
|
94
91
|
|
|
95
|
-
|
|
92
|
+
| Situation | Rule |
|
|
93
|
+
| ------------------------- | --------------------------------------------------------------------- |
|
|
94
|
+
| **Project + Docs Change** | Must commit Docs **together with Project commit** (Maintain Sync) |
|
|
95
|
+
| **Docs Only Change** | If only docs changed (e.g., `custom.md` update), **commit Docs only** |
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
#### Standalone Mode Commit Guide
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
1. **Project Commit** (If code changed)
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
git commit -m "feat(#123): implement feature"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
2. **Docs Commit** (If docs changed - **Run in Docs Repo**)
|
|
106
|
+
```bash
|
|
107
|
+
git commit -m "docs(#123): update feature docs"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
> 💡 **Core Rule**: At task completion, **all changed repositories** must be committed.
|
|
103
111
|
|
|
104
112
|
---
|
|
105
113
|
|
|
@@ -36,14 +36,30 @@ In GitHub Issues, use different link formats **based on file location**:
|
|
|
36
36
|
[react-i18next](https://react.i18next.com/)
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
3. **
|
|
39
|
+
3. **Files within project repo**: Use full URL (clickable)
|
|
40
|
+
- **Merged documents/code**: Use `main` branch
|
|
41
|
+
```markdown
|
|
42
|
+
[filename](https://github.com/{owner}/{repo}/blob/main/path/to/file)
|
|
43
|
+
```
|
|
44
|
+
- **In-progress documents** (not merged yet): Use **Feature branch**
|
|
45
|
+
```markdown
|
|
46
|
+
[filename](https://github.com/{owner}/{repo}/blob/{feat-branch}/path/to/file)
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
4. **External documents (with public URL)**: Use **absolute URL**
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
[react-i18next](https://react.i18next.com/)
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
5. **Local documents** (no URL available): **Path from project root**
|
|
40
56
|
|
|
41
57
|
> 📁 Local documents use paths **from project root**.
|
|
42
58
|
> Format: `- **{Label}**: \`{path}\``
|
|
43
59
|
|
|
44
60
|
```markdown
|
|
45
|
-
- **Spec**: `{
|
|
46
|
-
- **Tasks**: `{
|
|
61
|
+
- **Spec**: `docs/features/{be|fe}/F001-feature-name/spec.md`
|
|
62
|
+
- **Tasks**: `docs/features/{be|fe}/F001-feature-name/tasks.md`
|
|
47
63
|
```
|
|
48
64
|
|
|
49
65
|
> ⚠️ Local documents are not clickable on GitHub, so use **bold label + code block path** format instead of markdown links.
|
|
@@ -69,7 +85,7 @@ In GitHub Issues, use different link formats **based on file location**:
|
|
|
69
85
|
|
|
70
86
|
## Related Documents
|
|
71
87
|
|
|
72
|
-
- **Spec**: `{
|
|
88
|
+
- **Spec**: `docs/features/{be|fe}/F{number}-{feature-name}/spec.md`
|
|
73
89
|
|
|
74
90
|
## Labels
|
|
75
91
|
|
|
@@ -58,8 +58,8 @@ For file links within the repo in PR body, **always use current branch name**:
|
|
|
58
58
|
|
|
59
59
|
## Related Documents
|
|
60
60
|
|
|
61
|
-
- **Spec**: `{
|
|
62
|
-
- **Tasks**: `{
|
|
61
|
+
- **Spec**: `docs/features/{be|fe}/F{number}-{feature-name}/spec.md`
|
|
62
|
+
- **Tasks**: `docs/features/{be|fe}/F{number}-{feature-name}/tasks.md`
|
|
63
63
|
|
|
64
64
|
Closes #{issue-number}
|
|
65
65
|
```
|
|
@@ -85,9 +85,25 @@ gh pr create \
|
|
|
85
85
|
| Situation | Merge Method |
|
|
86
86
|
| -------------- | ---------------- |
|
|
87
87
|
| Normal Feature | Squash and Merge |
|
|
88
|
-
| Urgent Hotfix | Merge
|
|
88
|
+
| Urgent Hotfix | Squash and Merge |
|
|
89
89
|
| Docs update | Squash and Merge |
|
|
90
90
|
|
|
91
|
+
### Merge Execution
|
|
92
|
+
|
|
93
|
+
After all reviews are resolved:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# Update main before merge
|
|
97
|
+
git checkout main
|
|
98
|
+
git pull
|
|
99
|
+
|
|
100
|
+
# Squash and Merge
|
|
101
|
+
gh pr merge --squash --delete-branch
|
|
102
|
+
|
|
103
|
+
# Update main after merge
|
|
104
|
+
git pull
|
|
105
|
+
```
|
|
106
|
+
|
|
91
107
|
---
|
|
92
108
|
|
|
93
109
|
## Label Rules
|
|
@@ -37,7 +37,15 @@ Share full spec.md content with user and wait for **explicit approval (OK)**
|
|
|
37
37
|
|
|
38
38
|
→ See `skills/create-issue.md`
|
|
39
39
|
|
|
40
|
-
### 5.
|
|
40
|
+
### 5. Create Branch
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
git checkout -b feat/{issue-number}-{feature-name}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
> ⚠️ **Do NOT work on main branch.** Always create a branch after issue creation.
|
|
47
|
+
|
|
48
|
+
### 6. Pre-Commit Checklist
|
|
41
49
|
|
|
42
50
|
> ⚠️ **Before committing, verify:**
|
|
43
51
|
|
|
@@ -45,6 +53,20 @@ Share full spec.md content with user and wait for **explicit approval (OK)**
|
|
|
45
53
|
- [ ] Issue number in tasks.md (`- **Issue**: #{issue}`)
|
|
46
54
|
- [ ] Branch name in tasks.md (`feat/{issue-number}-{feature-name}`)
|
|
47
55
|
|
|
56
|
+
### 7. Commit Documents
|
|
57
|
+
|
|
58
|
+
> 🚨 **User Approval Required**
|
|
59
|
+
|
|
60
|
+
After spec/plan/tasks approval, commit the **entire Feature folder**:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
git add docs/features/{be|fe}/F{number}-{feature-name}/
|
|
64
|
+
git commit -m "docs(#{issue}): F{number} planning complete"
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
> 📁 **Included files**: spec.md, plan.md, tasks.md, decisions.md (include even if empty)
|
|
68
|
+
> ⚠️ **Standalone mode**: Switch to Docs repo before committing.
|
|
69
|
+
|
|
48
70
|
---
|
|
49
71
|
|
|
50
72
|
## Reference Documents
|
|
@@ -27,21 +27,21 @@ Guide for creating Pull Requests.
|
|
|
27
27
|
|
|
28
28
|
### 2. Test Verification
|
|
29
29
|
|
|
30
|
-
> 🚨 **
|
|
30
|
+
> 🚨 **PR cannot be created if tests fail**
|
|
31
31
|
|
|
32
|
-
1. Run
|
|
32
|
+
1. Run relevant test commands (e.g., `npm test`, `pnpm test`); if no tests exist, request them from the user
|
|
33
33
|
2. Check results (PASS/FAIL)
|
|
34
|
-
3. Record **execution results** in
|
|
35
|
-
4.
|
|
34
|
+
3. Record **execution results** in the "Tests" section of PR body
|
|
35
|
+
4. All checkboxes must be checked
|
|
36
36
|
|
|
37
37
|
### 3. Request User Approval
|
|
38
38
|
|
|
39
39
|
> 🚨 **User Approval Required**
|
|
40
40
|
|
|
41
|
-
Before creating PR, share and wait for approval
|
|
41
|
+
Before creating PR, share the following **in a code block** and wait for **explicit approval (OK)**:
|
|
42
42
|
|
|
43
43
|
- Title
|
|
44
|
-
-
|
|
44
|
+
- Full body (`pr-template.md` format)
|
|
45
45
|
- Labels
|
|
46
46
|
|
|
47
47
|
### 4. Create PR
|
|
@@ -20,25 +20,33 @@ Share execution plan with user before starting and wait for approval
|
|
|
20
20
|
|
|
21
21
|
### 3. Update Status
|
|
22
22
|
|
|
23
|
-
| Timing
|
|
24
|
-
|
|
|
25
|
-
| On start
|
|
26
|
-
|
|
|
23
|
+
| Timing | Status Transition |
|
|
24
|
+
| ------------------- | -------------------- |
|
|
25
|
+
| On start | `[TODO]` → `[DOING]` |
|
|
26
|
+
| After user approval | `[DOING]` → `[DONE]` |
|
|
27
|
+
|
|
28
|
+
> ⚠️ Even after work is complete, **stay in `[DOING]` until user approval**
|
|
27
29
|
|
|
28
30
|
Record date (YYYY-MM-DD) with each status change
|
|
29
31
|
|
|
30
|
-
### 4. Commit After Task Completion
|
|
32
|
+
### 4. Commit After Task Completion (Docs Sync)
|
|
31
33
|
|
|
32
34
|
> 🚨 **User Approval Required**
|
|
33
35
|
|
|
34
36
|
Before committing, share and wait for approval:
|
|
35
37
|
|
|
36
|
-
- Commit message
|
|
38
|
+
- Commit message (Applicable repositories)
|
|
37
39
|
- Files to be included
|
|
38
40
|
|
|
39
41
|
```bash
|
|
42
|
+
# 1. Project Commit (If code changed)
|
|
43
|
+
git add .
|
|
44
|
+
git commit -m "{type}(#{issue}): {task description}"
|
|
45
|
+
|
|
46
|
+
# 2. Docs Commit (If docs changed)
|
|
47
|
+
# For Standalone mode, move to docs repo
|
|
40
48
|
git add .
|
|
41
|
-
git commit -m "
|
|
49
|
+
git commit -m "docs(#{issue}): {task description} update docs"
|
|
42
50
|
```
|
|
43
51
|
|
|
44
52
|
---
|
|
@@ -59,11 +59,16 @@ Operating rules for AI code assistants to perform consistent code generation and
|
|
|
59
59
|
docs/
|
|
60
60
|
├── README.md # Documentation guide
|
|
61
61
|
├── agents/ # Agent operating rules
|
|
62
|
-
│ ├── agents.md
|
|
63
|
-
│ ├── constitution.md
|
|
64
|
-
│ ├── git-workflow.md
|
|
62
|
+
│ ├── agents.md # Main rules (this file)
|
|
63
|
+
│ ├── constitution.md # Project principles
|
|
64
|
+
│ ├── git-workflow.md # Git automation
|
|
65
65
|
│ ├── issue-template.md
|
|
66
|
-
│
|
|
66
|
+
│ ├── pr-template.md
|
|
67
|
+
│ └── skills/ # Step-by-step guides
|
|
68
|
+
│ ├── create-feature.md
|
|
69
|
+
│ ├── create-issue.md
|
|
70
|
+
│ ├── create-pr.md
|
|
71
|
+
│ └── execute-task.md
|
|
67
72
|
├── prd/ # Product requirements
|
|
68
73
|
├── features/ # Feature documentation
|
|
69
74
|
│ ├── be/ # Backend Features
|
|
@@ -52,18 +52,23 @@ Operating rules for AI code assistants to perform consistent code generation and
|
|
|
52
52
|
|
|
53
53
|
```
|
|
54
54
|
docs/
|
|
55
|
-
├── README.md
|
|
56
|
-
├── agents/
|
|
57
|
-
│ ├── agents.md
|
|
58
|
-
│ ├── constitution.md
|
|
59
|
-
│ ├── git-workflow.md
|
|
55
|
+
├── README.md # Documentation guide
|
|
56
|
+
├── agents/ # Agent operating rules
|
|
57
|
+
│ ├── agents.md # Main rules (this file)
|
|
58
|
+
│ ├── constitution.md # Project principles
|
|
59
|
+
│ ├── git-workflow.md # Git automation
|
|
60
60
|
│ ├── issue-template.md
|
|
61
|
-
│
|
|
62
|
-
|
|
63
|
-
├──
|
|
64
|
-
│
|
|
61
|
+
│ ├── pr-template.md
|
|
62
|
+
│ └── skills/ # Step-by-step guides
|
|
63
|
+
│ ├── create-feature.md
|
|
64
|
+
│ ├── create-issue.md
|
|
65
|
+
│ ├── create-pr.md
|
|
66
|
+
│ └── execute-task.md
|
|
67
|
+
├── prd/ # Product requirements
|
|
68
|
+
├── features/ # Feature documentation
|
|
69
|
+
│ ├── feature-base/ # Template
|
|
65
70
|
│ └── F00X-{name}/
|
|
66
|
-
└── scripts/
|
|
71
|
+
└── scripts/ # Utilities
|
|
67
72
|
```
|
|
68
73
|
|
|
69
74
|
---
|
|
@@ -85,21 +85,29 @@ main
|
|
|
85
85
|
git checkout -b feat/{issue-number}-{feature-name}
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
-
### 문서 커밋
|
|
88
|
+
### 문서 커밋 규칙 (Continuous Sync)
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
| -------------------------------------- | ---------------------------------- | ---------------------------------------------- |
|
|
92
|
-
| 계획 완료 시 (spec+plan+tasks 승인 후) | `F{번호}-{기능명}/` 폴더 전체 | `docs(#{이슈번호}): F{번호} spec, plan, tasks` |
|
|
93
|
-
| Feature 완료 시 (모든 태스크 완료 후) | `F{번호}-{기능명}/` 폴더 변경 사항 | `docs(#{이슈번호}): F{번호} Feature 완료` |
|
|
90
|
+
> 🔄 **Project 코드 변경 시 Docs 동기화는 필수입니다.**
|
|
94
91
|
|
|
95
|
-
|
|
92
|
+
| 상황 | 규칙 |
|
|
93
|
+
| ----------------------- | -------------------------------------------------------- |
|
|
94
|
+
| **Project + Docs 변경** | 프로젝트 커밋 시 Docs도 **반드시 함께 커밋** (Sync 유지) |
|
|
95
|
+
| **Docs만 변경** | `custom.md` 수정 등 문서만 변경된 경우 **Docs만 커밋** |
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
#### Standalone 모드 커밋 가이드
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
1. **Project 커밋** (코드 변경사항이 있는 경우)
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
git commit -m "feat(#123): 기능 구현"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
2. **Docs 커밋** (문서 변경사항이 있는 경우 - **Docs 레포에서 실행**)
|
|
106
|
+
```bash
|
|
107
|
+
git commit -m "docs(#123): 기능 구현 문서 업데이트"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
> 💡 **Core Rule**: 태스크 완료 시점에는 **변경된 모든 레포지토리**가 커밋되어야 합니다.
|
|
103
111
|
|
|
104
112
|
---
|
|
105
113
|
|
|
@@ -42,8 +42,8 @@ GitHub Issue에서 링크는 **파일 위치에 따라** 다르게 작성:
|
|
|
42
42
|
> 형식: `- **{레이블}**: \`{경로}\``
|
|
43
43
|
|
|
44
44
|
```markdown
|
|
45
|
-
- **Spec**: `{
|
|
46
|
-
- **Tasks**: `{
|
|
45
|
+
- **Spec**: `docs/features/{be|fe}/F001-feature-name/spec.md`
|
|
46
|
+
- **Tasks**: `docs/features/{be|fe}/F001-feature-name/tasks.md`
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
> ⚠️ 로컬 문서는 GitHub에서 클릭되지 않으므로, 마크다운 링크 대신 **볼드 레이블 + 코드블록 경로** 형식을 사용합니다.
|
|
@@ -69,7 +69,7 @@ GitHub Issue에서 링크는 **파일 위치에 따라** 다르게 작성:
|
|
|
69
69
|
|
|
70
70
|
## 관련 문서
|
|
71
71
|
|
|
72
|
-
- **Spec**: `{
|
|
72
|
+
- **Spec**: `docs/features/{be|fe}/F{번호}-{기능명}/spec.md`
|
|
73
73
|
|
|
74
74
|
## 라벨
|
|
75
75
|
|
|
@@ -56,8 +56,8 @@ PR 본문에서 레포 내 파일 링크는 **반드시 현재 브랜치명을
|
|
|
56
56
|
|
|
57
57
|
## 관련 문서
|
|
58
58
|
|
|
59
|
-
- **Spec**: `{
|
|
60
|
-
- **Tasks**: `{
|
|
59
|
+
- **Spec**: `docs/features/{be|fe}/F{번호}-{기능명}/spec.md`
|
|
60
|
+
- **Tasks**: `docs/features/{be|fe}/F{번호}-{기능명}/tasks.md`
|
|
61
61
|
|
|
62
62
|
Closes #{이슈번호}
|
|
63
63
|
```
|
|
@@ -80,11 +80,27 @@ gh pr create \
|
|
|
80
80
|
|
|
81
81
|
## 머지 규칙
|
|
82
82
|
|
|
83
|
-
| 상황 | 머지 방식
|
|
84
|
-
| ------------ |
|
|
85
|
-
| 일반 Feature | Squash and Merge
|
|
86
|
-
| 긴급 Hotfix |
|
|
87
|
-
| 문서 수정 | Squash and Merge
|
|
83
|
+
| 상황 | 머지 방식 |
|
|
84
|
+
| ------------ | ---------------- |
|
|
85
|
+
| 일반 Feature | Squash and Merge |
|
|
86
|
+
| 긴급 Hotfix | Squash and Merge |
|
|
87
|
+
| 문서 수정 | Squash and Merge |
|
|
88
|
+
|
|
89
|
+
### 머지 실행
|
|
90
|
+
|
|
91
|
+
모든 리뷰 해결 시:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
# 머지 전 main 최신화
|
|
95
|
+
git checkout main
|
|
96
|
+
git pull
|
|
97
|
+
|
|
98
|
+
# Squash and Merge
|
|
99
|
+
gh pr merge --squash --delete-branch
|
|
100
|
+
|
|
101
|
+
# 머지 후 main 최신화
|
|
102
|
+
git pull
|
|
103
|
+
```
|
|
88
104
|
|
|
89
105
|
---
|
|
90
106
|
|
|
@@ -37,7 +37,15 @@ spec.md 전문을 사용자에게 공유하고 **명시적 승인(OK)** 대기
|
|
|
37
37
|
|
|
38
38
|
→ `skills/create-issue.md` 참조
|
|
39
39
|
|
|
40
|
-
### 5.
|
|
40
|
+
### 5. 브랜치 생성
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
git checkout -b feat/{이슈번호}-{기능명}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
> ⚠️ **main 브랜치에서 작업하지 마세요.** Issue 생성 후 반드시 브랜치를 생성합니다.
|
|
47
|
+
|
|
48
|
+
### 6. 문서 커밋 전 확인
|
|
41
49
|
|
|
42
50
|
> ⚠️ **커밋 전 체크리스트**
|
|
43
51
|
|
|
@@ -45,6 +53,20 @@ spec.md 전문을 사용자에게 공유하고 **명시적 승인(OK)** 대기
|
|
|
45
53
|
- [ ] tasks.md에 이슈번호 반영 (`- **Issue**: #{이슈번호}`)
|
|
46
54
|
- [ ] tasks.md에 브랜치명 반영 (`feat/{이슈번호}-{기능명}`)
|
|
47
55
|
|
|
56
|
+
### 7. 문서 커밋
|
|
57
|
+
|
|
58
|
+
> 🚨 **사용자 확인 필수**
|
|
59
|
+
|
|
60
|
+
spec/plan/tasks 승인 후 **Feature 폴더 전체**를 커밋:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
git add docs/features/{be|fe}/F{번호}-{기능명}/
|
|
64
|
+
git commit -m "docs(#{이슈번호}): F{번호} 계획 완료"
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
> 📁 **포함 파일**: spec.md, plan.md, tasks.md, decisions.md (비어있어도 포함)
|
|
68
|
+
> ⚠️ **Standalone 모드**: Docs 레포로 이동 후 커밋하세요.
|
|
69
|
+
|
|
48
70
|
---
|
|
49
71
|
|
|
50
72
|
## 참조 문서
|
|
@@ -29,19 +29,19 @@ Pull Request를 생성할 때 따르는 가이드입니다.
|
|
|
29
29
|
|
|
30
30
|
> 🚨 **테스트 미통과 시 PR 생성 불가**
|
|
31
31
|
|
|
32
|
-
1.
|
|
32
|
+
1. 작업과 관련된 테스트 명령어 실행 (예: `npm test`, `pnpm test`), 테스트가 없는 경우 사용자에게 요청
|
|
33
33
|
2. 결과 확인 (PASS/FAIL)
|
|
34
34
|
3. PR 본문 "테스트" 섹션에 **실행 결과** 기록
|
|
35
|
-
4.
|
|
35
|
+
4. 모든 체크박스가 체크되어야 함
|
|
36
36
|
|
|
37
37
|
### 3. 사용자 확인 요청
|
|
38
38
|
|
|
39
39
|
> 🚨 **사용자 확인 필수**
|
|
40
40
|
|
|
41
|
-
PR 생성 전 다음 내용을 공유하고 승인 대기:
|
|
41
|
+
PR 생성 전 다음 내용을 **코드블록으로** 사용자에게 공유하고 **명시적 승인(OK)** 대기:
|
|
42
42
|
|
|
43
43
|
- 제목
|
|
44
|
-
- 본문 (
|
|
44
|
+
- 본문 전체 (`pr-template.md` 형식)
|
|
45
45
|
- 라벨
|
|
46
46
|
|
|
47
47
|
### 4. PR 생성
|
|
@@ -20,25 +20,33 @@ tasks.md의 태스크를 실행할 때 따르는 가이드입니다.
|
|
|
20
20
|
|
|
21
21
|
### 3. 상태 전환
|
|
22
22
|
|
|
23
|
-
| 시점
|
|
24
|
-
|
|
|
25
|
-
| 시작 시
|
|
26
|
-
|
|
|
23
|
+
| 시점 | 상태 전환 |
|
|
24
|
+
| -------------- | -------------------- |
|
|
25
|
+
| 시작 시 | `[TODO]` → `[DOING]` |
|
|
26
|
+
| 사용자 승인 후 | `[DOING]` → `[DONE]` |
|
|
27
|
+
|
|
28
|
+
> ⚠️ 작업이 완료되어도 **사용자 승인 전까지는 `[DOING]` 상태 유지**
|
|
27
29
|
|
|
28
30
|
상태 전환 시 날짜도 함께 기록 (YYYY-MM-DD)
|
|
29
31
|
|
|
30
|
-
### 4. 태스크 완료 후 커밋
|
|
32
|
+
### 4. 태스크 완료 후 커밋 (Docs Sync)
|
|
31
33
|
|
|
32
34
|
> 🚨 **사용자 확인 필수**
|
|
33
35
|
|
|
34
36
|
커밋 생성 전 다음 내용을 공유하고 승인 대기:
|
|
35
37
|
|
|
36
|
-
- 커밋 메시지
|
|
38
|
+
- 커밋 메시지 (해당되는 레포지토리)
|
|
37
39
|
- 포함될 파일 목록
|
|
38
40
|
|
|
39
41
|
```bash
|
|
42
|
+
# 1. Project 커밋 (코드 변경사항이 있는 경우)
|
|
40
43
|
git add .
|
|
41
44
|
git commit -m "{type}(#{이슈번호}): {태스크 설명}"
|
|
45
|
+
|
|
46
|
+
# 2. Docs 커밋 (Docs 변경사항이 있는 경우)
|
|
47
|
+
# Standalone 모드인 경우 Docs 레포로 이동하여 실행
|
|
48
|
+
git add .
|
|
49
|
+
git commit -m "docs(#{이슈번호}): {태스크 설명} 문서 업데이트"
|
|
42
50
|
```
|
|
43
51
|
|
|
44
52
|
---
|
|
@@ -63,7 +63,12 @@ docs/
|
|
|
63
63
|
│ ├── constitution.md # 프로젝트 원칙
|
|
64
64
|
│ ├── git-workflow.md # Git 자동화
|
|
65
65
|
│ ├── issue-template.md
|
|
66
|
-
│
|
|
66
|
+
│ ├── pr-template.md
|
|
67
|
+
│ └── skills/ # 단계별 가이드
|
|
68
|
+
│ ├── create-feature.md
|
|
69
|
+
│ ├── create-issue.md
|
|
70
|
+
│ ├── create-pr.md
|
|
71
|
+
│ └── execute-task.md
|
|
67
72
|
├── prd/ # 제품 요구사항
|
|
68
73
|
├── features/ # 기능별 문서
|
|
69
74
|
│ ├── be/ # Backend Features
|
|
@@ -58,19 +58,18 @@
|
|
|
58
58
|
docs/
|
|
59
59
|
├── README.md # 문서 안내
|
|
60
60
|
├── agents/ # 에이전트 운영 규칙
|
|
61
|
-
│ ├── agents.md
|
|
62
|
-
│ ├── constitution.md
|
|
63
|
-
│ ├── git-workflow.md
|
|
61
|
+
│ ├── agents.md # 메인 규칙 (이 파일)
|
|
62
|
+
│ ├── constitution.md # 프로젝트 원칙
|
|
63
|
+
│ ├── git-workflow.md # Git 자동화
|
|
64
64
|
│ ├── issue-template.md
|
|
65
65
|
│ ├── pr-template.md
|
|
66
|
-
│ └── skills/ #
|
|
66
|
+
│ └── skills/ # 단계별 가이드
|
|
67
67
|
│ ├── create-feature.md
|
|
68
68
|
│ ├── create-issue.md
|
|
69
69
|
│ ├── create-pr.md
|
|
70
70
|
│ └── execute-task.md
|
|
71
71
|
├── prd/ # 제품 요구사항
|
|
72
72
|
├── features/ # 기능별 문서
|
|
73
|
-
│ ├── feature-base/ # 템플릿
|
|
74
73
|
│ └── F00X-{name}/ # 개별 기능
|
|
75
74
|
└── scripts/ # 유틸리티
|
|
76
75
|
```
|