@su-record/vibe 2.7.13 → 2.7.15

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 (232) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +134 -126
  3. package/LICENSE +21 -21
  4. package/README.md +449 -449
  5. package/agents/architect-low.md +41 -41
  6. package/agents/architect-medium.md +59 -59
  7. package/agents/architect.md +80 -80
  8. package/agents/build-error-resolver.md +115 -115
  9. package/agents/compounder.md +261 -261
  10. package/agents/diagrammer.md +178 -178
  11. package/agents/docs/api-documenter.md +99 -99
  12. package/agents/docs/changelog-writer.md +93 -93
  13. package/agents/e2e-tester.md +294 -294
  14. package/agents/explorer-low.md +42 -42
  15. package/agents/explorer-medium.md +59 -59
  16. package/agents/explorer.md +48 -48
  17. package/agents/implementer-low.md +43 -43
  18. package/agents/implementer-medium.md +52 -52
  19. package/agents/implementer.md +54 -54
  20. package/agents/junior-mentor.md +141 -141
  21. package/agents/planning/requirements-analyst.md +84 -84
  22. package/agents/planning/ux-advisor.md +83 -83
  23. package/agents/qa/acceptance-tester.md +86 -86
  24. package/agents/qa/edge-case-finder.md +93 -93
  25. package/agents/refactor-cleaner.md +143 -143
  26. package/agents/research/best-practices-agent.md +199 -199
  27. package/agents/research/codebase-patterns-agent.md +157 -157
  28. package/agents/research/framework-docs-agent.md +188 -188
  29. package/agents/research/security-advisory-agent.md +213 -213
  30. package/agents/review/architecture-reviewer.md +107 -107
  31. package/agents/review/complexity-reviewer.md +116 -116
  32. package/agents/review/data-integrity-reviewer.md +88 -88
  33. package/agents/review/git-history-reviewer.md +103 -103
  34. package/agents/review/performance-reviewer.md +86 -86
  35. package/agents/review/python-reviewer.md +150 -150
  36. package/agents/review/rails-reviewer.md +139 -139
  37. package/agents/review/react-reviewer.md +144 -144
  38. package/agents/review/security-reviewer.md +80 -80
  39. package/agents/review/simplicity-reviewer.md +140 -140
  40. package/agents/review/test-coverage-reviewer.md +116 -116
  41. package/agents/review/typescript-reviewer.md +127 -127
  42. package/agents/searcher.md +54 -54
  43. package/agents/simplifier.md +120 -120
  44. package/agents/tester.md +49 -49
  45. package/agents/ui/ui-a11y-auditor.md +93 -93
  46. package/agents/ui/ui-antipattern-detector.md +94 -94
  47. package/agents/ui/ui-dataviz-advisor.md +69 -69
  48. package/agents/ui/ui-design-system-gen.md +57 -57
  49. package/agents/ui/ui-industry-analyzer.md +49 -49
  50. package/agents/ui/ui-layout-architect.md +65 -65
  51. package/agents/ui/ui-stack-implementer.md +68 -68
  52. package/agents/ui/ux-compliance-reviewer.md +81 -81
  53. package/agents/ui-previewer.md +258 -260
  54. package/commands/vibe.analyze.md +11 -13
  55. package/commands/vibe.review.md +43 -1
  56. package/commands/vibe.run.md +2124 -2078
  57. package/commands/vibe.spec.md +9 -4
  58. package/commands/vibe.spec.review.md +569 -565
  59. package/commands/vibe.utils.md +413 -413
  60. package/commands/vibe.verify.md +33 -8
  61. package/dist/cli/collaborator.js +52 -52
  62. package/dist/cli/commands/evolution.js +12 -12
  63. package/dist/cli/commands/info.js +54 -54
  64. package/dist/cli/commands/init.js +5 -5
  65. package/dist/cli/commands/remove.js +14 -14
  66. package/dist/cli/commands/sentinel.js +27 -27
  67. package/dist/cli/commands/skills.js +5 -5
  68. package/dist/cli/commands/slack.js +10 -10
  69. package/dist/cli/commands/telegram.js +12 -12
  70. package/dist/cli/detect.js +32 -32
  71. package/dist/cli/index.js +51 -51
  72. package/dist/cli/llm/claude-commands.js +16 -16
  73. package/dist/cli/llm/config.js +19 -19
  74. package/dist/cli/llm/config.js.map +1 -1
  75. package/dist/cli/llm/gemini-commands.js +16 -16
  76. package/dist/cli/llm/gpt-commands.js +19 -19
  77. package/dist/cli/llm/help.js +21 -21
  78. package/dist/cli/postinstall/cursor-agents.js +32 -32
  79. package/dist/cli/postinstall/cursor-rules.js +83 -83
  80. package/dist/cli/postinstall/cursor-skills.js +743 -743
  81. package/dist/cli/setup/Provisioner.js +42 -42
  82. package/dist/cli/types.d.ts +0 -2
  83. package/dist/cli/types.d.ts.map +1 -1
  84. package/dist/infra/lib/DeepInit.js +24 -24
  85. package/dist/infra/lib/IterationTracker.js +11 -11
  86. package/dist/infra/lib/PythonParser.js +108 -108
  87. package/dist/infra/lib/ReviewRace.js +96 -96
  88. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  89. package/dist/infra/lib/SkillQualityGate.js +9 -9
  90. package/dist/infra/lib/SkillRepository.js +159 -159
  91. package/dist/infra/lib/UltraQA.js +99 -99
  92. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  93. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  94. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  95. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  96. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  97. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  98. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  99. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  100. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  101. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  102. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  103. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  104. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  105. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  106. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  107. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  108. package/dist/infra/lib/gemini/orchestration.js +5 -5
  109. package/dist/infra/lib/gpt/orchestration.js +4 -4
  110. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  111. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  112. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  113. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  114. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  115. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  116. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  117. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  118. package/dist/infra/orchestrator/AgentManager.js +12 -12
  119. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  120. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  121. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  122. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  123. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  124. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  125. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  126. package/dist/tools/memory/getMemoryGraph.js +12 -12
  127. package/dist/tools/memory/getSessionContext.js +9 -9
  128. package/dist/tools/memory/linkMemories.js +14 -14
  129. package/dist/tools/memory/listMemories.js +4 -4
  130. package/dist/tools/memory/recallMemory.js +4 -4
  131. package/dist/tools/memory/saveMemory.js +4 -4
  132. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  133. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  134. package/dist/tools/semantic/astGrep.test.js +6 -6
  135. package/dist/tools/spec/prdParser.test.js +171 -171
  136. package/dist/tools/spec/specGenerator.js +169 -169
  137. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  138. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  139. package/hooks/gemini-hooks.json +73 -73
  140. package/hooks/hooks.json +137 -137
  141. package/hooks/scripts/code-check.js +77 -70
  142. package/hooks/scripts/context-save.js +212 -212
  143. package/hooks/scripts/hud-status.js +291 -291
  144. package/hooks/scripts/keyword-detector.js +214 -214
  145. package/hooks/scripts/llm-orchestrate.js +475 -475
  146. package/hooks/scripts/post-edit.js +32 -32
  147. package/hooks/scripts/pre-tool-guard.js +125 -125
  148. package/hooks/scripts/prompt-dispatcher.js +185 -185
  149. package/hooks/scripts/sentinel-guard.js +104 -104
  150. package/hooks/scripts/session-start.js +106 -106
  151. package/hooks/scripts/stop-notify.js +209 -209
  152. package/hooks/scripts/utils.js +100 -100
  153. package/languages/csharp-unity.md +515 -515
  154. package/languages/gdscript-godot.md +470 -470
  155. package/languages/ruby-rails.md +489 -489
  156. package/languages/typescript-angular.md +433 -433
  157. package/languages/typescript-astro.md +416 -416
  158. package/languages/typescript-electron.md +406 -406
  159. package/languages/typescript-nestjs.md +524 -524
  160. package/languages/typescript-svelte.md +407 -407
  161. package/languages/typescript-tauri.md +365 -365
  162. package/package.json +121 -121
  163. package/skills/agents-md/SKILL.md +120 -120
  164. package/skills/arch-guard/SKILL.md +180 -180
  165. package/skills/brand-assets/SKILL.md +146 -146
  166. package/skills/capability-loop/SKILL.md +167 -167
  167. package/skills/characterization-test/SKILL.md +206 -206
  168. package/skills/commerce-patterns/SKILL.md +59 -59
  169. package/skills/commit-push-pr/SKILL.md +75 -75
  170. package/skills/context7-usage/SKILL.md +105 -105
  171. package/skills/core-capabilities/SKILL.md +48 -48
  172. package/skills/e2e-commerce/SKILL.md +57 -57
  173. package/skills/exec-plan/SKILL.md +147 -147
  174. package/skills/frontend-design/SKILL.md +73 -73
  175. package/skills/git-worktree/SKILL.md +72 -72
  176. package/skills/handoff/SKILL.md +109 -109
  177. package/skills/parallel-research/SKILL.md +87 -87
  178. package/skills/priority-todos/SKILL.md +63 -63
  179. package/skills/seo-checklist/SKILL.md +57 -57
  180. package/skills/techdebt/SKILL.md +122 -122
  181. package/skills/tool-fallback/SKILL.md +103 -103
  182. package/skills/typescript-advanced-types/SKILL.md +66 -65
  183. package/skills/ui-ux-pro-max/SKILL.md +206 -206
  184. package/skills/vercel-react-best-practices/SKILL.md +59 -59
  185. package/skills/video-production/SKILL.md +51 -51
  186. package/vibe/config.json +29 -29
  187. package/vibe/constitution.md +227 -227
  188. package/vibe/rules/principles/communication-guide.md +98 -98
  189. package/vibe/rules/principles/development-philosophy.md +52 -52
  190. package/vibe/rules/principles/quick-start.md +102 -102
  191. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  192. package/vibe/rules/quality/checklist.md +276 -276
  193. package/vibe/rules/quality/performance.md +236 -236
  194. package/vibe/rules/quality/testing-strategy.md +440 -440
  195. package/vibe/rules/standards/anti-patterns.md +541 -541
  196. package/vibe/rules/standards/code-structure.md +291 -291
  197. package/vibe/rules/standards/complexity-metrics.md +313 -313
  198. package/vibe/rules/standards/git-workflow.md +237 -237
  199. package/vibe/rules/standards/naming-conventions.md +198 -198
  200. package/vibe/rules/standards/security.md +305 -305
  201. package/vibe/rules/writing/document-style.md +74 -74
  202. package/vibe/setup.sh +31 -31
  203. package/vibe/templates/constitution-template.md +252 -252
  204. package/vibe/templates/contract-backend-template.md +526 -526
  205. package/vibe/templates/contract-frontend-template.md +599 -599
  206. package/vibe/templates/feature-template.md +96 -96
  207. package/vibe/templates/spec-template.md +221 -221
  208. package/vibe/ui-ux-data/charts.csv +26 -26
  209. package/vibe/ui-ux-data/colors.csv +97 -97
  210. package/vibe/ui-ux-data/icons.csv +101 -101
  211. package/vibe/ui-ux-data/landing.csv +31 -31
  212. package/vibe/ui-ux-data/products.csv +96 -96
  213. package/vibe/ui-ux-data/react-performance.csv +45 -45
  214. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  215. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  216. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  217. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  218. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  219. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  220. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  221. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  222. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  223. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  224. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  225. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  226. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  227. package/vibe/ui-ux-data/styles.csv +68 -68
  228. package/vibe/ui-ux-data/typography.csv +57 -57
  229. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  230. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  231. package/vibe/ui-ux-data/version.json +31 -31
  232. package/vibe/ui-ux-data/web-interface.csv +31 -31
