@su-record/vibe 2.2.2 → 2.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/.claude/settings.json +152 -152
- package/.claude/vibe/constitution.md +184 -184
- package/.claude/vibe/rules/core/communication-guide.md +104 -104
- package/.claude/vibe/rules/core/development-philosophy.md +52 -52
- package/.claude/vibe/rules/core/quick-start.md +120 -120
- package/.claude/vibe/rules/quality/bdd-contract-testing.md +388 -388
- package/.claude/vibe/rules/quality/checklist.md +276 -276
- package/.claude/vibe/rules/quality/testing-strategy.md +437 -437
- package/.claude/vibe/rules/standards/anti-patterns.md +369 -369
- package/.claude/vibe/rules/standards/code-structure.md +291 -291
- package/.claude/vibe/rules/standards/complexity-metrics.md +312 -312
- package/.claude/vibe/rules/standards/naming-conventions.md +198 -198
- package/.claude/vibe/setup.sh +31 -31
- package/CLAUDE.md +323 -323
- package/LICENSE +21 -21
- package/README.md +724 -721
- package/agents/explorer.md +48 -0
- package/agents/implementer.md +53 -0
- package/agents/research/best-practices-agent.md +139 -0
- package/agents/research/codebase-patterns-agent.md +147 -0
- package/agents/research/framework-docs-agent.md +181 -0
- package/agents/research/security-advisory-agent.md +167 -0
- package/agents/review/architecture-reviewer.md +107 -0
- package/agents/review/complexity-reviewer.md +116 -0
- package/agents/review/data-integrity-reviewer.md +88 -0
- package/agents/review/git-history-reviewer.md +103 -0
- package/agents/review/performance-reviewer.md +86 -0
- package/agents/review/python-reviewer.md +152 -0
- package/agents/review/rails-reviewer.md +139 -0
- package/agents/review/react-reviewer.md +144 -0
- package/agents/review/security-reviewer.md +80 -0
- package/agents/review/simplicity-reviewer.md +140 -0
- package/agents/review/test-coverage-reviewer.md +116 -0
- package/agents/review/typescript-reviewer.md +127 -0
- package/agents/searcher.md +54 -0
- package/agents/simplifier.md +119 -0
- package/agents/tester.md +49 -0
- package/commands/vibe.analyze.md +239 -0
- package/commands/vibe.compound.md +261 -0
- package/commands/vibe.continue.md +88 -0
- package/commands/vibe.diagram.md +178 -0
- package/commands/vibe.e2e.md +266 -0
- package/commands/vibe.reason.md +306 -0
- package/commands/vibe.review.md +324 -0
- package/commands/vibe.run.md +836 -0
- package/commands/vibe.setup.md +97 -0
- package/commands/vibe.spec.md +383 -0
- package/commands/vibe.ui.md +137 -0
- package/commands/vibe.verify.md +238 -0
- package/dist/cli/index.js +389 -389
- package/dist/cli/index.js.map +1 -1
- package/dist/lib/MemoryManager.js +92 -92
- package/dist/lib/PythonParser.js +108 -108
- package/dist/lib/gemini-mcp.js +15 -15
- package/dist/lib/gemini-oauth.js +35 -35
- package/dist/lib/gpt-mcp.js +17 -17
- package/dist/lib/gpt-oauth.js +44 -44
- package/dist/tools/analytics/getUsageAnalytics.js +12 -12
- package/dist/tools/memory/createMemoryTimeline.js +10 -10
- package/dist/tools/memory/getMemoryGraph.js +12 -12
- package/dist/tools/memory/getSessionContext.js +9 -9
- package/dist/tools/memory/linkMemories.js +14 -14
- package/dist/tools/memory/listMemories.js +4 -4
- package/dist/tools/memory/recallMemory.js +4 -4
- package/dist/tools/memory/saveMemory.js +4 -4
- package/dist/tools/memory/searchMemoriesAdvanced.js +22 -22
- package/dist/tools/planning/generatePrd.js +46 -46
- package/dist/tools/prompt/enhancePromptGemini.js +160 -160
- package/dist/tools/reasoning/applyReasoningFramework.js +56 -56
- package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
- package/package.json +69 -66
- package/skills/git-worktree.md +178 -0
- package/skills/priority-todos.md +236 -0
- package/templates/constitution-template.md +184 -184
- package/templates/contract-backend-template.md +517 -517
- package/templates/contract-frontend-template.md +594 -594
- package/templates/feature-template.md +96 -96
- package/templates/hooks-template.json +103 -103
- package/templates/spec-template.md +199 -199
- package/.claude/vibe/rules/tools/mcp-hi-ai-guide.md +0 -665
- package/.claude/vibe/rules/tools/mcp-workflow.md +0 -51
|
@@ -1,199 +1,199 @@
|
|
|
1
|
-
# SPEC: {기능명}
|
|
2
|
-
|
|
3
|
-
## Metadata
|
|
4
|
-
- **작성일**: {YYYY-MM-DD}
|
|
5
|
-
- **작성자**: {이름}
|
|
6
|
-
- **상태**: DRAFT
|
|
7
|
-
- **우선순위**: {HIGH | MEDIUM | LOW}
|
|
8
|
-
- **언어**: {ko | en}
|
|
9
|
-
- **담당 에이전트**: {에이전트명}
|
|
10
|
-
- **기술 스택**: {프로젝트 기술 스택 요약}
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## 1. 기능 개요
|
|
15
|
-
|
|
16
|
-
{1-2문장으로 요약}
|
|
17
|
-
|
|
18
|
-
### 배경 (Background)
|
|
19
|
-
{왜 이 기능이 필요한가}
|
|
20
|
-
|
|
21
|
-
### 목표 (Goals)
|
|
22
|
-
- 목표 1
|
|
23
|
-
- 목표 2
|
|
24
|
-
|
|
25
|
-
### 비목표 (Non-Goals)
|
|
26
|
-
- 이번에 하지 않을 것 1
|
|
27
|
-
- 이번에 하지 않을 것 2
|
|
28
|
-
|
|
29
|
-
### 기술 스택 컨텍스트
|
|
30
|
-
|
|
31
|
-
**기존 기술:**
|
|
32
|
-
- 백엔드: {FastAPI, Django, Express 등}
|
|
33
|
-
- 프론트엔드: {React, Flutter, Vue 등}
|
|
34
|
-
- 데이터베이스: {PostgreSQL, MySQL, MongoDB 등}
|
|
35
|
-
- 인프라: {GCP, AWS, Azure 등}
|
|
36
|
-
|
|
37
|
-
**이번 기능에 필요한 새 기술:**
|
|
38
|
-
- {새 라이브러리/서비스 1} - {사유}
|
|
39
|
-
- {새 라이브러리/서비스 2} - {사유}
|
|
40
|
-
|
|
41
|
-
**외부 API/서비스 연동:**
|
|
42
|
-
- {서비스명} - {용도}
|
|
43
|
-
|
|
44
|
-
**제약사항:**
|
|
45
|
-
- 비용 한도: {금액}
|
|
46
|
-
- 성능 요구사항: {목표 응답 시간, 처리량 등}
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
## 2. 사용자 스토리
|
|
51
|
-
|
|
52
|
-
### Story 1: {스토리 제목}
|
|
53
|
-
**As a** {사용자 역할}
|
|
54
|
-
**I want** {원하는 기능}
|
|
55
|
-
**So that** {이유/가치}
|
|
56
|
-
|
|
57
|
-
#### Acceptance Criteria
|
|
58
|
-
- [ ] {검증 가능한 조건 1}
|
|
59
|
-
- [ ] {검증 가능한 조건 2}
|
|
60
|
-
|
|
61
|
-
---
|
|
62
|
-
|
|
63
|
-
## 3. Requirements (EARS 형식)
|
|
64
|
-
|
|
65
|
-
### REQ-001: {요구사항 제목}
|
|
66
|
-
|
|
67
|
-
**WHEN** {특정 조건}
|
|
68
|
-
**THEN** {시스템 동작} (SHALL | SHOULD | MAY)
|
|
69
|
-
|
|
70
|
-
#### Acceptance Criteria
|
|
71
|
-
- [ ] {테스트 가능한 기준 1}
|
|
72
|
-
- [ ] {테스트 가능한 기준 2}
|
|
73
|
-
|
|
74
|
-
#### Example
|
|
75
|
-
```
|
|
76
|
-
Input: {...}
|
|
77
|
-
Output: {...}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## 4. 비기능 요구사항
|
|
83
|
-
|
|
84
|
-
### 성능 (Performance)
|
|
85
|
-
- 응답 시간: {목표}
|
|
86
|
-
- 처리량: {목표}
|
|
87
|
-
|
|
88
|
-
### 보안 (Security)
|
|
89
|
-
- 인증: {방식}
|
|
90
|
-
- 권한: {규칙}
|
|
91
|
-
|
|
92
|
-
### 확장성 (Scalability)
|
|
93
|
-
- 예상 성장률: {수치}
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## 5. 데이터 모델 (초안)
|
|
98
|
-
|
|
99
|
-
### Entity: {이름}
|
|
100
|
-
```json
|
|
101
|
-
{
|
|
102
|
-
"field1": "type",
|
|
103
|
-
"field2": "type"
|
|
104
|
-
}
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
## 6. API 계약 (초안)
|
|
110
|
-
|
|
111
|
-
### Endpoint: {이름}
|
|
112
|
-
```
|
|
113
|
-
POST /api/v1/resource
|
|
114
|
-
Request: {...}
|
|
115
|
-
Response: {...}
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
## 7. 테스트 전략
|
|
121
|
-
|
|
122
|
-
### BDD 시나리오 (Gherkin)
|
|
123
|
-
|
|
124
|
-
**생성 명령어**: `vibe feature "{기능명}"`
|
|
125
|
-
|
|
126
|
-
```gherkin
|
|
127
|
-
Scenario: {시나리오 제목}
|
|
128
|
-
Given {전제 조건}
|
|
129
|
-
When {사용자 행동}
|
|
130
|
-
Then {예상 결과}
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
**매핑**:
|
|
134
|
-
- REQ-001 → Scenario 1, 2
|
|
135
|
-
- REQ-002 → Scenario 3
|
|
136
|
-
|
|
137
|
-
### Contract Tests (API 스키마)
|
|
138
|
-
|
|
139
|
-
**생성 명령어**: `vibe contract "{기능명}"`
|
|
140
|
-
|
|
141
|
-
**Backend Contract**:
|
|
142
|
-
```json
|
|
143
|
-
{
|
|
144
|
-
"request": {
|
|
145
|
-
"method": "POST",
|
|
146
|
-
"path": "/api/v1/{resource}",
|
|
147
|
-
"schema": {JSON Schema}
|
|
148
|
-
},
|
|
149
|
-
"response": {
|
|
150
|
-
"status": 201,
|
|
151
|
-
"schema": {JSON Schema}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
**Frontend Contract**:
|
|
157
|
-
- Mock 서버로 독립 테스트
|
|
158
|
-
- 응답 스키마 검증 (Zod, JSON Schema)
|
|
159
|
-
|
|
160
|
-
### 테스트 커버리지 목표
|
|
161
|
-
|
|
162
|
-
- [ ] BDD: 모든 Acceptance Criteria 커버
|
|
163
|
-
- [ ] Contract: 모든 API 엔드포인트 커버
|
|
164
|
-
- [ ] Unit: 70%+ 커버리지
|
|
165
|
-
- [ ] Integration: 핵심 경로 커버
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## 8. Out of Scope
|
|
170
|
-
|
|
171
|
-
- ❌ {제외 항목 1}
|
|
172
|
-
- ❌ {제외 항목 2}
|
|
173
|
-
|
|
174
|
-
---
|
|
175
|
-
|
|
176
|
-
## 9. 검증 체크리스트
|
|
177
|
-
|
|
178
|
-
### 요구사항
|
|
179
|
-
- [ ] 모든 요구사항이 테스트 가능한가?
|
|
180
|
-
- [ ] SHALL/SHOULD/MAY가 명확한가?
|
|
181
|
-
- [ ] Acceptance Criteria가 구체적인가?
|
|
182
|
-
- [ ] 성능 목표가 측정 가능한가?
|
|
183
|
-
|
|
184
|
-
### 테스팅
|
|
185
|
-
- [ ] BDD Feature 파일 생성 완료?
|
|
186
|
-
- [ ] Contract 테스트 정의 완료?
|
|
187
|
-
- [ ] Step Definitions 작성 완료?
|
|
188
|
-
- [ ] 테스트 커버리지 목표 달성?
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
## 10. 승인
|
|
193
|
-
|
|
194
|
-
- [ ] 사용자 승인
|
|
195
|
-
- [ ] 기술 리뷰 완료
|
|
196
|
-
- [ ] 테스트 계획 승인
|
|
197
|
-
|
|
198
|
-
승인일: ____________
|
|
199
|
-
승인자: ____________
|
|
1
|
+
# SPEC: {기능명}
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
- **작성일**: {YYYY-MM-DD}
|
|
5
|
+
- **작성자**: {이름}
|
|
6
|
+
- **상태**: DRAFT
|
|
7
|
+
- **우선순위**: {HIGH | MEDIUM | LOW}
|
|
8
|
+
- **언어**: {ko | en}
|
|
9
|
+
- **담당 에이전트**: {에이전트명}
|
|
10
|
+
- **기술 스택**: {프로젝트 기술 스택 요약}
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. 기능 개요
|
|
15
|
+
|
|
16
|
+
{1-2문장으로 요약}
|
|
17
|
+
|
|
18
|
+
### 배경 (Background)
|
|
19
|
+
{왜 이 기능이 필요한가}
|
|
20
|
+
|
|
21
|
+
### 목표 (Goals)
|
|
22
|
+
- 목표 1
|
|
23
|
+
- 목표 2
|
|
24
|
+
|
|
25
|
+
### 비목표 (Non-Goals)
|
|
26
|
+
- 이번에 하지 않을 것 1
|
|
27
|
+
- 이번에 하지 않을 것 2
|
|
28
|
+
|
|
29
|
+
### 기술 스택 컨텍스트
|
|
30
|
+
|
|
31
|
+
**기존 기술:**
|
|
32
|
+
- 백엔드: {FastAPI, Django, Express 등}
|
|
33
|
+
- 프론트엔드: {React, Flutter, Vue 등}
|
|
34
|
+
- 데이터베이스: {PostgreSQL, MySQL, MongoDB 등}
|
|
35
|
+
- 인프라: {GCP, AWS, Azure 등}
|
|
36
|
+
|
|
37
|
+
**이번 기능에 필요한 새 기술:**
|
|
38
|
+
- {새 라이브러리/서비스 1} - {사유}
|
|
39
|
+
- {새 라이브러리/서비스 2} - {사유}
|
|
40
|
+
|
|
41
|
+
**외부 API/서비스 연동:**
|
|
42
|
+
- {서비스명} - {용도}
|
|
43
|
+
|
|
44
|
+
**제약사항:**
|
|
45
|
+
- 비용 한도: {금액}
|
|
46
|
+
- 성능 요구사항: {목표 응답 시간, 처리량 등}
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 2. 사용자 스토리
|
|
51
|
+
|
|
52
|
+
### Story 1: {스토리 제목}
|
|
53
|
+
**As a** {사용자 역할}
|
|
54
|
+
**I want** {원하는 기능}
|
|
55
|
+
**So that** {이유/가치}
|
|
56
|
+
|
|
57
|
+
#### Acceptance Criteria
|
|
58
|
+
- [ ] {검증 가능한 조건 1}
|
|
59
|
+
- [ ] {검증 가능한 조건 2}
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 3. Requirements (EARS 형식)
|
|
64
|
+
|
|
65
|
+
### REQ-001: {요구사항 제목}
|
|
66
|
+
|
|
67
|
+
**WHEN** {특정 조건}
|
|
68
|
+
**THEN** {시스템 동작} (SHALL | SHOULD | MAY)
|
|
69
|
+
|
|
70
|
+
#### Acceptance Criteria
|
|
71
|
+
- [ ] {테스트 가능한 기준 1}
|
|
72
|
+
- [ ] {테스트 가능한 기준 2}
|
|
73
|
+
|
|
74
|
+
#### Example
|
|
75
|
+
```
|
|
76
|
+
Input: {...}
|
|
77
|
+
Output: {...}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 4. 비기능 요구사항
|
|
83
|
+
|
|
84
|
+
### 성능 (Performance)
|
|
85
|
+
- 응답 시간: {목표}
|
|
86
|
+
- 처리량: {목표}
|
|
87
|
+
|
|
88
|
+
### 보안 (Security)
|
|
89
|
+
- 인증: {방식}
|
|
90
|
+
- 권한: {규칙}
|
|
91
|
+
|
|
92
|
+
### 확장성 (Scalability)
|
|
93
|
+
- 예상 성장률: {수치}
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 5. 데이터 모델 (초안)
|
|
98
|
+
|
|
99
|
+
### Entity: {이름}
|
|
100
|
+
```json
|
|
101
|
+
{
|
|
102
|
+
"field1": "type",
|
|
103
|
+
"field2": "type"
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## 6. API 계약 (초안)
|
|
110
|
+
|
|
111
|
+
### Endpoint: {이름}
|
|
112
|
+
```
|
|
113
|
+
POST /api/v1/resource
|
|
114
|
+
Request: {...}
|
|
115
|
+
Response: {...}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## 7. 테스트 전략
|
|
121
|
+
|
|
122
|
+
### BDD 시나리오 (Gherkin)
|
|
123
|
+
|
|
124
|
+
**생성 명령어**: `vibe feature "{기능명}"`
|
|
125
|
+
|
|
126
|
+
```gherkin
|
|
127
|
+
Scenario: {시나리오 제목}
|
|
128
|
+
Given {전제 조건}
|
|
129
|
+
When {사용자 행동}
|
|
130
|
+
Then {예상 결과}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
**매핑**:
|
|
134
|
+
- REQ-001 → Scenario 1, 2
|
|
135
|
+
- REQ-002 → Scenario 3
|
|
136
|
+
|
|
137
|
+
### Contract Tests (API 스키마)
|
|
138
|
+
|
|
139
|
+
**생성 명령어**: `vibe contract "{기능명}"`
|
|
140
|
+
|
|
141
|
+
**Backend Contract**:
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"request": {
|
|
145
|
+
"method": "POST",
|
|
146
|
+
"path": "/api/v1/{resource}",
|
|
147
|
+
"schema": {JSON Schema}
|
|
148
|
+
},
|
|
149
|
+
"response": {
|
|
150
|
+
"status": 201,
|
|
151
|
+
"schema": {JSON Schema}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**Frontend Contract**:
|
|
157
|
+
- Mock 서버로 독립 테스트
|
|
158
|
+
- 응답 스키마 검증 (Zod, JSON Schema)
|
|
159
|
+
|
|
160
|
+
### 테스트 커버리지 목표
|
|
161
|
+
|
|
162
|
+
- [ ] BDD: 모든 Acceptance Criteria 커버
|
|
163
|
+
- [ ] Contract: 모든 API 엔드포인트 커버
|
|
164
|
+
- [ ] Unit: 70%+ 커버리지
|
|
165
|
+
- [ ] Integration: 핵심 경로 커버
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 8. Out of Scope
|
|
170
|
+
|
|
171
|
+
- ❌ {제외 항목 1}
|
|
172
|
+
- ❌ {제외 항목 2}
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## 9. 검증 체크리스트
|
|
177
|
+
|
|
178
|
+
### 요구사항
|
|
179
|
+
- [ ] 모든 요구사항이 테스트 가능한가?
|
|
180
|
+
- [ ] SHALL/SHOULD/MAY가 명확한가?
|
|
181
|
+
- [ ] Acceptance Criteria가 구체적인가?
|
|
182
|
+
- [ ] 성능 목표가 측정 가능한가?
|
|
183
|
+
|
|
184
|
+
### 테스팅
|
|
185
|
+
- [ ] BDD Feature 파일 생성 완료?
|
|
186
|
+
- [ ] Contract 테스트 정의 완료?
|
|
187
|
+
- [ ] Step Definitions 작성 완료?
|
|
188
|
+
- [ ] 테스트 커버리지 목표 달성?
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## 10. 승인
|
|
193
|
+
|
|
194
|
+
- [ ] 사용자 승인
|
|
195
|
+
- [ ] 기술 리뷰 완료
|
|
196
|
+
- [ ] 테스트 계획 승인
|
|
197
|
+
|
|
198
|
+
승인일: ____________
|
|
199
|
+
승인자: ____________
|