lee-spec-kit 0.2.4 → 0.3.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.
- package/LICENSE +1 -1
- package/README.md +248 -20
- package/dist/index.js +1097 -134
- package/package.json +9 -10
- package/templates/en/common/agents/skills/create-feature.md +41 -47
- package/templates/en/common/agents/skills/create-pr.md +1 -0
- package/templates/en/common/agents/skills/execute-task.md +22 -74
- package/templates/en/common/designs/README.md +29 -0
- package/templates/en/common/ideas/README.md +30 -0
- package/templates/en/fullstack/README.md +45 -0
- package/templates/en/fullstack/agents/agents.md +4 -0
- package/templates/en/fullstack/features/feature-base/tasks.md +9 -2
- package/templates/en/single/README.md +45 -0
- package/templates/en/single/agents/agents.md +4 -0
- package/templates/en/single/features/feature-base/tasks.md +9 -2
- package/templates/ko/common/agents/skills/create-feature.md +42 -47
- package/templates/ko/common/agents/skills/create-pr.md +1 -0
- package/templates/ko/common/agents/skills/execute-task.md +33 -68
- package/templates/ko/common/designs/README.md +29 -0
- package/templates/ko/common/ideas/README.md +30 -0
- package/templates/ko/fullstack/README.md +45 -0
- package/templates/ko/fullstack/agents/agents.md +4 -0
- package/templates/ko/fullstack/features/feature-base/tasks.md +9 -2
- package/templates/ko/single/README.md +45 -0
- package/templates/ko/single/agents/agents.md +4 -0
- package/templates/ko/single/features/feature-base/tasks.md +9 -2
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,20 +1,86 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">
|
|
2
|
+
<strong>lee-spec-kit</strong>
|
|
3
|
+
</h1>
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
<p align="center">
|
|
6
|
+
<strong>AI 에이전트 기반 개발을 위한 프로젝트 문서 구조 생성 CLI</strong>
|
|
7
|
+
</p>
|
|
4
8
|
|
|
5
|
-
|
|
6
|
-
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://www.npmjs.com/package/lee-spec-kit"><img src="https://img.shields.io/npm/v/lee-spec-kit.svg" alt="npm version"></a>
|
|
11
|
+
<img src="https://img.shields.io/badge/node-%3E%3D18-brightgreen" alt="Node.js">
|
|
12
|
+
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
13
|
+
</p>
|
|
7
14
|
|
|
8
|
-
|
|
15
|
+
<p align="center">
|
|
16
|
+
<a href="#quick-start">Quick Start</a> •
|
|
17
|
+
<a href="#주요-기능">주요 기능</a> •
|
|
18
|
+
<a href="#사용법">사용법</a> •
|
|
19
|
+
<a href="#생성되는-구조">생성되는 구조</a>
|
|
20
|
+
</p>
|
|
21
|
+
|
|
22
|
+
<p align="center">
|
|
23
|
+
<a href="./README.en.md">
|
|
24
|
+
<img src="https://img.shields.io/badge/lang-en-red.svg" alt="English">
|
|
25
|
+
</a>
|
|
26
|
+
<a href="./README.md">
|
|
27
|
+
<img src="https://img.shields.io/badge/lang-ko-blue.svg" alt="한국어">
|
|
28
|
+
</a>
|
|
29
|
+
</p>
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 목차
|
|
34
|
+
|
|
35
|
+
- [Quick Start](#quick-start)
|
|
36
|
+
- [주요 기능](#주요-기능)
|
|
37
|
+
- [사용법](#사용법)
|
|
38
|
+
- [설정 파일](#설정-파일)
|
|
39
|
+
- [생성되는 구조](#생성되는-구조)
|
|
40
|
+
- [Feature 워크플로우](#feature-워크플로우)
|
|
41
|
+
- [문제 해결](#문제-해결)
|
|
42
|
+
- [기여하기](#기여하기)
|
|
43
|
+
- [라이선스](#라이선스)
|
|
44
|
+
|
|
45
|
+
## Quick Start
|
|
9
46
|
|
|
10
47
|
```bash
|
|
11
|
-
#
|
|
48
|
+
# 1. 프로젝트 문서 구조 생성
|
|
12
49
|
npx lee-spec-kit init
|
|
13
50
|
|
|
14
|
-
#
|
|
15
|
-
|
|
51
|
+
# 2. 새 기능 생성
|
|
52
|
+
npx lee-spec-kit feature user-auth
|
|
53
|
+
|
|
54
|
+
# 3. 진행 상황 및 다음 단계 확인 (AI 에이전트용)
|
|
55
|
+
npx lee-spec-kit context
|
|
56
|
+
|
|
57
|
+
# 4. 전체 상태 확인
|
|
58
|
+
npx lee-spec-kit status
|
|
16
59
|
```
|
|
17
60
|
|
|
61
|
+
## 주요 기능
|
|
62
|
+
|
|
63
|
+
### 📁 프로젝트 초기화
|
|
64
|
+
|
|
65
|
+
- 대화형 모드 또는 CLI 옵션으로 프로젝트 설정
|
|
66
|
+
- Single(단일 레포) / Fullstack(FE/BE 분리) 프로젝트 타입 지원
|
|
67
|
+
- 한국어/영어 템플릿 선택
|
|
68
|
+
|
|
69
|
+
### 🚀 Feature 생성
|
|
70
|
+
|
|
71
|
+
- spec.md, plan.md, tasks.md, decisions.md 자동 생성
|
|
72
|
+
- Fullstack 프로젝트의 경우 FE/BE 분리 지원
|
|
73
|
+
- GitHub Issue/PR 템플릿 연동
|
|
74
|
+
|
|
75
|
+
### 📊 상태 관리
|
|
76
|
+
|
|
77
|
+
- 전체 Feature 진행 상태 한눈에 확인
|
|
78
|
+
- 터미널 출력 또는 마크다운 파일로 저장
|
|
79
|
+
|
|
80
|
+
### 🔄 자동 업데이트
|
|
81
|
+
|
|
82
|
+
- 최신 버전 체크 및 템플릿 업데이트 지원
|
|
83
|
+
|
|
18
84
|
## 사용법
|
|
19
85
|
|
|
20
86
|
### 프로젝트 초기화
|
|
@@ -48,6 +114,30 @@ npx lee-spec-kit feature --repo be user-auth
|
|
|
48
114
|
npx lee-spec-kit feature --repo fe user-profile
|
|
49
115
|
```
|
|
50
116
|
|
|
117
|
+
### Context 확인 (AI 에이전트 가이드)
|
|
118
|
+
|
|
119
|
+
현재 작업 중인 Feature의 상태와 다음 할 일을 확인합니다. 특히 AI 에이전트가 프로세스를 준수하는 데 유용합니다.
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
# 자동 감지 (Git 브랜치 기준)
|
|
123
|
+
npx lee-spec-kit context
|
|
124
|
+
|
|
125
|
+
# 특정 Feature 지정
|
|
126
|
+
npx lee-spec-kit context user-auth
|
|
127
|
+
|
|
128
|
+
# selector 지원: Feature ID / 폴더명
|
|
129
|
+
npx lee-spec-kit context F001
|
|
130
|
+
npx lee-spec-kit context F001-user-auth
|
|
131
|
+
|
|
132
|
+
# 에이전트용 JSON 출력
|
|
133
|
+
npx lee-spec-kit context --json
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
`--json` 출력에는 다음 액션이 `actions` 배열로 포함됩니다.
|
|
137
|
+
|
|
138
|
+
- `type: "command"`: `scope`(project|docs), `cwd`, `cmd` 제공 (복붙 실행 가능하도록 `git -C` 포함)
|
|
139
|
+
- `type: "instruction"`: 사람이 수행해야 하는 안내 메시지
|
|
140
|
+
|
|
51
141
|
### 상태 확인
|
|
52
142
|
|
|
53
143
|
```bash
|
|
@@ -58,6 +148,93 @@ npx lee-spec-kit status
|
|
|
58
148
|
npx lee-spec-kit status --write
|
|
59
149
|
```
|
|
60
150
|
|
|
151
|
+
### 템플릿 업데이트
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
# 전체 업데이트
|
|
155
|
+
npx lee-spec-kit update
|
|
156
|
+
|
|
157
|
+
# agents/ 폴더만 업데이트
|
|
158
|
+
npx lee-spec-kit update --agents
|
|
159
|
+
|
|
160
|
+
# feature-base/ 폴더만 업데이트
|
|
161
|
+
npx lee-spec-kit update --templates
|
|
162
|
+
|
|
163
|
+
# 확인 없이 강제 덮어쓰기
|
|
164
|
+
npx lee-spec-kit update --force
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## 설정 파일
|
|
168
|
+
|
|
169
|
+
### `.lee-spec-kit.json`
|
|
170
|
+
|
|
171
|
+
`init`을 실행하면 문서 루트(기본: `docs/`)에 `.lee-spec-kit.json`이 생성됩니다.
|
|
172
|
+
|
|
173
|
+
```json
|
|
174
|
+
{
|
|
175
|
+
"projectName": "my-project",
|
|
176
|
+
"projectType": "single",
|
|
177
|
+
"lang": "ko",
|
|
178
|
+
"createdAt": "YYYY-MM-DD",
|
|
179
|
+
"docsRepo": "embedded"
|
|
180
|
+
}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
| 필드 | 설명 |
|
|
184
|
+
| ------------- | --------------------------------------- |
|
|
185
|
+
| `projectName` | 프로젝트 이름 |
|
|
186
|
+
| `projectType` | `single` 또는 `fullstack` |
|
|
187
|
+
| `lang` | `ko` 또는 `en` |
|
|
188
|
+
| `createdAt` | 생성 날짜 |
|
|
189
|
+
| `docsRepo` | `embedded` 또는 `standalone` |
|
|
190
|
+
| `projectRoot` | (standalone만) 프로젝트 레포지토리 경로 |
|
|
191
|
+
|
|
192
|
+
> `docsRepo: "standalone"`을 선택하면 `pushDocs`, `docsRemote`, `projectRoot`가 추가됩니다.
|
|
193
|
+
|
|
194
|
+
> 어디서 실행하든 설정을 찾을 수 있도록, CLI는 현재 디렉토리에서 상위로 올라가며 `.lee-spec-kit.json` 또는 `docs/.lee-spec-kit.json`을 탐색합니다.
|
|
195
|
+
> standalone 환경에서 docs 레포 바깥(예: 프로젝트 레포)에서 실행해야 한다면 `LEE_SPEC_KIT_DOCS_DIR`(또는 `LSK_DOCS_DIR`)에 docs 레포 경로를 지정할 수 있습니다.
|
|
196
|
+
|
|
197
|
+
### Standalone 프로젝트 설정 예시
|
|
198
|
+
|
|
199
|
+
**Single 프로젝트:**
|
|
200
|
+
|
|
201
|
+
```json
|
|
202
|
+
{
|
|
203
|
+
"projectName": "my-project",
|
|
204
|
+
"projectType": "single",
|
|
205
|
+
"docsRepo": "standalone",
|
|
206
|
+
"projectRoot": "/path/to/my-project"
|
|
207
|
+
}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
**Fullstack 프로젝트:**
|
|
211
|
+
|
|
212
|
+
```json
|
|
213
|
+
{
|
|
214
|
+
"projectName": "my-project",
|
|
215
|
+
"projectType": "fullstack",
|
|
216
|
+
"docsRepo": "standalone",
|
|
217
|
+
"projectRoot": {
|
|
218
|
+
"fe": "/path/to/frontend",
|
|
219
|
+
"be": "/path/to/backend"
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### 설정 확인 및 수정
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
# 현재 설정 확인
|
|
228
|
+
npx lee-spec-kit config
|
|
229
|
+
|
|
230
|
+
# projectRoot 수정 (Single)
|
|
231
|
+
npx lee-spec-kit config --project-root /new/path
|
|
232
|
+
|
|
233
|
+
# projectRoot 수정 (Fullstack)
|
|
234
|
+
npx lee-spec-kit config --project-root /new/fe/path --repo fe
|
|
235
|
+
npx lee-spec-kit config --project-root /new/be/path --repo be
|
|
236
|
+
```
|
|
237
|
+
|
|
61
238
|
## 생성되는 구조
|
|
62
239
|
|
|
63
240
|
### Fullstack (FE/BE 분리)
|
|
@@ -71,6 +248,8 @@ docs/
|
|
|
71
248
|
│ ├── git-workflow.md # Git 자동화 규칙
|
|
72
249
|
│ ├── issue-template.md
|
|
73
250
|
│ └── pr-template.md
|
|
251
|
+
├── designs/ # 디자인 참고 자료
|
|
252
|
+
├── ideas/ # 아이디어/To-do (Feature 승격 전)
|
|
74
253
|
├── prd/
|
|
75
254
|
│ └── README.md
|
|
76
255
|
└── features/
|
|
@@ -86,27 +265,76 @@ docs/
|
|
|
86
265
|
docs/
|
|
87
266
|
├── README.md
|
|
88
267
|
├── agents/
|
|
268
|
+
├── designs/
|
|
269
|
+
├── ideas/
|
|
89
270
|
├── prd/
|
|
90
271
|
└── features/
|
|
91
272
|
├── feature-base/
|
|
92
273
|
└── F001-feature/ # 개별 기능
|
|
93
274
|
```
|
|
94
275
|
|
|
95
|
-
##
|
|
276
|
+
## Feature 워크플로우
|
|
96
277
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
278
|
+
```mermaid
|
|
279
|
+
flowchart LR
|
|
280
|
+
A[spec.md] --> B[사용자 리뷰]
|
|
281
|
+
B --> C[plan.md]
|
|
282
|
+
C --> D[tasks.md]
|
|
283
|
+
D --> E[구현]
|
|
284
|
+
E --> F[decisions.md]
|
|
285
|
+
```
|
|
101
286
|
|
|
102
|
-
|
|
287
|
+
1. **spec.md 작성** - 무엇을, 왜 만드는지 정의
|
|
288
|
+
2. **사용자 리뷰 요청** - 스펙 검토 및 승인
|
|
289
|
+
3. **plan.md 작성** - 어떻게 만드는지 (기술 스택, 설계)
|
|
290
|
+
4. **tasks.md 작성** - 태스크 분해 및 체크리스트
|
|
291
|
+
5. **decisions.md** - 기술 결정 기록 (ADR)
|
|
292
|
+
|
|
293
|
+
| 프로젝트 타입 | 설명 |
|
|
294
|
+
| ------------- | -------------------------------------------- |
|
|
295
|
+
| `single` | 단일 레포 프로젝트 (모노레포 또는 단일 스택) |
|
|
296
|
+
| `fullstack` | FE/BE 분리 프로젝트 |
|
|
297
|
+
|
|
298
|
+
## 문제 해결
|
|
299
|
+
|
|
300
|
+
<details>
|
|
301
|
+
<summary><strong>init 명령어가 실패합니다</strong></summary>
|
|
302
|
+
|
|
303
|
+
- Node.js 18 이상이 설치되어 있는지 확인하세요
|
|
304
|
+
- `npx` 캐시 문제일 수 있습니다: `npx clear-npx-cache` 후 재시도
|
|
305
|
+
|
|
306
|
+
</details>
|
|
307
|
+
|
|
308
|
+
<details>
|
|
309
|
+
<summary><strong>feature 명령어가 설정 파일을 찾지 못합니다</strong></summary>
|
|
103
310
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
311
|
+
- `docs/` 폴더에 `.lee-spec-kit.json` 파일이 있는지 확인하세요
|
|
312
|
+
- `init` 명령어를 먼저 실행했는지 확인하세요
|
|
313
|
+
- embedded 모드라면 프로젝트 루트/하위 어디서 실행해도 상위 디렉토리 탐색으로 설정을 찾습니다.
|
|
314
|
+
- standalone 모드에서 docs 레포 밖에서 실행 중이면, docs 레포로 이동하거나 `LEE_SPEC_KIT_DOCS_DIR=/path/to/docs`를 설정하세요.
|
|
315
|
+
|
|
316
|
+
</details>
|
|
317
|
+
|
|
318
|
+
<details>
|
|
319
|
+
<summary><strong>Fullstack 프로젝트에서 --repo 옵션이 동작하지 않습니다</strong></summary>
|
|
320
|
+
|
|
321
|
+
- `.lee-spec-kit.json`의 `projectType`이 `fullstack`인지 확인하세요
|
|
322
|
+
- `--repo` 값은 `fe` 또는 `be`만 가능합니다
|
|
323
|
+
|
|
324
|
+
</details>
|
|
325
|
+
|
|
326
|
+
## 기여하기
|
|
327
|
+
|
|
328
|
+
1. Fork → 브랜치 생성 → 개발 → Pull Request
|
|
329
|
+
|
|
330
|
+
이슈나 PR은 언제든 환영합니다!
|
|
109
331
|
|
|
110
332
|
## 라이선스
|
|
111
333
|
|
|
112
|
-
MIT
|
|
334
|
+
[MIT License](./LICENSE)
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
<p align="center">
|
|
339
|
+
Made with ❤️ by <a href="https://github.com/leey00nsu">leey00nsu</a>
|
|
340
|
+
</p>
|