@@ -1,413 +1,413 @@
1
- ---
2
- description: Utility tools (UI preview, diagram, E2E test, image generation, etc.)
3
- argument-hint: "--ui, --diagram, --e2e, --image, or other options"
4
- ---
5
-
6
- # /vibe.utils
7
-
8
- Collection of utility tools. Use with options.
9
-
10
- ## Usage
11
-
12
- ```
13
- /vibe.utils --ui "description" # UI ASCII preview
14
- /vibe.utils --diagram # Architecture diagram
15
- /vibe.utils --diagram --er # ERD diagram
16
- /vibe.utils --diagram --flow # Flowchart
17
- /vibe.utils --e2e "scenario" # E2E browser test (Playwright)
18
- /vibe.utils --e2e --visual # Visual regression test
19
- /vibe.utils --e2e --record # Video recording
20
- /vibe.utils --image "description" # Generate image with Gemini (icon, banner, etc.)
21
- /vibe.utils --image --icon "AppName" # Generate app icon/favicon
22
- /vibe.utils --build-fix # Fix build errors (minimal diff)
23
- /vibe.utils --clean # Remove dead code + DELETION_LOG
24
- /vibe.utils --codemaps # Generate architecture docs
25
- /vibe.utils --compound # Document solution (usually auto-triggered)
26
- ```
27
-
28
- ---
29
-
30
- ## --ui (UI Preview)
31
-
32
- Read and follow `agents/ui-previewer.md` for UI preview generation.
33
-
34
- Generate UI preview from description or design folder.
35
-
36
- - **Gemini enabled**: UI mockup image + component code generation (via `llm-orchestrate.js` → `gemini-api`)
37
- - **Gemini disabled**: ASCII art fallback
38
-
39
- **Input types:**
40
-
41
- | Input | Example |
42
- | ----- | ------- |
43
- | Text description | `"Login form with email, password"` |
44
- | Design folder | `./design/` |
45
- | Single file | `./mockups/login.html` |
46
-
47
- **Supported file formats in folder:**
48
-
49
- - `*.html` - HTML mockups
50
- - `*.png` / `*.jpg` / `*.webp` - UI screenshots (Claude reads images)
51
- - `*.json` - Design tokens
52
- - `*.css` / `*.scss` - Style variables
53
- - `*.md` - Style guides
54
- - `*.svg` - Vector graphics
55
-
56
- **Example:**
57
-
58
- ```
59
- /vibe.utils --ui "Login form - email, password input + login button"
60
- /vibe.utils --ui ./design/dashboard/
61
- /vibe.utils --ui ./mockups/homepage.png
62
- ```
63
-
64
- ---
65
-
66
- ## --diagram (Diagram Generation)
67
-
68
- Read and follow `agents/diagrammer.md` for diagram generation.
69
-
70
- Generate Mermaid diagrams for architecture visualization.
71
-
72
- **Options:**
73
- - `--diagram`: Architecture overview
74
- - `--diagram --er`: Entity-Relationship Diagram
75
- - `--diagram --flow`: Flowchart
76
- - `--diagram --seq`: Sequence Diagram
77
-
78
- **Example:**
79
- ```
80
- /vibe.utils --diagram --er
81
- ```
82
-
83
- ---
84
-
85
- ## --image (Image Generation)
86
-
87
- Generate images using Gemini Image API.
88
-
89
- - **Default**: Nano Banana (`gemini-2.5-flash-image`) - 빠르고 가벼운 이미지 생성
90
- - **--pro**: Nano Banana Pro (`gemini-3-pro-image-preview`) - 고품질 이미지 생성
91
-
92
- ### MANDATORY Tool Invocation
93
-
94
- **CRITICAL: You MUST use the following command to generate images. Do NOT search for scripts, do NOT use gcloud, do NOT use any other method.**
95
-
96
- **Step 0: Script path:**
97
- - `[LLM_SCRIPT]` = `{{VIBE_PATH}}/hooks/scripts/llm-orchestrate.js`
98
-
99
- **General image generation (Nano Banana):**
100
- ```bash
101
- node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --output "OUTPUT_PATH"
102
- ```
103
-
104
- **Pro quality (Nano Banana Pro):**
105
- ```bash
106
- node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --pro --output "OUTPUT_PATH"
107
- ```
108
-
109
- **With size option:**
110
- ```bash
111
- node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --size "1920x1080" --output "OUTPUT_PATH"
112
- ```
113
-
114
- ### How to Parse User Request
115
-
116
- 1. Extract the **image description** from the user's message (what to generate)
117
- 2. Extract the **output path** from the user's message (where to save)
118
- - If user specifies a path, use that path
119
- - Default: `--output "./generated-image.png"`
120
- 3. Extract **size** if specified, otherwise default 1024x1024
121
- 4. If user requests **high quality / pro / 고품질**, add `--pro` flag
122
-
123
- ### Examples
124
-
125
- ```bash
126
- node "[LLM_SCRIPT]" gemini image "A cute Gemini AI character mascot, colorful, friendly" --output "./gemini-character.png"
127
-
128
- node "[LLM_SCRIPT]" gemini image "Professional website banner, modern design" --pro --size "1920x400" --output "./banner.png"
129
-
130
- node "[LLM_SCRIPT]" gemini image "Modern minimal logo design" --output "./public/logo.png"
131
- ```
132
-
133
- ### Output Format
134
-
135
- The command outputs JSON to stdout:
136
- ```json
137
- { "success": true, "path": "/absolute/path/to/image.png", "size": 123456, "sizeKB": "120.5 KB" }
138
- ```
139
-
140
- On error:
141
- ```json
142
- { "success": false, "error": "Error message" }
143
- ```
144
-
145
- ### Icon Generation (--icon)
146
-
147
- Use the same command with a pre-built icon prompt template:
148
-
149
- **Prompt template:** `"App icon for {APP_NAME}, primary color {COLOR}, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist"`
150
-
151
- ```bash
152
- # --icon "MyApp"
153
- node "[LLM_SCRIPT]" gemini image "App icon for MyApp, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist" --output "./public/app-icon.png"
154
-
155
- # --icon "MyApp" --color "#2F6BFF"
156
- node "[LLM_SCRIPT]" gemini image "App icon for MyApp, primary color #2F6BFF, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist" --output "./public/app-icon.png"
157
- ```
158
-
159
- ### Prerequisites
160
-
161
- - Gemini API key configured (`vibe gemini auth` or `vibe gemini key <key>`)
162
-
163
- ---
164
-
165
- ## --e2e (E2E Testing)
166
-
167
- Read and follow `agents/e2e-tester.md` for Playwright-based E2E testing.
168
-
169
- **Options:**
170
- - `--e2e "scenario"`: Run specific scenario
171
- - `--e2e --visual`: Visual regression testing
172
- - `--e2e --record`: Video recording
173
-
174
- **Features:**
175
- - Screenshot capture and comparison
176
- - Console error collection
177
- - Accessibility (a11y) testing
178
- - Bug reproduction automation
179
-
180
- **Example:**
181
- ```
182
- /vibe.utils --e2e "login flow"
183
- /vibe.utils --e2e --visual --record
184
- ```
185
-
186
- ---
187
-
188
- ## --build-fix (Build Error Resolution)
189
-
190
- Read and follow `agents/build-error-resolver.md` for minimal-diff build fixes.
191
-
192
- Fix TypeScript/build errors with minimal changes.
193
-
194
- **Philosophy:** Changes must be < 5% of file. No refactoring.
195
-
196
- **Allowed:**
197
- - Add type annotations
198
- - Fix imports
199
- - Add null checks
200
- - Install missing deps
201
-
202
- **Forbidden:**
203
- - Refactor unrelated code
204
- - Change architecture
205
- - Rename variables
206
-
207
- **Example:**
208
- ```
209
- /vibe.utils --build-fix
210
- ```
211
-
212
- **Output:** List of minimal fixes applied + build status
213
-
214
- ---
215
-
216
- ## --clean (Dead Code Removal)
217
-
218
- Read and follow `agents/refactor-cleaner.md` for safe dead code removal.
219
-
220
- Detect and remove unused code with audit trail.
221
-
222
- **Analysis Tools:**
223
- - knip (unused exports, files, deps)
224
- - depcheck (unused npm packages)
225
- - ts-prune (unused TS exports)
226
-
227
- **Safety Levels:**
228
- | Level | Category | Action |
229
- |-------|----------|--------|
230
- | SAFE | Private functions, local vars | Auto-delete |
231
- | CAREFUL | Unused exports | Verify then delete |
232
- | RISKY | Public API, shared utils | Report only |
233
-
234
- **Example:**
235
- ```
236
- /vibe.utils --clean
237
- ```
238
-
239
- **Output:**
240
- - Removed items list
241
- - `.claude/vibe/DELETION_LOG.md` updated
242
- - Build/test verification
243
-
244
- ---
245
-
246
- ## --codemaps (Architecture Documentation)
247
-
248
- Generate auto-documentation from codebase structure.
249
-
250
- **Output Location:** `docs/CODEMAPS/`
251
-
252
- **Generated Files:**
253
- ```
254
- docs/CODEMAPS/
255
- ├── INDEX.md # Overview of all areas
256
- ├── frontend.md # Frontend structure
257
- ├── backend.md # API/backend structure
258
- ├── database.md # Schema documentation
259
- └── integrations.md # External services
260
- ```
261
-
262
- **Each file contains:**
263
- - Module table (name, path, description)
264
- - Data flow diagram (Mermaid)
265
- - Dependencies list
266
- - Related areas
267
-
268
- **Tools Used:**
269
- - ts-morph (TypeScript AST)
270
- - madge (dependency graph)
271
-
272
- **Example:**
273
- ```
274
- /vibe.utils --codemaps
275
- ```
276
-
277
- ---
278
-
279
- ## --compound (Solution Documentation)
280
-
281
- Read and follow `agents/compounder.md` for solution documentation.
282
-
283
- Document solved problems for knowledge accumulation.
284
-
285
- **Usually auto-triggered by hooks when:**
286
- - "bug fixed", "PR merged" detected
287
-
288
- **Output location:** `.claude/vibe/solutions/`
289
-
290
- ```
291
- .claude/vibe/solutions/
292
- ├── security/ # Security solutions
293
- ├── performance/ # Performance optimizations
294
- ├── database/ # Database related
295
- └── integration/ # External integrations
296
- ```
297
-
298
- ---
299
-
300
- ## --continue (Session Restore)
301
-
302
- Restore previous session context for continuity.
303
-
304
- **Usage:**
305
- ```
306
- /vibe.utils --continue
307
- ```
308
-
309
- **What it does:**
310
- 1. Calls `core_start_session` to load project memories
311
- 2. Restores previous conversation context
312
- 3. Resumes work from last checkpoint
313
-
314
- ---
315
-
316
- ## Quality Gate (Mandatory)
317
-
318
- ### UI Preview Quality Checklist (--ui)
319
-
320
- | Category | Check Item | Weight |
321
- |----------|------------|--------|
322
- | **Completeness** | All requested elements present | 30% |
323
- | **Layout** | Proper spacing and alignment | 20% |
324
- | **Labels** | All buttons/inputs labeled | 20% |
325
- | **Accessibility** | Tab order logical | 15% |
326
- | **Responsiveness** | Mobile/desktop variants shown | 15% |
327
-
328
- ### Diagram Quality Checklist (--diagram)
329
-
330
- | Category | Check Item | Weight |
331
- |----------|------------|--------|
332
- | **Accuracy** | Matches actual codebase structure | 30% |
333
- | **Completeness** | All major components included | 25% |
334
- | **Relationships** | Connections correctly shown | 20% |
335
- | **Readability** | Not too cluttered | 15% |
336
- | **Mermaid Syntax** | Valid, renders correctly | 10% |
337
-
338
- ### E2E Test Quality Checklist (--e2e)
339
-
340
- | Category | Check Item | Weight |
341
- |----------|------------|--------|
342
- | **Coverage** | All critical paths tested | 25% |
343
- | **Assertions** | Each step has verification | 20% |
344
- | **Stability** | No flaky selectors | 20% |
345
- | **Error Handling** | Failures captured with screenshots | 15% |
346
- | **Performance** | Tests complete in reasonable time | 10% |
347
- | **Accessibility** | a11y checks included | 10% |
348
-
349
- ### E2E Test Requirements
350
-
351
- | Test Type | Required Output |
352
- |-----------|-----------------|
353
- | Standard | Pass/fail status + console errors |
354
- | Visual (`--visual`) | Screenshot comparison + diff |
355
- | Recording (`--record`) | Video file path + duration |
356
-
357
- ### E2E Forbidden Patterns
358
-
359
- | Pattern | Issue | Required Fix |
360
- |---------|-------|--------------|
361
- | Hardcoded waits (`sleep(5000)`) | Flaky tests | Use `waitFor` conditions |
362
- | XPath selectors | Brittle | Use data-testid |
363
- | No assertions | Useless test | Add expect() calls |
364
- | Ignoring console errors | Missing bugs | Capture and report |
365
-
366
- ### Compound (Solution) Quality Checklist (--compound)
367
-
368
- | Category | Check Item | Weight |
369
- |----------|------------|--------|
370
- | **Problem** | Clearly described root cause | 25% |
371
- | **Solution** | Step-by-step fix documented | 25% |
372
- | **Prevention** | How to avoid in future | 20% |
373
- | **Code Samples** | Before/after snippets | 15% |
374
- | **Tags** | Properly categorized | 15% |
375
-
376
- ### Quality Score Calculation
377
-
378
- ```
379
- Score = Σ(checked items × weight) / 100
380
-
381
- Grades:
382
- - 95-100: ✅ EXCELLENT - Ready to use
383
- - 90-94: ⚠️ GOOD - Minor improvements recommended
384
- - 80-89: ⚠️ FAIR - Improvements needed
385
- - 0-79: ❌ POOR - Redo required
386
- ```
387
-
388
- ### Image Generation Quality Checklist (--image)
389
-
390
- | Category | Check Item | Weight |
391
- |----------|------------|--------|
392
- | **Relevance** | Image matches description/app concept | 30% |
393
- | **Format** | Correct sizes for all platforms | 25% |
394
- | **Quality** | Clear at small sizes (16x16) | 20% |
395
- | **Consistency** | Works in light/dark backgrounds | 15% |
396
- | **Completeness** | All required files generated | 10% |
397
-
398
- ### Output Requirements by Tool
399
-
400
- | Tool | Required Output |
401
- |------|-----------------|
402
- | `--ui` | ASCII preview + component list |
403
- | `--diagram` | Valid Mermaid code + rendered preview |
404
- | `--diagram --er` | Entity names, fields, relationships |
405
- | `--diagram --flow` | Start/end nodes, decision points |
406
- | `--e2e` | Test file + execution results |
407
- | `--image` | Generated image file(s) + path |
408
- | `--image --icon` | Full icon set + webmanifest |
409
- | `--compound` | Solution markdown + category tag |
410
-
411
- ---
412
-
413
- ARGUMENTS: $ARGUMENTS
1
+ ---
2
+ description: Utility tools (UI preview, diagram, E2E test, image generation, etc.)
3
+ argument-hint: "--ui, --diagram, --e2e, --image, or other options"
4
+ ---
5
+
6
+ # /vibe.utils
7
+
8
+ Collection of utility tools. Use with options.
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /vibe.utils --ui "description" # UI ASCII preview
14
+ /vibe.utils --diagram # Architecture diagram
15
+ /vibe.utils --diagram --er # ERD diagram
16
+ /vibe.utils --diagram --flow # Flowchart
17
+ /vibe.utils --e2e "scenario" # E2E browser test (Playwright)
18
+ /vibe.utils --e2e --visual # Visual regression test
19
+ /vibe.utils --e2e --record # Video recording
20
+ /vibe.utils --image "description" # Generate image with Gemini (icon, banner, etc.)
21
+ /vibe.utils --image --icon "AppName" # Generate app icon/favicon
22
+ /vibe.utils --build-fix # Fix build errors (minimal diff)
23
+ /vibe.utils --clean # Remove dead code + DELETION_LOG
24
+ /vibe.utils --codemaps # Generate architecture docs
25
+ /vibe.utils --compound # Document solution (usually auto-triggered)
26
+ ```
27
+
28
+ ---
29
+
30
+ ## --ui (UI Preview)
31
+
32
+ Read and follow `agents/ui-previewer.md` for UI preview generation.
33
+
34
+ Generate UI preview from description or design folder.
35
+
36
+ - **Gemini enabled**: UI mockup image + component code generation (via `llm-orchestrate.js` → `gemini-api`)
37
+ - **Gemini disabled**: ASCII art fallback
38
+
39
+ **Input types:**
40
+
41
+ | Input | Example |
42
+ | ----- | ------- |
43
+ | Text description | `"Login form with email, password"` |
44
+ | Design folder | `./design/` |
45
+ | Single file | `./mockups/login.html` |
46
+
47
+ **Supported file formats in folder:**
48
+
49
+ - `*.html` - HTML mockups
50
+ - `*.png` / `*.jpg` / `*.webp` - UI screenshots (Claude reads images)
51
+ - `*.json` - Design tokens
52
+ - `*.css` / `*.scss` - Style variables
53
+ - `*.md` - Style guides
54
+ - `*.svg` - Vector graphics
55
+
56
+ **Example:**
57
+
58
+ ```
59
+ /vibe.utils --ui "Login form - email, password input + login button"
60
+ /vibe.utils --ui ./design/dashboard/
61
+ /vibe.utils --ui ./mockups/homepage.png
62
+ ```
63
+
64
+ ---
65
+
66
+ ## --diagram (Diagram Generation)
67
+
68
+ Read and follow `agents/diagrammer.md` for diagram generation.
69
+
70
+ Generate Mermaid diagrams for architecture visualization.
71
+
72
+ **Options:**
73
+ - `--diagram`: Architecture overview
74
+ - `--diagram --er`: Entity-Relationship Diagram
75
+ - `--diagram --flow`: Flowchart
76
+ - `--diagram --seq`: Sequence Diagram
77
+
78
+ **Example:**
79
+ ```
80
+ /vibe.utils --diagram --er
81
+ ```
82
+
83
+ ---
84
+
85
+ ## --image (Image Generation)
86
+
87
+ Generate images using Gemini Image API.
88
+
89
+ - **Default**: Gemini Flash Image (`gemini-2.5-flash-image`) - 빠르고 가벼운 이미지 생성
90
+ - **--pro**: Gemini Pro Image (`gemini-3-pro-image-preview`) - 고품질 이미지 생성
91
+
92
+ ### MANDATORY Tool Invocation
93
+
94
+ **CRITICAL: You MUST use the following command to generate images. Do NOT search for scripts, do NOT use gcloud, do NOT use any other method.**
95
+
96
+ **Step 0: Script path:**
97
+ - `[LLM_SCRIPT]` = `{{VIBE_PATH}}/hooks/scripts/llm-orchestrate.js`
98
+
99
+ **General image generation (Gemini Flash Image):**
100
+ ```bash
101
+ node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --output "OUTPUT_PATH"
102
+ ```
103
+
104
+ **Pro quality (Gemini Pro Image):**
105
+ ```bash
106
+ node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --pro --output "OUTPUT_PATH"
107
+ ```
108
+
109
+ **With size option:**
110
+ ```bash
111
+ node "[LLM_SCRIPT]" gemini image "IMAGE_DESCRIPTION" --size "1920x1080" --output "OUTPUT_PATH"
112
+ ```
113
+
114
+ ### How to Parse User Request
115
+
116
+ 1. Extract the **image description** from the user's message (what to generate)
117
+ 2. Extract the **output path** from the user's message (where to save)
118
+ - If user specifies a path, use that path
119
+ - Default: `--output "./generated-image.png"`
120
+ 3. Extract **size** if specified, otherwise default 1024x1024
121
+ 4. If user requests **high quality / pro / 고품질**, add `--pro` flag
122
+
123
+ ### Examples
124
+
125
+ ```bash
126
+ node "[LLM_SCRIPT]" gemini image "A cute Gemini AI character mascot, colorful, friendly" --output "./gemini-character.png"
127
+
128
+ node "[LLM_SCRIPT]" gemini image "Professional website banner, modern design" --pro --size "1920x400" --output "./banner.png"
129
+
130
+ node "[LLM_SCRIPT]" gemini image "Modern minimal logo design" --output "./public/logo.png"
131
+ ```
132
+
133
+ ### Output Format
134
+
135
+ The command outputs JSON to stdout:
136
+ ```json
137
+ { "success": true, "path": "/absolute/path/to/image.png", "size": 123456, "sizeKB": "120.5 KB" }
138
+ ```
139
+
140
+ On error:
141
+ ```json
142
+ { "success": false, "error": "Error message" }
143
+ ```
144
+
145
+ ### Icon Generation (--icon)
146
+
147
+ Use the same command with a pre-built icon prompt template:
148
+
149
+ **Prompt template:** `"App icon for {APP_NAME}, primary color {COLOR}, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist"`
150
+
151
+ ```bash
152
+ # --icon "MyApp"
153
+ node "[LLM_SCRIPT]" gemini image "App icon for MyApp, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist" --output "./public/app-icon.png"
154
+
155
+ # --icon "MyApp" --color "#2F6BFF"
156
+ node "[LLM_SCRIPT]" gemini image "App icon for MyApp, primary color #2F6BFF, square format 1:1, simple recognizable design, works well at small sizes, no text or letters, solid or gradient background, modern minimalist" --output "./public/app-icon.png"
157
+ ```
158
+
159
+ ### Prerequisites
160
+
161
+ - Gemini API key configured (`vibe gemini auth` or `vibe gemini key <key>`)
162
+
163
+ ---
164
+
165
+ ## --e2e (E2E Testing)
166
+
167
+ Read and follow `agents/e2e-tester.md` for Playwright-based E2E testing.
168
+
169
+ **Options:**
170
+ - `--e2e "scenario"`: Run specific scenario
171
+ - `--e2e --visual`: Visual regression testing
172
+ - `--e2e --record`: Video recording
173
+
174
+ **Features:**
175
+ - Screenshot capture and comparison
176
+ - Console error collection
177
+ - Accessibility (a11y) testing
178
+ - Bug reproduction automation
179
+
180
+ **Example:**
181
+ ```
182
+ /vibe.utils --e2e "login flow"
183
+ /vibe.utils --e2e --visual --record
184
+ ```
185
+
186
+ ---
187
+
188
+ ## --build-fix (Build Error Resolution)
189
+
190
+ Read and follow `agents/build-error-resolver.md` for minimal-diff build fixes.
191
+
192
+ Fix TypeScript/build errors with minimal changes.
193
+
194
+ **Philosophy:** Changes must be < 5% of file. No refactoring.
195
+
196
+ **Allowed:**
197
+ - Add type annotations
198
+ - Fix imports
199
+ - Add null checks
200
+ - Install missing deps
201
+
202
+ **Forbidden:**
203
+ - Refactor unrelated code
204
+ - Change architecture
205
+ - Rename variables
206
+
207
+ **Example:**
208
+ ```
209
+ /vibe.utils --build-fix
210
+ ```
211
+
212
+ **Output:** List of minimal fixes applied + build status
213
+
214
+ ---
215
+
216
+ ## --clean (Dead Code Removal)
217
+
218
+ Read and follow `agents/refactor-cleaner.md` for safe dead code removal.
219
+
220
+ Detect and remove unused code with audit trail.
221
+
222
+ **Analysis Tools:**
223
+ - knip (unused exports, files, deps)
224
+ - depcheck (unused npm packages)
225
+ - ts-prune (unused TS exports)
226
+
227
+ **Safety Levels:**
228
+ | Level | Category | Action |
229
+ |-------|----------|--------|
230
+ | SAFE | Private functions, local vars | Auto-delete |
231
+ | CAREFUL | Unused exports | Verify then delete |
232
+ | RISKY | Public API, shared utils | Report only |
233
+
234
+ **Example:**
235
+ ```
236
+ /vibe.utils --clean
237
+ ```
238
+
239
+ **Output:**
240
+ - Removed items list
241
+ - `.claude/vibe/DELETION_LOG.md` updated
242
+ - Build/test verification
243
+
244
+ ---
245
+
246
+ ## --codemaps (Architecture Documentation)
247
+
248
+ Generate auto-documentation from codebase structure.
249
+
250
+ **Output Location:** `docs/CODEMAPS/`
251
+
252
+ **Generated Files:**
253
+ ```
254
+ docs/CODEMAPS/
255
+ ├── INDEX.md # Overview of all areas
256
+ ├── frontend.md # Frontend structure
257
+ ├── backend.md # API/backend structure
258
+ ├── database.md # Schema documentation
259
+ └── integrations.md # External services
260
+ ```
261
+
262
+ **Each file contains:**
263
+ - Module table (name, path, description)
264
+ - Data flow diagram (Mermaid)
265
+ - Dependencies list
266
+ - Related areas
267
+
268
+ **Tools Used:**
269
+ - ts-morph (TypeScript AST)
270
+ - madge (dependency graph)
271
+
272
+ **Example:**
273
+ ```
274
+ /vibe.utils --codemaps
275
+ ```
276
+
277
+ ---
278
+
279
+ ## --compound (Solution Documentation)
280
+
281
+ Read and follow `agents/compounder.md` for solution documentation.
282
+
283
+ Document solved problems for knowledge accumulation.
284
+
285
+ **Usually auto-triggered by hooks when:**
286
+ - "bug fixed", "PR merged" detected
287
+
288
+ **Output location:** `.claude/vibe/solutions/`
289
+
290
+ ```
291
+ .claude/vibe/solutions/
292
+ ├── security/ # Security solutions
293
+ ├── performance/ # Performance optimizations
294
+ ├── database/ # Database related
295
+ └── integration/ # External integrations
296
+ ```
297
+
298
+ ---
299
+
300
+ ## --continue (Session Restore)
301
+
302
+ Restore previous session context for continuity.
303
+
304
+ **Usage:**
305
+ ```
306
+ /vibe.utils --continue
307
+ ```
308
+
309
+ **What it does:**
310
+ 1. Calls `core_start_session` to load project memories
311
+ 2. Restores previous conversation context
312
+ 3. Resumes work from last checkpoint
313
+
314
+ ---
315
+
316
+ ## Quality Gate (Mandatory)
317
+
318
+ ### UI Preview Quality Checklist (--ui)
319
+
320
+ | Category | Check Item | Weight |
321
+ |----------|------------|--------|
322
+ | **Completeness** | All requested elements present | 30% |
323
+ | **Layout** | Proper spacing and alignment | 20% |
324
+ | **Labels** | All buttons/inputs labeled | 20% |
325
+ | **Accessibility** | Tab order logical | 15% |
326
+ | **Responsiveness** | Mobile/desktop variants shown | 15% |
327
+
328
+ ### Diagram Quality Checklist (--diagram)
329
+
330
+ | Category | Check Item | Weight |
331
+ |----------|------------|--------|
332
+ | **Accuracy** | Matches actual codebase structure | 30% |
333
+ | **Completeness** | All major components included | 25% |
334
+ | **Relationships** | Connections correctly shown | 20% |
335
+ | **Readability** | Not too cluttered | 15% |
336
+ | **Mermaid Syntax** | Valid, renders correctly | 10% |
337
+
338
+ ### E2E Test Quality Checklist (--e2e)
339
+
340
+ | Category | Check Item | Weight |
341
+ |----------|------------|--------|
342
+ | **Coverage** | All critical paths tested | 25% |
343
+ | **Assertions** | Each step has verification | 20% |
344
+ | **Stability** | No flaky selectors | 20% |
345
+ | **Error Handling** | Failures captured with screenshots | 15% |
346
+ | **Performance** | Tests complete in reasonable time | 10% |
347
+ | **Accessibility** | a11y checks included | 10% |
348
+
349
+ ### E2E Test Requirements
350
+
351
+ | Test Type | Required Output |
352
+ |-----------|-----------------|
353
+ | Standard | Pass/fail status + console errors |
354
+ | Visual (`--visual`) | Screenshot comparison + diff |
355
+ | Recording (`--record`) | Video file path + duration |
356
+
357
+ ### E2E Forbidden Patterns
358
+
359
+ | Pattern | Issue | Required Fix |
360
+ |---------|-------|--------------|
361
+ | Hardcoded waits (`sleep(5000)`) | Flaky tests | Use `waitFor` conditions |
362
+ | XPath selectors | Brittle | Use data-testid |
363
+ | No assertions | Useless test | Add expect() calls |
364
+ | Ignoring console errors | Missing bugs | Capture and report |
365
+
366
+ ### Compound (Solution) Quality Checklist (--compound)
367
+
368
+ | Category | Check Item | Weight |
369
+ |----------|------------|--------|
370
+ | **Problem** | Clearly described root cause | 25% |
371
+ | **Solution** | Step-by-step fix documented | 25% |
372
+ | **Prevention** | How to avoid in future | 20% |
373
+ | **Code Samples** | Before/after snippets | 15% |
374
+ | **Tags** | Properly categorized | 15% |
375
+
376
+ ### Quality Score Calculation
377
+
378
+ ```
379
+ Score = Σ(checked items × weight) / 100
380
+
381
+ Grades:
382
+ - 95-100: ✅ EXCELLENT - Ready to use
383
+ - 90-94: ⚠️ GOOD - Minor improvements recommended
384
+ - 80-89: ⚠️ FAIR - Improvements needed
385
+ - 0-79: ❌ POOR - Redo required
386
+ ```
387
+
388
+ ### Image Generation Quality Checklist (--image)
389
+
390
+ | Category | Check Item | Weight |
391
+ |----------|------------|--------|
392
+ | **Relevance** | Image matches description/app concept | 30% |
393
+ | **Format** | Correct sizes for all platforms | 25% |
394
+ | **Quality** | Clear at small sizes (16x16) | 20% |
395
+ | **Consistency** | Works in light/dark backgrounds | 15% |
396
+ | **Completeness** | All required files generated | 10% |
397
+
398
+ ### Output Requirements by Tool
399
+
400
+ | Tool | Required Output |
401
+ |------|-----------------|
402
+ | `--ui` | ASCII preview + component list |
403
+ | `--diagram` | Valid Mermaid code + rendered preview |
404
+ | `--diagram --er` | Entity names, fields, relationships |
405
+ | `--diagram --flow` | Start/end nodes, decision points |
406
+ | `--e2e` | Test file + execution results |
407
+ | `--image` | Generated image file(s) + path |
408
+ | `--image --icon` | Full icon set + webmanifest |
409
+ | `--compound` | Solution markdown + category tag |
410
+
411
+ ---
412
+
413
+ ARGUMENTS: $ARGUMENTS