@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
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Explorer Agent (Haiku 4.5)
|
|
2
|
+
|
|
3
|
+
Codebase exploration specialist sub-agent.
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
- Codebase analysis
|
|
8
|
+
- File/pattern search
|
|
9
|
+
- Dependency checking
|
|
10
|
+
- Related code collection
|
|
11
|
+
|
|
12
|
+
## Model
|
|
13
|
+
|
|
14
|
+
**Haiku 4.5** - Optimized for fast exploration
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
Call via Task tool:
|
|
19
|
+
```
|
|
20
|
+
Task(model: "haiku", subagent_type: "Explore")
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Process
|
|
24
|
+
|
|
25
|
+
1. Understand project structure
|
|
26
|
+
2. Search related files (Glob, Grep)
|
|
27
|
+
3. Read and analyze code
|
|
28
|
+
4. Identify patterns/conventions
|
|
29
|
+
5. Return summary
|
|
30
|
+
|
|
31
|
+
## Output
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
## Exploration Results
|
|
35
|
+
|
|
36
|
+
### Related Files
|
|
37
|
+
- src/components/Button.tsx (UI component)
|
|
38
|
+
- src/hooks/useAuth.ts (auth hook)
|
|
39
|
+
|
|
40
|
+
### Discovered Patterns
|
|
41
|
+
- Components: Functional + TypeScript
|
|
42
|
+
- State management: Zustand
|
|
43
|
+
- Styling: Tailwind CSS
|
|
44
|
+
|
|
45
|
+
### Dependencies
|
|
46
|
+
- react: ^18.2.0
|
|
47
|
+
- zustand: ^4.4.0
|
|
48
|
+
```
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Implementer Agent (Sonnet 4)
|
|
2
|
+
|
|
3
|
+
Core implementation specialist sub-agent.
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
- Code implementation
|
|
8
|
+
- File creation/modification
|
|
9
|
+
- Refactoring
|
|
10
|
+
- Bug fixes
|
|
11
|
+
|
|
12
|
+
## Model
|
|
13
|
+
|
|
14
|
+
**Sonnet 4** - Balance between implementation quality and speed
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
Call via Task tool:
|
|
19
|
+
```
|
|
20
|
+
Task(model: "sonnet", prompt: "Implement according to SPEC")
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Rules Reference
|
|
24
|
+
|
|
25
|
+
Must follow `.claude/vibe/rules/`:
|
|
26
|
+
- `core/development-philosophy.md` - Surgical precision
|
|
27
|
+
- `standards/complexity-metrics.md` - Functions ≤20 lines, nesting ≤3 levels
|
|
28
|
+
- `quality/checklist.md` - Quality checklist
|
|
29
|
+
|
|
30
|
+
## Process
|
|
31
|
+
|
|
32
|
+
1. Review SPEC and exploration results
|
|
33
|
+
2. Create implementation plan
|
|
34
|
+
3. Write code (Edit/Write)
|
|
35
|
+
4. Self-validation
|
|
36
|
+
5. Return results
|
|
37
|
+
|
|
38
|
+
## Output
|
|
39
|
+
|
|
40
|
+
```markdown
|
|
41
|
+
## Implementation Results
|
|
42
|
+
|
|
43
|
+
### Created Files
|
|
44
|
+
- src/components/LoginForm.tsx ✅
|
|
45
|
+
- src/hooks/useLogin.ts ✅
|
|
46
|
+
|
|
47
|
+
### Modified Files
|
|
48
|
+
- src/App.tsx (route added)
|
|
49
|
+
|
|
50
|
+
### Validation
|
|
51
|
+
- TypeScript compile: ✅
|
|
52
|
+
- Lint: ✅
|
|
53
|
+
```
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Best Practices Research Agent
|
|
2
|
+
|
|
3
|
+
업계 베스트 프랙티스 리서치 에이전트
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
- 업계 표준 조사
|
|
8
|
+
- 베스트 프랙티스 수집
|
|
9
|
+
- 권장 패턴 제안
|
|
10
|
+
- 안티 패턴 경고
|
|
11
|
+
|
|
12
|
+
## Model
|
|
13
|
+
|
|
14
|
+
**Haiku** (inherit) - 빠른 리서치
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
`/vibe.spec` 실행 시 자동으로 병렬 호출됨
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Task(
|
|
22
|
+
model: "haiku",
|
|
23
|
+
subagent_type: "Explore",
|
|
24
|
+
prompt: "Research best practices for [feature]. Include patterns, anti-patterns."
|
|
25
|
+
)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Research Areas
|
|
29
|
+
|
|
30
|
+
### By Domain
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
Authentication:
|
|
34
|
+
├── OAuth 2.0 / OIDC
|
|
35
|
+
├── JWT best practices
|
|
36
|
+
├── Session management
|
|
37
|
+
└── MFA implementation
|
|
38
|
+
|
|
39
|
+
Payment:
|
|
40
|
+
├── PCI-DSS compliance
|
|
41
|
+
├── Idempotency keys
|
|
42
|
+
├── Retry strategies
|
|
43
|
+
└── Webhook verification
|
|
44
|
+
|
|
45
|
+
API Design:
|
|
46
|
+
├── REST conventions
|
|
47
|
+
├── GraphQL patterns
|
|
48
|
+
├── Versioning strategies
|
|
49
|
+
└── Rate limiting
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### By Framework
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
React:
|
|
56
|
+
├── Component patterns (Compound, Render Props)
|
|
57
|
+
├── State management (Context, Zustand, Jotai)
|
|
58
|
+
├── Server Components
|
|
59
|
+
└── Performance patterns
|
|
60
|
+
|
|
61
|
+
Django/FastAPI:
|
|
62
|
+
├── Project structure
|
|
63
|
+
├── Async patterns
|
|
64
|
+
├── Testing strategies
|
|
65
|
+
└── Security defaults
|
|
66
|
+
|
|
67
|
+
Rails:
|
|
68
|
+
├── Rails Way conventions
|
|
69
|
+
├── Service objects
|
|
70
|
+
├── Background jobs
|
|
71
|
+
└── Caching strategies
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Output Format
|
|
75
|
+
|
|
76
|
+
```markdown
|
|
77
|
+
## 📚 Best Practices Research
|
|
78
|
+
|
|
79
|
+
### Feature: [feature-name]
|
|
80
|
+
|
|
81
|
+
### Recommended Patterns
|
|
82
|
+
|
|
83
|
+
1. **Pattern: Repository Pattern**
|
|
84
|
+
- Use case: Data access abstraction
|
|
85
|
+
- Benefits: Testability, flexibility
|
|
86
|
+
- Example:
|
|
87
|
+
```python
|
|
88
|
+
class UserRepository:
|
|
89
|
+
def find_by_id(self, id: int) -> User:
|
|
90
|
+
...
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
2. **Pattern: Service Layer**
|
|
94
|
+
- Use case: Business logic encapsulation
|
|
95
|
+
- Benefits: Thin controllers, reusability
|
|
96
|
+
|
|
97
|
+
### Anti-Patterns to Avoid
|
|
98
|
+
|
|
99
|
+
1. **Anti-pattern: God Object**
|
|
100
|
+
- Problem: Single class doing everything
|
|
101
|
+
- Solution: Split by responsibility
|
|
102
|
+
|
|
103
|
+
2. **Anti-pattern: Premature Optimization**
|
|
104
|
+
- Problem: Optimizing before measuring
|
|
105
|
+
- Solution: Measure first, optimize bottlenecks
|
|
106
|
+
|
|
107
|
+
### Industry Standards
|
|
108
|
+
|
|
109
|
+
- OWASP Security Guidelines
|
|
110
|
+
- 12-Factor App Methodology
|
|
111
|
+
- REST API Design Guidelines
|
|
112
|
+
|
|
113
|
+
### Recommended Libraries
|
|
114
|
+
|
|
115
|
+
| Purpose | Recommendation | Reason |
|
|
116
|
+
|---------|---------------|--------|
|
|
117
|
+
| Validation | Pydantic/Zod | Type-safe, fast |
|
|
118
|
+
| Auth | NextAuth/Devise | Battle-tested |
|
|
119
|
+
| Testing | Pytest/Jest | Community standard |
|
|
120
|
+
|
|
121
|
+
### References
|
|
122
|
+
|
|
123
|
+
- [Article/Doc 1](url)
|
|
124
|
+
- [Article/Doc 2](url)
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Integration with /vibe.spec
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
/vibe.spec "로그인 기능"
|
|
131
|
+
|
|
132
|
+
→ best-practices-agent 실행:
|
|
133
|
+
"Research authentication best practices: OAuth, JWT, session"
|
|
134
|
+
|
|
135
|
+
→ 결과를 SPEC에 반영:
|
|
136
|
+
- 권장 라이브러리
|
|
137
|
+
- 보안 고려사항
|
|
138
|
+
- 구현 패턴
|
|
139
|
+
```
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# Codebase Patterns Research Agent
|
|
2
|
+
|
|
3
|
+
기존 코드베이스 패턴 분석 에이전트
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
- 기존 구현 패턴 분석
|
|
8
|
+
- 코딩 컨벤션 추출
|
|
9
|
+
- 유사 기능 참조
|
|
10
|
+
- 일관성 확보
|
|
11
|
+
|
|
12
|
+
## Model
|
|
13
|
+
|
|
14
|
+
**Haiku** (inherit) - 빠른 탐색
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
`/vibe.spec` 실행 시 자동으로 병렬 호출됨
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Task(
|
|
22
|
+
model: "haiku",
|
|
23
|
+
subagent_type: "Explore",
|
|
24
|
+
prompt: "Analyze existing patterns in codebase for [feature]. Find similar implementations."
|
|
25
|
+
)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Analysis Areas
|
|
29
|
+
|
|
30
|
+
### File Structure
|
|
31
|
+
```
|
|
32
|
+
프로젝트 구조 분석:
|
|
33
|
+
├── 디렉토리 구성
|
|
34
|
+
├── 네이밍 규칙
|
|
35
|
+
├── 모듈 분리 방식
|
|
36
|
+
└── 테스트 파일 위치
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Code Patterns
|
|
40
|
+
```
|
|
41
|
+
패턴 추출:
|
|
42
|
+
├── 에러 처리 방식
|
|
43
|
+
├── 로깅 패턴
|
|
44
|
+
├── 데이터 검증 방식
|
|
45
|
+
├── API 응답 형식
|
|
46
|
+
└── 의존성 주입 방식
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Conventions
|
|
50
|
+
```
|
|
51
|
+
컨벤션 분석:
|
|
52
|
+
├── 변수/함수 네이밍
|
|
53
|
+
├── 파일 네이밍
|
|
54
|
+
├── import 순서
|
|
55
|
+
├── 주석 스타일
|
|
56
|
+
└── 타입 정의 방식
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Output Format
|
|
60
|
+
|
|
61
|
+
```markdown
|
|
62
|
+
## 🔍 Codebase Patterns Analysis
|
|
63
|
+
|
|
64
|
+
### Project Structure
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
src/
|
|
68
|
+
├── api/ # REST endpoints
|
|
69
|
+
├── services/ # Business logic
|
|
70
|
+
├── models/ # Data models
|
|
71
|
+
├── utils/ # Helpers
|
|
72
|
+
└── tests/ # Mirror structure
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Existing Patterns
|
|
76
|
+
|
|
77
|
+
1. **Error Handling Pattern**
|
|
78
|
+
```python
|
|
79
|
+
# Found in: src/services/*.py
|
|
80
|
+
try:
|
|
81
|
+
result = operation()
|
|
82
|
+
except SpecificError as e:
|
|
83
|
+
logger.error(f"Operation failed: {e}")
|
|
84
|
+
raise ServiceError(str(e)) from e
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
2. **API Response Pattern**
|
|
88
|
+
```python
|
|
89
|
+
# Found in: src/api/*.py
|
|
90
|
+
return {
|
|
91
|
+
"success": True,
|
|
92
|
+
"data": result,
|
|
93
|
+
"meta": {"count": len(result)}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
3. **Service Layer Pattern**
|
|
98
|
+
```python
|
|
99
|
+
# Found in: src/services/user_service.py
|
|
100
|
+
class UserService:
|
|
101
|
+
def __init__(self, db: Database):
|
|
102
|
+
self.db = db
|
|
103
|
+
|
|
104
|
+
def get_user(self, user_id: int) -> User:
|
|
105
|
+
...
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Naming Conventions
|
|
109
|
+
|
|
110
|
+
| Type | Convention | Example |
|
|
111
|
+
|------|------------|---------|
|
|
112
|
+
| Files | snake_case | user_service.py |
|
|
113
|
+
| Classes | PascalCase | UserService |
|
|
114
|
+
| Functions | snake_case | get_user_by_id |
|
|
115
|
+
| Constants | UPPER_CASE | MAX_RETRIES |
|
|
116
|
+
|
|
117
|
+
### Similar Implementations
|
|
118
|
+
|
|
119
|
+
For feature "결제 기능":
|
|
120
|
+
|
|
121
|
+
| Similar Feature | Location | Relevance |
|
|
122
|
+
|-----------------|----------|-----------|
|
|
123
|
+
| 주문 처리 | src/services/order.py | 90% |
|
|
124
|
+
| 구독 관리 | src/services/subscription.py | 75% |
|
|
125
|
+
|
|
126
|
+
### Recommendations
|
|
127
|
+
|
|
128
|
+
Based on existing patterns:
|
|
129
|
+
1. Create `src/services/payment_service.py`
|
|
130
|
+
2. Follow existing error handling pattern
|
|
131
|
+
3. Use existing validation decorators
|
|
132
|
+
4. Reuse `src/utils/api_response.py`
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Integration with /vibe.spec
|
|
136
|
+
|
|
137
|
+
```
|
|
138
|
+
/vibe.spec "결제 기능"
|
|
139
|
+
|
|
140
|
+
→ codebase-patterns-agent 실행:
|
|
141
|
+
"Find similar payment/transaction code. Extract patterns."
|
|
142
|
+
|
|
143
|
+
→ 결과를 SPEC에 반영:
|
|
144
|
+
- 기존 패턴 따르기
|
|
145
|
+
- 유사 코드 참조
|
|
146
|
+
- 일관성 유지
|
|
147
|
+
```
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# Framework Docs Research Agent
|
|
2
|
+
|
|
3
|
+
프레임워크 문서 리서치 에이전트
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
- 공식 문서 조회
|
|
8
|
+
- 최신 API 확인
|
|
9
|
+
- 마이그레이션 가이드 수집
|
|
10
|
+
- 버전 호환성 확인
|
|
11
|
+
|
|
12
|
+
## Model
|
|
13
|
+
|
|
14
|
+
**Haiku** (inherit) - 빠른 리서치
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
`/vibe.spec` 실행 시 자동으로 병렬 호출됨
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Task(
|
|
22
|
+
model: "haiku",
|
|
23
|
+
subagent_type: "Explore",
|
|
24
|
+
prompt: "Research [framework] docs for [feature]. Get latest API, examples."
|
|
25
|
+
)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Integration with context7
|
|
29
|
+
|
|
30
|
+
context7 MCP 서버 활용:
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
resolve-library-id "react" → react
|
|
34
|
+
get-library-docs "react" "hooks" → Hook 문서
|
|
35
|
+
|
|
36
|
+
resolve-library-id "django" → django
|
|
37
|
+
get-library-docs "django" "authentication" → Auth 문서
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## External LLM Enhancement (Optional)
|
|
41
|
+
|
|
42
|
+
**Gemini 활성화 시** 웹 검색 기반 최신 문서 보강:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
Primary: Task(Haiku) + context7
|
|
46
|
+
↓
|
|
47
|
+
[Gemini enabled?]
|
|
48
|
+
↓ YES
|
|
49
|
+
mcp__vibe-gemini__gemini_chat(
|
|
50
|
+
prompt: "[framework] [version] latest API changes and best practices",
|
|
51
|
+
systemPrompt: "You are a framework documentation expert. Provide latest API info."
|
|
52
|
+
)
|
|
53
|
+
↓
|
|
54
|
+
결과 병합 → SPEC Context 반영
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**활용 시점:**
|
|
58
|
+
- context7에서 최신 버전 문서 부재 시
|
|
59
|
+
- Breaking changes 확인 필요 시
|
|
60
|
+
- 공식 문서 외 실전 패턴 검색 시
|
|
61
|
+
|
|
62
|
+
**Gemini 미설정 시:** Primary만으로 정상 작동
|
|
63
|
+
|
|
64
|
+
## Research Areas
|
|
65
|
+
|
|
66
|
+
### Frontend
|
|
67
|
+
```
|
|
68
|
+
React:
|
|
69
|
+
├── Hooks API
|
|
70
|
+
├── Server Components
|
|
71
|
+
├── Suspense
|
|
72
|
+
└── Concurrent Features
|
|
73
|
+
|
|
74
|
+
Next.js:
|
|
75
|
+
├── App Router
|
|
76
|
+
├── Server Actions
|
|
77
|
+
├── Middleware
|
|
78
|
+
└── Edge Runtime
|
|
79
|
+
|
|
80
|
+
Vue:
|
|
81
|
+
├── Composition API
|
|
82
|
+
├── Reactivity System
|
|
83
|
+
└── Pinia
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Backend
|
|
87
|
+
```
|
|
88
|
+
Django:
|
|
89
|
+
├── Models & ORM
|
|
90
|
+
├── Class-based Views
|
|
91
|
+
├── REST Framework
|
|
92
|
+
└── Async Support
|
|
93
|
+
|
|
94
|
+
FastAPI:
|
|
95
|
+
├── Path Operations
|
|
96
|
+
├── Dependency Injection
|
|
97
|
+
├── Pydantic Models
|
|
98
|
+
└── Background Tasks
|
|
99
|
+
|
|
100
|
+
Rails:
|
|
101
|
+
├── ActiveRecord
|
|
102
|
+
├── Action Controllers
|
|
103
|
+
├── Hotwire/Turbo
|
|
104
|
+
└── Active Job
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Database
|
|
108
|
+
```
|
|
109
|
+
PostgreSQL:
|
|
110
|
+
├── Indexes
|
|
111
|
+
├── Partitioning
|
|
112
|
+
├── JSON operations
|
|
113
|
+
└── Full-text search
|
|
114
|
+
|
|
115
|
+
Redis:
|
|
116
|
+
├── Data structures
|
|
117
|
+
├── Pub/Sub
|
|
118
|
+
├── Lua scripting
|
|
119
|
+
└── Cluster mode
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Output Format
|
|
123
|
+
|
|
124
|
+
```markdown
|
|
125
|
+
## 📖 Framework Documentation Research
|
|
126
|
+
|
|
127
|
+
### Framework: [framework-name]
|
|
128
|
+
### Version: [version]
|
|
129
|
+
|
|
130
|
+
### Relevant APIs
|
|
131
|
+
|
|
132
|
+
1. **API: useOptimistic (React 19)**
|
|
133
|
+
```tsx
|
|
134
|
+
const [optimisticState, addOptimistic] = useOptimistic(
|
|
135
|
+
state,
|
|
136
|
+
updateFn
|
|
137
|
+
);
|
|
138
|
+
```
|
|
139
|
+
- Use case: Optimistic UI updates
|
|
140
|
+
- Available in: React 19+
|
|
141
|
+
|
|
142
|
+
2. **API: Server Actions (Next.js 14)**
|
|
143
|
+
```tsx
|
|
144
|
+
async function submitForm(formData: FormData) {
|
|
145
|
+
'use server';
|
|
146
|
+
// Server-side logic
|
|
147
|
+
}
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Breaking Changes
|
|
151
|
+
|
|
152
|
+
| From | To | Change | Migration |
|
|
153
|
+
|------|-----|--------|-----------|
|
|
154
|
+
| v18 | v19 | useFormStatus location | Import from react-dom |
|
|
155
|
+
|
|
156
|
+
### Official Examples
|
|
157
|
+
|
|
158
|
+
- [Example 1](url): Authentication flow
|
|
159
|
+
- [Example 2](url): Data fetching
|
|
160
|
+
|
|
161
|
+
### Version Compatibility
|
|
162
|
+
|
|
163
|
+
| Package | Min Version | Recommended |
|
|
164
|
+
|---------|-------------|-------------|
|
|
165
|
+
| Node.js | 18.17 | 20.x |
|
|
166
|
+
| React | 18.2 | 19.x |
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## Integration with /vibe.spec
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
/vibe.spec "소셜 로그인"
|
|
173
|
+
|
|
174
|
+
→ framework-docs-agent 실행:
|
|
175
|
+
"Research NextAuth.js v5 for social login. Get Google, GitHub providers."
|
|
176
|
+
|
|
177
|
+
→ 결과를 SPEC에 반영:
|
|
178
|
+
- 최신 API 사용법
|
|
179
|
+
- 필수 설정
|
|
180
|
+
- 코드 예시
|
|
181
|
+
```
|