@su-record/vibe 2.5.19 → 2.5.20

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.md CHANGED
@@ -40,14 +40,17 @@ Follow these standards when writing code. See `~/.claude/vibe/rules/` (global) f
40
40
  ## Workflow
41
41
 
42
42
  ```
43
- /vibe.spec → (auto) SPEC review → /vibe.run → (auto) code review → (auto) fix → ✅ Done
43
+ /vibe.spec → /new /vibe.spec.review → /vibe.run → (auto) code review → ✅ Done
44
44
  ```
45
45
 
46
- **Automated Flow:**
47
- 1. `/vibe.spec` - Write SPEC + **(auto)** Gemini review → Auto-apply
48
- 2. `/vibe.run` - Implementation + Gemini review
49
- 3. **(auto)** 13+ agent parallel review
50
- 4. **(auto)** P1/P2 issue auto-fix
46
+ **Flow:**
47
+
48
+ 1. `/vibe.spec` - Write SPEC (requirements + research + draft)
49
+ 2. `/new` - Start new session (clean context)
50
+ 3. `/vibe.spec.review` - GPT/Gemini review (3-round mandatory)
51
+ 4. `/vibe.run` - Implementation + Gemini review
52
+ 5. **(auto)** 13+ agent parallel review
53
+ 6. **(auto)** P1/P2 issue auto-fix
51
54
 
52
55
  ## Plan Mode vs VIBE (Workflow Selection)
53
56
 
@@ -102,6 +105,7 @@ Include `ultrawork` or `ulw` keyword to activate maximum performance mode:
102
105
  | Command | Description |
103
106
  |---------|-------------|
104
107
  | `/vibe.spec "feature-name"` | Write SPEC (PTCF structure) + parallel research |
108
+ | `/vibe.spec.review "feature-name"` | **GPT/Gemini review** (run in new session) |
105
109
  | `/vibe.run "feature-name"` | Execute implementation |
106
110
  | `/vibe.run "feature-name" ultrawork` | **Maximum performance mode** |
107
111
  | `/vibe.verify "feature-name"` | Verification |
@@ -280,8 +280,11 @@ Read ~/.claude/vibe/languages/typescript-react.md
280
280
 
281
281
  **→ IMMEDIATELY run these 4 Bash commands IN PARALLEL (all at once):**
282
282
 
283
+ **🚨 MANDATORY: Copy the EXACT path below. DO NOT modify or use alternative paths.**
284
+
283
285
  ```bash
284
286
  # Cross-platform path (works on Windows/macOS/Linux)
287
+ # ⚠️ COPY THIS EXACTLY - DO NOT USE ~/.claude/ or any other path!
285
288
  VIBE_SCRIPTS="$(node -p "process.env.APPDATA || require('os').homedir() + '/.config'")/vibe/hooks/scripts"
286
289
 
287
290
  # 1. GPT: Best practices
@@ -705,7 +708,7 @@ Grades:
705
708
 
706
709
  #### 7.3 Quality Gate (Auto-verification)
707
710
 
708
- **Minimum 95 points required to proceed to next step (GPT+Gemini review)**
711
+ **Minimum 95 points required to complete SPEC draft**
709
712
 
710
713
  ```
711
714
  SPEC writing complete
@@ -714,7 +717,7 @@ SPEC writing complete
714
717
 
715
718
  Score < 95? → Show missing items → Attempt auto-fix → Re-evaluate
716
719
 
