lee-spec-kit 0.1.8 → 0.2.1

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 (34) hide show
  1. package/dist/index.js +285 -57
  2. package/package.json +1 -1
  3. package/templates/en/{fullstack → common}/agents/git-workflow.md +39 -29
  4. package/templates/en/{single → common}/agents/issue-template.md +10 -5
  5. package/templates/en/{single → common}/agents/pr-template.md +9 -2
  6. package/templates/en/common/agents/skills/create-feature.md +53 -0
  7. package/templates/en/common/agents/skills/create-issue.md +52 -0
  8. package/templates/en/common/agents/skills/create-pr.md +97 -0
  9. package/templates/en/common/agents/skills/execute-task.md +86 -0
  10. package/templates/en/fullstack/agents/agents.md +11 -26
  11. package/templates/en/single/agents/agents.md +8 -21
  12. package/templates/ko/{fullstack → common}/agents/git-workflow.md +31 -66
  13. package/templates/ko/{fullstack → common}/agents/issue-template.md +10 -5
  14. package/templates/ko/{fullstack → common}/agents/pr-template.md +9 -2
  15. package/templates/ko/common/agents/skills/create-feature.md +53 -0
  16. package/templates/ko/common/agents/skills/create-issue.md +52 -0
  17. package/templates/ko/common/agents/skills/create-pr.md +97 -0
  18. package/templates/ko/common/agents/skills/execute-task.md +86 -0
  19. package/templates/ko/fullstack/agents/agents.md +11 -33
  20. package/templates/ko/single/agents/agents.md +13 -21
  21. package/templates/en/fullstack/agents/constitution.md +0 -80
  22. package/templates/en/fullstack/agents/issue-template.md +0 -110
  23. package/templates/en/fullstack/agents/pr-template.md +0 -96
  24. package/templates/en/single/agents/custom.md +0 -29
  25. package/templates/en/single/agents/git-workflow.md +0 -170
  26. package/templates/ko/single/agents/constitution.md +0 -80
  27. package/templates/ko/single/agents/custom.md +0 -29
  28. package/templates/ko/single/agents/git-workflow.md +0 -170
  29. package/templates/ko/single/agents/issue-template.md +0 -114
  30. package/templates/ko/single/agents/pr-template.md +0 -110
  31. /package/templates/en/{single → common}/agents/constitution.md +0 -0
  32. /package/templates/en/{fullstack → common}/agents/custom.md +0 -0
  33. /package/templates/ko/{fullstack → common}/agents/constitution.md +0 -0
  34. /package/templates/ko/{fullstack → common}/agents/custom.md +0 -0
@@ -36,12 +36,17 @@ 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. **External/local documents** (no URL available): Use **relative path as text only**
40
- ```text
41
- ../docs/features/F001-feature-name/spec.md
39
+ 3. **Local documents** (no URL available): **Path from project root**
40
+
41
+ > 📁 Local documents use paths **from project root**.
42
+ > Format: `- **{Label}**: \`{path}\``
43
+
44
+ ```markdown
45
+ - **Spec**: `{{featurePath}}/F001-feature-name/spec.md`
46
+ - **Tasks**: `{{featurePath}}/F001-feature-name/tasks.md`
42
47
  ```
43
48
 
44
- > ⚠️ Local documents are not clickable on GitHub, so provide path text only.
49
+ > ⚠️ Local documents are not clickable on GitHub, so use **bold label + code block path** format instead of markdown links.
45
50
 
46
51
  ---
47
52
 
@@ -64,7 +69,7 @@ In GitHub Issues, use different link formats **based on file location**:
64
69
 
65
70
  ## Related Documents
66
71
 
67
- - Spec: `docs/features/F{number}-{feature-name}/spec.md`
72
+ - **Spec**: `{{featurePath}}/F{number}-{feature-name}/spec.md`
68
73
 
69
74
  ## Labels
70
75
 
@@ -42,17 +42,24 @@ For file links within the repo in PR body, **always use current branch name**:
42
42
 
43
43
  ## Tests
44
44
 
45
+ > ⚠️ **Check only after running tests. Do NOT check items that were not executed.**
46
+
45
47
  - [ ] Unit tests passed
