@su-record/vibe 2.7.12 → 2.7.14

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 (331) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +126 -126
  3. package/LICENSE +21 -21
  4. package/README.md +449 -580
  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 -266
  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 +8 -0
  55. package/commands/vibe.review.md +10 -3
  56. package/commands/vibe.run.md +2078 -2022
  57. package/commands/vibe.spec.md +10 -10
  58. package/commands/vibe.spec.review.md +565 -558
  59. package/commands/vibe.utils.md +413 -413
  60. package/commands/vibe.verify.md +45 -0
  61. package/dist/cli/auth.d.ts.map +1 -1
  62. package/dist/cli/auth.js +1 -7
  63. package/dist/cli/auth.js.map +1 -1
  64. package/dist/cli/collaborator.js +52 -52
  65. package/dist/cli/commands/evolution.js +12 -12
  66. package/dist/cli/commands/info.d.ts.map +1 -1
  67. package/dist/cli/commands/info.js +55 -70
  68. package/dist/cli/commands/info.js.map +1 -1
  69. package/dist/cli/commands/init.d.ts.map +1 -1
  70. package/dist/cli/commands/init.js +6 -7
  71. package/dist/cli/commands/init.js.map +1 -1
  72. package/dist/cli/commands/remove.js +14 -14
  73. package/dist/cli/commands/sentinel.js +27 -27
  74. package/dist/cli/commands/setup.js +1 -1
  75. package/dist/cli/commands/setup.js.map +1 -1
  76. package/dist/cli/commands/skills.js +5 -5
  77. package/dist/cli/commands/slack.js +10 -10
  78. package/dist/cli/commands/telegram.js +12 -12
  79. package/dist/cli/commands/update.d.ts.map +1 -1
  80. package/dist/cli/commands/update.js +3 -4
  81. package/dist/cli/commands/update.js.map +1 -1
  82. package/dist/cli/detect.js +32 -32
  83. package/dist/cli/index.js +51 -55
  84. package/dist/cli/index.js.map +1 -1
  85. package/dist/cli/llm/claude-commands.js +16 -16
  86. package/dist/cli/llm/config.js +20 -20
  87. package/dist/cli/llm/config.js.map +1 -1
  88. package/dist/cli/llm/gemini-commands.d.ts +4 -6
  89. package/dist/cli/llm/gemini-commands.d.ts.map +1 -1
  90. package/dist/cli/llm/gemini-commands.js +52 -322
  91. package/dist/cli/llm/gemini-commands.js.map +1 -1
  92. package/dist/cli/llm/gpt-commands.js +21 -21
  93. package/dist/cli/llm/gpt-commands.js.map +1 -1
  94. package/dist/cli/llm/help.js +21 -21
  95. package/dist/cli/postinstall/constants.js +1 -1
  96. package/dist/cli/postinstall/constants.js.map +1 -1
  97. package/dist/cli/postinstall/cursor-agents.js +32 -32
  98. package/dist/cli/postinstall/cursor-rules.js +83 -83
  99. package/dist/cli/postinstall/cursor-skills.js +743 -743
  100. package/dist/cli/postinstall/inline-skills.js +1 -1
  101. package/dist/cli/postinstall/inline-skills.js.map +1 -1
  102. package/dist/cli/setup/Provisioner.js +42 -42
  103. package/dist/cli/types.d.ts +2 -18
  104. package/dist/cli/types.d.ts.map +1 -1
  105. package/dist/cli/utils.d.ts +0 -9
  106. package/dist/cli/utils.d.ts.map +1 -1
  107. package/dist/cli/utils.js +0 -28
  108. package/dist/cli/utils.js.map +1 -1
  109. package/dist/infra/lib/DeepInit.js +24 -24
  110. package/dist/infra/lib/IterationTracker.js +11 -11
  111. package/dist/infra/lib/PythonParser.js +108 -108
  112. package/dist/infra/lib/ReviewRace.js +96 -96
  113. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  114. package/dist/infra/lib/SkillQualityGate.js +9 -9
  115. package/dist/infra/lib/SkillRepository.js +159 -159
  116. package/dist/infra/lib/UltraQA.js +99 -99
  117. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  118. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  119. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  120. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  121. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  122. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  123. package/dist/infra/lib/config/GlobalConfigManager.d.ts +0 -2
  124. package/dist/infra/lib/config/GlobalConfigManager.d.ts.map +1 -1
  125. package/dist/infra/lib/config/GlobalConfigManager.js +0 -27
  126. package/dist/infra/lib/config/GlobalConfigManager.js.map +1 -1
  127. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  128. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  129. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  130. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  131. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  132. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  133. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  134. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  135. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  136. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  137. package/dist/infra/lib/gemini/auth.d.ts +4 -16
  138. package/dist/infra/lib/gemini/auth.d.ts.map +1 -1
  139. package/dist/infra/lib/gemini/auth.js +10 -405
  140. package/dist/infra/lib/gemini/auth.js.map +1 -1
  141. package/dist/infra/lib/gemini/capabilities.d.ts +4 -8
  142. package/dist/infra/lib/gemini/capabilities.d.ts.map +1 -1
  143. package/dist/infra/lib/gemini/capabilities.js +8 -166
  144. package/dist/infra/lib/gemini/capabilities.js.map +1 -1
  145. package/dist/infra/lib/gemini/chat.d.ts +4 -13
  146. package/dist/infra/lib/gemini/chat.d.ts.map +1 -1
  147. package/dist/infra/lib/gemini/chat.js +10 -323
  148. package/dist/infra/lib/gemini/chat.js.map +1 -1
  149. package/dist/infra/lib/gemini/completion.d.ts +5 -15
  150. package/dist/infra/lib/gemini/completion.d.ts.map +1 -1
  151. package/dist/infra/lib/gemini/completion.js +6 -97
  152. package/dist/infra/lib/gemini/completion.js.map +1 -1
  153. package/dist/infra/lib/gemini/constants.d.ts +2 -31
  154. package/dist/infra/lib/gemini/constants.d.ts.map +1 -1
  155. package/dist/infra/lib/gemini/constants.js +2 -77
  156. package/dist/infra/lib/gemini/constants.js.map +1 -1
  157. package/dist/infra/lib/gemini/index.d.ts +5 -8
  158. package/dist/infra/lib/gemini/index.d.ts.map +1 -1
  159. package/dist/infra/lib/gemini/index.js +4 -7
  160. package/dist/infra/lib/gemini/index.js.map +1 -1
  161. package/dist/infra/lib/gemini/models.d.ts +3 -4
  162. package/dist/infra/lib/gemini/models.d.ts.map +1 -1
  163. package/dist/infra/lib/gemini/models.js +8 -84
  164. package/dist/infra/lib/gemini/models.js.map +1 -1
  165. package/dist/infra/lib/gemini/orchestration.js +5 -5
  166. package/dist/infra/lib/gemini/types.d.ts +16 -44
  167. package/dist/infra/lib/gemini/types.d.ts.map +1 -1
  168. package/dist/infra/lib/gemini/types.js +1 -1
  169. package/dist/infra/lib/gpt/auth.d.ts +2 -5
  170. package/dist/infra/lib/gpt/auth.d.ts.map +1 -1
  171. package/dist/infra/lib/gpt/auth.js +8 -38
  172. package/dist/infra/lib/gpt/auth.js.map +1 -1
  173. package/dist/infra/lib/gpt/chat.d.ts +3 -3
  174. package/dist/infra/lib/gpt/chat.d.ts.map +1 -1
  175. package/dist/infra/lib/gpt/chat.js +37 -53
  176. package/dist/infra/lib/gpt/chat.js.map +1 -1
  177. package/dist/infra/lib/gpt/constants.d.ts +2 -5
  178. package/dist/infra/lib/gpt/constants.d.ts.map +1 -1
  179. package/dist/infra/lib/gpt/constants.js +4 -9
  180. package/dist/infra/lib/gpt/constants.js.map +1 -1
  181. package/dist/infra/lib/gpt/embedding.d.ts +1 -1
  182. package/dist/infra/lib/gpt/embedding.js +3 -3
  183. package/dist/infra/lib/gpt/embedding.js.map +1 -1
  184. package/dist/infra/lib/gpt/oauth.d.ts +6 -39
  185. package/dist/infra/lib/gpt/oauth.d.ts.map +1 -1
  186. package/dist/infra/lib/gpt/oauth.js +8 -340
  187. package/dist/infra/lib/gpt/oauth.js.map +1 -1
  188. package/dist/infra/lib/gpt/orchestration.js +5 -5
  189. package/dist/infra/lib/gpt/orchestration.js.map +1 -1
  190. package/dist/infra/lib/gpt/specializations.d.ts +2 -2
  191. package/dist/infra/lib/gpt/specializations.js +3 -3
  192. package/dist/infra/lib/gpt/specializations.js.map +1 -1
  193. package/dist/infra/lib/gpt/types.d.ts +1 -1
  194. package/dist/infra/lib/gpt/types.d.ts.map +1 -1
  195. package/dist/infra/lib/llm/auth/AuthProfileManager.d.ts +2 -2
  196. package/dist/infra/lib/llm/auth/AuthProfileManager.d.ts.map +1 -1
  197. package/dist/infra/lib/llm/auth/AuthProfileManager.js.map +1 -1
  198. package/dist/infra/lib/llm/auth/AuthProfileManager.test.js +1 -1
  199. package/dist/infra/lib/llm/auth/AuthProfileManager.test.js.map +1 -1
  200. package/dist/infra/lib/llm/auth/TokenRefresher.d.ts +1 -1
  201. package/dist/infra/lib/llm/auth/TokenRefresher.js +1 -1
  202. package/dist/infra/lib/llm/auth/index.d.ts +2 -12
  203. package/dist/infra/lib/llm/auth/index.d.ts.map +1 -1
  204. package/dist/infra/lib/llm/auth/index.js +5 -63
  205. package/dist/infra/lib/llm/auth/index.js.map +1 -1
  206. package/dist/infra/lib/llm/types.d.ts +1 -1
  207. package/dist/infra/lib/llm/types.d.ts.map +1 -1
  208. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  209. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  210. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  211. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  212. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  213. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  214. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  215. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  216. package/dist/infra/orchestrator/AgentManager.js +12 -12
  217. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  218. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  219. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  220. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  221. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  222. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  223. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  224. package/dist/tools/memory/getMemoryGraph.js +12 -12
  225. package/dist/tools/memory/getSessionContext.js +9 -9
  226. package/dist/tools/memory/linkMemories.js +14 -14
  227. package/dist/tools/memory/listMemories.js +4 -4
  228. package/dist/tools/memory/recallMemory.js +4 -4
  229. package/dist/tools/memory/saveMemory.js +4 -4
  230. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  231. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  232. package/dist/tools/semantic/astGrep.test.js +6 -6
  233. package/dist/tools/spec/prdParser.test.js +171 -171
  234. package/dist/tools/spec/specGenerator.js +169 -169
  235. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  236. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  237. package/hooks/gemini-hooks.json +73 -73
  238. package/hooks/hooks.json +137 -137
  239. package/hooks/scripts/code-check.js +70 -70
  240. package/hooks/scripts/context-save.js +212 -212
  241. package/hooks/scripts/hud-status.js +291 -291
  242. package/hooks/scripts/keyword-detector.js +214 -214
  243. package/hooks/scripts/llm-orchestrate.js +475 -646
  244. package/hooks/scripts/post-edit.js +32 -32
  245. package/hooks/scripts/pre-tool-guard.js +125 -125
  246. package/hooks/scripts/prompt-dispatcher.js +185 -185
  247. package/hooks/scripts/sentinel-guard.js +104 -104
  248. package/hooks/scripts/session-start.js +106 -106
  249. package/hooks/scripts/stop-notify.js +209 -209
  250. package/hooks/scripts/utils.js +100 -100
  251. package/languages/csharp-unity.md +515 -515
  252. package/languages/gdscript-godot.md +470 -470
  253. package/languages/ruby-rails.md +489 -489
  254. package/languages/typescript-angular.md +433 -433
  255. package/languages/typescript-astro.md +416 -416
  256. package/languages/typescript-electron.md +406 -406
  257. package/languages/typescript-nestjs.md +524 -524
  258. package/languages/typescript-svelte.md +407 -407
  259. package/languages/typescript-tauri.md +365 -365
  260. package/package.json +121 -121
  261. package/skills/agents-md/SKILL.md +120 -120
  262. package/skills/arch-guard/SKILL.md +180 -180
  263. package/skills/brand-assets/SKILL.md +146 -146
  264. package/skills/capability-loop/SKILL.md +167 -167
  265. package/skills/characterization-test/SKILL.md +206 -206
  266. package/skills/commerce-patterns/SKILL.md +59 -59
  267. package/skills/commit-push-pr/SKILL.md +75 -75
  268. package/skills/context7-usage/SKILL.md +105 -105
  269. package/skills/core-capabilities/SKILL.md +48 -48
  270. package/skills/e2e-commerce/SKILL.md +57 -57
  271. package/skills/exec-plan/SKILL.md +147 -147
  272. package/skills/frontend-design/SKILL.md +73 -73
  273. package/skills/git-worktree/SKILL.md +72 -72
  274. package/skills/handoff/SKILL.md +109 -109
  275. package/skills/parallel-research/SKILL.md +87 -87
  276. package/skills/priority-todos/SKILL.md +63 -63
  277. package/skills/seo-checklist/SKILL.md +57 -57
  278. package/skills/techdebt/SKILL.md +122 -122
  279. package/skills/tool-fallback/SKILL.md +103 -103
  280. package/skills/typescript-advanced-types/SKILL.md +66 -65
  281. package/skills/ui-ux-pro-max/SKILL.md +206 -206
  282. package/skills/vercel-react-best-practices/SKILL.md +59 -59
  283. package/skills/video-production/SKILL.md +51 -51
  284. package/vibe/config.json +29 -29
  285. package/vibe/constitution.md +227 -227
  286. package/vibe/rules/principles/communication-guide.md +98 -98
  287. package/vibe/rules/principles/development-philosophy.md +52 -52
  288. package/vibe/rules/principles/quick-start.md +102 -102
  289. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  290. package/vibe/rules/quality/checklist.md +276 -276
  291. package/vibe/rules/quality/performance.md +236 -236
  292. package/vibe/rules/quality/testing-strategy.md +440 -440
  293. package/vibe/rules/standards/anti-patterns.md +541 -541
  294. package/vibe/rules/standards/code-structure.md +291 -291
  295. package/vibe/rules/standards/complexity-metrics.md +313 -313
  296. package/vibe/rules/standards/git-workflow.md +237 -237
  297. package/vibe/rules/standards/naming-conventions.md +198 -198
  298. package/vibe/rules/standards/security.md +305 -305
  299. package/vibe/rules/writing/document-style.md +74 -74
  300. package/vibe/setup.sh +31 -31
  301. package/vibe/templates/constitution-template.md +252 -252
  302. package/vibe/templates/contract-backend-template.md +526 -526
  303. package/vibe/templates/contract-frontend-template.md +599 -599
  304. package/vibe/templates/feature-template.md +96 -96
  305. package/vibe/templates/spec-template.md +221 -221
  306. package/vibe/ui-ux-data/charts.csv +26 -26
  307. package/vibe/ui-ux-data/colors.csv +97 -97
  308. package/vibe/ui-ux-data/icons.csv +101 -101
  309. package/vibe/ui-ux-data/landing.csv +31 -31
  310. package/vibe/ui-ux-data/products.csv +96 -96
  311. package/vibe/ui-ux-data/react-performance.csv +45 -45
  312. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  313. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  314. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  315. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  316. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  317. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  318. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  319. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  320. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  321. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  322. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  323. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  324. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  325. package/vibe/ui-ux-data/styles.csv +68 -68
  326. package/vibe/ui-ux-data/typography.csv +57 -57
  327. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  328. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  329. package/vibe/ui-ux-data/version.json +31 -31
  330. package/vibe/ui-ux-data/web-interface.csv +31 -31
  331. package/commands/vibe.voice.md +0 -79
