@su-record/vibe 2.5.7 → 2.5.9

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 (190) hide show
  1. package/CLAUDE.md +348 -338
  2. package/LICENSE +21 -21
  3. package/README.md +262 -262
  4. package/agents/build-error-resolver.md +115 -0
  5. package/agents/compounder.md +261 -261
  6. package/agents/diagrammer.md +178 -178
  7. package/agents/e2e-tester.md +266 -266
  8. package/agents/explorer.md +48 -48
  9. package/agents/implementer.md +54 -54
  10. package/agents/refactor-cleaner.md +143 -0
  11. package/agents/research/best-practices-agent.md +189 -189
  12. package/agents/research/codebase-patterns-agent.md +147 -147
  13. package/agents/research/framework-docs-agent.md +178 -178
  14. package/agents/research/security-advisory-agent.md +203 -203
  15. package/agents/review/architecture-reviewer.md +107 -107
  16. package/agents/review/complexity-reviewer.md +116 -116
  17. package/agents/review/data-integrity-reviewer.md +88 -88
  18. package/agents/review/git-history-reviewer.md +103 -103
  19. package/agents/review/performance-reviewer.md +86 -86
  20. package/agents/review/python-reviewer.md +150 -150
  21. package/agents/review/rails-reviewer.md +139 -139
  22. package/agents/review/react-reviewer.md +144 -144
  23. package/agents/review/security-reviewer.md +80 -80
  24. package/agents/review/simplicity-reviewer.md +140 -140
  25. package/agents/review/test-coverage-reviewer.md +116 -116
  26. package/agents/review/typescript-reviewer.md +127 -127
  27. package/agents/searcher.md +54 -54
  28. package/agents/simplifier.md +120 -120
  29. package/agents/tester.md +49 -49
  30. package/agents/ui-previewer.md +129 -129
  31. package/commands/vibe.analyze.md +356 -356
  32. package/commands/vibe.reason.md +329 -329
  33. package/commands/vibe.review.md +326 -326
  34. package/commands/vibe.run.md +1031 -1031
  35. package/commands/vibe.spec.md +1022 -1022
  36. package/commands/vibe.utils.md +296 -202
  37. package/commands/vibe.verify.md +375 -375
  38. package/dist/cli/collaborator.js +52 -52
  39. package/dist/cli/detect.js +32 -32
  40. package/dist/cli/index.d.ts.map +1 -1
  41. package/dist/cli/index.js +102 -112
  42. package/dist/cli/index.js.map +1 -1
  43. package/dist/cli/llm.js +144 -144
  44. package/dist/cli/mcp.d.ts +49 -0
  45. package/dist/cli/mcp.d.ts.map +1 -0
  46. package/dist/cli/mcp.js +169 -0
  47. package/dist/cli/mcp.js.map +1 -0
  48. package/dist/lib/PythonParser.js +108 -108
  49. package/dist/lib/gemini-mcp.d.ts +10 -0
  50. package/dist/lib/gemini-mcp.d.ts.map +1 -0
  51. package/dist/lib/gemini-mcp.js +353 -0
  52. package/dist/lib/gemini-mcp.js.map +1 -0
  53. package/dist/lib/gpt-api.js +4 -4
  54. package/dist/lib/gpt-mcp.d.ts +10 -0
  55. package/dist/lib/gpt-mcp.d.ts.map +1 -0
  56. package/dist/lib/gpt-mcp.js +352 -0
  57. package/dist/lib/gpt-mcp.js.map +1 -0
  58. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  59. package/dist/lib/memory/MemorySearch.js +20 -20
  60. package/dist/lib/memory/MemoryStorage.js +64 -64
  61. package/dist/tools/analytics/getUsageAnalytics.d.ts +10 -0
  62. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +1 -0
  63. package/dist/tools/analytics/getUsageAnalytics.js +246 -0
  64. package/dist/tools/analytics/getUsageAnalytics.js.map +1 -0
  65. package/dist/tools/analytics/index.d.ts +5 -0
  66. package/dist/tools/analytics/index.d.ts.map +1 -0
  67. package/dist/tools/analytics/index.js +5 -0
  68. package/dist/tools/analytics/index.js.map +1 -0
  69. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  70. package/dist/tools/convention/getCodingGuide.d.ts +7 -0
  71. package/dist/tools/convention/getCodingGuide.d.ts.map +1 -0
  72. package/dist/tools/convention/getCodingGuide.js +69 -0
  73. package/dist/tools/convention/getCodingGuide.js.map +1 -0
  74. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  75. package/dist/tools/planning/analyzeRequirements.d.ts +9 -0
  76. package/dist/tools/planning/analyzeRequirements.d.ts.map +1 -0
  77. package/dist/tools/planning/analyzeRequirements.js +171 -0
  78. package/dist/tools/planning/analyzeRequirements.js.map +1 -0
  79. package/dist/tools/planning/createUserStories.d.ts +9 -0
  80. package/dist/tools/planning/createUserStories.d.ts.map +1 -0
  81. package/dist/tools/planning/createUserStories.js +124 -0
  82. package/dist/tools/planning/createUserStories.js.map +1 -0
  83. package/dist/tools/planning/featureRoadmap.d.ts +10 -0
  84. package/dist/tools/planning/featureRoadmap.d.ts.map +1 -0
  85. package/dist/tools/planning/featureRoadmap.js +207 -0
  86. package/dist/tools/planning/featureRoadmap.js.map +1 -0
  87. package/dist/tools/planning/generatePrd.d.ts +11 -0
  88. package/dist/tools/planning/generatePrd.d.ts.map +1 -0
  89. package/dist/tools/planning/generatePrd.js +161 -0
  90. package/dist/tools/planning/generatePrd.js.map +1 -0
  91. package/dist/tools/planning/index.d.ts +8 -0
  92. package/dist/tools/planning/index.d.ts.map +1 -0
  93. package/dist/tools/planning/index.js +8 -0
  94. package/dist/tools/planning/index.js.map +1 -0
  95. package/dist/tools/prompt/analyzePrompt.d.ts +7 -0
  96. package/dist/tools/prompt/analyzePrompt.d.ts.map +1 -0
  97. package/dist/tools/prompt/analyzePrompt.js +150 -0
  98. package/dist/tools/prompt/analyzePrompt.js.map +1 -0
  99. package/dist/tools/prompt/enhancePrompt.d.ts +8 -0
  100. package/dist/tools/prompt/enhancePrompt.d.ts.map +1 -0
  101. package/dist/tools/prompt/enhancePrompt.js +110 -0
  102. package/dist/tools/prompt/enhancePrompt.js.map +1 -0
  103. package/dist/tools/prompt/enhancePromptGemini.d.ts +8 -0
  104. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +1 -0
  105. package/dist/tools/prompt/enhancePromptGemini.js +332 -0
  106. package/dist/tools/prompt/enhancePromptGemini.js.map +1 -0
  107. package/dist/tools/prompt/index.d.ts +7 -0
  108. package/dist/tools/prompt/index.d.ts.map +1 -0
  109. package/dist/tools/prompt/index.js +7 -0
  110. package/dist/tools/prompt/index.js.map +1 -0
  111. package/dist/tools/reasoning/applyReasoningFramework.d.ts +8 -0
  112. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +1 -0
  113. package/dist/tools/reasoning/applyReasoningFramework.js +266 -0
  114. package/dist/tools/reasoning/applyReasoningFramework.js.map +1 -0
  115. package/dist/tools/reasoning/index.d.ts +5 -0
  116. package/dist/tools/reasoning/index.d.ts.map +1 -0
  117. package/dist/tools/reasoning/index.js +5 -0
  118. package/dist/tools/reasoning/index.js.map +1 -0
  119. package/dist/tools/thinking/analyzeProblem.d.ts +7 -0
  120. package/dist/tools/thinking/analyzeProblem.d.ts.map +1 -0
  121. package/dist/tools/thinking/analyzeProblem.js +55 -0
  122. package/dist/tools/thinking/analyzeProblem.js.map +1 -0
  123. package/dist/tools/thinking/breakDownProblem.d.ts +8 -0
  124. package/dist/tools/thinking/breakDownProblem.d.ts.map +1 -0
  125. package/dist/tools/thinking/breakDownProblem.js +145 -0
  126. package/dist/tools/thinking/breakDownProblem.js.map +1 -0
  127. package/dist/tools/thinking/createThinkingChain.d.ts +7 -0
  128. package/dist/tools/thinking/createThinkingChain.d.ts.map +1 -0
  129. package/dist/tools/thinking/createThinkingChain.js +44 -0
  130. package/dist/tools/thinking/createThinkingChain.js.map +1 -0
  131. package/dist/tools/thinking/formatAsPlan.d.ts +9 -0
  132. package/dist/tools/thinking/formatAsPlan.d.ts.map +1 -0
  133. package/dist/tools/thinking/formatAsPlan.js +78 -0
  134. package/dist/tools/thinking/formatAsPlan.js.map +1 -0
  135. package/dist/tools/thinking/index.d.ts +10 -0
  136. package/dist/tools/thinking/index.d.ts.map +1 -0
  137. package/dist/tools/thinking/index.js +10 -0
  138. package/dist/tools/thinking/index.js.map +1 -0
  139. package/dist/tools/thinking/stepByStepAnalysis.d.ts +8 -0
  140. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +1 -0
  141. package/dist/tools/thinking/stepByStepAnalysis.js +63 -0
  142. package/dist/tools/thinking/stepByStepAnalysis.js.map +1 -0
  143. package/dist/tools/thinking/thinkAloudProcess.d.ts +8 -0
  144. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +1 -0
  145. package/dist/tools/thinking/thinkAloudProcess.js +80 -0
  146. package/dist/tools/thinking/thinkAloudProcess.js.map +1 -0
  147. package/hooks/hooks.json +204 -195
  148. package/hooks/scripts/code-check.js +22 -22
  149. package/hooks/scripts/code-review.js +22 -22
  150. package/hooks/scripts/complexity.js +22 -22
  151. package/hooks/scripts/compound.js +23 -23
  152. package/hooks/scripts/context-save.js +33 -33
  153. package/hooks/scripts/llm-orchestrate.js +171 -171
  154. package/hooks/scripts/post-edit.js +97 -0
  155. package/hooks/scripts/recall.js +22 -22
  156. package/hooks/scripts/session-start.js +30 -30
  157. package/hooks/scripts/utils.js +97 -65
  158. package/languages/csharp-unity.md +515 -515
  159. package/languages/gdscript-godot.md +470 -470
  160. package/languages/ruby-rails.md +489 -489
  161. package/languages/typescript-angular.md +433 -433
  162. package/languages/typescript-astro.md +416 -416
  163. package/languages/typescript-electron.md +406 -406
  164. package/languages/typescript-nestjs.md +524 -524
  165. package/languages/typescript-svelte.md +407 -407
  166. package/languages/typescript-tauri.md +365 -365
  167. package/package.json +83 -83
  168. package/skills/context7-usage.md +102 -102
  169. package/skills/git-worktree.md +181 -181
  170. package/skills/parallel-research.md +77 -77
  171. package/skills/priority-todos.md +239 -239
  172. package/skills/tool-fallback.md +190 -190
  173. package/skills/vibe-capabilities.md +161 -161
  174. package/vibe/constitution.md +227 -227
  175. package/vibe/rules/core/communication-guide.md +98 -98
  176. package/vibe/rules/core/development-philosophy.md +52 -52
  177. package/vibe/rules/core/quick-start.md +102 -102
  178. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  179. package/vibe/rules/quality/checklist.md +276 -276
  180. package/vibe/rules/quality/testing-strategy.md +440 -440
  181. package/vibe/rules/standards/anti-patterns.md +541 -369
  182. package/vibe/rules/standards/code-structure.md +291 -291
  183. package/vibe/rules/standards/complexity-metrics.md +313 -313
  184. package/vibe/rules/standards/naming-conventions.md +198 -198
  185. package/vibe/setup.sh +31 -31
  186. package/vibe/templates/constitution-template.md +252 -252
  187. package/vibe/templates/contract-backend-template.md +526 -526
  188. package/vibe/templates/contract-frontend-template.md +599 -599
  189. package/vibe/templates/feature-template.md +96 -96
  190. package/vibe/templates/spec-template.md +221 -221
