@su-record/vibe 2.7.16 → 2.7.18
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/.env.example +37 -37
- package/CLAUDE.md +153 -134
- package/LICENSE +21 -21
- package/README.md +449 -449
- package/agents/architect-low.md +41 -41
- package/agents/architect-medium.md +59 -59
- package/agents/architect.md +80 -80
- package/agents/build-error-resolver.md +115 -115
- package/agents/compounder.md +261 -261
- package/agents/diagrammer.md +178 -178
- package/agents/docs/api-documenter.md +99 -99
- package/agents/docs/changelog-writer.md +93 -93
- package/agents/e2e-tester.md +294 -294
- package/agents/explorer-low.md +42 -42
- package/agents/explorer-medium.md +59 -59
- package/agents/explorer.md +48 -48
- package/agents/implementer-low.md +43 -43
- package/agents/implementer-medium.md +52 -52
- package/agents/implementer.md +54 -54
- package/agents/junior-mentor.md +141 -141
- package/agents/planning/requirements-analyst.md +84 -84
- package/agents/planning/ux-advisor.md +83 -83
- package/agents/qa/acceptance-tester.md +86 -86
- package/agents/qa/edge-case-finder.md +93 -93
- package/agents/refactor-cleaner.md +143 -143
- package/agents/research/best-practices-agent.md +199 -199
- package/agents/research/codebase-patterns-agent.md +157 -157
- package/agents/research/framework-docs-agent.md +188 -188
- package/agents/research/security-advisory-agent.md +213 -213
- package/agents/review/architecture-reviewer.md +107 -107
- package/agents/review/complexity-reviewer.md +116 -116
- package/agents/review/data-integrity-reviewer.md +88 -88
- package/agents/review/git-history-reviewer.md +103 -103
- package/agents/review/performance-reviewer.md +86 -86
- package/agents/review/python-reviewer.md +150 -150
- package/agents/review/rails-reviewer.md +139 -139
- package/agents/review/react-reviewer.md +144 -144
- package/agents/review/security-reviewer.md +80 -80
- package/agents/review/simplicity-reviewer.md +140 -140
- package/agents/review/test-coverage-reviewer.md +116 -116
- package/agents/review/typescript-reviewer.md +127 -127
- package/agents/searcher.md +54 -54
- package/agents/simplifier.md +120 -120
- package/agents/tester.md +49 -49
- package/agents/ui/ui-a11y-auditor.md +93 -93
- package/agents/ui/ui-antipattern-detector.md +94 -94
- package/agents/ui/ui-dataviz-advisor.md +69 -69
- package/agents/ui/ui-design-system-gen.md +57 -57
- package/agents/ui/ui-industry-analyzer.md +49 -49
- package/agents/ui/ui-layout-architect.md +65 -65
- package/agents/ui/ui-stack-implementer.md +68 -68
- package/agents/ui/ux-compliance-reviewer.md +81 -81
- package/agents/ui-previewer.md +258 -258
- package/commands/vibe.analyze.md +379 -379
- package/commands/vibe.review.md +607 -607
- package/commands/vibe.run.md +2124 -2124
- package/commands/vibe.spec.md +1195 -1195
- package/commands/vibe.spec.review.md +569 -569
- package/commands/vibe.utils.md +413 -413
- package/commands/vibe.verify.md +484 -484
- package/dist/cli/collaborator.js +52 -52
- package/dist/cli/commands/evolution.js +12 -12
- package/dist/cli/commands/info.js +51 -51
- package/dist/cli/commands/init.js +5 -5
- package/dist/cli/commands/remove.js +14 -14
- package/dist/cli/commands/sentinel.js +27 -27
- package/dist/cli/commands/skills.js +5 -5
- package/dist/cli/commands/slack.js +10 -10
- package/dist/cli/commands/telegram.js +12 -12
- package/dist/cli/commands/upgrade.d.ts +3 -3
- package/dist/cli/commands/upgrade.d.ts.map +1 -1
- package/dist/cli/commands/upgrade.js +24 -3
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/detect.js +32 -32
- package/dist/cli/index.js +51 -51
- package/dist/cli/llm/claude-commands.js +16 -16
- package/dist/cli/llm/config.js +18 -18
- package/dist/cli/llm/gemini-commands.js +16 -16
- package/dist/cli/llm/gpt-commands.js +19 -19
- package/dist/cli/llm/help.js +21 -21
- package/dist/cli/postinstall/cursor-agents.js +32 -32
- package/dist/cli/postinstall/cursor-rules.js +83 -83
- package/dist/cli/postinstall/cursor-skills.js +743 -743
- package/dist/cli/setup/Provisioner.js +42 -42
- package/dist/infra/lib/DeepInit.js +24 -24
- package/dist/infra/lib/IterationTracker.js +11 -11
- package/dist/infra/lib/PythonParser.js +108 -108
- package/dist/infra/lib/ReviewRace.js +96 -96
- package/dist/infra/lib/SkillFrontmatter.js +28 -28
- package/dist/infra/lib/SkillQualityGate.js +9 -9
- package/dist/infra/lib/SkillRepository.js +159 -159
- package/dist/infra/lib/UltraQA.js +99 -99
- package/dist/infra/lib/autonomy/AuditStore.js +41 -41
- package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
- package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
- package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
- package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
- package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
- package/dist/infra/lib/embedding/VectorStore.js +22 -22
- package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
- package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
- package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
- package/dist/infra/lib/evolution/InsightStore.js +90 -90
- package/dist/infra/lib/evolution/RollbackManager.js +5 -5
- package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
- package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
- package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
- package/dist/infra/lib/evolution/UsageTracker.js +28 -28
- package/dist/infra/lib/gemini/orchestration.js +5 -5
- package/dist/infra/lib/gpt/orchestration.js +4 -4
- package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
- package/dist/infra/lib/memory/MemorySearch.js +57 -57
- package/dist/infra/lib/memory/MemoryStorage.js +181 -181
- package/dist/infra/lib/memory/ObservationStore.js +28 -28
- package/dist/infra/lib/memory/ReflectionStore.js +30 -30
- package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
- package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
- package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
- package/dist/infra/lib/telemetry/SkillTelemetry.d.ts +52 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.d.ts.map +1 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.js +117 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.js.map +1 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.test.d.ts +2 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.test.d.ts.map +1 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.test.js +91 -0
- package/dist/infra/lib/telemetry/SkillTelemetry.test.js.map +1 -0
- package/dist/infra/orchestrator/AgentManager.js +12 -12
- package/dist/infra/orchestrator/AgentRegistry.js +65 -65
- package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
- package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
- package/dist/infra/orchestrator/parallelResearch.js +24 -24
- package/dist/test-helpers/index.d.ts +36 -0
- package/dist/test-helpers/index.d.ts.map +1 -0
- package/dist/test-helpers/index.js +85 -0
- package/dist/test-helpers/index.js.map +1 -0
- package/dist/test-helpers/index.test.d.ts +2 -0
- package/dist/test-helpers/index.test.d.ts.map +1 -0
- package/dist/test-helpers/index.test.js +92 -0
- package/dist/test-helpers/index.test.js.map +1 -0
- package/dist/tools/convention/analyzeComplexity.test.js +115 -115
- package/dist/tools/convention/validateCodeQuality.test.js +104 -104
- package/dist/tools/memory/createMemoryTimeline.js +10 -10
- package/dist/tools/memory/getMemoryGraph.js +12 -12
- package/dist/tools/memory/getSessionContext.js +9 -9
- package/dist/tools/memory/linkMemories.js +14 -14
- package/dist/tools/memory/listMemories.js +4 -4
- package/dist/tools/memory/recallMemory.js +4 -4
- package/dist/tools/memory/saveMemory.js +4 -4
- package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
- package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
- package/dist/tools/semantic/astGrep.test.js +6 -6
- package/dist/tools/spec/prdParser.test.js +171 -171
- package/dist/tools/spec/specGenerator.js +169 -169
- package/dist/tools/spec/traceabilityMatrix.js +64 -64
- package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
- package/hooks/gemini-hooks.json +73 -73
- package/hooks/hooks.json +137 -137
- package/hooks/scripts/code-check.js +77 -77
- package/hooks/scripts/context-save.js +212 -212
- package/hooks/scripts/hud-status.js +291 -291
- package/hooks/scripts/keyword-detector.js +214 -214
- package/hooks/scripts/llm-orchestrate.js +475 -475
- package/hooks/scripts/post-edit.js +32 -32
- package/hooks/scripts/pre-tool-guard.js +125 -125
- package/hooks/scripts/prompt-dispatcher.js +185 -185
- package/hooks/scripts/sentinel-guard.js +104 -104
- package/hooks/scripts/session-start.js +106 -106
- package/hooks/scripts/stop-notify.js +209 -209
- package/hooks/scripts/utils.js +100 -100
- package/languages/csharp-unity.md +515 -515
- package/languages/gdscript-godot.md +470 -470
- package/languages/ruby-rails.md +489 -489
- package/languages/typescript-angular.md +433 -433
- package/languages/typescript-astro.md +416 -416
- package/languages/typescript-electron.md +406 -406
- package/languages/typescript-nestjs.md +524 -524
- package/languages/typescript-svelte.md +407 -407
- package/languages/typescript-tauri.md +365 -365
- package/package.json +123 -121
- package/skills/agents-md/SKILL.md +120 -120
- package/skills/arch-guard/SKILL.md +180 -180
- package/skills/brand-assets/SKILL.md +146 -146
- package/skills/capability-loop/SKILL.md +167 -167
- package/skills/characterization-test/SKILL.md +206 -206
- package/skills/commerce-patterns/SKILL.md +63 -63
- package/skills/commit-push-pr/SKILL.md +75 -75
- package/skills/context7-usage/SKILL.md +105 -105
- package/skills/core-capabilities/SKILL.md +13 -13
- package/skills/e2e-commerce/SKILL.md +61 -61
- package/skills/exec-plan/SKILL.md +147 -147
- package/skills/frontend-design/SKILL.md +12 -12
- package/skills/git-worktree/SKILL.md +72 -72
- package/skills/handoff/SKILL.md +109 -109
- package/skills/parallel-research/SKILL.md +87 -87
- package/skills/priority-todos/SKILL.md +63 -63
- package/skills/seo-checklist/SKILL.md +57 -57
- package/skills/techdebt/SKILL.md +122 -122
- package/skills/tool-fallback/SKILL.md +103 -103
- package/skills/typescript-advanced-types/SKILL.md +66 -66
- package/skills/ui-ux-pro-max/SKILL.md +221 -221
- package/skills/vercel-react-best-practices/SKILL.md +59 -59
- package/skills/video-production/SKILL.md +51 -51
- package/vibe/config.json +29 -29
- package/vibe/constitution.md +227 -227
- package/vibe/rules/principles/communication-guide.md +98 -98
- package/vibe/rules/principles/development-philosophy.md +52 -52
- package/vibe/rules/principles/quick-start.md +102 -102
- package/vibe/rules/quality/bdd-contract-testing.md +393 -393
- package/vibe/rules/quality/checklist.md +276 -276
- package/vibe/rules/quality/performance.md +236 -236
- package/vibe/rules/quality/testing-strategy.md +440 -440
- package/vibe/rules/standards/anti-patterns.md +541 -541
- package/vibe/rules/standards/code-structure.md +291 -291
- package/vibe/rules/standards/complexity-metrics.md +313 -313
- package/vibe/rules/standards/git-workflow.md +237 -237
- package/vibe/rules/standards/naming-conventions.md +198 -198
- package/vibe/rules/standards/security.md +305 -305
- package/vibe/rules/writing/document-style.md +74 -74
- package/vibe/setup.sh +31 -31
- package/vibe/templates/constitution-template.md +252 -252
- package/vibe/templates/contract-backend-template.md +526 -526
- package/vibe/templates/contract-frontend-template.md +599 -599
- package/vibe/templates/feature-template.md +96 -96
- package/vibe/templates/spec-template.md +221 -221
- package/vibe/ui-ux-data/charts.csv +26 -26
- package/vibe/ui-ux-data/colors.csv +97 -97
- package/vibe/ui-ux-data/icons.csv +101 -101
- package/vibe/ui-ux-data/landing.csv +31 -31
- package/vibe/ui-ux-data/products.csv +96 -96
- package/vibe/ui-ux-data/react-performance.csv +45 -45
- package/vibe/ui-ux-data/stacks/astro.csv +54 -54
- package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
- package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
- package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
- package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
- package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
- package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
- package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
- package/vibe/ui-ux-data/stacks/react.csv +54 -54
- package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
- package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
- package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
- package/vibe/ui-ux-data/stacks/vue.csv +50 -50
- package/vibe/ui-ux-data/styles.csv +68 -68
- package/vibe/ui-ux-data/typography.csv +57 -57
- package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
- package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
- package/vibe/ui-ux-data/version.json +31 -31
- package/vibe/ui-ux-data/web-interface.csv +31 -31
package/commands/vibe.utils.md
CHANGED
|
@@ -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**: 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
|
|
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
|