717
- Score ≥ 95 → Proceed to GPT + Gemini review
720
+ Score ≥ 95 → SPEC Draft Complete Handoff to /vibe.spec.review
718
721
  ```
719
722
 
720
723
  #### 7.4 Auto-Fix for Low Score
@@ -728,182 +731,33 @@ If score is below 95, attempt automatic fixes:
728
731
  | Missing error handling | Add common error scenarios |
729
732
  | Missing performance targets | Apply industry standard criteria |
730
733
 
731
- ### 8. SPEC Review (GPT/Gemini) - 3-Round Mandatory Review
732
-
733
- **🚨 CRITICAL: YOU MUST EXECUTE ALL 3 ROUNDS. DO NOT SKIP.**
734
-
735
- ```bash
736
- /vibe.spec "feature" # Default: 3 rounds (MANDATORY)
737
- /vibe.spec "feature" --quick # Quick mode: 1 round only
738
- ```
739
-
740
- **3-Round Review Process (MANDATORY):**
741
-
742
- ```
743
- # 🚨 CRITICAL: This is a FOR loop, NOT a WHILE loop with early exit
744
- # You MUST complete all 3 rounds regardless of feedback
745
-
746
- FOR round_count IN [1, 2, 3]: # EXACTLY 3 rounds, NO early exit
747
-
748
- print(f"━━━ Round {round_count}/3 ━━━")
749
-
750
- # 1. Call GPT + Gemini in parallel (Bash)
751
- gpt_result = Bash("node llm-orchestrate.js gpt ...")
752
- gemini_result = Bash("node llm-orchestrate.js gemini ...")
753
-
754
- # 2. Merge and apply feedback (even if "no issues", still run next round)
755
- apply_feedback(gpt_result, gemini_result)
756
- update_spec()
757
-
758
- # 3. Show progress
759
- print(f"✅ Round {round_count}/3 complete")
760
-
761
- # 4. NO EARLY EXIT - continue to next round
762
- # Even if both say "no issues", proceed to next round for verification
734
+ ### 8. SPEC Draft Complete - Handoff to Review
763
735
 
764
- # After ALL 3 rounds complete:
765
- print(f"🎉 Review complete! All 3 rounds finished.")
766
- ```
767
-
768
- **🚨 ABSOLUTE RULES (NO EXCEPTIONS):**
769
- 1. **MUST complete Round 1** - never skip
770
- 2. **MUST complete Round 2** - even if Round 1 had no issues
771
- 3. **MUST complete Round 3** - even if Round 1 and 2 had no issues
772
- 4. **MUST show "Round X/3"** in output for EACH round
773
- 5. **NO EARLY EXIT** - all 3 rounds are mandatory for quality assurance
774
- 6. **VIOLATION = SPEC NOT COMPLETE** - if less than 3 rounds, SPEC is invalid
736
+ **🚨 IMPORTANT: GPT/Gemini review is now a SEPARATE command**
775
737
 
776
- **Output format for each round:**
738
+ After SPEC draft is complete (score ≥ 95), output the handoff message:
777
739
 
778
740
  ```
779
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
780
- 🔍 SPEC REVIEW - Round 1/3
781
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
782
- [GPT] 3 issues found: ...
783
- [Gemini] 2 issues found: ...
784
- ✅ Applied 5 improvements
785
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
786
-
787
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
788
- 🔍 SPEC REVIEW - Round 2/3
789
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
790
- [GPT] 1 issue found: ...
791
- [Gemini] 0 issues found
792
- ✅ Applied 1 improvement
793
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
741
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
742
+ SPEC DRAFT COMPLETE: {feature-name}
743
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
794
744
 
795
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
796
- 🔍 SPEC REVIEW - Round 3/3
797
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
798
- [GPT] 0 issues found
799
- [Gemini] 0 issues found
800
- ✅ No changes needed
801
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
802
-
803
- 🎉 SPEC Review complete! 3 rounds, 6 total improvements
804
- ```
745
+ 📋 SPEC: .claude/vibe/specs/{feature-name}.spec.md
746
+ 📋 Feature: .claude/vibe/features/{feature-name}.feature
747
+ 📊 Quality Score: {score}/100
805
748
 
806
- **After SPEC draft, execute review loop:**
749
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
750
+ ⚠️ NEXT STEP: Run GPT/Gemini review in a NEW session
807
751
 
752
+ 1. Start new session: /new
753
+ 2. Run review: /vibe.spec.review "{feature-name}"
754
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
808
755
  ```