@@ -1,326 +1,326 @@
1
- ---
2
- description: Multi-agent parallel code review with priority-based findings
3
- argument-hint: "PR number, branch name, or file path"
4
- ---
5
-
6
- # /vibe.review
7
-
8
- **Parallel Agent Code Review** - 13+ specialists review simultaneously
9
-
10
- ## Usage
11
-
12
- ```
13
- /vibe.review # Review current branch
14
- /vibe.review PR#123 # Review specific PR
15
- /vibe.review feature/login # Review specific branch
16
- /vibe.review src/api/ # Review specific path
17
- ```
18
-
19
- ## Priority System
20
-
21
- | Priority | Criteria | Action |
22
- |----------|----------|--------|
23
- | P1 | Security vulnerabilities, data loss, crashes | Block merge, fix immediately |
24
- | P2 | Performance issues, architecture violations, missing tests | Fix before merge |
25
- | P3 | Style, refactoring suggestions, documentation | Add to backlog |
26
-
27
- ## Process
28
-
29
- ### Phase 1: Tech Stack Detection
30
-
31
- Detect project tech stack FIRST before launching reviewers:
32
-
33
- ```
34
- Read package.json -> TypeScript, React, Node.js
35
- Read pyproject.toml -> Python, FastAPI, Django
36
- Read Gemfile -> Ruby, Rails
37
- Read pubspec.yaml -> Flutter, Dart
38
- Read go.mod -> Go
39
- Read CLAUDE.md -> Explicit tech stack declaration
40
- ```
41
-
42
- ### Phase 2: Parallel Agent Review (STACK-AWARE) via Orchestrator
43
-
44
- **Execution via Orchestrator (12+ agents in parallel):**
45
- ```bash
46
- node -e "import('@su-record/vibe/orchestrator').then(o => o.review(['FILE_PATHS'], ['DETECTED_STACKS']).then(r => console.log(r.content[0].text)))"
47
- ```
48
-
49
- **Example:**
50
- ```bash
51
- # Review changed files with TypeScript + React stack
52
- node -e "import('@su-record/vibe/orchestrator').then(o => o.review(['src/api/users.ts', 'src/components/Login.tsx'], ['TypeScript', 'React']).then(r => console.log(r.content[0].text)))"
53
- ```
54
-
55
- **Core Reviewers (Always Run):**
56
- | Agent | Focus |
57
- |-------|-------|
58
- | security-reviewer | OWASP Top 10, vulnerabilities |
59
- | data-integrity-reviewer | Data validation, constraints |
60
- | performance-reviewer | N+1 queries, memory leaks |
61
- | architecture-reviewer | Layer violations, cycles |
62
- | complexity-reviewer | Cyclomatic complexity, length |
63
- | simplicity-reviewer | Over-abstraction, dead code |
64
- | git-history-reviewer | Churn files, risk patterns |
65
- | test-coverage-reviewer | Missing tests, edge cases |
66
-
67
- **Stack-Specific Reviewers (Conditional):**
68
- | Agent | Condition |
69
- |-------|-----------|
70
- | python-reviewer | .py files in diff |
71
- | typescript-reviewer | .ts/.tsx files OR tsconfig |
72
- | rails-reviewer | Gemfile has rails |
73
- | react-reviewer | package.json has react |
74
-
75
- ### Phase 3: Deep Analysis
76
-
77
- After agent results:
78
-
79
- 1. **System Context**: Component interactions, data flow, external dependencies
80
- 2. **Stakeholder Perspectives**: Developers, Ops, Security, Business
81
- 3. **Edge Cases**: Race conditions, resource exhaustion, network failures
82
- 4. **Multiple Angles**: Technical excellence, business value, risk management
83
-
84
- ### Phase 4: Findings Synthesis
85
-
86
- ```
87
- REVIEW FINDINGS
88
-
89
- P1 CRITICAL (Blocks Merge) - N issues
90
- 1. [SECURITY] SQL Injection in user query
91
- Location: src/api/users.py:42
92
- Fix: Use parameterized queries
93
-
94
- P2 IMPORTANT (Should Fix) - N issues
95
- 2. [PERF] N+1 query in user list
96
- 3. [ARCH] Circular dependency detected
97
-
98
- P3 NICE-TO-HAVE (Enhancement) - N issues
99
- 4. [STYLE] Consider extracting helper function
100
- ```
101
-
102
- ### Phase 5: Auto-Fix (P1/P2)
103
-
104
- **Auto-fixable issues are resolved immediately:**
105
-
106
- ```
107
- 🔧 AUTO-FIX Starting...
108
-
109
- P1 Critical:
110
- 1. [SECURITY] SQL Injection → Fixed with parameterized query ✅
111
- 2. [DATA] Missing transaction rollback → Added try-finally ✅
112
-
113
- P2 Important:
114
- 3. [PERF] N+1 query → Added select_related ✅
115
- 4. [ARCH] Circular dependency → Separated dependencies ✅
116
- 5. [TEST] Missing edge case → Added test ✅
117
-
118
- 🔍 Re-validating...
119
- ✅ Build successful
120
- ✅ Tests passed
121
-
122
- ✅ 5 issues auto-fixed!
123
- ```
124
-
125
- **Cases that cannot be auto-fixed:**
126
- - Requires large-scale architecture changes
127
- - Requires business logic decisions
128
- - Requires user confirmation
129
-
130
- → Manual handling instructions in Phase 6
131
-
132
- ### Phase 6: Todo File Creation (Items Requiring Manual Handling)
133
-
134
- Save **remaining** findings to `.claude/vibe/todos/`:
135
-
136
- ```
137
- {priority}-{category}-{short-desc}.md
138
-
139
- Examples:
140
- - P2-arch-large-refactor.md (Cannot be auto-fixed)
141
- - P3-style-extract-helper.md (Backlog)
142
- ```
143
-
144
- ## Output
145
-
146
- ```
147
- CODE REVIEW SUMMARY
148
- PR #123: Add user authentication
149
-
150
- Reviewers: 13 agents | Duration: 45s
151
-
152
- Score: 92/100 (Good) ← Score after auto-fix
153
-
154
- Issues Found:
155
- - P1 Critical: 2 → 0 (✅ Auto-fixed)
156
- - P2 Important: 5 → 1 (✅ 4 auto-fixed)
157
- - P3 Nice-to-have: 3 (Backlog)
158
-
159
- Auto-Fixed: 6 issues
160
- - [SECURITY] SQL Injection ✅
161
- - [DATA] Transaction rollback ✅
162
- - [PERF] N+1 query ✅
163
- - [ARCH] Circular dependency ✅
164
- - [PERF] Unnecessary loop ✅
165
- - [TEST] Missing edge case ✅
166
-
167
- Remaining (Manual handling required):
168
- - P2-arch-large-refactor.md (Architecture decision required)
169
- - P3-style-extract-helper.md (Backlog)
170
- - P3-docs-add-readme.md (Backlog)
171
-
172
- ✅ MERGE READY (P1/P2 resolved)
173
- ```
174
-
175
- ### Phase 7: Guide to Fix Workflow (Manual Handling Items)
176
-
177
- **Choose workflow when handling remaining issues:**
178
-
179
- ```
180
- ## Fix Workflow
181
-
182
- Choose a workflow to fix the discovered issues:
183
-
184
- | Task Scale | Recommended Approach |
185
- |------------|---------------------|
186
- | Simple fix (1-2 files) | Plan Mode |
187
- | Complex fix (3+ files, validation needed) | /vibe.spec |
188
-
189
- 1. `/vibe.spec "fix: issue-name"` - VIBE workflow (SPEC validation + re-review)
190
- 2. Plan Mode - Quick fix (for simple tasks)
191
-
192
- Which approach would you like to proceed with?
193
- ```
194
-
195
- - Wait for user's choice before proceeding
196
- - If user chooses VIBE → wait for `/vibe.spec` command
197
- - If user chooses Plan Mode → proceed with EnterPlanMode
198
-
199
- ## Vibe Tools (Code Analysis)
200
-
201
- ### Tool Invocation
202
-
203
- All tools are called via:
204
-
205
- ```bash
206
- node -e "import('@su-record/vibe/tools').then(t => t.TOOL_NAME({...args}).then(r => console.log(r.content[0].text)))"
207
- ```
208
-
209
- ### Recommended Tools for Review
210
-
211
- | Tool | Purpose | When to Use |
212
- |------|---------|-------------|
213
- | `validateCodeQuality` | Code quality check | Overall code quality scan |
214
- | `analyzeComplexity` | Complexity metrics | Check function complexity |
215
- | `findSymbol` | Find definitions | Locate implementations |
216
- | `findReferences` | Find all usages | Track symbol usage |
217
- | `saveMemory` | Save findings | Store important review findings |
218
-
219
- ### Example Tool Usage in Review
220
-
221
- **1. Validate code quality before review:**
222
-
223
- ```bash
224
- node -e "import('@su-record/vibe/tools').then(t => t.validateCodeQuality({targetPath: 'src/', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
225
- ```
226
-
227
- **2. Analyze complexity of changed files:**
228
-
229
- ```bash
230
- node -e "import('@su-record/vibe/tools').then(t => t.analyzeComplexity({targetPath: 'src/api/users.ts', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
231
- ```
232
-
233
- **3. Save critical finding for reference:**
234
-
235
- ```bash
236
- node -e "import('@su-record/vibe/tools').then(t => t.saveMemory({key: 'review-pr123-critical', value: 'SQL injection in users.py:42', category: 'review', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
237
- ```
238
-
239
- ---
240
-
241
- ## Quality Gate (Mandatory)
242
-
243
- ### Review Quality Checklist
244
-
245
- Before completing review, ALL items must be verified:
246
-
247
- | Category | Check Item | Weight |
248
- |----------|------------|--------|
249
- | **Security** | OWASP Top 10 vulnerabilities scanned | 20% |
250
- | **Security** | Authentication/authorization verified | 10% |
251
- | **Security** | Sensitive data exposure checked | 10% |
252
- | **Performance** | N+1 queries detected and flagged | 10% |
253
- | **Performance** | Memory leaks checked | 5% |
254
- | **Architecture** | Layer violations detected | 10% |
255
- | **Architecture** | Circular dependencies checked | 5% |
256
- | **Code Quality** | Complexity limits enforced | 10% |
257
- | **Code Quality** | Forbidden patterns detected | 10% |
258
- | **Testing** | Test coverage gaps identified | 5% |
259
- | **Documentation** | Public API documentation checked | 5% |
260
-
261
- ### Review Score Calculation
262
-
263
- ```
264
- Score = 100 - (P1 × 20) - (P2 × 5) - (P3 × 1)
265
-
266
- Grades:
267
- - 95-100: ✅ EXCELLENT - Merge ready
268
- - 85-94: ✅ GOOD - Minor fixes recommended
269
- - 70-84: ⚠️ FAIR - Must fix P2 issues
270
- - 0-69: ❌ POOR - Block merge, fix P1/P2
271
- ```
272
-
273
- ### Merge Decision Matrix
274
-
275
- | P1 Count | P2 Count | Decision |
276
- |----------|----------|----------|
277
- | 0 | 0-2 | ✅ MERGE READY |
278
- | 0 | 3+ | ⚠️ FIX P2 FIRST |
279
- | 1+ | Any | ❌ BLOCKED |
280
-
281
- ### Auto-Fix Capability Matrix
282
-
283
- | Issue Type | Auto-Fixable | Method |
284
- |------------|--------------|--------|
285
- | SQL Injection | ✅ Yes | Parameterized query |
286
- | Missing transaction | ✅ Yes | Add try-finally |
287
- | N+1 query | ✅ Yes | Add eager loading |
288
- | Circular dependency | ⚠️ Partial | Suggest restructure |
289
- | Missing tests | ✅ Yes | Generate test skeleton |
290
- | Hardcoded secrets | ❌ No | Flag for manual review |
291
- | Architecture violation | ❌ No | Suggest refactoring plan |
292
-
293
- ### Forbidden Patterns (P1 Critical)
294
-
295
- | Pattern | Risk Level | Detection Method |
296
- |---------|------------|------------------|
297
- | Hardcoded credentials | Critical | Regex + entropy scan |
298
- | SQL string concatenation | Critical | AST analysis |
299
- | `eval()` or `exec()` | Critical | AST analysis |
300
- | Disabled CSRF protection | Critical | Config scan |
301
- | Debug mode in production | Critical | Config scan |
302
- | Unvalidated redirects | High | URL pattern scan |
303
-
304
- ### Review Output Requirements
305
-
306
- Every review MUST produce:
307
-
308
- 1. **Summary Statistics**
309
- - Total issues by priority (P1/P2/P3)
310
- - Auto-fixed count
311
- - Remaining manual fixes
312
-
313
- 2. **Detailed Findings**
314
- - File path and line number
315
- - Issue description
316
- - Recommended fix
317
- - Auto-fix status (applied/pending/manual)
318
-
319
- 3. **Quality Score**
320
- - Numerical score (0-100)
321
- - Grade (EXCELLENT/GOOD/FAIR/POOR)
322
- - Merge recommendation
323
-
324
- ---
325
-
326
- ARGUMENTS: $ARGUMENTS
1
+ ---
2
+ description: Multi-agent parallel code review with priority-based findings
3
+ argument-hint: "PR number, branch name, or file path"
4
+ ---
5
+
6
+ # /vibe.review
7
+
8
+ **Parallel Agent Code Review** - 13+ specialists review simultaneously
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /vibe.review # Review current branch
14
+ /vibe.review PR#123 # Review specific PR
15
+ /vibe.review feature/login # Review specific branch
16
+ /vibe.review src/api/ # Review specific path
17
+ ```
18
+
19
+ ## Priority System
20
+
21
+ | Priority | Criteria | Action |
22
+ |----------|----------|--------|
23
+ | P1 | Security vulnerabilities, data loss, crashes | Block merge, fix immediately |
24
+ | P2 | Performance issues, architecture violations, missing tests | Fix before merge |
25
+ | P3 | Style, refactoring suggestions, documentation | Add to backlog |
26
+
27
+ ## Process
28
+
29
+ ### Phase 1: Tech Stack Detection
30
+
31
+ Detect project tech stack FIRST before launching reviewers:
32
+
33
+ ```
34
+ Read package.json -> TypeScript, React, Node.js
35
+ Read pyproject.toml -> Python, FastAPI, Django
36
+ Read Gemfile -> Ruby, Rails
37
+ Read pubspec.yaml -> Flutter, Dart
38
+ Read go.mod -> Go
39
+ Read CLAUDE.md -> Explicit tech stack declaration
40
+ ```
41
+
42
+ ### Phase 2: Parallel Agent Review (STACK-AWARE) via Orchestrator
43
+
44
+ **Execution via Orchestrator (12+ agents in parallel):**
45
+ ```bash
46
+ node -e "import('@su-record/vibe/orchestrator').then(o => o.review(['FILE_PATHS'], ['DETECTED_STACKS']).then(r => console.log(r.content[0].text)))"
47
+ ```
48
+
49
+ **Example:**
50
+ ```bash
51
+ # Review changed files with TypeScript + React stack
52
+ node -e "import('@su-record/vibe/orchestrator').then(o => o.review(['src/api/users.ts', 'src/components/Login.tsx'], ['TypeScript', 'React']).then(r => console.log(r.content[0].text)))"
53
+ ```
54
+
55
+ **Core Reviewers (Always Run):**
56
+ | Agent | Focus |
57
+ |-------|-------|
58
+ | security-reviewer | OWASP Top 10, vulnerabilities |
59
+ | data-integrity-reviewer | Data validation, constraints |
60
+ | performance-reviewer | N+1 queries, memory leaks |
61
+ | architecture-reviewer | Layer violations, cycles |
62
+ | complexity-reviewer | Cyclomatic complexity, length |
63
+ | simplicity-reviewer | Over-abstraction, dead code |
64
+ | git-history-reviewer | Churn files, risk patterns |
65
+ | test-coverage-reviewer | Missing tests, edge cases |
66
+
67
+ **Stack-Specific Reviewers (Conditional):**
68
+ | Agent | Condition |
69
+ |-------|-----------|
70
+ | python-reviewer | .py files in diff |
71
+ | typescript-reviewer | .ts/.tsx files OR tsconfig |
72
+ | rails-reviewer | Gemfile has rails |
73
+ | react-reviewer | package.json has react |
74
+
75
+ ### Phase 3: Deep Analysis
76
+
77
+ After agent results:
78
+
79
+ 1. **System Context**: Component interactions, data flow, external dependencies
80
+ 2. **Stakeholder Perspectives**: Developers, Ops, Security, Business
81
+ 3. **Edge Cases**: Race conditions, resource exhaustion, network failures
82
+ 4. **Multiple Angles**: Technical excellence, business value, risk management
83
+
84
+ ### Phase 4: Findings Synthesis
85
+
86
+ ```
87
+ REVIEW FINDINGS
88
+
89
+ P1 CRITICAL (Blocks Merge) - N issues
90
+ 1. [SECURITY] SQL Injection in user query
91
+ Location: src/api/users.py:42
92
+ Fix: Use parameterized queries
93
+
94
+ P2 IMPORTANT (Should Fix) - N issues
95
+ 2. [PERF] N+1 query in user list
96
+ 3. [ARCH] Circular dependency detected
97
+
98
+ P3 NICE-TO-HAVE (Enhancement) - N issues
99
+ 4. [STYLE] Consider extracting helper function
100
+ ```
101
+
102
+ ### Phase 5: Auto-Fix (P1/P2)
103
+
104
+ **Auto-fixable issues are resolved immediately:**
105
+
106
+ ```
107
+ 🔧 AUTO-FIX Starting...
108
+
109
+ P1 Critical:
110
+ 1. [SECURITY] SQL Injection → Fixed with parameterized query ✅
111
+ 2. [DATA] Missing transaction rollback → Added try-finally ✅
112
+
113
+ P2 Important:
114
+ 3. [PERF] N+1 query → Added select_related ✅
115
+ 4. [ARCH] Circular dependency → Separated dependencies ✅
116
+ 5. [TEST] Missing edge case → Added test ✅
117
+
118
+ 🔍 Re-validating...
119
+ ✅ Build successful
120
+ ✅ Tests passed
121
+
122
+ ✅ 5 issues auto-fixed!
123
+ ```
124
+
125
+ **Cases that cannot be auto-fixed:**
126
+ - Requires large-scale architecture changes
127
+ - Requires business logic decisions
128
+ - Requires user confirmation
129
+
130
+ → Manual handling instructions in Phase 6
131
+
132
+ ### Phase 6: Todo File Creation (Items Requiring Manual Handling)
133
+
134
+ Save **remaining** findings to `.claude/vibe/todos/`:
135
+
136
+ ```
137
+ {priority}-{category}-{short-desc}.md
138
+
139
+ Examples:
140
+ - P2-arch-large-refactor.md (Cannot be auto-fixed)
141
+ - P3-style-extract-helper.md (Backlog)
142
+ ```
143
+
144
+ ## Output
145
+
146
+ ```
147
+ CODE REVIEW SUMMARY
148
+ PR #123: Add user authentication
149
+
150
+ Reviewers: 13 agents | Duration: 45s
151
+
152
+ Score: 92/100 (Good) ← Score after auto-fix
153
+
154
+ Issues Found:
155
+ - P1 Critical: 2 → 0 (✅ Auto-fixed)
156
+ - P2 Important: 5 → 1 (✅ 4 auto-fixed)
157
+ - P3 Nice-to-have: 3 (Backlog)
158
+
159
+ Auto-Fixed: 6 issues
160
+ - [SECURITY] SQL Injection ✅
161
+ - [DATA] Transaction rollback ✅
162
+ - [PERF] N+1 query ✅
163
+ - [ARCH] Circular dependency ✅
164
+ - [PERF] Unnecessary loop ✅
165
+ - [TEST] Missing edge case ✅
166
+
167
+ Remaining (Manual handling required):
168
+ - P2-arch-large-refactor.md (Architecture decision required)
169
+ - P3-style-extract-helper.md (Backlog)
170
+ - P3-docs-add-readme.md (Backlog)
171
+
172
+ ✅ MERGE READY (P1/P2 resolved)
173
+ ```
174
+
175
+ ### Phase 7: Guide to Fix Workflow (Manual Handling Items)
176
+
177
+ **Choose workflow when handling remaining issues:**
178
+
179
+ ```
180
+ ## Fix Workflow
181
+
182
+ Choose a workflow to fix the discovered issues:
183
+
184
+ | Task Scale | Recommended Approach |
185
+ |------------|---------------------|
186
+ | Simple fix (1-2 files) | Plan Mode |
187
+ | Complex fix (3+ files, validation needed) | /vibe.spec |
188
+
189
+ 1. `/vibe.spec "fix: issue-name"` - VIBE workflow (SPEC validation + re-review)
190
+ 2. Plan Mode - Quick fix (for simple tasks)
191
+
192
+ Which approach would you like to proceed with?
193
+ ```
194
+
195
+ - Wait for user's choice before proceeding
196
+ - If user chooses VIBE → wait for `/vibe.spec` command
197
+ - If user chooses Plan Mode → proceed with EnterPlanMode
198
+
199
+ ## Vibe Tools (Code Analysis)
200
+
201
+ ### Tool Invocation
202
+
203
+ All tools are called via:
204
+
205
+ ```bash
206
+ node -e "import('@su-record/vibe/tools').then(t => t.TOOL_NAME({...args}).then(r => console.log(r.content[0].text)))"
207
+ ```
208
+
209
+ ### Recommended Tools for Review
210
+
211
+ | Tool | Purpose | When to Use |
212
+ |------|---------|-------------|
213
+ | `validateCodeQuality` | Code quality check | Overall code quality scan |
214
+ | `analyzeComplexity` | Complexity metrics | Check function complexity |
215
+ | `findSymbol` | Find definitions | Locate implementations |
216
+ | `findReferences` | Find all usages | Track symbol usage |
217
+ | `saveMemory` | Save findings | Store important review findings |
218
+
219
+ ### Example Tool Usage in Review
220
+
221
+ **1. Validate code quality before review:**
222
+
223
+ ```bash
224
+ node -e "import('@su-record/vibe/tools').then(t => t.validateCodeQuality({targetPath: 'src/', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
225
+ ```
226
+
227
+ **2. Analyze complexity of changed files:**
228
+
229
+ ```bash
230
+ node -e "import('@su-record/vibe/tools').then(t => t.analyzeComplexity({targetPath: 'src/api/users.ts', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
231
+ ```
232
+
233
+ **3. Save critical finding for reference:**
234
+
235
+ ```bash
236
+ node -e "import('@su-record/vibe/tools').then(t => t.saveMemory({key: 'review-pr123-critical', value: 'SQL injection in users.py:42', category: 'review', projectPath: process.cwd()}).then(r => console.log(r.content[0].text)))"
237
+ ```
238
+
239
+ ---
240
+
241
+ ## Quality Gate (Mandatory)
242
+
243
+ ### Review Quality Checklist
244
+
245
+ Before completing review, ALL items must be verified:
246
+
247
+ | Category | Check Item | Weight |
248
+ |----------|------------|--------|
249
+ | **Security** | OWASP Top 10 vulnerabilities scanned | 20% |
250
+ | **Security** | Authentication/authorization verified | 10% |
251
+ | **Security** | Sensitive data exposure checked | 10% |
252
+ | **Performance** | N+1 queries detected and flagged | 10% |
253
+ | **Performance** | Memory leaks checked | 5% |
254
+ | **Architecture** | Layer violations detected | 10% |
255
+ | **Architecture** | Circular dependencies checked | 5% |
256
+ | **Code Quality** | Complexity limits enforced | 10% |
257
+ | **Code Quality** | Forbidden patterns detected | 10% |
258
+ | **Testing** | Test coverage gaps identified | 5% |
259
+ | **Documentation** | Public API documentation checked | 5% |
260
+
261
+ ### Review Score Calculation
262
+
263
+ ```
264
+ Score = 100 - (P1 × 20) - (P2 × 5) - (P3 × 1)
265
+
266
+ Grades:
267
+ - 95-100: ✅ EXCELLENT - Merge ready
268
+ - 85-94: ✅ GOOD - Minor fixes recommended
269
+ - 70-84: ⚠️ FAIR - Must fix P2 issues
270
+ - 0-69: ❌ POOR - Block merge, fix P1/P2
271
+ ```
272
+
273
+ ### Merge Decision Matrix
274
+
275
+ | P1 Count | P2 Count | Decision |
276
+ |----------|----------|----------|
277
+ | 0 | 0-2 | ✅ MERGE READY |
278
+ | 0 | 3+ | ⚠️ FIX P2 FIRST |
279
+ | 1+ | Any | ❌ BLOCKED |
280
+
281
+ ### Auto-Fix Capability Matrix
282
+
283
+ | Issue Type | Auto-Fixable | Method |
284
+ |------------|--------------|--------|
285
+ | SQL Injection | ✅ Yes | Parameterized query |
286
+ | Missing transaction | ✅ Yes | Add try-finally |
287
+ | N+1 query | ✅ Yes | Add eager loading |
288
+ | Circular dependency | ⚠️ Partial | Suggest restructure |
289
+ | Missing tests | ✅ Yes | Generate test skeleton |
290
+ | Hardcoded secrets | ❌ No | Flag for manual review |
291
+ | Architecture violation | ❌ No | Suggest refactoring plan |
292
+
293
+ ### Forbidden Patterns (P1 Critical)
294
+
295
+ | Pattern | Risk Level | Detection Method |
296
+ |---------|------------|------------------|
297
+ | Hardcoded credentials | Critical | Regex + entropy scan |
298
+ | SQL string concatenation | Critical | AST analysis |
299
+ | `eval()` or `exec()` | Critical | AST analysis |
300
+ | Disabled CSRF protection | Critical | Config scan |
301
+ | Debug mode in production | Critical | Config scan |
302
+ | Unvalidated redirects | High | URL pattern scan |
303
+
304
+ ### Review Output Requirements
305
+
306
+ Every review MUST produce:
307
+
308
+ 1. **Summary Statistics**
309
+ - Total issues by priority (P1/P2/P3)
310
+ - Auto-fixed count
311
+ - Remaining manual fixes
312
+
313
+ 2. **Detailed Findings**
314
+ - File path and line number
315
+ - Issue description
316
+ - Recommended fix
317
+ - Auto-fix status (applied/pending/manual)
318
+
319
+ 3. **Quality Score**
320
+ - Numerical score (0-100)
321
+ - Grade (EXCELLENT/GOOD/FAIR/POOR)
322
+ - Merge recommendation
323
+
324
+ ---
325
+
326
+ ARGUMENTS: $ARGUMENTS