package/README.md CHANGED
@@ -1,580 +1,449 @@
1
- # VIBE — AI Coding Framework for Claude Code
2
-
3
- [![npm version](https://img.shields.io/npm/v/@su-record/vibe)](https://www.npmjs.com/package/@su-record/vibe)
4
- [![npm downloads](https://img.shields.io/npm/dt/@su-record/vibe.svg?style=flat-square&color=blue)](https://www.npmjs.com/package/@su-record/vibe)
5
- [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D18.0.0-green)](https://nodejs.org/)
6
- [![TypeScript](https://img.shields.io/badge/TypeScript-5.5+-blue)](https://www.typescriptlang.org/)
7
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
-
9
- **설치 한 줄로 Claude Code에 49개 에이전트, 41+ 도구, 멀티 LLM 더합니다.**
10
-
11
- 49개 에이전트 · 41+ 내장 도구 · 멀티 LLM 오케스트레이션 · 25개 프레임워크 지원
12
-
13
- ---
14
-
15
- ## Quick Start
16
-
17
- ```bash
18
- npm install -g @su-record/vibe
19
- vibe init
20
- ```
21
-
22
- ---
23
-
24
- ## 목차
25
-
26
- - [왜 Vibe인가](#왜-vibe인가)
27
- - [동작 원리](#동작-원리)
28
- - [모듈 서브패스 Export](#모듈-서브패스-export)
29
- - [멀티 LLM 오케스트레이션](#멀티-llm-오케스트레이션)
30
- - [에이전트 시스템](#에이전트-시스템)
31
- - [오케스트레이터](#오케스트레이터)
32
- - [Session RAG](#session-rag--세션-간-컨텍스트-유지)
33
- - [훅 시스템](#훅-시스템)
34
- - [슬래시 명령어](#슬래시-명령어)
35
- - [41+ 내장 도구](#41-내장-도구)
36
- - [스킬](#스킬)
37
- - [25개 프레임워크 지원](#25개-프레임워크-지원)
38
- - [품질 보장 시스템](#품질-보장-시스템)
39
- - [CLI 명령어](#cli-명령어)
40
- - [설정](#설정)
41
- - [매직 키워드](#매직-키워드)
42
- - [프로젝트 구조](#프로젝트-구조)
43
- - [시스템 아키텍처](#시스템-아키텍처)
44
-
45
- ---
46
-
47
- ## Vibe인가
48
-
49
- AI에게 "로그인 기능 만들어줘"라고 던지면 동작은 하지만 품질은 운에 맡기게 됩니다.
50
- Vibe는 이 문제를 구조로 해결합니다.
51
-
52
- | 문제 | Vibe의 해결 |
53
- |------|-----------|
54
- | AI가 `any` 타입을 남발 | Quality Gate가 `any`/`@ts-ignore` 차단 |
55
- | 번에 완성된 코드를 기대 | SPEC 구현 검증 단계별 워크플로우 |
56
- | 코드 리뷰 없이 머지 | 13개 에이전트 병렬 리뷰 (보안, 성능, 아키텍처 등) |
57
- | AI 결과를 그대로 수용 | GPT + Gemini 교차 검증 |
58
- | 컨텍스트 소실 | Session RAG로 결정사항/목표 자동 저장 및 복원 |
59
- | 복잡한 작업에서 길을 잃음 | SwarmOrchestrator가 자동 분해 + 병렬 실행 |
60
-
61
- ### 설계 철학
62
-
63
- | 원칙 | 설명 |
64
- |------|------|
65
- | **Easy Vibe Coding** | 빠른 흐름, 직관적 개발, AI와 협업하며 생각하기 |
66
- | **Minimum Quality Guaranteed** | 타입 안전성, 코드 품질, 보안 — 자동으로 하한선 확보 |
67
- | **Iterative Reasoning** | AI에게 답을 맡기지 말고, 문제를 쪼개고 질문하며 함께 추론 |
68
-
69
- ---
70
-
71
- ## 동작 원리
72
-
73
- ```mermaid
74
- flowchart LR
75
- A["/vibe.spec"] --> B["/vibe.spec.review"]
76
- B --> C["/vibe.run"]
77
- C --> D["자동 리뷰"]
78
- D --> E["완료"]
79
- ```
80
-
81
- 1. **`/vibe.spec`** — 요구사항을 SPEC 문서로 정의 (GPT + Gemini 병렬 리서치)
82
- 2. **`/vibe.spec.review`** SPEC 품질 리뷰
83
- 3. **`/vibe.run`** — SPEC 기반으로 구현 실행 + 병렬 코드 리뷰
84
- 4. **자동 리뷰** 13개 전문 에이전트가 병렬 검토
85
- 5. **P1/P2 자동 수정** — 심각한 이슈는 자동으로 고침
86
-
87
- `ultrawork` 키워드를 붙이면 과정이 자동화됩니다:
88
- ```bash
89
- /vibe.run "기능" ultrawork
90
- ```
91
-
92
- ---
93
-
94
- ## 모듈 서브패스 Export
95
-
96
- `@su-record/vibe`는 런타임 모듈을 서브패스 export로 제공합니다.
97
-
98
- | 서브패스 | 설명 | 주요 export |
99
- |---------|------|------------|
100
- | `@su-record/vibe/agent` | 에이전트 시스템 | Agent 관련 클래스 및 타입 |
101
- | `@su-record/vibe/memory` | 메모리 시스템 | `MemoryStorage`, `KnowledgeGraph`, `SessionRAGStore` 등 |
102
- | `@su-record/vibe/orchestrator` | 오케스트레이터 | `SwarmOrchestrator`, `PhasePipeline`, `BackgroundManager` |
103
- | `@su-record/vibe/tools` | 41+ 내장 도구 | `findSymbol`, `validateCodeQuality`, `saveMemory` |
104
-
105
- ```typescript
106
- import { MemoryStorage, SessionRAGStore } from '@su-record/vibe/memory';
107
- import { SwarmOrchestrator, PhasePipeline } from '@su-record/vibe/orchestrator';
108
- import { findSymbol, validateCodeQuality } from '@su-record/vibe/tools';
109
- ```
110
-
111
- ---
112
-
113
- ## 멀티 LLM 오케스트레이션
114
-
115
- 복수의 LLM 프로바이더를 통합하여 작업 유형별 최적의 모델에 자동 라우팅합니다.
116
-
117
- | 프로바이더 | 역할 | 인증 |
118
- |-----------|------|------|
119
- | **Claude** | 오케스트레이션, 코드 생성 | 내장 (Claude Code) |
120
- | **GPT** | 아키텍처, 디버깅, 교차 리뷰 | OAuth / API Key |
121
- | **Gemini** | UI/UX, 웹 검색, 음성, 리서치 | OAuth / API Key |
122
-
123
- ```bash
124
- vibe gpt auth # GPT OAuth (Plus/Pro)
125
- vibe gemini auth # Gemini OAuth
126
- ```
127
-
128
- ### SmartRouter — 작업 유형별 자동 라우팅
129
-
130
- | 작업 유형 | 우선순위 (폴백 체인) |
131
- |----------|---------------------|
132
- | 코드 분석, 리뷰, 추론, 아키텍처 | GPT → Gemini → Claude |
133
- | UI/UX, 검색 | Gemini → GPT → Claude |
134
-
135
- - 프로바이더별 30초 타임아웃, 최대 3회 재시도 (지수 백오프)
136
- - 5분 가용성 캐시 실패한 프로바이더는 5분간 스킵
137
-
138
- ### LLMCluster — 병렬 멀티 LLM 호출
139
-
140
- ```mermaid
141
- flowchart TD
142
- A["사용자 요청"] --> B["LLMCluster.multiQuery"]
143
- B --> C["GPT 응답"]
144
- B --> D["Gemini 응답"]
145
- C --> F["교차 검증"]
146
- D --> F
147
- F --> G["최종 결과"]
148
- ```
149
-
150
- ### ReviewRace 병렬 코드 리뷰
151
-
152
- GPT/Gemini가 동시에 코드를 리뷰하고, Jaccard 유사도로 교차 검증하여 우선순위를 산출합니다.
153
-
154
- | 우선순위 | 조건 |
155
- |----------|------|
156
- | **P1 (긴급)** | 신뢰도 >= 0.9 AND 심각도 critical/high |
157
- | **P2 (중요)** | 신뢰도 >= 0.6 OR 심각도 medium |
158
- | **P3 (참고)** | 신뢰도 < 0.6 OR 심각도 low |
159
-
160
- P1/P2 이슈는 자동으로 수정됩니다.
161
-
162
- ---
163
-
164
- ## 에이전트 시스템
165
-
166
- 49개 전문 에이전트가 각자의 역할에 맞게 작업을 수행합니다.
167
-
168
- ### 메인 에이전트 (19)
169
-
170
- | 에이전트 | 등급 | 역할 |
171
- |----------|------|------|
172
- | **Explorer** | High/Medium/Low | 코드베이스 탐색 |
173
- | **Implementer** | High/Medium/Low | 코드 구현 |
174
- | **Architect** | High/Medium/Low | 아키텍처 설계 |
175
- | **Searcher** | - | 코드 검색 |
176
- | **Tester** | - | 테스트 생성 |
177
- | **Simplifier** | - | 코드 단순화 |
178
- | **Refactor Cleaner** | - | 리팩토링 정리 |
179
- | **Build Error Resolver** | - | 빌드 에러 수정 |
180
- | **Compounder** | - | 복합 작업 처리 |
181
- | **Diagrammer** | - | 다이어그램 생성 |
182
- | **E2E Tester** | - | E2E 테스트 실행 |
183
- | **UI Previewer** | - | UI 미리보기 |
184
- | **Junior Mentor** | - | 주니어 개발자 멘토링 |
185
-
186
- ### 리뷰 에이전트 (12)
187
-
188
- | 에이전트 | 전문 분야 |
189
- |----------|----------|
190
- | Security Reviewer | OWASP Top 10 보안 취약점 |
191
- | Performance Reviewer | 성능 병목 (N+1, 메모리 누수) |
192
- | Architecture Reviewer | 아키텍처 패턴, SOLID 원칙 |
193
- | Complexity Reviewer | 순환 복잡도, 중첩 깊이 |
194
- | Simplicity Reviewer | 과도한 추상화 탐지 |
195
- | Data Integrity Reviewer | 트랜잭션, 데이터 무결성 |
196
- | Test Coverage Reviewer | 누락된 테스트 식별 |
197
- | Git History Reviewer | 커밋 히스토리 위험 패턴 |
198
- | TypeScript/Python/Rails/React | 언어/프레임워크별 전문 리뷰 |
199
-
200
- ### UI/UX 에이전트 (8)
201
-
202
- CSV 데이터 기반 디자인 인텔리전스. 24개 CSV에서 산업별 디자인 전략을 자동 생성합니다.
203
-
204
- | 단계 | 에이전트 | 역할 |
205
- |------|---------|------|
206
- | SPEC | ui-industry-analyzer | 산업 분석 + 디자인 전략 |
207
- | SPEC | ui-design-system-gen | MASTER.md 디자인 시스템 생성 |
208
- | SPEC | ui-layout-architect | 페이지 구조/섹션/CTA 설계 |
209
- | RUN | ui-stack-implementer | 프레임워크별 컴포넌트 가이드 |
210
- | RUN | ui-dataviz-advisor | 차트/시각화 라이브러리 추천 |
211
- | REVIEW | ux-compliance-reviewer | UX 가이드라인 준수 검증 |
212
- | REVIEW | ui-a11y-auditor | WCAG 2.1 AA 접근성 감사 |
213
- | REVIEW | ui-antipattern-detector | UI 안티패턴 검출 |
214
-
215
- ### 리서치 에이전트 (4)
216
-
217
- Best Practices, Framework Docs, Codebase Patterns, Security Advisory
218
-
219
- ### QA & 기획 에이전트 (6)
220
-
221
- Requirements Analyst, UX Advisor, Acceptance Tester, Edge Case Finder, API Documenter, Changelog Writer
222
-
223
- ### 에이전트 (9팀)
224
-
225
- 에이전트들이 팀을 구성하여 공유 태스크 리스트로 협업합니다.
226
-
227
- | | 워크플로우 | 멤버 |
228
- |-----|-----------|------|
229
- | Lite | `/vibe.run` 일반 | architect, implementer, tester |
230
- | Dev | `/vibe.run` ULTRAWORK | + security-reviewer |
231
- | Research | `/vibe.spec` | 4개 리서치 에이전트 |
232
- | Review Debate | `/vibe.review` | security, architecture, performance, simplicity |
233
- | SPEC Debate | `/vibe.spec.review` | 동일 |
234
- | Debug | `/vibe.run` 실패 | architect, implementer, tester |
235
- | Security | `/vibe.run` 보안 | security, data-integrity, security-advisory, tester |
236
- | Migration | `/vibe.run` 마이그레이션 | + build-error-resolver |
237
- | Fullstack | `/vibe.run` 풀스택 | frontend + backend implementer |
238
-
239
- ---
240
-
241
- ## 오케스트레이터
242
-
243
- ### SwarmOrchestrator자동 작업 분해
244
-
245
- ```mermaid
246
- flowchart TD
247
- A["인증 시스템 구현해줘"] --> B{"복잡도 분석"}
248
- B -->|"15점 이상"| C["자동 분해"]
249
- C --> D["DB 스키마 설계"]
250
- C --> E["API 엔드포인트"]
251
- C --> F["프론트엔드 폼"]
252
- C --> G["테스트 작성"]
253
- D --> H["결과 병합"]
254
- E --> H
255
- F --> H
256
- G --> H
257
- ```
258
-
259
- 최대 깊이 2단계, 동시 실행 5개, 기본 타임아웃 5분
260
-
261
- ### PhasePipeline 단계별 실행
262
-
263
- Phase는 `prepare()` `execute()` `cleanup()` 생명주기. ULTRAWORK 모드에서는 다음 Phase의 `prepare()`를 병렬 실행합니다.
264
-
265
- ### BackgroundManager 비동기 에이전트 실행
266
-
267
- - 모델별/프로바이더별 동시 실행 제한
268
- - 타임아웃 시 kill이 아닌 retry (최대 3회, 지수 백오프)
269
- - 24시간 이상 된 완료 태스크 자동 정리
270
-
271
- ### AgentRegistry — 실행 추적
272
-
273
- SQLite WAL 모드 기반. 고아 프로세스 감지, 통계 조회, 24시간 TTL 자동 정리.
274
-
275
- ---
276
-
277
- ## Session RAG 세션 컨텍스트 유지
278
-
279
- SQLite + FTS5 하이브리드 검색으로 세션 결정사항, 목표, 제약조건을 유지합니다.
280
-
281
- ### 4가지 엔티티
282
-
283
- | 엔티티 | 설명 | 주요 필드 |
284
- |--------|------|-----------|
285
- | **Decision** | 사용자가 확인한 결정사항 | title, rationale, alternatives, priority |
286
- | **Constraint** | 명시적 제약조건 | type(technical/business/resource/quality), severity |
287
- | **Goal** | 현재 목표 (계층 지원) | status, priority, progressPercent, parentId |
288
- | **Evidence** | 검증/테스트 결과 | type(test/build/lint/coverage), status, metrics |
289
-
290
- ### 하이브리드 검색
291
-
292
- ```
293
- 최종 점수 = BM25 × 0.4 + 최신성 × 0.3 + 우선순위 × 0.3
294
- ```
295
-
296
- 세션 시작 시 활성 Goals, 중요 Constraints, 최근 Decisions 자동 주입.
297
-
298
- ---
299
-
300
- ## 시스템
301
-
302
- | 이벤트 | 스크립트 | 역할 |
303
- |--------|---------|------|
304
- | **SessionStart** | `session-start.js` | 세션 컨텍스트 복원, 메모리 로드 |
305
- | **PreToolUse** | `pre-tool-guard.js` | 파괴적 명령어 차단, 스코프 보호 |
306
- | **PostToolUse** | `code-check.js` | 타입 안전성/복잡도 검증 |
307
- | **PostToolUse** | `post-edit.js` | Git 인덱스 업데이트 |
308
- | **UserPromptSubmit** | `prompt-dispatcher.js` | 명령어 라우팅 |
309
- | **UserPromptSubmit** | `keyword-detector.js` | 매직 키워드 감지 |
310
- | **Notification** | `context-save.js` | 컨텍스트 80/90/95% 자동 저장 |
311
-
312
- 추가 훅: `llm-orchestrate.js`, `code-review.js`, `recall.js`, `complexity.js`, `compound.js`, `stop-notify.js`
313
-
314
- ---
315
-
316
- ## 슬래시 명령어
317
-
318
- | 명령어 | 설명 |
319
- |--------|------|
320
- | `/vibe.spec "기능"` | SPEC 작성 + GPT/Gemini 병렬 리서치 |
321
- | `/vibe.spec.review "기능"` | SPEC 품질 리뷰 |
322
- | `/vibe.run "기능"` | SPEC 기반 구현 실행 + Race Review |
323
- | `/vibe.verify "기능"` | SPEC 대비 BDD 검증 |
324
- | `/vibe.review` | 13개 에이전트 병렬 코드 리뷰 |
325
- | `/vibe.trace "기능"` | 요구사항 추적성 매트릭스 |
326
- | `/vibe.reason "문제"` | 체계적 추론 프레임워크 |
327
- | `/vibe.analyze` | 프로젝트 분석 |
328
- | `/vibe.voice` | 음성 코딩 명령 (Gemini + sox) |
329
- | `/vibe.utils` | 유틸리티 (E2E, 다이어그램, UI, 세션 복원) |
330
-
331
- ### 권장 워크플로우
332
-
333
- ```mermaid
334
- flowchart TD
335
- A["/vibe.spec"] --> B["/new"]
336
- B --> C["/vibe.spec.review"]
337
- C --> D["/vibe.run"]
338
- D --> E["/vibe.trace"]
339
- E --> F["자동 13+ 에이전트 리뷰"]
340
- F --> G{"P1/P2?"}
341
- G -->|"Yes"| H["자동 수정"]
342
- G -->|"No"| I["완료"]
343
- H --> I
344
- ```
345
-
346
- ---
347
-
348
- ## 41+ 내장 도구
349
-
350
- ### 메모리 & 세션 (21)
351
-
352
- | 도구 | 역할 |
353
- |------|------|
354
- | `save_session_item` | Decision/Constraint/Goal/Evidence 저장 |
355
- | `retrieve_session_context` | 하이브리드 검색 (BM25 + 최신성 + 우선순위) |
356
- | `manage_goals` | Goal 생명주기 관리 |
357
- | `core_save_memory` | 중요 결정사항 메모리 저장 |
358
- | `core_recall_memory` | 저장된 메모리 회상 |
359
- | `core_search_memories` | 메모리 검색 |
360
- | `core_start_session` | 이전 세션 컨텍스트 복원 |
361
- | `core_auto_save_context` | 현재 상태 자동 저장 |
362
- | 12개 | 메모리 그래프, 타임라인, 우선순위, 관찰 기록 등 |
363
-
364
- ### 코드 품질 & 분석 (8)
365
-
366
- `core_find_symbol`, `core_find_references`, `core_analyze_dependency_graph`, `core_analyze_complexity`, `core_validate_code_quality`, `core_check_coupling_cohesion`, `core_suggest_improvements`, `core_apply_quality_rules`
367
-
368
- ### SPEC & 테스트 (9)
369
-
370
- `core_spec_generator`, `core_prd_parser`, `core_traceability_matrix`, `core_e2e_test_generator`, `core_preview_ui_ascii`, `core_get_current_time` 등
371
-
372
- ### UI/UX 도구 (4)
373
-
374
- `core_ui_search`, `core_ui_stack_search`, `core_ui_generate_design_system`, `core_ui_persist_design_system`
375
-
376
- ---
377
-
378
- ## 스킬
379
-
380
- 에이전트가 특정 도메인 지식을 활용할 수 있는 스킬 모듈입니다.
381
-
382
- **코어**: Brand Assets, Commerce Patterns, Commit Push PR, Context7, Core/Vibe Capabilities, E2E Commerce, Frontend Design, Git Worktree, Handoff, Parallel Research, Priority Todos, SEO Checklist, Tech Debt, Tool Fallback, TypeScript Advanced Types, Vercel React Best Practices, UI/UX Pro Max
383
-
384
- **언어별**: TypeScript-Next.js, TypeScript-React, TypeScript-React Native, Python-FastAPI, Dart-Flutter
385
-
386
- **품질/표준**: Checklist, Testing Strategy, Anti-Patterns, Code Structure, Complexity Metrics, Naming Conventions
387
-
388
- ---
389
-
390
- ## 25개 프레임워크 지원
391
-
392
- 프로젝트의 기술 스택을 자동 감지하고 프레임워크별 코딩 규칙을 적용합니다.
393
- 모노레포 지원 (pnpm-workspace, npm workspaces, Lerna, Nx, Turborepo).
394
-
395
- - **TypeScript (12)** — Next.js, React, Angular, Vue, Svelte, Nuxt, NestJS, Node, Electron, Tauri, React Native, Astro
396
- - **Python (2)** — Django, FastAPI
397
- - **Java/Kotlin (2)** Spring Boot, Android
398
- - **기타** — Rails, Go, Rust, Swift (iOS), Unity (C#), Flutter (Dart), Godot (GDScript)
399
-
400
- 자동 감지: DB (PostgreSQL, MySQL, MongoDB, Redis, Prisma, Drizzle 등), 상태 관리 (Redux, Zustand, Jotai 등), CI/CD (GitHub Actions 등), 호스팅 (Vercel, Docker 등)
401
-
402
- ---
403
-
404
- ## 품질 보장 시스템
405
-
406
- | 가드레일 | 메커니즘 |
407
- |----------|---------|
408
- | **타입 안전성** | Quality Gate — `any`, `@ts-ignore` 차단 |
409
- | **코드 리뷰** | ReviewRace — GPT + Gemini 교차 검증 |
410
- | **완성도** | Ralph Loop — 100%까지 반복 (범위 축소 없음) |
411
- | **스코프 보호** | pre-tool-guard — 요청 범위 외 수정 방지 |
412
- | **컨텍스트 보호** | context-save — 80/90/95% 자동 저장 |
413
- | **합리화 방지** | Anti-Rationalization — AI 변명 패턴 차단 |
414
- | **증거 게이트** | Evidence Gate — 증거 없는 완료 주장 금지 |
415
-
416
- ### 코드 복잡도 제한
417
-
418
- | 메트릭 | 제한 |
419
- |--------|------|
420
- | 함수 길이 | ≤30줄 (권장), ≤50줄 (허용) |
421
- | 중첩 깊이 | ≤3단계 |
422
- | 매개변수 | ≤5개 |
423
- | 순환 복잡도 | ≤10 |
424
-
425
- ---
426
-
427
- ## CLI 명령어
428
-
429
- ```bash
430
- # 셋업
431
- vibe setup # 셋업 위자드 (인증, 채널, 설정)
432
- vibe init [project] # 프로젝트 초기화
433
- vibe update # 설정 업데이트
434
- vibe upgrade # 최신 버전으로 업그레이드
435
- vibe status # 상태 확인
436
- vibe remove # 제거
437
-
438
- # LLM 인증
439
- vibe gpt auth / key / status / logout
440
- vibe gemini auth / key / status / logout
441
- vibe claude key / status / logout
442
-
443
- # 외부 채널
444
- vibe telegram setup / chat / status
445
- vibe slack setup / channel / status
446
-
447
- # 기타
448
- vibe env import [path] # .env → config.json 마이그레이션
449
- vibe help # 도움말
450
- vibe version # 버전
451
- ```
452
-
453
- ### 인증 우선순위
454
-
455
- | 프로바이더 | 우선순위 |
456
- |-----------|---------|
457
- | **GPT** | OAuth → API Key → Azure OpenAI |
458
- | **Gemini** | gemini-cli 자동감지 → OAuth → API Key |
459
-
460
- ---
461
-
462
- ## 설정
463
-
464
- ### 전역: `~/.vibe/config.json`
465
-
466
- 모든 인증, 채널, 모델 설정을 하나의 파일에 통합 관리합니다 (파일 권한 0o600).
467
-
468
- ```json
469
- {
470
- "credentials": {
471
- "gpt": { "apiKey": "sk-...", "oauthRefreshToken": "..." },
472
- "gemini": { "apiKey": "AIza...", "oauthRefreshToken": "..." }
473
- },
474
- "channels": {
475
- "telegram": { "botToken": "123:ABC", "allowedChatIds": ["-100..."] },
476
- "slack": { "botToken": "xoxb-...", "appToken": "xapp-...", "allowedChannelIds": ["C01..."] }
477
- },
478
- "models": {
479
- "gpt": "gpt-5.2",
480
- "gemini": "gemini-3-pro-preview"
481
- }
482
- }
483
- ```
484
-
485
- ### 프로젝트: `.claude/vibe/config.json`
486
-
487
- 프로젝트별 설정 (language, quality, stacks, details, references).
488
-
489
- ---
490
-
491
- ## 매직 키워드
492
-
493
- | 키워드 | 효과 |
494
- |--------|------|
495
- | `ultrawork` / `ulw` | 병렬 처리 + Phase 파이프라이닝 + 자동 계속 + Ralph Loop |
496
- | `ralph` | 100% 완성까지 반복 (범위 축소 없음) |
497
- | `ralplan` | 반복적 계획 수립 + 영속화 |
498
- | `verify` | 엄격 검증 모드 |
499
- | `quick` | 빠른 모드, 최소 검증 |
500
-
501
- ---
502
-
503
- ## 프로젝트 구조
504
-
505
- ```
506
- your-project/
507
- ├── .claude/
508
- │ └── vibe/
509
- │ ├── config.json # 프로젝트 설정 (모델, 스택)
510
- │ ├── constitution.md # 프로젝트 원칙
511
- │ ├── specs/ # SPEC 문서
512
- │ ├── features/ # 기능 추적
513
- │ ├── todos/ # 이슈 추적 (P1/P2/P3)
514
- │ └── reports/ # 리뷰 리포트
515
- ├── CLAUDE.md # 프로젝트 가이드 (자동 생성)
516
- └── ...
517
- ```
518
-
519
- 전역 설정:
520
- ```
521
- ~/.vibe/
522
- ├── config.json # 전역 설정 (인증, 채널, 모델)
523
- ├── hooks/scripts/ # 훅 스크립트
524
- └── node_modules/@su-record/vibe/ # 패키지 복사본
525
-
526
- ~/.claude/
527
- ├── vibe/
528
- │ ├── rules/ # 코딩 규칙
529
- │ ├── skills/ # 스킬 정의
530
- │ ├── ui-ux-data/ # UI/UX CSV 데이터
531
- │ ├── session-rag.db # Session RAG (SQLite + FTS5)
532
- │ └── memories.json # 저장된 메모리
533
- ├── commands/ # 슬래시 명령어 (10개)
534
- └── agents/ # 에이전트 정의 (49개)
535
- ```
536
-
537
- ---
538
-
539
- ## 시스템 아키텍처
540
-
541
- ```mermaid
542
- flowchart TD
543
- A["사용자 요청"] --> B["keyword-detector"]
544
- B --> C["prompt-dispatcher"]
545
- C --> D["SmartRouter"]
546
-
547
- D --> E["LLMCluster"]
548
- E --> E1["GPT"]
549
- E --> E2["Gemini"]
550
-
551
- D --> F["PhasePipeline"]
552
- F --> G["SwarmOrchestrator"]
553
- G --> H["BackgroundManager"]
554
- H --> I["AgentRegistry"]
555
-
556
- D --> J["ReviewRace"]
557
- J --> J1["GPT 리뷰"]
558
- J --> J2["Gemini 리뷰"]
559
- J1 --> K["교차 검증 → P1/P2/P3"]
560
- J2 --> K
561
-
562
- L["Session RAG"] -.-> M["Decision/Constraint/Goal/Evidence"]
563
- L -.-> N["BM25 × 0.4 + 최신성 × 0.3 + 우선순위 × 0.3"]
564
-
565
- O["품질 게이트"] -.-> P["pre-tool-guard → 차단"]
566
- O -.-> Q["code-check → 검증"]
567
- ```
568
-
569
- ---
570
-
571
- ## 요구사항
572
-
573
- - **Node.js** >= 18.0.0
574
- - **Claude Code** (필수)
575
- - GPT, Gemini는 선택사항 (멀티 LLM 기능용)
576
- - sox는 선택사항 (`/vibe.voice` 음성 입력용)
577
-
578
- ## 라이선스
579
-
580
- MIT License - Copyright (c) 2025 Su
1
+ # VIBE — AI Coding Framework for Claude Code
2
+
3
+ [![npm version](https://img.shields.io/npm/v/@su-record/vibe)](https://www.npmjs.com/package/@su-record/vibe)
4
+ [![npm downloads](https://img.shields.io/npm/dt/@su-record/vibe.svg?style=flat-square&color=blue)](https://www.npmjs.com/package/@su-record/vibe)
5
+ [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D18.0.0-green)](https://nodejs.org/)
6
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5.5+-blue)](https://www.typescriptlang.org/)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ **설치 한 줄로 Claude Code에 49개 에이전트, 41+ 도구, 멀티 LLM 오케스트레이션을 더합니다.**
10
+
11
+ ```bash
12
+ npm install -g @su-record/vibe
13
+ vibe init
14
+ ```
15
+
16
+ ---
17
+
18
+ ## Vibe인가
19
+
20
+ AI에게 "로그인 기능 만들어줘"라고 던지면 동작은 하지만 품질은 운에 맡기게 됩니다.
21
+ Vibe는 구조로 해결합니다.
22
+
23
+ | 문제 | 해결 |
24
+ |------|------|
25
+ | AI가 `any` 타입 남발 | Quality Gate가 `any`/`@ts-ignore` 차단 |
26
+ | 번에 완성 기대 | SPEC → 구현 → 검증 단계별 워크플로우 |
27
+ | 리뷰 없이 머지 | 13개 에이전트 병렬 리뷰 |
28
+ | AI 결과를 그대로 수용 | GPT + Gemini 교차 검증 |
29
+ | 컨텍스트 소실 | Session RAG로 자동 저장/복원 |
30
+ | 복잡한 작업에서 길을 잃음 | SwarmOrchestrator 자동 분해 + 병렬 실행 |
31
+
32
+ ### 설계 철학
33
+
34
+ | 원칙 | 설명 |
35
+ |------|------|
36
+ | **Easy Vibe Coding** | 빠른 흐름, AI와 협업하며 생각하기 |
37
+ | **Minimum Quality Guaranteed** | 타입 안전성, 코드 품질, 보안 — 자동 하한선 |
38
+ | **Iterative Reasoning** | 문제를 쪼개고 질문하며 함께 추론 |
39
+
40
+ ---
41
+
42
+ ## 워크플로우
43
+
44
+ ```mermaid
45
+ flowchart LR
46
+ A["/vibe.spec"] --> B["/vibe.spec.review"]
47
+ B --> C["/vibe.run"]
48
+ C --> D["자동 리뷰"]
49
+ D --> E["완료"]
50
+ ```
51
+
52
+ 1. **`/vibe.spec`** 요구사항을 SPEC 문서로 정의 (GPT + Gemini 병렬 리서치)
53
+ 2. **`/vibe.spec.review`** — SPEC 품질 리뷰
54
+ 3. **`/vibe.run`** SPEC 기반 구현 + 병렬 코드 리뷰
55
+ 4. **자동 리뷰** 13개 전문 에이전트 병렬 검토, P1/P2 자동 수정
56
+
57
+ `ultrawork` 키워드를 붙이면 과정이 자동화됩니다:
58
+
59
+ ```bash
60
+ /vibe.run "기능" ultrawork
61
+ ```
62
+
63
+ ---
64
+
65
+ ## 에이전트 (49개)
66
+
67
+ ### 메인 에이전트 (19)
68
+
69
+ | 카테고리 | 에이전트 |
70
+ |----------|---------|
71
+ | **탐색** | Explorer (High/Medium/Low) |
72
+ | **구현** | Implementer (High/Medium/Low) |
73
+ | **설계** | Architect (High/Medium/Low) |
74
+ | **유틸** | Searcher, Tester, Simplifier, Refactor Cleaner, Build Error Resolver, Compounder, Diagrammer, E2E Tester, UI Previewer, Junior Mentor |
75
+
76
+ ### 리뷰 에이전트 (12)
77
+
78
+ Security, Performance, Architecture, Complexity, Simplicity, Data Integrity, Test Coverage, Git History, TypeScript, Python, Rails, React
79
+
80
+ ### UI/UX 에이전트 (8)
81
+
82
+ 24개 CSV 기반 디자인 인텔리전스. 산업 분석 → 디자인 시스템 생성 → 구현 가이드 → 접근성 감사.
83
+
84
+ | 단계 | 에이전트 |
85
+ |------|---------|
86
+ | SPEC | ui-industry-analyzer, ui-design-system-gen, ui-layout-architect |
87
+ | RUN | ui-stack-implementer, ui-dataviz-advisor |
88
+ | REVIEW | ux-compliance-reviewer, ui-a11y-auditor, ui-antipattern-detector |
89
+
90
+ ### 리서치 & QA (10)
91
+
92
+ Best Practices, Framework Docs, Codebase Patterns, Security Advisory, Requirements Analyst, UX Advisor, Acceptance Tester, Edge Case Finder, API Documenter, Changelog Writer
93
+
94
+ ### 에이전트 (9팀)
95
+
96
+ 에이전트가 팀을 구성하여 공유 태스크 리스트로 협업합니다.
97
+
98
+ | | 트리거 | 멤버 |
99
+ |----|--------|------|
100
+ | Lite | `/vibe.run` 일반 | architect, implementer, tester |
101
+ | Dev | `/vibe.run` ULTRAWORK | + security-reviewer |
102
+ | Research | `/vibe.spec` | 4개 리서치 에이전트 |
103
+ | Review Debate | `/vibe.review` | security, architecture, performance, simplicity |
104
+ | Debug | `/vibe.run` 실패 | architect, implementer, tester |
105
+ | Security | `/vibe.run` 보안 | security, data-integrity, security-advisory, tester |
106
+ | Migration | `/vibe.run` 마이그레이션 | + build-error-resolver |
107
+ | Fullstack | `/vibe.run` 풀스택 | frontend + backend implementer |
108
+ | SPEC Debate | `/vibe.spec.review` | 동일 |
109
+
110
+ ---
111
+
112
+ ## 멀티 LLM 오케스트레이션
113
+
114
+ | 프로바이더 | 역할 | 인증 |
115
+ |-----------|------|------|
116
+ | **Claude** | 오케스트레이션, 코드 생성 | 내장 (Claude Code) |
117
+ | **GPT** | 아키텍처, 디버깅, 교차 리뷰 | OAuth / API Key |
118
+ | **Gemini** | UI/UX, 웹 검색, 음성, 리서치 | OAuth / API Key |
119
+
120
+ ### SmartRouter
121
+
122
+ 작업 유형별 자동 라우팅 + 폴백 체인. 프로바이더별 30초 타임아웃, 최대 3회 재시도, 5분 가용성 캐시.
123
+
124
+ | 작업 유형 | 우선순위 |
125
+ |----------|---------|
126
+ | 코드 분석, 리뷰, 추론, 아키텍처 | GPT → Gemini → Claude |
127
+ | UI/UX, 웹 검색 | Gemini → GPT → Claude |
128
+
129
+ ### ReviewRace
130
+
131
+ GPT/Gemini가 동시에 리뷰 → Jaccard 유사도 교차 검증 → 우선순위 산출.
132
+
133
+ | 우선순위 | 조건 | 처리 |
134
+ |---------|------|------|
135
+ | **P1** | 신뢰도 >= 0.9 AND critical/high | 자동 수정 |
136
+ | **P2** | 신뢰도 >= 0.6 OR medium | 자동 수정 |
137
+ | **P3** | 나머지 | 참고 |
138
+
139
+ ---
140
+
141
+ ## 오케스트레이터
142
+
143
+ ### SwarmOrchestrator
144
+
145
+ 복잡도 15점 이상인 작업을 자동 분해하여 병렬 실행합니다.
146
+ 최대 깊이 2단계, 동시 실행 5개, 기본 타임아웃 5분.
147
+
148
+ ### PhasePipeline
149
+
150
+ `prepare()` `execute()` `cleanup()` 생명주기.
151
+ ULTRAWORK 모드에서 다음 Phase의 `prepare()`를 병렬 실행.
152
+
153
+ ### BackgroundManager
154
+
155
+ 모델별/프로바이더별 동시 실행 제한. 타임아웃 시 retry (최대 3회, 지수 백오프). 24시간 TTL 자동 정리.
156
+
157
+ ---
158
+
159
+ ## Session RAG
160
+
161
+ SQLite + FTS5 하이브리드 검색으로 세션 간 컨텍스트를 유지합니다.
162
+
163
+ **4가지 엔티티**: Decision, Constraint, Goal, Evidence
164
+
165
+ ```
166
+ 최종 점수 = BM25 × 0.4 + 최신성 × 0.3 + 우선순위 × 0.3
167
+ ```
168
+
169
+ 세션 시작 시 활성 Goals, 중요 Constraints, 최근 Decisions 자동 주입.
170
+
171
+ ---
172
+
173
+ ## 스킬
174
+
175
+ ### 내장 스킬
176
+
177
+ 에이전트가 활용하는 도메인별 스킬 모듈입니다. 스택 감지 결과에 따라 자동 설치됩니다.
178
+
179
+ **코어**: Core Capabilities, Parallel Research, Commit Push PR, Git Worktree, Handoff, Priority Todos, Tool Fallback, Context7, Tech Debt, Characterization Test, Agents MD, Exec Plan, Arch Guard, Capability Loop
180
+
181
+ **프론트엔드**: Frontend Design, UI/UX Pro Max, Brand Assets, SEO Checklist, Vercel React Best Practices
182
+
183
+ **도메인**: Commerce Patterns, E2E Commerce, Video Production, TypeScript Advanced Types
184
+
185
+ ### 외부 스킬 (skills.sh)
186
+
187
+ [skills.sh](https://skills.sh) 에코시스템의 외부 스킬을 설치할 수 있습니다.
188
+
189
+ ```bash
190
+ # 수동 설치
191
+ vibe skills add vercel-labs/next-skills
192
+ ```
193
+
194
+ `vibe init`/`vibe update` 감지된 스택에 맞는 외부 스킬이 자동 설치됩니다.
195
+
196
+ | 스택 | 자동 설치 패키지 |
197
+ |------|-----------------|
198
+ | `typescript-react` | `vercel-labs/agent-skills` |
199
+ | `typescript-nextjs` | `vercel-labs/agent-skills`, `vercel-labs/next-skills` |
200
+
201
+ 설치된 패키지는 `.claude/vibe/config.json`의 `installedExternalSkills`로 추적되어 중복 설치를 방지합니다.
202
+
203
+ ---
204
+
205
+ ## 25개 프레임워크 지원
206
+
207
+ 프로젝트의 기술 스택을 자동 감지하고 프레임워크별 코딩 규칙을 적용합니다.
208
+ 모노레포 지원 (pnpm-workspace, npm workspaces, Lerna, Nx, Turborepo).
209
+
210
+ - **TypeScript (12)** Next.js, React, Angular, Vue, Svelte, Nuxt, NestJS, Node, Electron, Tauri, React Native, Astro
211
+ - **Python (2)** Django, FastAPI
212
+ - **Java/Kotlin (2)** Spring Boot, Android
213
+ - **기타** Rails, Go, Rust, Swift (iOS), Unity (C#), Flutter (Dart), Godot (GDScript)
214
+
215
+ 자동 감지: DB (PostgreSQL, MySQL, MongoDB, Redis, Prisma, Drizzle 등), 상태 관리 (Redux, Zustand, Jotai 등), CI/CD, 호스팅
216
+
217
+ ---
218
+
219
+ ## 41+ 내장 도구
220
+
221
+ ### 메모리 & 세션 (21)
222
+
223
+ `save_session_item`, `retrieve_session_context`, `manage_goals`, `core_save_memory`, `core_recall_memory`, `core_search_memories`, `core_start_session`, `core_auto_save_context` 등
224
+
225
+ ### 코드 품질 & 분석 (8)
226
+
227
+ `core_find_symbol`, `core_find_references`, `core_analyze_dependency_graph`, `core_analyze_complexity`, `core_validate_code_quality`, `core_check_coupling_cohesion`, `core_suggest_improvements`, `core_apply_quality_rules`
228
+
229
+ ### SPEC & 테스트 (9)
230
+
231
+ `core_spec_generator`, `core_prd_parser`, `core_traceability_matrix`, `core_e2e_test_generator`, `core_preview_ui_ascii`
232
+
233
+ ### UI/UX (4)
234
+
235
+ `core_ui_search`, `core_ui_stack_search`, `core_ui_generate_design_system`, `core_ui_persist_design_system`
236
+
237
+ ---
238
+
239
+ ## 품질 보장
240
+
241
+ | 가드레일 | 메커니즘 |
242
+ |----------|---------|
243
+ | **타입 안전성** | Quality Gate `any`, `@ts-ignore` 차단 |
244
+ | **코드 리뷰** | ReviewRace — GPT + Gemini 교차 검증 |
245
+ | **완성도** | Ralph Loop — 100%까지 반복 (범위 축소 없음) |
246
+ | **스코프 보호** | pre-tool-guard — 요청 범위 외 수정 방지 |
247
+ | **컨텍스트 보호** | context-save — 80/90/95% 자동 저장 |
248
+ | **합리화 방지** | Anti-Rationalization — AI 변명 패턴 차단 |
249
+ | **증거 게이트** | Evidence Gate — 증거 없는 완료 주장 금지 |
250
+
251
+ **복잡도 제한**: 함수 ≤50줄 | 중첩 ≤3단계 | 매개변수 ≤5 | 순환 복잡도 ≤10
252
+
253
+ ---
254
+
255
+ ## 시스템
256
+
257
+ | 이벤트 | 스크립트 | 역할 |
258
+ |--------|---------|------|
259
+ | SessionStart | `session-start.js` | 세션 컨텍스트 복원, 메모리 로드 |
260
+ | PreToolUse | `pre-tool-guard.js` | 파괴적 명령어 차단, 스코프 보호 |
261
+ | PostToolUse | `code-check.js` | 타입 안전성/복잡도 검증 |
262
+ | PostToolUse | `post-edit.js` | Git 인덱스 업데이트 |
263
+ | UserPromptSubmit | `prompt-dispatcher.js` | 명령어 라우팅 |
264
+ | UserPromptSubmit | `keyword-detector.js` | 매직 키워드 감지 |
265
+ | Notification | `context-save.js` | 컨텍스트 80/90/95% 자동 저장 |
266
+
267
+ 추가: `llm-orchestrate.js`, `code-review.js`, `recall.js`, `complexity.js`, `compound.js`, `stop-notify.js`
268
+
269
+ ---
270
+
271
+ ## 슬래시 명령어
272
+
273
+ | 명령어 | 설명 |
274
+ |--------|------|
275
+ | `/vibe.spec "기능"` | SPEC 작성 + GPT/Gemini 병렬 리서치 |
276
+ | `/vibe.spec.review` | SPEC 품질 리뷰 |
277
+ | `/vibe.run "기능"` | SPEC 기반 구현 + Race Review |
278
+ | `/vibe.verify "기능"` | SPEC 대비 BDD 검증 |
279
+ | `/vibe.review` | 13개 에이전트 병렬 코드 리뷰 |
280
+ | `/vibe.trace "기능"` | 요구사항 추적성 매트릭스 |
281
+ | `/vibe.reason "문제"` | 체계적 추론 프레임워크 |
282
+ | `/vibe.analyze` | 프로젝트 분석 |
283
+ | `/vibe.utils` | 유틸리티 (E2E, 다이어그램, UI, 세션 복원) |
284
+
285
+ ---
286
+
287
+ ## CLI
288
+
289
+ ```bash
290
+ # 프로젝트
291
+ vibe init [project] # 프로젝트 초기화
292
+ vibe update # 설정 업데이트 (스택 재감지)
293
+ vibe upgrade # 최신 버전으로 업그레이드
294
+ vibe setup # 셋업 위자드
295
+ vibe status # 상태 확인
296
+ vibe remove # 제거
297
+
298
+ # LLM 인증
299
+ vibe gpt auth|key|status|logout
300
+ vibe gemini auth|key|status|logout
301
+ vibe claude key|status|logout
302
+
303
+ # 외부 스킬
304
+ vibe skills add <owner/repo> # skills.sh 스킬 설치
305
+
306
+ # 채널
307
+ vibe telegram setup|chat|status
308
+ vibe slack setup|channel|status
309
+
310
+ # 기타
311
+ vibe env import [path] # .env → config.json 마이그레이션
312
+ vibe help / version
313
+ ```
314
+
315
+ ### 인증 우선순위
316
+
317
+ | 프로바이더 | 우선순위 |
318
+ |-----------|---------|
319
+ | **GPT** | OAuth → API Key → Azure OpenAI |
320
+ | **Gemini** | gemini-cli 자동감지 OAuth API Key |
321
+
322
+ ---
323
+
324
+ ## 매직 키워드
325
+
326
+ | 키워드 | 효과 |
327
+ |--------|------|
328
+ | `ultrawork` / `ulw` | 병렬 처리 + Phase 파이프라이닝 + 자동 계속 + Ralph Loop |
329
+ | `ralph` | 100% 완성까지 반복 (범위 축소 없음) |
330
+ | `ralplan` | 반복적 계획 수립 + 영속화 |
331
+ | `verify` | 엄격 검증 모드 |
332
+ | `quick` | 빠른 모드, 최소 검증 |
333
+
334
+ ---
335
+
336
+ ## 설정
337
+
338
+ ### 전역: `~/.vibe/config.json`
339
+
340
+ 인증, 채널, 모델 설정 통합 관리 (파일 권한 0o600).
341
+
342
+ ```json
343
+ {
344
+ "credentials": {
345
+ "gpt": { "oauthRefreshToken": "..." },
346
+ "gemini": { "oauthRefreshToken": "..." }
347
+ },
348
+ "channels": {
349
+ "telegram": { "botToken": "...", "allowedChatIds": ["..."] },
350
+ "slack": { "botToken": "...", "appToken": "...", "allowedChannelIds": ["..."] }
351
+ },
352
+ "models": { "gpt": "gpt-5.4", "gemini": "gemini-3.1-pro-preview" }
353
+ }
354
+ ```
355
+
356
+ ### 프로젝트: `.claude/vibe/config.json`
357
+
358
+ 프로젝트별 설정 language, quality, stacks, details, references, installedExternalSkills.
359
+
360
+ ---
361
+
362
+ ## 모듈 서브패스 Export
363
+
364
+ 런타임 모듈을 서브패스 export로 제공합니다.
365
+
366
+ ```typescript
367
+ import { MemoryStorage, SessionRAGStore } from '@su-record/vibe/memory';
368
+ import { SwarmOrchestrator, PhasePipeline } from '@su-record/vibe/orchestrator';
369
+ import { findSymbol, validateCodeQuality } from '@su-record/vibe/tools';
370
+ ```
371
+
372
+ | 서브패스 | 주요 export |
373
+ |---------|------------|
374
+ | `@su-record/vibe/agent` | Agent 클래스 및 타입 |
375
+ | `@su-record/vibe/memory` | `MemoryStorage`, `KnowledgeGraph`, `SessionRAGStore` |
376
+ | `@su-record/vibe/orchestrator` | `SwarmOrchestrator`, `PhasePipeline`, `BackgroundManager` |
377
+ | `@su-record/vibe/tools` | `findSymbol`, `validateCodeQuality`, `saveMemory` 등 |
378
+
379
+ ---
380
+
381
+ ## 프로젝트 구조
382
+
383
+ ```
384
+ your-project/
385
+ ├── .claude/
386
+ │ ├── vibe/
387
+ │ │ ├── config.json # 프로젝트 설정
388
+ │ │ ├── constitution.md # 프로젝트 원칙
389
+ │ │ ├── specs/ # SPEC 문서
390
+ │ │ ├── features/ # 기능 추적
391
+ │ │ ├── todos/ # P1/P2/P3 이슈
392
+ │ │ └── reports/ # 리뷰 리포트
393
+ │ └── skills/ # 로컬 + 외부 스킬
394
+ ├── CLAUDE.md # 프로젝트 가이드 (자동 생성)
395
+ └── ...
396
+
397
+ ~/.vibe/config.json # 전역 설정 (인증, 채널, 모델)
398
+ ~/.claude/
399
+ ├── vibe/
400
+ │ ├── rules/ # 코딩 규칙
401
+ │ ├── skills/ # 전역 스킬
402
+ │ ├── ui-ux-data/ # UI/UX CSV 데이터
403
+ │ ├── session-rag.db # Session RAG (SQLite + FTS5)
404
+ │ └── memories.json # 저장된 메모리
405
+ ├── commands/ # 슬래시 명령어 (10개)
406
+ └── agents/ # 에이전트 정의 (49개)
407
+ ```
408
+
409
+ ---
410
+
411
+ ## 시스템 아키텍처
412
+
413
+ ```mermaid
414
+ flowchart TD
415
+ A["사용자 요청"] --> B["keyword-detector"]
416
+ B --> C["prompt-dispatcher"]
417
+ C --> D["SmartRouter"]
418
+
419
+ D --> E["LLMCluster"]
420
+ E --> E1["GPT"]
421
+ E --> E2["Gemini"]
422
+
423
+ D --> F["PhasePipeline"]
424
+ F --> G["SwarmOrchestrator"]
425
+ G --> H["BackgroundManager"]
426
+ H --> I["AgentRegistry"]
427
+
428
+ D --> J["ReviewRace"]
429
+ J --> J1["GPT 리뷰"]
430
+ J --> J2["Gemini 리뷰"]
431
+ J1 --> K["교차 검증 P1/P2/P3"]
432
+ J2 --> K
433
+
434
+ L["Session RAG"] -.-> M["Decision / Constraint / Goal / Evidence"]
435
+ O["품질 게이트"] -.-> P["pre-tool-guard → 차단"]
436
+ O -.-> Q["code-check → 검증"]
437
+ ```
438
+
439
+ ---
440
+
441
+ ## 요구사항
442
+
443
+ - **Node.js** >= 18.0.0
444
+ - **Claude Code** (필수)
445
+ - GPT, Gemini (선택 멀티 LLM 기능용)
446
+
447
+ ## 라이선스
448
+
449
+ MIT License - Copyright (c) 2025 Su