46
48
  - [ ] Integration tests completed
47
49
 
50
+ ### Execution Results
51
+
52
+ - Command: `{test command executed}`
53
+ - Result: `{PASS/FAIL summary}`
54
+
48
55
  ## Screenshots (for UI changes)
49
56
 
50
57
  {Attach if applicable}
51
58
 
52
59
  ## Related Documents
53
60
 
54
- - Spec: `docs/features/F{number}-{feature-name}/spec.md`
55
- - Tasks: `docs/features/F{number}-{feature-name}/tasks.md`
61
+ - **Spec**: `{{featurePath}}/F{number}-{feature-name}/spec.md`
62
+ - **Tasks**: `{{featurePath}}/F{number}-{feature-name}/tasks.md`
56
63
 
57
64
  Closes #{issue-number}
58
65
  ```
@@ -0,0 +1,53 @@
1
+ # New Feature Creation Process
2
+
3
+ Step-by-step guide for adding a new Feature.
4
+
5
+ ---
6
+
7
+ ## Steps
8
+
9
+ ### 1. Create Feature Folder
10
+
11
+ ```bash
12
+ npx lee-spec-kit feature <name> -d "<description>"
13
+ ```
14
+
15
+ - `<name>`: Feature name (lowercase, hyphens allowed)
16
+ - `-d`: Feature description (auto-filled in spec.md)
17
+
18
+ **Example:**
19
+
20
+ ```bash
21
+ npx lee-spec-kit feature user-auth -d "User authentication and session management"
22
+ ```
23
+
24
+ ### 2. Write spec.md
25
+
26
+ - **What**: Clearly describe what the feature does
27
+ - **Why**: Explain why this feature is needed
28
+ - ❌ Do NOT include tech stack (covered in plan.md)
29
+
30
+ ### 3. Request User Approval
31
+
32
+ > 🚨 **User Approval Required**
33
+
34
+ Share full spec.md content with user and wait for **explicit approval (OK)**
35
+
36
+ ### 4. Create GitHub Issue
37
+
38
+ → See `skills/create-issue.md`
39
+
40
+ ### 5. Pre-Commit Checklist
41
+
42
+ > ⚠️ **Before committing, verify:**
43
+
44
+ - [ ] Issue number in spec.md (`- **Issue Number**: #{issue}`)
45
+ - [ ] Issue number in tasks.md (`- **Issue**: #{issue}`)
46
+ - [ ] Branch name in tasks.md (`feat/{issue-number}-{feature-name}`)
47
+
48
+ ---
49
+
50
+ ## Reference Documents
51
+
52
+ - **Feature Template**: `features/feature-base/`
53
+ - **Issue Creation Guide**: `skills/create-issue.md`
@@ -0,0 +1,52 @@
1
+ # GitHub Issue Creation Process
2
+
3
+ Guide for creating GitHub Issues.
4
+
5
+ ---
6
+
7
+ ## Prerequisites
8
+
9
+ - [ ] `spec.md` completed
10
+ - [ ] User approval received
11
+
12
+ ---
13
+
14
+ ## Steps
15
+
16
+ ### 1. Prepare Issue Content
17
+
18
+ > 📖 **Always refer to `issue-template.md`**
19
+
20
+ | Item | Format |
21
+ | -------- | ------------------------------------------- |
22
+ | Title | `F{number}: {feature-name} ({description})` |
23
+ | Body | Overview, Goals, Criteria, Related docs |
24
+ | Labels | `enhancement`, `bug`, `documentation`, etc. |
25
+ | Assignee | `@me` (default) |
26
+
27
+ ### 2. Request User Approval
28
+
29
+ > 🚨 **User Approval Required**
30
+
31
+ Before creating issue, share and wait for approval:
32
+
33
+ - Title
34
+ - Body
35
+ - Labels
36
+
37
+ ### 3. Create Issue
38
+
39
+ ```bash
40
+ gh issue create \
41
+ --title "F{number}: {feature-name} ({description})" \
42
+ --body-file /tmp/issue-body.md \
43
+ --assignee @me \
44
+ --label enhancement
45
+ ```
46
+
47
+ ---
48
+
49
+ ## Reference Documents
50
+
51
+ - **Issue Template**: `issue-template.md`
52
+ - **Link Format Rules**: `issue-template.md` > "Link Format" section
@@ -0,0 +1,97 @@
1
+ # Pull Request Creation Process
2
+
3
+ Guide for creating Pull Requests.
4
+
5
+ ---
6
+
7
+ ## Prerequisites
8
+
9
+ - [ ] All tasks in `[DONE]` state
10
+ - [ ] Changes committed
11
+ - [ ] Branch pushed
12
+
13
+ ---
14
+
15
+ ## Steps
16
+
17
+ ### 1. Prepare PR Content
18
+
19
+ > 📖 **Always refer to `pr-template.md`**
20
+
21
+ | Item | Format |
22
+ | -------- | ---------------------------------- |
23
+ | Title | `feat(#{issue-number}): {feature}` |
24
+ | Body | Overview, Changes, Tests, Docs |
25
+ | Labels | Appropriate labels |
26
+ | Assignee | `@me` (default) |
27
+
28
+ ### 2. Test Verification
29
+
30
+ > 🚨 **Cannot create PR if tests fail**
31
+
32
+ 1. Run related test commands (e.g., `npm test`, `pnpm test`)
33
+ 2. Check results (PASS/FAIL)
34
+ 3. Record **execution results** in PR body "Tests" section
35
+ 4. Check boxes **only for items that actually passed**
36
+
37
+ ### 3. Request User Approval
38
+
39
+ > 🚨 **User Approval Required**
40
+
41
+ Before creating PR, share and wait for approval:
42
+
43
+ - Title
44
+ - Body (including test results)
45
+ - Labels
46
+
47
+ ### 4. Create PR
48
+
49
+ ```bash
50
+ gh pr create \
51
+ --title "feat(#{issue-number}): {feature}" \
52
+ --body-file /tmp/pr-body.md \
53
+ --assignee @me \
54
+ --base main
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Important Notes
60
+
61
+ ### Link Format
62
+
63
+ Use **current branch name** for file links in PR body:
64
+
65
+ ```markdown
66
+ [filename](https://github.com/{owner}/{repo}/blob/{branch-name}/path/to/file)
67
+ ```
68
+
69
+ > ⚠️ `main` branch links will return 404 until merged!
70
+
71
+ ---
72
+
73
+ ## Code Review Modification Guidelines
74
+
75
+ > 📋 **Criteria for deciding whether to add a task when modifications are needed from review feedback**
76
+
77
+ ### No task needed (Minor changes)
78
+
79
+ - Typo/code style fixes
80
+ - Variable/function name changes
81
+ - Comment additions/modifications
82
+ - Lint error fixes
83
+
84
+ ### Task needed (Major changes)
85
+
86
+ - Logic/algorithm changes
87
+ - New file/function additions
88
+ - API signature changes
89
+ - Test case additions
90
+ - Requires changes to spec.md or plan.md
91
+
92
+ ---
93
+
94
+ ## Reference Documents
95
+
96
+ - **PR Template**: `pr-template.md`
97
+ - **Git Workflow**: `git-workflow.md`
@@ -0,0 +1,86 @@
1
+ # Task Execution Process
2
+
3
+ Guide for executing tasks from tasks.md.
4
+
5
+ ---
6
+
7
+ ## Steps
8
+
9
+ ### 1. Check Task
10
+
11
+ - Find next task in `tasks.md`
12
+ - Select task with `[TODO]` status
13
+ - ⚠️ **Verify current branch matches Feature branch** (`feat/{issue-number}-{feature-name}`)
14
+
15
+ ### 2. Share Execution Plan
16
+
17
+ > 🚨 **User Approval Required**
18
+
19
+ Share execution plan with user before starting and wait for approval
20
+
21
+ ### 3. Update Status
22
+
23
+ | Timing | Status Transition |
24
+ | ----------- | -------------------- |
25
+ | On start | `[TODO]` → `[DOING]` |
26
+ | On complete | `[DOING]` → `[DONE]` |
27
+
28
+ Record date (YYYY-MM-DD) with each status change
29
+
30
+ ### 4. Commit After Task Completion
31
+
32
+ > 🚨 **User Approval Required**
33
+
34
+ Before committing, share and wait for approval:
35
+
36
+ - Commit message
37
+ - Files to be included
38
+
39
+ ```bash
40
+ git add .
41
+ git commit -m "{type}(#{issue-number}): {task description}"
42
+ ```
43
+
44
+ ---
45
+
46
+ ## Handling Requests Outside tasks.md
47
+
48
+ When user requests work not in tasks.md:
49
+
50
+ 1. Ask if it should be added to tasks.md
51
+ 2. If approved: Add to tasks.md then execute
52
+ 3. If declined: Proceed as temporary work (still included in commit)
53
+
54
+ ---
55
+
56
+ ## 🚨 Never Modify Completed Tasks
57
+
58
+ > ⚠️ **Tasks in `[DONE]` status must NEVER be modified.**
59
+
60
+ ### Principle
61
+
62
+ - Completed tasks are preserved for **history/record purposes**
63
+ - If modifications are needed, **add a new task**
64
+
65
+ ### When Modifications Are Needed
66
+
67
+ 1. Keep the existing task as-is
68
+ 2. Add new task: `T{next-number}: {modification description}`
69
+ 3. Perform changes in the new task
70
+
71
+ **Example:**
72
+
73
+ ```markdown
74
+ ## Tasks
75
+
76
+ - [DONE] T001: Implement user authentication (2026-01-05)
77
+ - [DONE] T002: Create login page (2026-01-06)
78
+ - [TODO] T003: Fix T002 - Add password validation ← New task for modifications
79
+ ```
80
+
81
+ ---
82
+
83
+ ## Reference Documents
84
+
85
+ - **Git Workflow**: `git-workflow.md`
86
+ - **Commit Convention**: `git-workflow.md` > "Commit Convention" section
@@ -75,35 +75,20 @@ docs/
75
75
 
76
76
  ## Request Type Processes
77
77
 
78
- ### 1. New Feature Request
78
+ > 📖 Refer to `skills/` folder for detailed process guides.
79
79
 
80
- 1. Identify target repo (BE or FE)
81
- 2. Create feature folder: `npx lee-spec-kit feature <name>`
82
- 3. Write `spec.md` - what and why (no tech stack)
83
- 4. Request spec review from user
84
- 5. Create GitHub Issue
80
+ | Process | Guide |
81
+ | -------------- | -------------------------- |
82
+ | New Feature | `skills/create-feature.md` |
83
+ | GitHub Issue | `skills/create-issue.md` |
84
+ | Pull Request | `skills/create-pr.md` |
85
+ | Task Execution | `skills/execute-task.md` |
85
86
 
86
- ### 2. Spec to Plan
87
+ ### Additional Rules (Fullstack)
87
88
 
88
- 1. Verify spec is clear
89
- 2. Write `plan.md` - tech stack, architecture, file structure
90
- 3. **Record key decisions in `decisions.md`** (required)
91
- 4. Decompose into tasks after user approval
92
-
93
- ### 3. Task Execution
94
-
95
- 1. Write tasks in `tasks.md`
96
- 2. Execute after user approval
97
- 3. Transition status: `[TODO]` → `[DOING]` → `[DONE]`
98
- 4. Commit immediately after task completion
99
-
100
- ### 4. Handling Requests Outside Tasks
101
-
102
- > When user requests **work not in tasks.md**:
103
-
104
- 1. Ask user if this should be **added to tasks.md**
105
- 2. If approved: Add to tasks.md then execute
106
- 3. If declined: Proceed as temporary work (still included in commit)
89
+ - **Identify target repo**: Determine BE or FE before feature creation
90
+ - **Write plan.md**: Tech stack and architecture decisions after spec approval
91
+ - **Record in decisions.md**: Document all major technical decisions
107
92
 
108
93
  ---
109
94
 
@@ -70,27 +70,14 @@ docs/
70
70
 
71
71
  ## Request Type Processes
72
72
 
73
- ### 1. New Feature Request
74
-
75
- 1. Create feature folder: `npx lee-spec-kit feature <name>`
76
- 2. Write `spec.md` - what and why
77
- 3. Request spec review
78
- 4. Create GitHub Issue
79
-
80
- ### 2. Task Execution
81
-
82
- 1. Write tasks in `tasks.md`
83
- 2. Execute after approval
84
- 3. Status transition: `[TODO]` → `[DOING]` → `[DONE]`
85
- 4. Commit on task completion
86
-
87
- ### 3. Handling Requests Outside Tasks
88
-
89
- > When user requests **work not in tasks.md**:
90
-
91
- 1. Ask user if this should be **added to tasks.md**
92
- 2. If approved: Add to tasks.md then execute
93
- 3. If declined: Proceed as temporary work (still included in commit)
73
+ > 📖 Refer to `skills/` folder for detailed process guides.
74
+
75
+ | Process | Guide |
76
+ | -------------- | -------------------------- |
77
+ | New Feature | `skills/create-feature.md` |
78
+ | GitHub Issue | `skills/create-issue.md` |
79
+ | Pull Request | `skills/create-pr.md` |
80
+ | Task Execution | `skills/execute-task.md` |
94
81
 
95
82
  ---
96
83
 
@@ -70,89 +70,54 @@ main
70
70
 
71
71
  ## 자동화 워크플로우
72
72
 
73
- ### 1. Feature 시작
73
+ > 📖 단계별 상세 가이드는 `skills/` 폴더를 참조하세요.
74
74
 
75
- ```bash
76
- # 1. GitHub Issue 생성 (Feature = Issue)
77
- # 2. 브랜치 생성
78
- git checkout -b feat/{issue-number}-{feature-name}
79
- ```
80
-
81
- > `gh`로 이슈/PR 생성·수정 시 작성할 제목/본문/라벨을 먼저 공유하고 **반드시** 사용자 확인(OK) 후 진행합니다.
82
-
83
- ### 2. 문서 커밋 (docs 레포)
84
-
85
- > 📌 docs 폴더는 별도 git으로 관리되므로 프로젝트와 분리된 커밋 전략을 사용합니다.
86
-
87
- | # | 커밋 시점 | 포함 문서 | 커밋 메시지 예시 |
88
- | --- | ------------------------------------------ | ----------------------------- | ------------------------------------ |
89
- | 1 | **계획 완료 시** (spec+plan+tasks 승인 후) | spec.md, plan.md, tasks.md | `docs(#123): spec, plan, tasks 작성` |
90
- | 2 | **Feature 완료 시** (모든 태스크 완료 후) | tasks.md (상태), decisions.md | `docs(#123): Feature 완료` |
91
-
92
- > ⚠️ **Feature 폴더 생성 시점**에는 커밋하지 않습니다.
93
-
94
- ### 3. 태스크 완료 시 자동 커밋
95
-
96
- 태스크 하나가 완료되면:
97
-
98
- ```bash
99
- git add .
100
- git commit -m "{type}(#{issue}): {task-description}"
101
- ```
102
-
103
- > `git commit` 실행 전 커밋 메시지와 포함될 파일 목록을 먼저 공유하고 **반드시** 사용자 확인(OK) 후 진행합니다.
75
+ | 워크플로우 | 가이드 |
76
+ | ------------ | -------------------------- |
77
+ | Feature 시작 | `skills/create-feature.md` |
78
+ | Issue 생성 | `skills/create-issue.md` |
79
+ | 태스크 실행 | `skills/execute-task.md` |
80
+ | PR 생성 | `skills/create-pr.md` |
104
81
 
105
- ### 4. Feature 완료 시 PR 생성
106
-
107
- 모든 태스크 완료 시:
82
+ ### 브랜치 생성
108
83
 
109
84
  ```bash
110
- git push origin feat/{issue-number}-{feature-name}
111
- gh pr create --title "feat(#{issue}): {feature-title}" \
112
- --body "Closes #{issue}" \
113
- --base main
85
+ git checkout -b feat/{issue-number}-{feature-name}
114
86
  ```
115
87
 
116
- ### 5. 머지
88
+ ### 문서 커밋 시점 (docs 레포)
117
89
 
118
- 모든 리뷰 해결 시:
90
+ | 커밋 시점 | 포함 내용 | 커밋 메시지 예시 |
91
+ | -------------------------------------- | ---------------------------------- | ---------------------------------------------- |
92
+ | 계획 완료 시 (spec+plan+tasks 승인 후) | `F{번호}-{기능명}/` 폴더 전체 | `docs(#{이슈번호}): F{번호} spec, plan, tasks` |
93
+ | Feature 완료 시 (모든 태스크 완료 후) | `F{번호}-{기능명}/` 폴더 변경 사항 | `docs(#{이슈번호}): F{번호} Feature 완료` |
119
94
 
120
- ```bash
121
- # 머지 전 main 최신화
122
- git checkout main
123
- git pull
95
+ > ⚠️ Feature 폴더 생성 시점에는 커밋하지 않습니다.
124
96
 
125
- # Squash and Merge
126
- gh pr merge --squash --delete-branch
97
+ ### 머지 전략
127
98
 
128
- # 머지 후 main 최신화
129
- git pull
130
- ```
99
+ | 상황 | 머지 방식 |
100
+ | ------------ | ---------------- |
101
+ | 일반 Feature | Squash and Merge |
102
+ | 긴급 Hotfix | Squash and Merge |
131
103
 
132
104
  ---
133
105
 
134
- ## 에이전트 자동화 규칙
106
+ ## Docs Push 규칙
135
107
 
136
- ### 태스크 완료
108
+ > `.lee-spec-kit.json`의 `docsRepo` 설정을 참조합니다.
137
109
 
138
- ```
139
- 1. 코드 변경 완료
140
- 2. tasks.md 상태 [DOING] [DONE] 업데이트 (docs)
141
- 3. git add .
142
- 4. git commit -m "{type}(#{issue}): {description}"
143
- 5. 다음 태스크 진행
144
- ```
110
+ | 설정 | 동작 |
111
+ | -------------------------------------------- | --------------------------------- |
112
+ | `docsRepo: "embedded"` | 프로젝트 push docs도 함께 포함 |
113
+ | `docsRepo: "standalone"` + `pushDocs: false` | docs는 커밋만, push 안 함 |
114
+ | `docsRepo: "standalone"` + `pushDocs: true` | docs 변경 시 별도 push 진행 |
145
115
 
146
- ### Feature 완료
116
+ ### Standalone 모드 주의사항
147
117
 
148
- ```
149
- 1. 모든 태스크 [DONE] 확인
150
- 2. git push origin {branch}
151
- 3. gh pr create
152
- 4. 리뷰 대기
153
- 5. 리뷰 코멘트 수정
154
- 6. gh pr merge --squash
155
- ```
118
+ - `pushDocs: false`인 경우 docs 변경사항은 **로컬에만 커밋**
119
+ - `pushDocs: true`인 경우 docs 변경 후 **별도로 push** 필요
120
+ - 프로젝트 레포와 docs 레포가 분리되어 있으므로 **각각 관리**
156
121
 
157
122
  ---
158
123
 
@@ -36,12 +36,17 @@ GitHub Issue에서 링크는 **파일 위치에 따라** 다르게 작성:
36
36
  [react-i18next](https://react.i18next.com/)
37
37
  ```
38
38
 
39
- 3. **외부/로컬 문서** (docs 레포 등, URL 없음): **상대 경로 텍스트로만 표기**
40
- ```text
41
- ../docs/features/F001-feature-name/spec.md
39
+ 3. **로컬 문서** (docs 레포 등, URL 없음): **프로젝트 루트 기준 경로**
40
+
41
+ > 📁 로컬 문서는 **프로젝트 루트 기준** 경로로 작성합니다.
42
+ > 형식: `- **{레이블}**: \`{경로}\``
43
+
44
+ ```markdown
45
+ - **Spec**: `{{featurePath}}/F001-feature-name/spec.md`
46
+ - **Tasks**: `{{featurePath}}/F001-feature-name/tasks.md`
42
47
  ```
43
48
 
44
- > ⚠️ 로컬 문서는 GitHub에서 클릭되지 않으므로, 링크 대신 경로 텍스트만 제공합니다.
49
+ > ⚠️ 로컬 문서는 GitHub에서 클릭되지 않으므로, 마크다운 링크 대신 **볼드 레이블 + 코드블록 경로** 형식을 사용합니다.
45
50
 
46
51
  ---
47
52
 
@@ -64,7 +69,7 @@ GitHub Issue에서 링크는 **파일 위치에 따라** 다르게 작성:
64
69
 
65
70
  ## 관련 문서
66
71
 
67
- - Spec: `docs/features/{be|fe}/F{번호}-{기능명}/spec.md`
72
+ - **Spec**: `{{featurePath}}/F{번호}-{기능명}/spec.md`
68
73
 
69
74
  ## 라벨
70
75
 
@@ -40,17 +40,24 @@ PR 본문에서 레포 내 파일 링크는 **반드시 현재 브랜치명을
40
40
 
41
41
  ## 테스트
42
42
 
43
+ > ⚠️ **실제 테스트 실행 후 체크하세요. 미실행 항목은 체크하지 마세요.**
44
+
43
45
  - [ ] 유닛 테스트 통과
44
46
  - [ ] 통합 테스트 완료
45
47
 
48
+ ### 실행 결과
49
+
50
+ - 명령어: `{실행한 테스트 명령어}`
51
+ - 결과: `{PASS/FAIL 요약}`
52
+
46
53
  ## 스크린샷 (UI 변경 시)
47
54
 
48
55
  {있으면 첨부}
49
56
 
50
57
  ## 관련 문서
51
58
 
52
- - Spec: `docs/features/{be|fe}/F{번호}-{기능명}/spec.md`
53
- - Tasks: `docs/features/{be|fe}/F{번호}-{기능명}/tasks.md`
59
+ - **Spec**: `{{featurePath}}/F{번호}-{기능명}/spec.md`
60
+ - **Tasks**: `{{featurePath}}/F{번호}-{기능명}/tasks.md`
54
61
 
55
62
  Closes #{이슈번호}
56
63
  ```
@@ -0,0 +1,53 @@
1
+ # 새 기능 추가 프로세스
2
+
3
+ 새 기능(Feature)을 추가할 때 따르는 단계별 가이드입니다.
4
+
5
+ ---
6
+
7
+ ## 단계
8
+
9
+ ### 1. Feature 폴더 생성
10
+
11
+ ```bash
12
+ npx lee-spec-kit feature <name> -d "<설명>"
13
+ ```
14
+
15
+ - `<name>`: 기능 이름 (영문, 하이픈 사용)
16
+ - `-d`: 기능 설명 (spec.md에 자동 반영)
17
+
18
+ **예시:**
19
+
20
+ ```bash
21
+ npx lee-spec-kit feature user-auth -d "사용자 인증 및 세션 관리"
22
+ ```
23
+
24
+ ### 2. spec.md 작성
25
+
26
+ - **무엇을**: 기능이 무엇인지 명확히 기술
27
+ - **왜**: 이 기능이 필요한 이유
28
+ - ❌ 기술 스택은 작성하지 않음 (plan.md에서 다룸)
29
+
30
+ ### 3. 사용자 확인 요청
31
+
32
+ > 🚨 **사용자 확인 필수**
33
+
34
+ spec.md 전문을 사용자에게 공유하고 **명시적 승인(OK)** 대기
35
+
36
+ ### 4. GitHub Issue 생성
37
+
38
+ → `skills/create-issue.md` 참조
39
+
40
+ ### 5. 문서 커밋 전 확인
41
+
42
+ > ⚠️ **커밋 전 체크리스트**
43
+
44
+ - [ ] spec.md에 이슈번호 반영 (`- **이슈 번호**: #{이슈번호}`)
45
+ - [ ] tasks.md에 이슈번호 반영 (`- **Issue**: #{이슈번호}`)
46
+ - [ ] tasks.md에 브랜치명 반영 (`feat/{이슈번호}-{기능명}`)
47
+
48
+ ---
49
+
50
+ ## 참조 문서
51
+
52
+ - **Feature 템플릿**: `features/feature-base/`
53
+ - **Issue 생성 가이드**: `skills/create-issue.md`