809
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
810
- 🔍 SPEC REVIEW
811
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
812
-
813
- [Step 1] Sending SPEC to Gemini/GPT...
814
- - Full SPEC content
815
- - Feature file (scenarios)
816
- - Project context
817
-
818
- [Step 2] Review feedback:
819
- ┌─────────────────────────────────────────┐
820
- │ 📝 SPEC Review Feedback │
821
- │ │
822
- │ 1. [Missing] Error handling scenarios │
823
- │ → Recommend adding "retry on network │
824
- │ error" │
825
- │ │
826
- │ 2. [Security] Auth token expiry │
827
- │ handling undefined │
828
- │ → Recommend adding refresh token │
829
- │ flow │
830
- │ │
831
- │ 3. [Edge] Concurrent login policy │
832
- │ undefined │
833
- │ → Need to specify existing session │
834
- │ handling method │
835
- └─────────────────────────────────────────┘
836
-
837
- [Step 3] Auto-applying...
838
- ✅ Added error handling Phase to SPEC Task
839
- ✅ Added token expiry scenario to Feature
840
- ✅ Added concurrent login policy to Constraints
841
-
842
- [Step 4] Re-verifying...
843
- ✅ Ambiguity Scan: 0 issues
844
- ✅ Quality Score: 95/100
845
-
846
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
847
- ✅ SPEC Review complete! 3 improvements applied
848
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
849
- ```
850
-
851
- **MUST: SPEC Review (Required) - GPT + Gemini Parallel Execution**
852
-
853
- 🚨 **Run GPT and Gemini in parallel for cross-validation to ensure quality**
854
-
855
- **Parallel execution (2 Bash calls simultaneously):**
856
-
857
- ```bash
858
- # Cross-platform path (works on Windows/macOS/Linux)
859
- VIBE_SCRIPTS="$(node -p "process.env.APPDATA || require('os').homedir() + '/.config'")/vibe/hooks/scripts"
860
-
861
- # GPT review (code patterns, architecture perspective)
862
- node "$VIBE_SCRIPTS/llm-orchestrate.js" gpt orchestrate-json "Review SPEC for [feature-name]. Stack: [stack]. Summary: [summary]. Check: completeness, error handling, security, edge cases."
863
-
864
- # Gemini review (latest docs, best practices perspective)
865
- node "$VIBE_SCRIPTS/llm-orchestrate.js" gemini orchestrate-json "Review SPEC for [feature-name]. Stack: [stack]. Summary: [summary]. Check: completeness, error handling, security, edge cases."
866
- ```
867
-
868
- **Important:**
869
-
870
- - **Must call both GPT and Gemini** (parallel execution)
871
- - Merge feedback from both models and apply to SPEC
872
- - If one model fails, apply only the remaining result
873
- - Don't send full SPEC, send only **key summary** (save tokens)
874
- - Parse JSON response and auto-apply to SPEC
875
-
876
- **Why parallel execution:**
877
-
878
- | Model | Strengths |
879
- |-------|-----------|
880
- | GPT | Code patterns, architecture, logic validation |
881
- | Gemini | Latest web info, doc search, best practices |
882
-
883
- **Result merge:** Combine feedback from both models for more thorough review
884
-
885
- **Review items:**
886
-
887
- | Category | Check Point |
888
- |----------|-------------|
889
- | Completeness | All user flows covered? |
890
- | Error Handling | Failure scenarios defined? |
891
- | Security | Auth/authorization/data protection? |
892
- | Edge Cases | Boundary conditions handled? |
893
- | Testability | ACs verifiable? |
894
-
895
- **Auto-apply rules:**
896
-
897
- | Feedback Type | Action |
898
- |---------------|--------|
899
- | Missing scenario | Auto-add to Feature |
900
- | Security considerations | Auto-add to Constraints |
901
- | Edge cases | Auto-add to Task Phase |
902
- | Lack of clarity | Supplement the section |
903
756
 
904
- **Fallback handling:**
905
- - On `"status": "fallback"` response Skip and proceed to next step
906
- - On network error Retry once then skip
757
+ **Why separate session?**
758
+ - Prevents context bloat from affecting review accuracy
759
+ - Ensures GPT/Gemini paths and instructions are followed correctly
760
+ - Review command is short and focused
907
761
 
908
762
  ## Output (MANDATORY File Creation)
909
763
 
@@ -0,0 +1,300 @@
1
+ # /vibe.spec.review - SPEC Quality Review
2
+
3
+ Review and enhance SPEC with GPT/Gemini cross-validation.
4
+
5
+ **Purpose:** Run this command in a NEW session after `/vibe.spec` to ensure accurate review execution.
6
+
7
+ ---
8
+
9
+ ## Usage
10
+
11
+ ```bash
12
+ /vibe.spec.review "feature-name"
13
+ ```
14
+
15
+ **Prerequisites:**
16
+ - SPEC file exists: `.claude/vibe/specs/{feature-name}.spec.md`
17
+ - Feature file exists: `.claude/vibe/features/{feature-name}.feature`
18
+
19
+ ---
20
+
21
+ ## Workflow
22
+
23
+ ```
24
+ /vibe.spec "feature" → SPEC 생성 완료
25
+
26
+ /new (새 세션)
27
+
28
+ /vibe.spec.review "feature" → 품질 검증 + GPT/Gemini 리뷰
29
+
30
+ /vibe.run "feature"
31
+ ```
32
+
33
+ ---
34
+
35
+ ## Step 1: Load SPEC Files
36
+
37
+ Read the existing SPEC and Feature files:
38
+
39
+ ```
40
+ .claude/vibe/specs/{feature-name}.spec.md
41
+ .claude/vibe/features/{feature-name}.feature
42
+ ```
43
+
44
+ **Output:**
45
+ ```
46
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
47
+ 📋 SPEC REVIEW: {feature-name}
48
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
49
+
50
+ Loading files...
51
+ ✅ SPEC: .claude/vibe/specs/{feature-name}.spec.md
52
+ ✅ Feature: .claude/vibe/features/{feature-name}.feature
53
+
54
+ Extracted info:
55
+ - Feature: {feature description}
56
+ - Stack: {tech stack}
57
+ - Phases: {number of phases}
58
+ - Scenarios: {number of scenarios}
59
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
60
+ ```
61
+
62
+ ---
63
+
64
+ ## Step 2: Quality Validation (95-Point Gate)
65
+
66
+ **🚨 MANDATORY: Score must be ≥ 95 to proceed**
67
+
68
+ ### 2.1 Quality Checklist
69
+
70
+ | Category | Check Item | Weight |
71
+ |----------|------------|--------|
72
+ | **Completeness** | All user flows included in Task | 15% |
73
+ | **Completeness** | All ACs converted to Feature scenarios | 10% |
74
+ | **Completeness** | Error handling scenarios defined | 10% |
75
+ | **Specificity** | All numbers specified (timeout, limits, etc.) | 15% |
76
+ | **Specificity** | No ambiguous terms ("appropriate", "proper", etc.) | 10% |
77
+ | **Testability** | Each AC is verifiable | 10% |
78
+ | **Testability** | Feature scenarios have concrete Given/When/Then | 10% |
79
+ | **Security** | Auth/permission requirements specified | 10% |
80
+ | **Performance** | Response time/load requirements specified | 10% |
81
+
82
+ ### 2.2 Quality Gate Loop
83
+
84
+ ```python
85
+ max_iterations = 3
86
+ iteration = 0
87
+
88
+ while iteration < max_iterations:
89
+ iteration += 1
90
+ score = calculate_quality_score(spec, feature)
91
+
92
+ print(f"━━━ Quality Check [{iteration}/{max_iterations}] ━━━")
93
+ print(f"Score: {score}/100")
94
+
95
+ if score >= 95:
96
+ print("✅ Quality Gate PASSED")
97
+ break
98
+
99
+ # Auto-fix missing items
100
+ missing_items = identify_missing_items(spec)
101
+ for item in missing_items:
102
+ auto_fix(item)
103
+ update_spec()
104
+ update_feature()
105
+
106
+ print(f"✅ Applied {len(missing_items)} fixes - Re-evaluating...")
107
+
108
+ if score < 95:
109
+ print(f"❌ BLOCKED: Score {score} < 95 after {max_iterations} iterations")
110
+ print("Manual intervention required.")
111
+ ```
112
+
113
+ **Output format:**
114
+ ```
115
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
116
+ 📊 QUALITY GATE [1/3]
117
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
118
+ Score: 87/100 ⚠️ BELOW THRESHOLD (95)
119
+
120
+ Missing items:
121
+ ❌ Error handling scenarios (10%)
122
+ ❌ Performance targets (5%)
123
+
124
+ Auto-fixing...
125
+ ✅ Added network error handling scenario
126
+ ✅ Added response time targets (<500ms)
127
+
128
+ Re-evaluating...
129
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
130
+
131
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
132
+ 📊 QUALITY GATE [2/3]
133
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
134
+ Score: 96/100 ✅ PASSED
135
+
136
+ ✅ Quality Gate PASSED - proceeding to GPT/Gemini review
137
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
138
+ ```
139
+
140
+ ### 2.3 Auto-Fix Rules
141
+
142
+ | Missing Item | Auto-Fix Method |
143
+ |--------------|-----------------|
144
+ | Missing AC | Auto-generate AC based on Task |
145
+ | Numbers not specified | Apply project defaults (timeout 30s, etc.) |
146
+ | Missing error handling | Add common error scenarios |
147
+ | Missing performance targets | Apply industry standard criteria |
148
+ | Missing security | Add auth/data protection requirements |
149
+ | Ambiguous terms | Replace with specific values |
150
+
151
+ ---
152
+
153
+ ## Step 3: GPT/Gemini Review (3-Round Mandatory)
154
+
155
+ **🚨 CRITICAL: Execute ALL 3 rounds. DO NOT skip.**
156
+
157
+ ### 3.1 Path Configuration
158
+
159
+ **🚨 MANDATORY: Copy the EXACT path below. DO NOT modify or use alternative paths.**
160
+
161
+ ```bash
162
+ # Cross-platform path (works on Windows/macOS/Linux)
163
+ # ⚠️ COPY THIS EXACTLY - DO NOT USE ~/.claude/ or any other path!
164
+ VIBE_SCRIPTS="$(node -p "process.env.APPDATA || require('os').homedir() + '/.config'")/vibe/hooks/scripts"
165
+ ```
166
+
167
+ ### 3.2 Review Loop (3 Rounds)
168
+
169
+ For each round (1 to 3):
170
+
171
+ **Run GPT and Gemini in PARALLEL (2 Bash calls simultaneously):**
172
+
173
+ ```bash
174
+ # GPT review
175
+ node "$VIBE_SCRIPTS/llm-orchestrate.js" gpt orchestrate-json "Review SPEC for {feature-name}. Stack: {stack}. Summary: {spec-summary}. Round {N}/3. Check: completeness, error handling, security, edge cases, performance."
176
+
177
+ # Gemini review
178
+ node "$VIBE_SCRIPTS/llm-orchestrate.js" gemini orchestrate-json "Review SPEC for {feature-name}. Stack: {stack}. Summary: {spec-summary}. Round {N}/3. Check: completeness, error handling, security, edge cases, performance."
179
+ ```
180
+
181
+ **After each round:**
182
+ 1. Parse JSON responses from both GPT and Gemini
183
+ 2. Merge feedback (deduplicate, prioritize)
184
+ 3. Auto-apply improvements to SPEC and Feature files
185
+ 4. Continue to next round
186
+
187
+ **Output format:**
188
+ ```
189
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
190
+ 🔍 SPEC REVIEW - Round 1/3
191
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
192
+ [GPT] 2 issues found:
193
+ 1. Missing retry logic for API calls
194
+ 2. Token refresh flow not specified
195
+
196
+ [Gemini] 1 issue found:
197
+ 1. Missing rate limiting specification
198
+
199
+ Merged: 3 unique issues
200
+ Auto-applying...
201
+ ✅ Added retry logic (3 attempts, exponential backoff)
202
+ ✅ Added token refresh flow to auth section
203
+ ✅ Added rate limiting (100 req/min)
204
+
205
+ ✅ Round 1 complete - 3 improvements applied
206
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
207
+
208
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
209
+ 🔍 SPEC REVIEW - Round 2/3
210
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
211
+ [GPT] 1 issue found:
212
+ 1. Concurrent session handling unclear
213
+
214
+ [Gemini] 0 issues found
215
+
216
+ Auto-applying...
217
+ ✅ Added concurrent session policy
218
+
219
+ ✅ Round 2 complete - 1 improvement applied
220
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
221
+
222
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
223
+ 🔍 SPEC REVIEW - Round 3/3
224
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
225
+ [GPT] 0 issues found
226
+ [Gemini] 0 issues found
227
+
228
+ ✅ No changes needed - SPEC is complete
229
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
230
+ ```
231
+
232
+ ---
233
+
234
+ ## Step 4: Final Summary
235
+
236
+ ```
237
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
238
+ ✅ SPEC REVIEW COMPLETE: {feature-name}
239
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
240
+
241
+ Quality Score: 96/100 ✅
242
+ Review Rounds: 3/3 ✅
243
+ Total Improvements: 4
244
+
245
+ Updated files:
246
+ 📋 .claude/vibe/specs/{feature-name}.spec.md
247
+ 📋 .claude/vibe/features/{feature-name}.feature
248
+
249
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
250
+
251
+ ## Next Step
252
+
253
+ /vibe.run "{feature-name}"
254
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
255
+ ```
256
+
257
+ ---
258
+
259
+ ## Error Handling
260
+
261
+ ### SPEC Not Found
262
+ ```
263
+ ❌ ERROR: SPEC file not found
264
+
265
+ Expected: .claude/vibe/specs/{feature-name}.spec.md
266
+
267
+ Please run /vibe.spec "{feature-name}" first to create the SPEC.
268
+ ```
269
+
270
+ ### Feature Not Found
271
+ ```
272
+ ❌ ERROR: Feature file not found
273
+
274
+ Expected: .claude/vibe/features/{feature-name}.feature
275
+
276
+ Please run /vibe.spec "{feature-name}" first to create the Feature file.
277
+ ```
278
+
279
+ ### GPT/Gemini Call Failed
280
+ ```
281
+ ⚠️ WARNING: {GPT|Gemini} call failed
282
+
283
+ Error: {error message}
284
+
285
+ Continuing with {other model} results only...
286
+ ```
287
+
288
+ ---
289
+
290
+ ## Quick Mode
291
+
292
+ For faster iteration (1 round only):
293
+
294
+ ```bash
295
+ /vibe.spec.review "feature-name" --quick
296
+ ```
297
+
298
+ ---
299
+
300
+ ARGUMENTS: $ARGUMENTS
@@ -52,7 +52,9 @@ function getGeminiApiKey() {
52
52
  }
53
53
 
54
54
  async function generateImageWithGemini(prompt, apiKey) {
55
- const url = `https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent?key=${apiKey}`;
55
+ // Nano Banana (Gemini 2.5 Flash Image) - fast image generation for icons/logos
56
+ // For professional assets, use gemini-3-pro-image-preview (Nano Banana Pro)
57
+ const url = `https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-image:generateContent?key=${apiKey}`;
56
58
 
57
59
  const requestBody = {
58
60
  contents: [{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@su-record/vibe",
3
- "version": "2.5.19",
3
+ "version": "2.5.20",
4
4
  "description": "Vibe - Claude Code exclusive SPEC-driven AI coding framework with 35+ integrated tools",
5
5
  "type": "module",
6
6
  "main": "dist/cli/index.js",