@su-record/vibe 2.9.25 β†’ 2.9.32

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 (527) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +109 -106
  3. package/LICENSE +21 -21
  4. package/README.en.md +220 -220
  5. package/README.md +171 -171
  6. package/agents/architect-low.md +41 -41
  7. package/agents/architect-medium.md +59 -59
  8. package/agents/architect.md +80 -80
  9. package/agents/build-error-resolver.md +115 -115
  10. package/agents/compounder.md +261 -261
  11. package/agents/diagrammer.md +178 -178
  12. package/agents/docs/api-documenter.md +99 -99
  13. package/agents/docs/changelog-writer.md +93 -93
  14. package/agents/e2e-tester.md +294 -294
  15. package/agents/event/event-comms.md +78 -78
  16. package/agents/event/event-content.md +68 -68
  17. package/agents/event/event-image.md +95 -95
  18. package/agents/event/event-ops.md +84 -84
  19. package/agents/event/event-scheduler.md +69 -69
  20. package/agents/event/event-speaker.md +86 -86
  21. package/agents/explorer-low.md +42 -42
  22. package/agents/explorer-medium.md +59 -59
  23. package/agents/explorer.md +48 -48
  24. package/agents/implementer-low.md +43 -43
  25. package/agents/implementer-medium.md +52 -52
  26. package/agents/implementer.md +54 -54
  27. package/agents/junior-mentor.md +141 -141
  28. package/agents/planning/requirements-analyst.md +84 -84
  29. package/agents/planning/ux-advisor.md +83 -83
  30. package/agents/qa/acceptance-tester.md +86 -86
  31. package/agents/qa/edge-case-finder.md +93 -93
  32. package/agents/qa/qa-coordinator.md +131 -131
  33. package/agents/refactor-cleaner.md +143 -143
  34. package/agents/research/best-practices-agent.md +199 -199
  35. package/agents/research/codebase-patterns-agent.md +157 -157
  36. package/agents/research/framework-docs-agent.md +188 -188
  37. package/agents/research/security-advisory-agent.md +213 -213
  38. package/agents/review/architecture-reviewer.md +107 -107
  39. package/agents/review/complexity-reviewer.md +116 -116
  40. package/agents/review/data-integrity-reviewer.md +88 -88
  41. package/agents/review/git-history-reviewer.md +103 -103
  42. package/agents/review/performance-reviewer.md +86 -86
  43. package/agents/review/python-reviewer.md +150 -150
  44. package/agents/review/rails-reviewer.md +139 -139
  45. package/agents/review/react-reviewer.md +144 -144
  46. package/agents/review/security-reviewer.md +80 -80
  47. package/agents/review/simplicity-reviewer.md +140 -140
  48. package/agents/review/test-coverage-reviewer.md +116 -116
  49. package/agents/review/typescript-reviewer.md +127 -127
  50. package/agents/searcher.md +54 -54
  51. package/agents/simplifier.md +120 -120
  52. package/agents/teams/debug-team.md +70 -70
  53. package/agents/teams/dev-team.md +88 -88
  54. package/agents/teams/docs-team.md +80 -80
  55. package/agents/teams/figma/figma-analyst.md +52 -52
  56. package/agents/teams/figma/figma-architect.md +112 -112
  57. package/agents/teams/figma/figma-auditor.md +82 -82
  58. package/agents/teams/figma/figma-builder.md +100 -100
  59. package/agents/teams/figma-team.md +85 -85
  60. package/agents/teams/fullstack-team.md +83 -83
  61. package/agents/teams/lite-team.md +69 -69
  62. package/agents/teams/migration-team.md +78 -78
  63. package/agents/teams/refactor-team.md +94 -94
  64. package/agents/teams/research-team.md +86 -86
  65. package/agents/teams/review-debate-team.md +125 -125
  66. package/agents/teams/security-team.md +81 -81
  67. package/agents/tester.md +49 -49
  68. package/agents/ui/ui-a11y-auditor.md +93 -93
  69. package/agents/ui/ui-antipattern-detector.md +102 -102
  70. package/agents/ui/ui-dataviz-advisor.md +69 -69
  71. package/agents/ui/ui-design-system-gen.md +57 -57
  72. package/agents/ui/ui-industry-analyzer.md +49 -49
  73. package/agents/ui/ui-layout-architect.md +65 -65
  74. package/agents/ui/ui-stack-implementer.md +68 -68
  75. package/agents/ui/ux-compliance-reviewer.md +81 -81
  76. package/agents/ui-previewer.md +258 -258
  77. package/commands/vibe.analyze.md +533 -533
  78. package/commands/vibe.contract.md +105 -105
  79. package/commands/vibe.docs.md +33 -33
  80. package/commands/vibe.event.md +163 -163
  81. package/commands/vibe.figma.md +600 -584
  82. package/commands/vibe.harness.md +177 -177
  83. package/commands/vibe.regress.md +73 -73
  84. package/commands/vibe.review.md +624 -624
  85. package/commands/vibe.run.md +1946 -1940
  86. package/commands/vibe.scaffold.md +195 -195
  87. package/commands/vibe.spec.md +577 -577
  88. package/commands/vibe.test.md +49 -49
  89. package/commands/vibe.trace.md +276 -276
  90. package/commands/vibe.utils.md +413 -413
  91. package/commands/vibe.verify.md +572 -550
  92. package/dist/cli/auth.d.ts +7 -1
  93. package/dist/cli/auth.d.ts.map +1 -1
  94. package/dist/cli/auth.js +51 -11
  95. package/dist/cli/auth.js.map +1 -1
  96. package/dist/cli/collaborator.d.ts +5 -1
  97. package/dist/cli/collaborator.d.ts.map +1 -1
  98. package/dist/cli/collaborator.js +60 -55
  99. package/dist/cli/collaborator.js.map +1 -1
  100. package/dist/cli/commands/codex-proxy.js +15 -15
  101. package/dist/cli/commands/config.js +9 -9
  102. package/dist/cli/commands/evolution.js +12 -12
  103. package/dist/cli/commands/figma.js +20 -20
  104. package/dist/cli/commands/info.d.ts.map +1 -1
  105. package/dist/cli/commands/info.js +47 -63
  106. package/dist/cli/commands/info.js.map +1 -1
  107. package/dist/cli/commands/init.d.ts +13 -5
  108. package/dist/cli/commands/init.d.ts.map +1 -1
  109. package/dist/cli/commands/init.js +71 -35
  110. package/dist/cli/commands/init.js.map +1 -1
  111. package/dist/cli/commands/remove.d.ts.map +1 -1
  112. package/dist/cli/commands/remove.js +35 -22
  113. package/dist/cli/commands/remove.js.map +1 -1
  114. package/dist/cli/commands/sentinel.js +27 -27
  115. package/dist/cli/commands/skills.js +5 -5
  116. package/dist/cli/commands/slack.js +10 -10
  117. package/dist/cli/commands/stats.js +6 -6
  118. package/dist/cli/commands/telegram.js +12 -12
  119. package/dist/cli/commands/update.d.ts.map +1 -1
  120. package/dist/cli/commands/update.js +10 -6
  121. package/dist/cli/commands/update.js.map +1 -1
  122. package/dist/cli/detect.js +32 -32
  123. package/dist/cli/index.js +37 -35
  124. package/dist/cli/index.js.map +1 -1
  125. package/dist/cli/llm/claude-commands.js +16 -16
  126. package/dist/cli/llm/config.js +18 -18
  127. package/dist/cli/llm/gemini-commands.js +16 -16
  128. package/dist/cli/llm/gpt-commands.js +19 -19
  129. package/dist/cli/llm/help.js +21 -21
  130. package/dist/cli/postinstall/cursor-agents.js +32 -32
  131. package/dist/cli/postinstall/cursor-rules.js +83 -83
  132. package/dist/cli/postinstall/cursor-skills.js +743 -743
  133. package/dist/cli/postinstall/global-config.d.ts.map +1 -1
  134. package/dist/cli/postinstall/global-config.js +8 -4
  135. package/dist/cli/postinstall/global-config.js.map +1 -1
  136. package/dist/cli/setup/LegacyMigration.d.ts +14 -0
  137. package/dist/cli/setup/LegacyMigration.d.ts.map +1 -1
  138. package/dist/cli/setup/LegacyMigration.js +61 -0
  139. package/dist/cli/setup/LegacyMigration.js.map +1 -1
  140. package/dist/cli/setup/ProjectSetup.d.ts +9 -3
  141. package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
  142. package/dist/cli/setup/ProjectSetup.js +60 -36
  143. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  144. package/dist/cli/setup/Provisioner.js +44 -44
  145. package/dist/cli/setup/Provisioner.js.map +1 -1
  146. package/dist/cli/setup.d.ts +1 -1
  147. package/dist/cli/setup.d.ts.map +1 -1
  148. package/dist/cli/setup.js +1 -1
  149. package/dist/cli/setup.js.map +1 -1
  150. package/dist/cli/utils/cli-detector.d.ts +9 -6
  151. package/dist/cli/utils/cli-detector.d.ts.map +1 -1
  152. package/dist/cli/utils/cli-detector.js +127 -8
  153. package/dist/cli/utils/cli-detector.js.map +1 -1
  154. package/dist/infra/lib/DeepInit.js +24 -24
  155. package/dist/infra/lib/IterationTracker.js +11 -11
  156. package/dist/infra/lib/PythonParser.js +108 -108
  157. package/dist/infra/lib/ReviewRace.js +96 -96
  158. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  159. package/dist/infra/lib/SkillQualityGate.js +9 -9
  160. package/dist/infra/lib/SkillRepository.js +159 -159
  161. package/dist/infra/lib/UltraQA.js +99 -99
  162. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  163. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  164. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  165. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
  166. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  167. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  168. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  169. package/dist/infra/lib/browser/compare.d.ts +27 -0
  170. package/dist/infra/lib/browser/compare.d.ts.map +1 -1
  171. package/dist/infra/lib/browser/compare.js +55 -0
  172. package/dist/infra/lib/browser/compare.js.map +1 -1
  173. package/dist/infra/lib/browser/index.d.ts +2 -1
  174. package/dist/infra/lib/browser/index.d.ts.map +1 -1
  175. package/dist/infra/lib/browser/index.js +1 -1
  176. package/dist/infra/lib/browser/index.js.map +1 -1
  177. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  178. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  179. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  180. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  181. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  182. package/dist/infra/lib/evolution/ParityTester.js +57 -57
  183. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  184. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  185. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  186. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  187. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  188. package/dist/infra/lib/figma/audit.d.ts +37 -0
  189. package/dist/infra/lib/figma/audit.d.ts.map +1 -0
  190. package/dist/infra/lib/figma/audit.js +130 -0
  191. package/dist/infra/lib/figma/audit.js.map +1 -0
  192. package/dist/infra/lib/figma/extract.d.ts +21 -1
  193. package/dist/infra/lib/figma/extract.d.ts.map +1 -1
  194. package/dist/infra/lib/figma/extract.js +84 -12
  195. package/dist/infra/lib/figma/extract.js.map +1 -1
  196. package/dist/infra/lib/figma/index.d.ts +4 -2
  197. package/dist/infra/lib/figma/index.d.ts.map +1 -1
  198. package/dist/infra/lib/figma/index.js +2 -1
  199. package/dist/infra/lib/figma/index.js.map +1 -1
  200. package/dist/infra/lib/figma/types.d.ts +31 -0
  201. package/dist/infra/lib/figma/types.d.ts.map +1 -1
  202. package/dist/infra/lib/gemini/orchestration.js +5 -5
  203. package/dist/infra/lib/gpt/orchestration.js +4 -4
  204. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  205. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  206. package/dist/infra/lib/memory/MemoryStorage.d.ts +5 -0
  207. package/dist/infra/lib/memory/MemoryStorage.d.ts.map +1 -1
  208. package/dist/infra/lib/memory/MemoryStorage.js +202 -183
  209. package/dist/infra/lib/memory/MemoryStorage.js.map +1 -1
  210. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  211. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  212. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  213. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  214. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  215. package/dist/infra/orchestrator/AgentManager.js +12 -12
  216. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  217. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  218. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  219. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  220. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  221. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  222. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  223. package/dist/tools/memory/getMemoryGraph.js +12 -12
  224. package/dist/tools/memory/getSessionContext.js +9 -9
  225. package/dist/tools/memory/linkMemories.js +14 -14
  226. package/dist/tools/memory/listMemories.js +4 -4
  227. package/dist/tools/memory/recallMemory.js +4 -4
  228. package/dist/tools/memory/saveMemory.js +4 -4
  229. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  230. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  231. package/dist/tools/semantic/astGrep.test.js +6 -6
  232. package/dist/tools/spec/prdParser.test.js +171 -171
  233. package/dist/tools/spec/specGenerator.js +169 -169
  234. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  235. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  236. package/hooks/gemini-hooks.json +73 -73
  237. package/hooks/hooks.json +134 -126
  238. package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
  239. package/hooks/scripts/__tests__/pre-tool-guard.test.js +409 -409
  240. package/hooks/scripts/__tests__/sentinel-guard.test.js +208 -208
  241. package/hooks/scripts/auto-commit.js +97 -97
  242. package/hooks/scripts/auto-format.js +64 -64
  243. package/hooks/scripts/auto-test.js +81 -81
  244. package/hooks/scripts/code-check.js +271 -271
  245. package/hooks/scripts/codex-detect.js +46 -46
  246. package/hooks/scripts/codex-review-gate.js +80 -80
  247. package/hooks/scripts/command-log.js +32 -32
  248. package/hooks/scripts/context-save.js +353 -353
  249. package/hooks/scripts/evolution-engine.js +91 -91
  250. package/hooks/scripts/figma-extract.js +768 -635
  251. package/hooks/scripts/figma-guard.js +219 -219
  252. package/hooks/scripts/figma-refine.js +315 -315
  253. package/hooks/scripts/figma-to-scss.js +394 -394
  254. package/hooks/scripts/figma-validate.js +353 -353
  255. package/hooks/scripts/hud-status.js +321 -321
  256. package/hooks/scripts/keyword-detector.js +214 -214
  257. package/hooks/scripts/lib/dispatcher.js +87 -83
  258. package/hooks/scripts/lib/scope-from-spec.js +276 -261
  259. package/hooks/scripts/llm-orchestrate.js +645 -645
  260. package/hooks/scripts/post-edit.js +35 -35
  261. package/hooks/scripts/pr-test-gate.js +52 -52
  262. package/hooks/scripts/pre-tool-guard.js +259 -259
  263. package/hooks/scripts/prompt-dispatcher.js +192 -190
  264. package/hooks/scripts/scope-guard.js +145 -145
  265. package/hooks/scripts/sentinel-guard.js +130 -130
  266. package/hooks/scripts/session-start.js +186 -186
  267. package/hooks/scripts/skill-injector.js +83 -83
  268. package/hooks/scripts/step-counter.js +45 -0
  269. package/hooks/scripts/stop-notify.js +209 -209
  270. package/hooks/scripts/utils.js +315 -257
  271. package/languages/csharp-unity.md +515 -515
  272. package/languages/gdscript-godot.md +470 -470
  273. package/languages/ruby-rails.md +489 -489
  274. package/languages/typescript-angular.md +433 -433
  275. package/languages/typescript-astro.md +416 -416
  276. package/languages/typescript-electron.md +406 -406
  277. package/languages/typescript-nestjs.md +524 -524
  278. package/languages/typescript-svelte.md +407 -407
  279. package/languages/typescript-tauri.md +365 -365
  280. package/package.json +106 -106
  281. package/skills/agents-md/SKILL.md +121 -121
  282. package/skills/agents-md/rubrics/what-to-keep.md +49 -49
  283. package/skills/agents-md/templates/agents-md.md +36 -36
  284. package/skills/arch-guard/SKILL.md +181 -181
  285. package/skills/arch-guard/agents/detector.md +48 -48
  286. package/skills/arch-guard/agents/reporter.md +48 -48
  287. package/skills/arch-guard/agents/rule-generator.md +49 -49
  288. package/skills/arch-guard/agents/violation-checker.md +51 -51
  289. package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
  290. package/skills/arch-guard/frameworks/solid.md +102 -102
  291. package/skills/arch-guard/scripts/check-boundaries.js +90 -90
  292. package/skills/arch-guard/templates/arch-rules.json +47 -47
  293. package/skills/arch-guard/templates/violation-report.md +53 -53
  294. package/skills/brand-assets/SKILL.md +147 -147
  295. package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
  296. package/skills/brand-assets/templates/brand-guide.md +161 -161
  297. package/skills/capability-loop/SKILL.md +272 -272
  298. package/skills/capability-loop/agents/capability-designer.md +61 -61
  299. package/skills/capability-loop/agents/failure-analyst.md +55 -55
  300. package/skills/capability-loop/agents/implementer.md +50 -50
  301. package/skills/capability-loop/agents/tester.md +53 -53
  302. package/skills/capability-loop/templates/capability-spec.md +118 -118
  303. package/skills/capability-loop/templates/failure-analysis.md +118 -118
  304. package/skills/characterization-test/SKILL.md +207 -207
  305. package/skills/characterization-test/agents/behavior-capturer.md +50 -50
  306. package/skills/characterization-test/agents/coverage-checker.md +54 -54
  307. package/skills/characterization-test/agents/reporter.md +50 -50
  308. package/skills/characterization-test/agents/test-writer.md +49 -49
  309. package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
  310. package/skills/characterization-test/templates/test-template.ts +101 -101
  311. package/skills/chub-usage/SKILL.md +139 -139
  312. package/skills/claude-md-guide/SKILL.md +351 -351
  313. package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
  314. package/skills/claude-md-guide/templates/claude-md.md +54 -54
  315. package/skills/commerce-patterns/SKILL.md +64 -64
  316. package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
  317. package/skills/commerce-patterns/templates/product-schema.md +85 -85
  318. package/skills/commit-push-pr/SKILL.md +77 -77
  319. package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
  320. package/skills/commit-push-pr/agents/message-writer.md +50 -50
  321. package/skills/commit-push-pr/agents/pr-writer.md +58 -58
  322. package/skills/commit-push-pr/agents/reviewer.md +52 -52
  323. package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
  324. package/skills/commit-push-pr/templates/pr-body.md +63 -63
  325. package/skills/context7-usage/SKILL.md +106 -106
  326. package/skills/context7-usage/rubrics/when-to-use.md +50 -50
  327. package/skills/create-prd/SKILL.md +90 -90
  328. package/skills/create-prd/agents/edge-case-finder.md +48 -48
  329. package/skills/create-prd/agents/prioritizer.md +60 -60
  330. package/skills/create-prd/agents/requirements-writer.md +48 -48
  331. package/skills/create-prd/agents/researcher.md +55 -55
  332. package/skills/create-prd/agents/reviewer.md +54 -54
  333. package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
  334. package/skills/create-prd/frameworks/rice-scoring.md +97 -97
  335. package/skills/create-prd/orchestrator.md +70 -70
  336. package/skills/create-prd/rubrics/completeness.md +58 -58
  337. package/skills/create-prd/templates/prd.md +139 -139
  338. package/skills/design-audit/SKILL.md +152 -152
  339. package/skills/design-audit/agents/a11y-auditor.md +43 -43
  340. package/skills/design-audit/agents/performance-auditor.md +46 -46
  341. package/skills/design-audit/agents/responsive-auditor.md +46 -46
  342. package/skills/design-audit/agents/scorer.md +47 -47
  343. package/skills/design-audit/agents/slop-detector.md +47 -47
  344. package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
  345. package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
  346. package/skills/design-audit/orchestrator.md +64 -64
  347. package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
  348. package/skills/design-audit/rubrics/scoring.md +63 -63
  349. package/skills/design-audit/templates/report.md +88 -88
  350. package/skills/design-critique/SKILL.md +139 -139
  351. package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
  352. package/skills/design-critique/templates/critique-report.md +86 -86
  353. package/skills/design-distill/SKILL.md +130 -130
  354. package/skills/design-distill/templates/design-system.md +132 -132
  355. package/skills/design-normalize/SKILL.md +133 -133
  356. package/skills/design-normalize/rubrics/token-naming.md +117 -117
  357. package/skills/design-normalize/templates/token-audit.md +89 -89
  358. package/skills/design-polish/SKILL.md +131 -131
  359. package/skills/design-polish/rubrics/polish-checklist.md +68 -68
  360. package/skills/design-polish/templates/polish-report.md +64 -64
  361. package/skills/design-teach/SKILL.md +182 -182
  362. package/skills/design-teach/rubrics/brand-personality.md +73 -73
  363. package/skills/design-teach/templates/design-context.json +36 -36
  364. package/skills/devlog/SKILL.md +143 -143
  365. package/skills/e2e-commerce/SKILL.md +62 -62
  366. package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
  367. package/skills/event-comms/SKILL.md +172 -172
  368. package/skills/event-comms/templates/email-invite.md +99 -99
  369. package/skills/event-comms/templates/sns-post.md +133 -133
  370. package/skills/event-ops/SKILL.md +207 -207
  371. package/skills/event-ops/rubrics/contingency.md +85 -85
  372. package/skills/event-ops/templates/d-day-checklist.md +65 -65
  373. package/skills/event-planning/SKILL.md +144 -144
  374. package/skills/event-planning/rubrics/timeline.md +70 -70
  375. package/skills/event-planning/templates/event-plan.md +91 -91
  376. package/skills/exec-plan/SKILL.md +149 -149
  377. package/skills/exec-plan/agents/decomposer.md +47 -47
  378. package/skills/exec-plan/agents/dependency-mapper.md +44 -44
  379. package/skills/exec-plan/agents/estimator.md +43 -43
  380. package/skills/exec-plan/agents/validator.md +55 -55
  381. package/skills/exec-plan/orchestrator.md +70 -70
  382. package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
  383. package/skills/exec-plan/templates/plan.md +147 -147
  384. package/skills/git-worktree/SKILL.md +73 -73
  385. package/skills/git-worktree/rubrics/when-to-use.md +55 -55
  386. package/skills/handoff/SKILL.md +110 -110
  387. package/skills/handoff/agents/context-summarizer.md +51 -51
  388. package/skills/handoff/agents/document-writer.md +63 -63
  389. package/skills/handoff/agents/state-collector.md +53 -53
  390. package/skills/handoff/agents/verifier.md +48 -48
  391. package/skills/handoff/rubrics/completeness.md +62 -62
  392. package/skills/handoff/templates/handoff.md +107 -107
  393. package/skills/parallel-research/SKILL.md +104 -104
  394. package/skills/parallel-research/agents/best-practices.md +43 -43
  395. package/skills/parallel-research/agents/codebase-patterns.md +46 -46
  396. package/skills/parallel-research/agents/framework-docs.md +45 -45
  397. package/skills/parallel-research/agents/security-advisory.md +46 -46
  398. package/skills/parallel-research/agents/synthesizer.md +57 -57
  399. package/skills/parallel-research/experts/best-practices.md +50 -50
  400. package/skills/parallel-research/experts/codebase-patterns.md +70 -70
  401. package/skills/parallel-research/experts/framework-docs.md +65 -65
  402. package/skills/parallel-research/experts/security-advisory.md +69 -69
  403. package/skills/parallel-research/orchestrator.md +79 -79
  404. package/skills/parallel-research/templates/awesome-list.md +32 -32
  405. package/skills/parallel-research/templates/paper.md +88 -88
  406. package/skills/parallel-research/templates/synthesis.md +101 -101
  407. package/skills/prioritization-frameworks/SKILL.md +87 -87
  408. package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
  409. package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
  410. package/skills/priority-todos/SKILL.md +64 -64
  411. package/skills/priority-todos/rubrics/prioritization.md +70 -70
  412. package/skills/priority-todos/templates/todo-board.md +59 -59
  413. package/skills/seo-checklist/SKILL.md +58 -58
  414. package/skills/seo-checklist/frameworks/structured-data.md +153 -153
  415. package/skills/seo-checklist/rubrics/content-seo.md +42 -42
  416. package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
  417. package/skills/techdebt/SKILL.md +124 -124
  418. package/skills/techdebt/agents/analyzer.md +50 -50
  419. package/skills/techdebt/agents/fixer.md +41 -41
  420. package/skills/techdebt/agents/reviewer.md +47 -47
  421. package/skills/techdebt/agents/scanner.md +44 -44
  422. package/skills/techdebt/orchestrator.md +70 -70
  423. package/skills/techdebt/rubrics/severity.md +51 -51
  424. package/skills/techdebt/scripts/scan.js +90 -90
  425. package/skills/techdebt/templates/report.md +86 -86
  426. package/skills/tool-fallback/SKILL.md +104 -104
  427. package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
  428. package/skills/typescript-advanced-types/SKILL.md +67 -67
  429. package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
  430. package/skills/ui-ux-pro-max/SKILL.md +236 -236
  431. package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
  432. package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
  433. package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
  434. package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
  435. package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
  436. package/skills/ui-ux-pro-max/reference/typography.md +455 -455
  437. package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
  438. package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
  439. package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
  440. package/skills/user-personas/SKILL.md +75 -75
  441. package/skills/user-personas/rubrics/research-methods.md +56 -56
  442. package/skills/user-personas/templates/persona.md +89 -89
  443. package/skills/vercel-react-best-practices/SKILL.md +60 -60
  444. package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
  445. package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
  446. package/skills/vibe-contract/SKILL.md +166 -166
  447. package/skills/vibe-docs/templates/architecture.md +80 -80
  448. package/skills/vibe-docs/templates/readme.md +84 -84
  449. package/skills/vibe-docs/templates/release-notes.md +74 -74
  450. package/skills/vibe-figma/SKILL.md +363 -363
  451. package/skills/vibe-figma/rubrics/extraction-checklist.md +51 -51
  452. package/skills/vibe-figma/templates/component-index.md +126 -126
  453. package/skills/vibe-figma/templates/component-spec.md +168 -168
  454. package/skills/vibe-figma/templates/figma-handoff.md +100 -100
  455. package/skills/vibe-figma/templates/remapped-tree.md +277 -277
  456. package/skills/vibe-figma-convert/SKILL.md +235 -235
  457. package/skills/vibe-figma-convert/rubrics/conversion-rules.md +141 -141
  458. package/skills/vibe-figma-convert/templates/component.md +140 -140
  459. package/skills/vibe-figma-extract/SKILL.md +241 -219
  460. package/skills/vibe-figma-extract/rubrics/image-rules.md +157 -157
  461. package/skills/vibe-interview/SKILL.md +358 -358
  462. package/skills/vibe-interview/checklists/api.md +101 -101
  463. package/skills/vibe-interview/checklists/feature.md +88 -88
  464. package/skills/vibe-interview/checklists/library.md +95 -95
  465. package/skills/vibe-interview/checklists/mobile.md +89 -89
  466. package/skills/vibe-interview/checklists/webapp.md +97 -97
  467. package/skills/vibe-interview/checklists/website.md +99 -99
  468. package/skills/vibe-plan/SKILL.md +254 -254
  469. package/skills/vibe-regress/SKILL.md +174 -174
  470. package/skills/vibe-regress/templates/bug.md +44 -44
  471. package/skills/vibe-regress/templates/test-jest.md +29 -29
  472. package/skills/vibe-regress/templates/test-vitest.md +30 -30
  473. package/skills/vibe-spec/SKILL.md +1195 -1195
  474. package/skills/vibe-spec-review/SKILL.md +726 -726
  475. package/skills/vibe-test/SKILL.md +140 -140
  476. package/skills/video-production/SKILL.md +52 -52
  477. package/skills/video-production/rubrics/quality-checklist.md +58 -58
  478. package/skills/video-production/templates/production-plan.md +104 -104
  479. package/vibe/config.json +29 -29
  480. package/vibe/constitution.md +227 -227
  481. package/vibe/rules/principles/communication-guide.md +98 -98
  482. package/vibe/rules/principles/development-philosophy.md +52 -52
  483. package/vibe/rules/principles/quick-start.md +102 -102
  484. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  485. package/vibe/rules/quality/checklist.md +276 -276
  486. package/vibe/rules/quality/performance.md +236 -236
  487. package/vibe/rules/quality/testing-strategy.md +440 -440
  488. package/vibe/rules/standards/anti-patterns.md +541 -541
  489. package/vibe/rules/standards/code-structure.md +291 -291
  490. package/vibe/rules/standards/complexity-metrics.md +313 -313
  491. package/vibe/rules/standards/git-workflow.md +237 -237
  492. package/vibe/rules/standards/naming-conventions.md +198 -198
  493. package/vibe/rules/standards/security.md +305 -305
  494. package/vibe/rules/writing/document-style.md +74 -74
  495. package/vibe/setup.sh +31 -31
  496. package/vibe/templates/claudemd-template.md +74 -74
  497. package/vibe/templates/constitution-template.md +267 -267
  498. package/vibe/templates/contract-backend-template.md +526 -526
  499. package/vibe/templates/contract-frontend-template.md +599 -599
  500. package/vibe/templates/feature-template.md +96 -96
  501. package/vibe/templates/plan-template.md +194 -194
  502. package/vibe/templates/spec-template.md +221 -221
  503. package/vibe/ui-ux-data/charts.csv +26 -26
  504. package/vibe/ui-ux-data/colors.csv +97 -97
  505. package/vibe/ui-ux-data/icons.csv +101 -101
  506. package/vibe/ui-ux-data/landing.csv +31 -31
  507. package/vibe/ui-ux-data/products.csv +96 -96
  508. package/vibe/ui-ux-data/react-performance.csv +45 -45
  509. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  510. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  511. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  512. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  513. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  514. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  515. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  516. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  517. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  518. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  519. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  520. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  521. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  522. package/vibe/ui-ux-data/styles.csv +68 -68
  523. package/vibe/ui-ux-data/typography.csv +57 -57
  524. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  525. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  526. package/vibe/ui-ux-data/version.json +31 -31
  527. package/vibe/ui-ux-data/web-interface.csv +31 -31
@@ -1,577 +1,577 @@
1
- ---
2
- description: ν”„λ‘œμ νŠΈ λͺ…μ„Έ 톡합 μ§„μž…μ  β€” interview β†’ plan β†’ spec β†’ review β†’ run/figma 전체 μ›Œν¬ν”Œλ‘œ μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜
3
- argument-hint: "(선택) feature name, plan/interview file path, or idea"
4
- ---
5
-
6
- # /vibe.spec
7
-
8
- **vibe μ›Œν¬ν”Œλ‘œ 톡합 μ§„μž…μ .** "무엇을 κ°œλ°œν• μ§€" 질문으둜 μ‹œμž‘ν•΄μ„œ interview β†’ plan β†’ SPEC μž‘μ„± β†’ review β†’ κ΅¬ν˜„ + UI λ””μžμΈκΉŒμ§€ 전체 흐름을 μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜ν•œλ‹€.
9
-
10
- ## Usage
11
-
12
- ```
13
- /vibe.spec # 빈 μ‹œμž‘ β€” "무엇을 λ§Œλ“€κΉŒμš”?"λΆ€ν„°
14
- /vibe.spec "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ" # 아이디어/ν”Όμ²˜λͺ… μ§€μ • μ‹œμž‘
15
- /vibe.spec ".claude/vibe/plans/{feature}.md" # κΈ°νšμ„œ μž…λ ₯ (plan 단계 μŠ€ν‚΅)
16
- /vibe.spec ".claude/vibe/interviews/{feature}.md" # interview μž…λ ₯ (interview 단계 μŠ€ν‚΅)
17
- /vibe.spec "docs/prd.md" # μ™ΈλΆ€ PRD/아이디어 파일 μž…λ ₯
18
- /vibe.spec + πŸ“Ž 첨뢀 # 첨뢀 기반 μ‹œμž‘
19
- /vibe.spec "feature-name" ultrawork # 쀑단 게이트 없이 μžλ™ μ „ 흐름 μ‹€ν–‰
20
- ```
21
-
22
- ## Philosophy
23
-
24
- > **μ‚¬μš©μžλŠ” "무엇을 λ§Œλ“€μ§€"만 λ§ν•˜λ©΄ λœλ‹€. μ–΄λ–€ μŠ€ν‚¬μ„ μ–Έμ œ λΆ€λ₯Όμ§€λŠ” vibeκ°€ κ²°μ •ν•œλ‹€.**
25
-
26
- - **단일 μ§„μž…μ **: `/vibe.spec` ν•˜λ‚˜λ‘œ 전체 μ›Œν¬ν”Œλ‘œ μ‹œμž‘. λ‹€λ₯Έ `/vibe.*` μ»€λ§¨λ“œ 이름 μ™ΈμšΈ ν•„μš” μ—†μŒ.
27
- - **Smart resume**: κΈ°μ‘΄ interview/plan/spec 파일 쑴재 μ—¬λΆ€λ‘œ μ–΄λŠ 단계뢀터 μ‹œμž‘ν• μ§€ μžλ™ νŒλ‹¨.
28
- - **μžλ™ 체이닝**: μŠ€ν‚¬ `chain-next` 메타데이터 따라 vibe-interview β†’ vibe-plan β†’ vibe-spec β†’ vibe-spec-review μ§„ν–‰.
29
- - **λΆ„κΈ° νŒλ‹¨**: κΈ°νšμ„œμ˜ `type` ν•„λ“œλ‘œ UI νŠΈλž™/둜직 νŠΈλž™ μ—¬λΆ€ κ²°μ •.
30
- - **μ‚¬μš©μž μ œμ–΄**: 각 단계 사이에 μ‚¬μš©μž 확인 지점(stop gate) 제곡 (ultrawork λͺ¨λ“œλŠ” μŠ€ν‚΅).
31
-
32
- ## Flow
33
-
34
- ```
35
- /vibe.spec ["input"?]
36
- ↓
37
- Phase 0: Git branch setup
38
- ↓
39
- Phase 0.5: Input 뢄석 + Smart resume κ²°μ •
40
- - 첨뢀/파일/아이디어 감지
41
- - κΈ°μ‘΄ .claude/vibe/{interviews,plans,specs}/ 확인
42
- - μ‹œμž‘ 단계 κ²°μ •: interview | plan | spec | review
43
- ↓
44
- Phase 1: Interview (skill: vibe-interview)
45
- - 쑰건: interview 파일 μ—†μŒ
46
- - μ‚¬μš©μž "그만"κΉŒμ§€ 반볡 인터뷰
47
- - 좜λ ₯: .claude/vibe/interviews/{feature}.md
48
- ↓
49
- [Stop Gate 1] β€” ultrawork λͺ¨λ“œμ—μ„œλŠ” μŠ€ν‚΅
50
- ↓
51
- Phase 2: Plan (skill: vibe-plan)
52
- - 쑰건: plan 파일 μ—†μŒ
53
- - interview β†’ λ§ˆν¬λ‹€μš΄ κΈ°νšμ„œ μ •μ œ
54
- - 좜λ ₯: .claude/vibe/plans/{feature}.md
55
- ↓
56
- [Stop Gate 2 + λΆ„κΈ° νŒλ‹¨]
57
- κΈ°νšμ„œ type 읽고 경둜 κ²°μ •:
58
- - website/webapp/mobile β†’ UI + Logic 병렬
59
- - api/library/feature-data β†’ Logic만
60
- ↓
61
- Phase 3: SPEC μž‘μ„± (skill: vibe-spec)
62
- - PTCF ꡬ쑰 SPEC λ¬Έμ„œ + Feature(BDD) 파일
63
- - Parallel research (GPT/Gemini/Claude agents)
64
- - Large scope μžλ™ λΆ„ν• 
65
- - Ambiguity scan + ν’ˆμ§ˆ 게이트(100점, μˆ˜λ ΄κΉŒμ§€ 루프)
66
- - 좜λ ₯: .claude/vibe/specs/{feature}.md + .claude/vibe/features/{feature}.feature
67
- ↓
68
- Phase 4: SPEC Review (skill: vibe-spec-review)
69
- - Race Review (GPT + Gemini, λΌμš΄λ“œ 수 μΊ‘ μ—†μŒ, μˆ˜λ ΄κΉŒμ§€ 루프)
70
- - (μ˜΅μ…˜) Codex adversarial review
71
- - μ‚¬μš©μž μ΅œμ’… 체크포인트
72
- ↓
73
- Phase 5a: Logic Track β†’ /vibe.run
74
- Phase 5b: UI Track (병렬, UI ν”„λ‘œμ νŠΈλ§Œ) β†’ /vibe.figma
75
- ↓
76
- Phase 6: Verify (/vibe.verify)
77
- Phase 7: Trace (/vibe.trace)
78
- ↓
79
- Done
80
- ```
81
-
82
- ## Rules Reference
83
-
84
- **`~/.claude/vibe/rules/` (global) μ€€μˆ˜:**
85
-
86
- - `core/development-philosophy.md`
87
- - `core/quick-start.md` β€” Korean first
88
- - `core/communication-guide.md`
89
-
90
- ## Process
91
-
92
- > **⏱️ Timer**: μ‹œμž‘ μ‹œ `getCurrentTime` 호좜, `{start_time}`둜 기둝.
93
-
94
- ### Phase 0: Git Branch Setup (MANDATORY)
95
-
96
- ```bash
97
- git branch --show-current
98
- ```
99
-
100
- | ν˜„μž¬ | 행동 |
101
- |-----|-----|
102
- | `main`/`master` | μž„μ‹œ μ΄λ¦„μœΌλ‘œ `git checkout -b vibe/tmp` (이후 feature 이름 ν™•μ •λ˜λ©΄ λ¦¬λ„€μž„) |
103
- | `feature/*`, `plan/*`, `interview/*`, `vibe/*` | 확인: "이 λΈŒλžœμΉ˜μ—μ„œ 계속?" |
104
- | 기타 | μ‚¬μš©μž 확인 |
105
-
106
- ### Phase 0.5: Input 뢄석 + Smart Resume
107
-
108
- **μž…λ ₯ μš°μ„ μˆœμœ„:**
109
-
110
- ```
111
- 1. πŸ“Ž 첨뢀 파일 있음? β†’ 첨뢀 뢄석 β†’ feature name μΆ”μΆœ
112
- 2. μΈμžκ°€ 파일 경둜? β†’ 파일 μœ„μΉ˜λ‘œ μ‹œμž‘ 단계 κ²°μ •:
113
- .claude/vibe/interviews/*.md β†’ Phase 2 (plan)
114
- .claude/vibe/plans/*.md β†’ Phase 3 (spec)
115
- .claude/vibe/specs/*.md β†’ Phase 4 (review)
116
- 기타 (.md/.txt/.pdf) β†’ Phase 2 (plan, μ™ΈλΆ€ PRD 흑수)
117
- 3. μΈμžκ°€ feature name? β†’ .claude/vibe/μ—μ„œ κΈ°μ‘΄ 파일 검색
118
- existing spec β†’ "리뷰 μž¬μ‹€ν–‰? μ΄μ–΄μ„œ? μž¬μž‘μ„±?" 물음
119
- existing plan β†’ Phase 3 (spec)
120
- existing interview β†’ Phase 2 (plan)
121
- 아무것도 μ—†μŒ β†’ Phase 1 (interview)
122
- 4. 인자 μ—†μŒ β†’ Smart Resume Fallback μ•Œκ³ λ¦¬μ¦˜ μ‹€ν–‰ (μ•„λž˜ μ°Έμ‘°)
123
- ```
124
-
125
- #### Smart Resume Fallback (인자 μ—†λŠ” `/vibe.spec` 호좜 μ‹œ)
126
-
127
- **λͺ©μ **: feature 이름을 κΈ°μ–΅ν•˜μ§€ λͺ»ν•΄λ„ μ§„ν–‰ 쀑 μž‘μ—…μ„ μžλ™ λ°œκ²¬ν•΄μ„œ μ΄μ–΄μ„œ μ§„ν–‰ν•  수 있게 ν•œλ‹€.
128
-
129
- ```
130
- μ•Œκ³ λ¦¬μ¦˜:
131
-
132
- Step 1) .claude/vibe/.last-feature 확인 (pointer 파일)
133
- - 파일 μ—†μŒ β†’ Step 2둜
134
- - 쑴재 β†’ ν•΄λ‹Ή feature의 μƒνƒœ μš”μ•½ 좜λ ₯ + 확인 질문:
135
- "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
136
- πŸ”„ λ§ˆμ§€λ§‰ μž‘μ—…: {feature-name}
137
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
138
- βœ… interview: .claude/vibe/interviews/{feature}.md (status: complete, N일 μ „)
139
- βœ… plan: .claude/vibe/plans/{feature}.md (N일 μ „)
140
- ❌ spec: μ—†μŒ
141
- β†’ λ‹€μŒ 단계: Phase 3 (vibe-spec μŠ€ν‚¬ β€” SPEC μž‘μ„±)
142
-
143
- μ΄μ–΄μ„œ μ§„ν–‰ν• κΉŒμš”?
144
- Enter / yes β†’ μ΄μ–΄μ„œ μ§„ν–‰
145
- list β†’ λ‹€λ₯Έ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ 보기
146
- new β†’ μƒˆ μ•„μ΄λ””μ–΄λ‘œ μ‹œμž‘
147
- abort β†’ μ’…λ£Œ"
148
-
149
- - yes β†’ Phase 0.5의 인자 뢄석 경둜 3번 (feature name)으둜 μ§„μž…
150
- - list β†’ Step 2둜
151
- - new β†’ Step 3으둜
152
- - abort β†’ μ’…λ£Œ
153
-
154
- Step 2) μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ ν‘œμ‹œ (.claude/vibe/ 디렉토리 μŠ€μΊ”)
155
- μˆ˜μ§‘:
156
- features = {} (feature name β†’ {hasInterview, hasPlan, hasSpec, mtime})
157
- for each file in .claude/vibe/interviews/*.md:
158
- feature = basename without .md
159
- features[feature].hasInterview = true
160
- features[feature].interviewMtime = file.mtime
161
- features[feature].interviewStatus = frontmatter의 status (complete/partial)
162
- λ™μΌν•˜κ²Œ plans/*.md, specs/*.md μŠ€μΊ”
163
-
164
- μ •λ ¬: κ°€μž₯ 졜근 μž‘μ—… (max mtime) 순
165
- μ΅œλŒ€ 10κ°œκΉŒμ§€ ν‘œμ‹œ
166
-
167
- μ§„ν–‰ 쀑 μž‘μ—… 0개 β†’ Step 3으둜
168
- 1개 이상 β†’ λͺ©λ‘ 좜λ ₯ + 선택 질문:
169
- "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
170
- πŸ” μ§„ν–‰ 쀑인 μž‘μ—…
171
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
172
-
173
- 1. bean-landing [interview: partial] 2일 μ „
174
- 2. todo-app [plan: complete] μ–΄μ œ
175
- 3. payment-api [spec: complete] 방금 μ „
176
- ─────────────────────────────────────────────
177
- n. βž• μƒˆλ‘œ μ‹œμž‘
178
- a. μ’…λ£Œ
179
-
180
- 선택 번호 λ˜λŠ” feature 이름을 μž…λ ₯ν•˜μ„Έμš”:"
181
-
182
- μ‚¬μš©μž 응닡 처리:
183
- - 숫자 (1~N) β†’ ν•΄λ‹Ή feature 선택 β†’ 인자 뢄석 경둜 3번으둜
184
- - μ •ν™•ν•œ feature 이름 β†’ 인자 뢄석 경둜 3번으둜
185
- - "n" λ˜λŠ” "new" β†’ Step 3으둜
186
- - "a" λ˜λŠ” "abort" β†’ μ’…λ£Œ
187
- - 자유 ν…μŠ€νŠΈ (λ§€μΉ­ μ—†μŒ) β†’ "{μž…λ ₯}은 κΈ°μ‘΄ featureκ°€ μ•„λ‹™λ‹ˆλ‹€. μƒˆλ‘œ μ‹œμž‘ν• κΉŒμš”? (y/n)" 확인
188
-
189
- Step 3) 빈 μ‹œμž‘ (κΈ°μ‘΄ λ™μž‘)
190
- "πŸ‘‹ 무엇을 λ§Œλ“€κ³  μ‹ΆμœΌμ‹ κ°€μš”?" 질문 β†’ Phase 1 (interview)
191
- ```
192
-
193
- #### `.last-feature` 포인터 파일 κ°±μ‹  κ·œμΉ™
194
-
195
- ```
196
- 경둜: .claude/vibe/.last-feature
197
- ν˜•μ‹: ν•œ 쀄, feature name만 μ €μž₯
198
- 예: "bean-landing\n"
199
-
200
- ⚠ 이 νŒŒμΌμ€ **개인 μž‘μ—… 포인터**μ΄λ―€λ‘œ git에 μ»€λ°‹ν•˜μ§€ μ•ŠλŠ”λ‹€.
201
- `.gitignore` 에 `.claude/vibe/.last-feature` μ—”νŠΈλ¦¬ ν•„μˆ˜.
202
-
203
- κ°±μ‹  μ‹œμ :
204
- - Phase 1 (interview) μ§„μž… μ‹œ β†’ feature name κ²°μ •λ˜λ©΄ μ¦‰μ‹œ 기둝
205
- - Phase 2 (plan) μ§„μž… μ‹œ β†’ 기둝 (이미 맞으면 no-op)
206
- - Phase 3 (spec) μ§„μž… μ‹œ β†’ 기둝
207
- - Phase 4 (review) μ§„μž… μ‹œ β†’ 기둝
208
-
209
- 즉, μ–΄λŠ Phaseμ—μ„œ λ©ˆμΆ”λ“  λ‹€μŒ /vibe.spec 호좜 μ‹œ 이 featureκ°€ 1μˆœμœ„λ‘œ μ œμ•ˆλœλ‹€.
210
-
211
- μ‚­μ œ μ‹œμ :
212
- - Phase 7 (trace) μ™„λ£Œ μ‹œ β†’ 파일 μ‚­μ œ (μ›Œν¬ν”Œλ‘œ μ™„μ£Ό)
213
- - μ‚¬μš©μžκ°€ λͺ…μ‹œμ μœΌλ‘œ μ’…λ£Œ/abort 선택 μ‹œ β†’ μ‚­μ œν•˜μ§€ μ•ŠμŒ (재개 κ°€λŠ₯ν•˜κ²Œ)
214
- ```
215
-
216
- **좜λ ₯ μ˜ˆμ‹œ:**
217
-
218
- ```
219
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
220
- πŸ” Input 뢄석
221
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
222
-
223
- μž…λ ₯: "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ"
224
- λΆ„λ₯˜: μ‹ κ·œ 아이디어
225
- κΈ°μ‘΄ 파일: μ—†μŒ
226
-
227
- β†’ μ‹œμž‘ 단계: Phase 1 (vibe-interview)
228
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
229
- ```
230
-
231
- ### Phase 1: Interview (쑰건뢀)
232
-
233
- **μ§„μž… 쑰건:** interview 파일이 아직 μ—†μŒ
234
-
235
- **μ§„μž… 방식:**
236
-
237
- 1. **인자 있음** (`/vibe.spec "아이디어"`)
238
- β†’ `vibe-interview` μŠ€ν‚¬ λ‘œλ“œ + 아이디어 전달
239
-
240
- 2. **인자 μ—†μŒ** (`/vibe.spec`)
241
- β†’ **Smart Resume Fallback λ¨Όμ €** (Phase 0.5 μ°Έμ‘°):
242
- - `.last-feature` 있고 μ‚¬μš©μžκ°€ "μ΄μ–΄μ„œ" 선택 β†’ ν•΄λ‹Ή feature둜 μ§„μž… (이 Phase 1 κ±΄λ„ˆλ›Έ 수 있음)
243
- - μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘μ—μ„œ 선택 β†’ ν•΄λ‹Ή feature둜 μ§„μž…
244
- - "new" 선택 or μ§„ν–‰ 쀑 μž‘μ—… μ—†μŒ β†’ μ•„λž˜ 질문으둜 빈 μ‹œμž‘
245
- β†’ 빈 μ‹œμž‘ 질문:
246
- ```
247
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
248
- πŸ‘‹ 무엇을 λ§Œλ“€κ³  μ‹ΆμœΌμ‹ κ°€μš”?
249
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
250
-
251
- 예:
252
- - "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ"
253
- - "ν•  일 관리 μ•±"
254
- - "Stripe 결제 연동 API"
255
- - λ˜λŠ” 자유둭게 μ„€λͺ…
256
-
257
- (파일/이미지 첨뢀도 κ°€λŠ₯)
258
- ```
259
- β†’ μ‚¬μš©μž 응닡 β†’ `vibe-interview` μŠ€ν‚¬ λ‘œλ“œ
260
-
261
- **μŠ€ν‚¬ λ‘œλ“œ:**
262
-
263
- ```
264
- Load skill `vibe-interview` with input: {user_idea}
265
- ```
266
-
267
- > **`.last-feature` κ°±μ‹ **: vibe-interview μŠ€ν‚¬μ΄ feature name을 ν™•μ •ν•˜λŠ” μ¦‰μ‹œ `.claude/vibe/.last-feature` 에 ν•œ μ€„λ‘œ 기둝. 이후 Phase 2/3/4 μ§„μž… μ‹œμ—λ„ 동일 기둝 μœ μ§€ (값이 κ°™μœΌλ©΄ no-op).
268
-
269
- `vibe-interview` μŠ€ν‚¬μ΄ 자체적으둜:
270
- - ν”„λ‘œμ νŠΈ νƒ€μž… 감지 (website/webapp/mobile/api/library/feature)
271
- - νƒ€μž…λ³„ 체크리슀트 λ‘œλ“œ (`skills/vibe-interview/checklists/{type}.md`)
272
- - 반볡 인터뷰 μ‹€ν–‰ (μ‚¬μš©μž "그만"κΉŒμ§€)
273
- - `.claude/vibe/interviews/{feature-name}.md` μ €μž₯
274
-
275
- **Stop Gate 1**: Interview μ™„λ£Œ ν›„ (ultrawork λͺ¨λ“œ μŠ€ν‚΅)
276
-
277
- ```
278
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
279
- βœ… Interview μ™„λ£Œ
280
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
281
-
282
- πŸ“„ .claude/vibe/interviews/{feature}.md
283
- Required: N/M | Optional: K/L | Discovered: X
284
-
285
- λ‹€μŒ 단계: κΈ°νšμ„œ μž‘μ„±
286
- 1. 계속 μ§„ν–‰ (κΈ°λ³Έ)
287
- 2. Interview만 μ €μž₯ν•˜κ³  μ’…λ£Œ
288
- 3. Interview μˆ˜μ • ν›„ λ‹€μ‹œ (vibe-interview μž¬μ‹€ν–‰)
289
-
290
- Enter β†’ 계속
291
- ```
292
-
293
- ### Phase 2: Plan (쑰건뢀)
294
-
295
- **μ§„μž… 쑰건:** plan 파일이 아직 μ—†μŒ
296
-
297
- ```
298
- Load skill `vibe-plan` with input: .claude/vibe/interviews/{feature}.md
299
- ```
300
-
301
- `vibe-plan` μŠ€ν‚¬μ΄ 자체적으둜:
302
- - ν…œν”Œλ¦Ώ λ‘œλ“œ (`~/.claude/vibe/templates/plan-template.md`)
303
- - Interview μ„Ήμ…˜λ³„ μ •μ œ
304
- - UI μ„Ήμ…˜ 쑰건뢀 포함 (type 기반)
305
- - `.claude/vibe/plans/{feature}.md` μ €μž₯
306
-
307
- **Stop Gate 2**: κΈ°νšμ„œ μ™„λ£Œ ν›„ + λΆ„κΈ° νŒλ‹¨ (ultrawork λͺ¨λ“œ μŠ€ν‚΅)
308
-
309
- ```
310
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
311
- βœ… κΈ°νšμ„œ μ™„μ„±
312
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
313
-
314
- πŸ“„ .claude/vibe/plans/{feature}.md
315
- Type: {type}
316
-
317
- {type ∈ UI}:
318
- μžλ™ 경둜: SPEC μž‘μ„± β†’ Review β†’ Logic Track + UI Track 병렬 μ‹€ν–‰
319
- 1. 계속 (ꢌμž₯)
320
- 2. Logic Track만 (SPEC만)
321
- 3. UI Track만 (/vibe.figma λ°”λ‘œ)
322
- 4. μ—¬κΈ°μ„œ μ’…λ£Œ
323
-
324
- {type ∈ non-UI}:
325
- μžλ™ 경둜: SPEC μž‘μ„± β†’ Review β†’ Logic Track
326
- 1. 계속 (ꢌμž₯)
327
- 2. μ—¬κΈ°μ„œ μ’…λ£Œ
328
-
329
- Enter β†’ 계속
330
- ```
331
-
332
- ### Phase 3: SPEC μž‘μ„±
333
-
334
- **μ§„μž… 쑰건:** spec 파일이 아직 μ—†μŒ (λ˜λŠ” μž¬μž‘μ„± μš”μ²­)
335
-
336
- ```
337
- Load skill `vibe-spec` with input: .claude/vibe/plans/{feature}.md
338
- ```
339
-
340
- `vibe-spec` μŠ€ν‚¬μ΄ PTCF ꡬ쑰 SPEC λ¬Έμ„œ + Feature(BDD) 파일 생성.
341
-
342
- **핡심 단계** (μƒμ„ΈλŠ” `skills/vibe-spec/SKILL.md` μ°Έμ‘°):
343
-
344
- 1. Project analysis (explorer agent)
345
- 2. config.json references λ‘œλ“œ
346
- 3. Parallel research (GPT + Gemini + Claude agents, 8개 병렬)
347
- 4. UI/UX Design Intelligence (UI ν‚€μ›Œλ“œ μ‹œ μžλ™)
348
- 5. PTCF SPEC μž‘μ„± (Large scope μžλ™ λΆ„ν• )
349
- 6. Feature file (BDD) 생성
350
- 7. Ambiguity scan
351
- 8. Quality gate (100점, μˆ˜λ ΄κΉŒμ§€ 루프)
352
-
353
- **좜λ ₯:**
354
-
355
- - `.claude/vibe/specs/{feature-name}.md` (λ˜λŠ” split folder)
356
- - `.claude/vibe/features/{feature-name}.feature` (λ˜λŠ” split folder)
357
-
358
- ### Phase 4: SPEC Review
359
-
360
- ```
361
- Load skill `vibe-spec-review` with feature: {feature-name}
362
- ```
363
-
364
- `vibe-spec-review` μŠ€ν‚¬μ΄ Race Review + ν’ˆμ§ˆ 검증 + μ‚¬μš©μž 체크포인트 μ‹€ν–‰.
365
-
366
- **핡심 단계** (μƒμ„ΈλŠ” `skills/vibe-spec-review/SKILL.md` μ°Έμ‘°):
367
-
368
- 1. SPEC/Feature 파일 λ‘œλ“œ (single/split μžλ™ 감지)
369
- 2. Quality Validation (100점 게이트, μˆ˜λ ΄κΉŒμ§€ auto-fix 루프)
370
- 3. Race Review (GPT + Gemini parallel, λΌμš΄λ“œ 수 μΊ‘ μ—†μŒ, P1=0 + 수렴 μ‹œ μ’…λ£Œ)
371
- 4. (μ˜΅μ…˜) Codex adversarial review
372
- 5. Review Debate Team (2+ P1/P2 이슈 μ‹œ)
373
- 6. μ‚¬μš©μž μ΅œμ’… 체크포인트
374
-
375
- ### Phase 4.5: Contract Extract (auto, only for features with an API)
376
-
377
- ```
378
- Load skill `vibe-contract` with: extract "{feature-name}"
379
- ```
380
-
381
- If the SPEC has a `## API` / `## Endpoints` / `## Interface` section, extract the contract to `.claude/vibe/contracts/{feature-name}.md`. If the section is absent, exit cleanly (not every feature has an API).
382
-
383
- The contract is referenced during Phase 5a implementation, and used by `/vibe.verify` for drift detection.
384
-
385
- ### Phase 5a: Logic Track
386
-
387
- ```
388
- /vibe.run "{feature-name}"
389
- ```
390
-
391
- SPEC β†’ code. Auto-checks at start:
392
- - `/vibe.regress list --feature {feature-name}` β€” warn if any open regressions exist
393
- - `.claude/vibe/contracts/{feature-name}.md` β€” load if present, use as implementation guide
394
-
395
- ### Phase 5b: UI Track (type ∈ {website, webapp, mobile}일 λ•Œλ§Œ)
396
-
397
- **5a와 병렬 μ‹€ν–‰** (λ˜λŠ” 순차 β€” μ‚¬μš©μž 선택):
398
-
399
- ```
400
- /vibe.figma
401
- ```
402
-
403
- **`/vibe.figma`에 전달할 μ»¨ν…μŠ€νŠΈ:**
404
-
405
- - `.claude/vibe/plans/{feature}.md` 경둜
406
- - κΈ°νšμ„œμ˜ Β§7 Look & Feel, Β§8 λ ˆμ΄μ•„μ›ƒ, Β§9 λ°˜μ‘ν˜• μ„Ήμ…˜μ„ Phase 1 μŠ€ν† λ¦¬λ³΄λ“œ μž…λ ₯으둜 μ‚¬μš©
407
-
408
- ### Phase 6: Verify
409
-
410
- ```
411
- /vibe.verify "{feature-name}"
412
- ```
413
-
414
- UI + 둜직 + μ—°κ²° 검증 (후속 PRμ—μ„œ 3μΆ• ν™•μž₯ μ˜ˆμ •).
415
-
416
- ### Phase 7: Trace
417
-
418
- ```
419
- /vibe.trace "{feature-name}"
420
- ```
421
-
422
- SPEC ↔ κ΅¬ν˜„ 좔적.
423
-
424
- > **Phase 7 μ™„λ£Œ μ‹œ**: `.claude/vibe/.last-feature` μ‚­μ œ (μ›Œν¬ν”Œλ‘œ μ™„μ£Ό β€” λ‹€μŒ `/vibe.spec` ν˜ΈμΆœμ€ 빈 μ‹œμž‘ λ˜λŠ” μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘μ—μ„œ μ‹œμž‘).
425
-
426
- ## ultrawork λͺ¨λ“œ
427
-
428
- `ultrawork` (λ˜λŠ” `ulw`)κ°€ μΈμžμ— ν¬ν•¨λ˜λ©΄:
429
-
430
- - **λͺ¨λ“  Stop Gate μŠ€ν‚΅**
431
- - interview β†’ plan β†’ spec β†’ review β†’ run β†’ (figma 병렬) 전체 μžλ™ μ‹€ν–‰
432
- - askUser 체크포인트 μŠ€ν‚΅, κΈ°λ³Έκ°’ μ‚¬μš©
433
- - μˆ˜λ™ κ°œμž… 없이 μ™„μ£Ό
434
-
435
- ```
436
- /vibe.spec "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ" ultrawork
437
- ```
438
-
439
- ## Smart Resume μ˜ˆμ‹œ
440
-
441
- ### μ˜ˆμ‹œ 1: μ‹ κ·œ ν”„λ‘œμ νŠΈ
442
- ```
443
- User: /vibe.spec "원두 λΈŒλžœλ“œ λžœλ”©"
444
-
445
- Claude: πŸ” Input 뢄석
446
- μž…λ ₯: "원두 λΈŒλžœλ“œ λžœλ”©"
447
- λΆ„λ₯˜: μ‹ κ·œ 아이디어
448
- κΈ°μ‘΄ 파일: μ—†μŒ
449
- β†’ μ‹œμž‘ 단계: Phase 1 (vibe-interview)
450
-
451
- [vibe-interview μŠ€ν‚¬ λ‘œλ“œ]
452
- Type: website 감지 β†’ checklists/website.md λ‘œλ“œ
453
- ...
454
- ```
455
-
456
- ### μ˜ˆμ‹œ 2: κΈ°νšμ„œμ—μ„œ μ‹œμž‘
457
- ```
458
- User: /vibe.spec ".claude/vibe/plans/bean-landing.md"
459
-
460
- Claude: πŸ” Input 뢄석
461
- μž…λ ₯: plan 파일 경둜
462
- λΆ„λ₯˜: κΈ°μ‘΄ κΈ°νšμ„œ
463
- Feature: bean-landing
464
- β†’ μ‹œμž‘ 단계: Phase 3 (vibe-spec)
465
-
466
- [vibe-spec μŠ€ν‚¬ λ‘œλ“œ]
467
- κΈ°νšμ„œ 읽기 β†’ research β†’ PTCF μž‘μ„± ...
468
- ```
469
-
470
- ### μ˜ˆμ‹œ 3: κΈ°μ‘΄ feature 재개
471
- ```
472
- User: /vibe.spec "bean-landing"
473
-
474
- Claude: πŸ” Input 뢄석
475
- μž…λ ₯: feature name
476
- κΈ°μ‘΄ 파일 검색...
477
- βœ… interview: .claude/vibe/interviews/bean-landing.md
478
- βœ… plan: .claude/vibe/plans/bean-landing.md
479
- ❌ spec: μ—†μŒ
480
- β†’ μ‹œμž‘ 단계: Phase 3 (vibe-spec)
481
-
482
- [vibe-spec μŠ€ν‚¬ λ‘œλ“œ]
483
- ...
484
- ```
485
-
486
- ### μ˜ˆμ‹œ 4: SPEC 리뷰 μž¬μ‹€ν–‰
487
- ```
488
- User: /vibe.spec "bean-landing"
489
-
490
- Claude: πŸ” Input 뢄석
491
- 기쑴 파일:
492
- βœ… spec: .claude/vibe/specs/bean-landing.md
493
- βœ… feature: .claude/vibe/features/bean-landing.feature
494
-
495
- 이미 SPEC이 μ‘΄μž¬ν•©λ‹ˆλ‹€. μ–΄λ–»κ²Œ μ§„ν–‰ν• κΉŒμš”?
496
- 1. SPEC 리뷰 (Phase 4: vibe-spec-review μŠ€ν‚¬ λ‘œλ“œ)
497
- 2. /vibe.run μ‹€ν–‰ (κ΅¬ν˜„)
498
- 3. SPEC μž¬μž‘μ„± (κΈ°μ‘΄ λ°±μ—… ν›„ μƒˆλ‘œ μž‘μ„±)
499
- 4. μ’…λ£Œ
500
- ```
501
-
502
- ### μ˜ˆμ‹œ 5: feature 이름을 잊고 인자 없이 호좜 (Smart Resume Fallback)
503
- ```
504
- User: /vibe.spec
505
-
506
- Claude: (.last-feature 읽기 β†’ "bean-landing" 발견)
507
-
508
- πŸ”„ λ§ˆμ§€λ§‰ μž‘μ—…: bean-landing
509
- βœ… interview: .claude/vibe/interviews/bean-landing.md (status: partial, 2일 μ „)
510
- ❌ plan: μ—†μŒ
511
- ❌ spec: μ—†μŒ
512
- β†’ λ‹€μŒ 단계: Phase 2 (vibe-plan β€” κΈ°νšμ„œ μž‘μ„±)
513
-
514
- μ΄μ–΄μ„œ μ§„ν–‰ν• κΉŒμš”?
515
- Enter / yes β†’ μ΄μ–΄μ„œ μ§„ν–‰
516
- list β†’ λ‹€λ₯Έ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ 보기
517
- new β†’ μƒˆ μ•„μ΄λ””μ–΄λ‘œ μ‹œμž‘
518
- abort β†’ μ’…λ£Œ
519
-
520
- User: yes
521
-
522
- Claude: [Phase 2 μ§„μž…]
523
- .last-feature = bean-landing
524
- [vibe-plan μŠ€ν‚¬ λ‘œλ“œ]
525
- ...
526
- ```
527
-
528
- ### μ˜ˆμ‹œ 6: μ—¬λŸ¬ feature 쀑 선택 (Fallback list λͺ¨λ“œ)
529
- ```
530
- User: /vibe.spec
531
-
532
- Claude: (.last-feature μ—†μŒ β†’ 디렉토리 μŠ€μΊ”)
533
-
534
- πŸ” μ§„ν–‰ 쀑인 μž‘μ—…
535
-
536
- 1. bean-landing [interview: partial] 2일 μ „
537
- 2. todo-app [plan: complete] μ–΄μ œ
538
- 3. payment-api [spec: complete] 방금 μ „
539
- ─────────────────────────────────────────────
540
- n. βž• μƒˆλ‘œ μ‹œμž‘
541
- a. μ’…λ£Œ
542
-
543
- 선택 번호 λ˜λŠ” feature 이름을 μž…λ ₯ν•˜μ„Έμš”:
544
-
545
- User: 2
546
-
547
- Claude: Feature: todo-app 선택
548
- βœ… plan μ™„μ„± β†’ Phase 3 (vibe-spec) μ§„μž…
549
- .last-feature = todo-app
550
- ...
551
- ```
552
-
553
- ## Rollback / Resume
554
-
555
- - 각 Phase μ’…λ£Œ μ‹œ μƒνƒœκ°€ `.claude/vibe/{interviews,plans,specs,features}/`에 μ €μž₯됨
556
- - **`.claude/vibe/.last-feature` pointer**κ°€ 각 Phase μ§„μž… μ‹œ κ°±μ‹ λ˜μ–΄ "κ°€μž₯ μ΅œκ·Όμ— μž‘μ—…ν•œ feature" 좔적 (Phase 7 μ™„μ£Ό μ‹œ μ‚­μ œ)
557
- - 쀑단 μ‹œ λ‹€μ‹œ `/vibe.spec`으둜 λŒμ•„μ˜€λ©΄ Smart Resume Fallback λ™μž‘:
558
- - 인자 있음 (`/vibe.spec "feature-name"` λ˜λŠ” 파일 경둜) β†’ ν•΄λ‹Ή feature의 κ°€μž₯ μ§„ν–‰λœ 단계 λ‹€μŒμœΌλ‘œ λ°”λ‘œ μ§„μž…
559
- - 인자 μ—†μŒ β†’ `.last-feature` μš°μ„  μ œμ•ˆ β†’ κ±°λΆ€ν•˜λ©΄ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ μ œμ‹œ β†’ 또 κ±°λΆ€ν•˜λ©΄ 빈 μ‹œμž‘
560
- - μˆ˜λ™ κ°œμž… ν•„μš”μ‹œ μŠ€ν‚¬ 직접 호좜 κ°€λŠ₯ (`Load skill vibe-interview` λ“±)
561
-
562
- ## Next Step
563
-
564
- ```
565
- # μ „ν˜•μ μΈ μ‚¬μš©
566
- /vibe.spec "ν”„λ‘œμ νŠΈ 아이디어"
567
-
568
- # 쀑간 단계 재개
569
- /vibe.spec "feature-name"
570
-
571
- # ultrawork μžλ™ μ™„μ£Ό
572
- /vibe.spec "feature-name" ultrawork
573
- ```
574
-
575
- ---
576
-
577
- ARGUMENTS: $ARGUMENTS
1
+ ---
2
+ description: ν”„λ‘œμ νŠΈ λͺ…μ„Έ 톡합 μ§„μž…μ  β€” interview β†’ plan β†’ spec β†’ review β†’ run/figma 전체 μ›Œν¬ν”Œλ‘œ μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜
3
+ argument-hint: "(선택) feature name, plan/interview file path, or idea"
4
+ ---
5
+
6
+ # /vibe.spec
7
+
8
+ **vibe μ›Œν¬ν”Œλ‘œ 톡합 μ§„μž…μ .** "무엇을 κ°œλ°œν• μ§€" 질문으둜 μ‹œμž‘ν•΄μ„œ interview β†’ plan β†’ SPEC μž‘μ„± β†’ review β†’ κ΅¬ν˜„ + UI λ””μžμΈκΉŒμ§€ 전체 흐름을 μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜ν•œλ‹€.
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /vibe.spec # 빈 μ‹œμž‘ β€” "무엇을 λ§Œλ“€κΉŒμš”?"λΆ€ν„°
14
+ /vibe.spec "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ" # 아이디어/ν”Όμ²˜λͺ… μ§€μ • μ‹œμž‘
15
+ /vibe.spec ".claude/vibe/plans/{feature}.md" # κΈ°νšμ„œ μž…λ ₯ (plan 단계 μŠ€ν‚΅)
16
+ /vibe.spec ".claude/vibe/interviews/{feature}.md" # interview μž…λ ₯ (interview 단계 μŠ€ν‚΅)
17
+ /vibe.spec "docs/prd.md" # μ™ΈλΆ€ PRD/아이디어 파일 μž…λ ₯
18
+ /vibe.spec + πŸ“Ž 첨뢀 # 첨뢀 기반 μ‹œμž‘
19
+ /vibe.spec "feature-name" ultrawork # 쀑단 게이트 없이 μžλ™ μ „ 흐름 μ‹€ν–‰
20
+ ```
21
+
22
+ ## Philosophy
23
+
24
+ > **μ‚¬μš©μžλŠ” "무엇을 λ§Œλ“€μ§€"만 λ§ν•˜λ©΄ λœλ‹€. μ–΄λ–€ μŠ€ν‚¬μ„ μ–Έμ œ λΆ€λ₯Όμ§€λŠ” vibeκ°€ κ²°μ •ν•œλ‹€.**
25
+
26
+ - **단일 μ§„μž…μ **: `/vibe.spec` ν•˜λ‚˜λ‘œ 전체 μ›Œν¬ν”Œλ‘œ μ‹œμž‘. λ‹€λ₯Έ `/vibe.*` μ»€λ§¨λ“œ 이름 μ™ΈμšΈ ν•„μš” μ—†μŒ.
27
+ - **Smart resume**: κΈ°μ‘΄ interview/plan/spec 파일 쑴재 μ—¬λΆ€λ‘œ μ–΄λŠ 단계뢀터 μ‹œμž‘ν• μ§€ μžλ™ νŒλ‹¨.
28
+ - **μžλ™ 체이닝**: μŠ€ν‚¬ `chain-next` 메타데이터 따라 vibe-interview β†’ vibe-plan β†’ vibe-spec β†’ vibe-spec-review μ§„ν–‰.
29
+ - **λΆ„κΈ° νŒλ‹¨**: κΈ°νšμ„œμ˜ `type` ν•„λ“œλ‘œ UI νŠΈλž™/둜직 νŠΈλž™ μ—¬λΆ€ κ²°μ •.
30
+ - **μ‚¬μš©μž μ œμ–΄**: 각 단계 사이에 μ‚¬μš©μž 확인 지점(stop gate) 제곡 (ultrawork λͺ¨λ“œλŠ” μŠ€ν‚΅).
31
+
32
+ ## Flow
33
+
34
+ ```
35
+ /vibe.spec ["input"?]
36
+ ↓
37
+ Phase 0: Git branch setup
38
+ ↓
39
+ Phase 0.5: Input 뢄석 + Smart resume κ²°μ •
40
+ - 첨뢀/파일/아이디어 감지
41
+ - κΈ°μ‘΄ .claude/vibe/{interviews,plans,specs}/ 확인
42
+ - μ‹œμž‘ 단계 κ²°μ •: interview | plan | spec | review
43
+ ↓
44
+ Phase 1: Interview (skill: vibe-interview)
45
+ - 쑰건: interview 파일 μ—†μŒ
46
+ - μ‚¬μš©μž "그만"κΉŒμ§€ 반볡 인터뷰
47
+ - 좜λ ₯: .claude/vibe/interviews/{feature}.md
48
+ ↓
49
+ [Stop Gate 1] β€” ultrawork λͺ¨λ“œμ—μ„œλŠ” μŠ€ν‚΅
50
+ ↓
51
+ Phase 2: Plan (skill: vibe-plan)
52
+ - 쑰건: plan 파일 μ—†μŒ
53
+ - interview β†’ λ§ˆν¬λ‹€μš΄ κΈ°νšμ„œ μ •μ œ
54
+ - 좜λ ₯: .claude/vibe/plans/{feature}.md
55
+ ↓
56
+ [Stop Gate 2 + λΆ„κΈ° νŒλ‹¨]
57
+ κΈ°νšμ„œ type 읽고 경둜 κ²°μ •:
58
+ - website/webapp/mobile β†’ UI + Logic 병렬
59
+ - api/library/feature-data β†’ Logic만
60
+ ↓
61
+ Phase 3: SPEC μž‘μ„± (skill: vibe-spec)
62
+ - PTCF ꡬ쑰 SPEC λ¬Έμ„œ + Feature(BDD) 파일
63
+ - Parallel research (GPT/Gemini/Claude agents)
64
+ - Large scope μžλ™ λΆ„ν• 
65
+ - Ambiguity scan + ν’ˆμ§ˆ 게이트(100점, μˆ˜λ ΄κΉŒμ§€ 루프)
66
+ - 좜λ ₯: .claude/vibe/specs/{feature}.md + .claude/vibe/features/{feature}.feature
67
+ ↓
68
+ Phase 4: SPEC Review (skill: vibe-spec-review)
69
+ - Race Review (GPT + Gemini, λΌμš΄λ“œ 수 μΊ‘ μ—†μŒ, μˆ˜λ ΄κΉŒμ§€ 루프)
70
+ - (μ˜΅μ…˜) Codex adversarial review
71
+ - μ‚¬μš©μž μ΅œμ’… 체크포인트
72
+ ↓
73
+ Phase 5a: Logic Track β†’ /vibe.run
74
+ Phase 5b: UI Track (병렬, UI ν”„λ‘œμ νŠΈλ§Œ) β†’ /vibe.figma
75
+ ↓
76
+ Phase 6: Verify (/vibe.verify)
77
+ Phase 7: Trace (/vibe.trace)
78
+ ↓
79
+ Done
80
+ ```
81
+
82
+ ## Rules Reference
83
+
84
+ **`~/.claude/vibe/rules/` (global) μ€€μˆ˜:**
85
+
86
+ - `core/development-philosophy.md`
87
+ - `core/quick-start.md` β€” Korean first
88
+ - `core/communication-guide.md`
89
+
90
+ ## Process
91
+
92
+ > **⏱️ Timer**: μ‹œμž‘ μ‹œ `getCurrentTime` 호좜, `{start_time}`둜 기둝.
93
+
94
+ ### Phase 0: Git Branch Setup (MANDATORY)
95
+
96
+ ```bash
97
+ git branch --show-current
98
+ ```
99
+
100
+ | ν˜„μž¬ | 행동 |
101
+ |-----|-----|
102
+ | `main`/`master` | μž„μ‹œ μ΄λ¦„μœΌλ‘œ `git checkout -b vibe/tmp` (이후 feature 이름 ν™•μ •λ˜λ©΄ λ¦¬λ„€μž„) |
103
+ | `feature/*`, `plan/*`, `interview/*`, `vibe/*` | 확인: "이 λΈŒλžœμΉ˜μ—μ„œ 계속?" |
104
+ | 기타 | μ‚¬μš©μž 확인 |
105
+
106
+ ### Phase 0.5: Input 뢄석 + Smart Resume
107
+
108
+ **μž…λ ₯ μš°μ„ μˆœμœ„:**
109
+
110
+ ```
111
+ 1. πŸ“Ž 첨뢀 파일 있음? β†’ 첨뢀 뢄석 β†’ feature name μΆ”μΆœ
112
+ 2. μΈμžκ°€ 파일 경둜? β†’ 파일 μœ„μΉ˜λ‘œ μ‹œμž‘ 단계 κ²°μ •:
113
+ .claude/vibe/interviews/*.md β†’ Phase 2 (plan)
114
+ .claude/vibe/plans/*.md β†’ Phase 3 (spec)
115
+ .claude/vibe/specs/*.md β†’ Phase 4 (review)
116
+ 기타 (.md/.txt/.pdf) β†’ Phase 2 (plan, μ™ΈλΆ€ PRD 흑수)
117
+ 3. μΈμžκ°€ feature name? β†’ .claude/vibe/μ—μ„œ κΈ°μ‘΄ 파일 검색
118
+ existing spec β†’ "리뷰 μž¬μ‹€ν–‰? μ΄μ–΄μ„œ? μž¬μž‘μ„±?" 물음
119
+ existing plan β†’ Phase 3 (spec)
120
+ existing interview β†’ Phase 2 (plan)
121
+ 아무것도 μ—†μŒ β†’ Phase 1 (interview)
122
+ 4. 인자 μ—†μŒ β†’ Smart Resume Fallback μ•Œκ³ λ¦¬μ¦˜ μ‹€ν–‰ (μ•„λž˜ μ°Έμ‘°)
123
+ ```
124
+
125
+ #### Smart Resume Fallback (인자 μ—†λŠ” `/vibe.spec` 호좜 μ‹œ)
126
+
127
+ **λͺ©μ **: feature 이름을 κΈ°μ–΅ν•˜μ§€ λͺ»ν•΄λ„ μ§„ν–‰ 쀑 μž‘μ—…μ„ μžλ™ λ°œκ²¬ν•΄μ„œ μ΄μ–΄μ„œ μ§„ν–‰ν•  수 있게 ν•œλ‹€.
128
+
129
+ ```
130
+ μ•Œκ³ λ¦¬μ¦˜:
131
+
132
+ Step 1) .claude/vibe/.last-feature 확인 (pointer 파일)
133
+ - 파일 μ—†μŒ β†’ Step 2둜
134
+ - 쑴재 β†’ ν•΄λ‹Ή feature의 μƒνƒœ μš”μ•½ 좜λ ₯ + 확인 질문:
135
+ "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
136
+ πŸ”„ λ§ˆμ§€λ§‰ μž‘μ—…: {feature-name}
137
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
138
+ βœ… interview: .claude/vibe/interviews/{feature}.md (status: complete, N일 μ „)
139
+ βœ… plan: .claude/vibe/plans/{feature}.md (N일 μ „)
140
+ ❌ spec: μ—†μŒ
141
+ β†’ λ‹€μŒ 단계: Phase 3 (vibe-spec μŠ€ν‚¬ β€” SPEC μž‘μ„±)
142
+
143
+ μ΄μ–΄μ„œ μ§„ν–‰ν• κΉŒμš”?
144
+ Enter / yes β†’ μ΄μ–΄μ„œ μ§„ν–‰
145
+ list β†’ λ‹€λ₯Έ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ 보기
146
+ new β†’ μƒˆ μ•„μ΄λ””μ–΄λ‘œ μ‹œμž‘
147
+ abort β†’ μ’…λ£Œ"
148
+
149
+ - yes β†’ Phase 0.5의 인자 뢄석 경둜 3번 (feature name)으둜 μ§„μž…
150
+ - list β†’ Step 2둜
151
+ - new β†’ Step 3으둜
152
+ - abort β†’ μ’…λ£Œ
153
+
154
+ Step 2) μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ ν‘œμ‹œ (.claude/vibe/ 디렉토리 μŠ€μΊ”)
155
+ μˆ˜μ§‘:
156
+ features = {} (feature name β†’ {hasInterview, hasPlan, hasSpec, mtime})
157
+ for each file in .claude/vibe/interviews/*.md:
158
+ feature = basename without .md
159
+ features[feature].hasInterview = true
160
+ features[feature].interviewMtime = file.mtime
161
+ features[feature].interviewStatus = frontmatter의 status (complete/partial)
162
+ λ™μΌν•˜κ²Œ plans/*.md, specs/*.md μŠ€μΊ”
163
+
164
+ μ •λ ¬: κ°€μž₯ 졜근 μž‘μ—… (max mtime) 순
165
+ μ΅œλŒ€ 10κ°œκΉŒμ§€ ν‘œμ‹œ
166
+
167
+ μ§„ν–‰ 쀑 μž‘μ—… 0개 β†’ Step 3으둜
168
+ 1개 이상 β†’ λͺ©λ‘ 좜λ ₯ + 선택 질문:
169
+ "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
170
+ πŸ” μ§„ν–‰ 쀑인 μž‘μ—…
171
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
172
+
173
+ 1. bean-landing [interview: partial] 2일 μ „
174
+ 2. todo-app [plan: complete] μ–΄μ œ
175
+ 3. payment-api [spec: complete] 방금 μ „
176
+ ─────────────────────────────────────────────
177
+ n. βž• μƒˆλ‘œ μ‹œμž‘
178
+ a. μ’…λ£Œ
179
+
180
+ 선택 번호 λ˜λŠ” feature 이름을 μž…λ ₯ν•˜μ„Έμš”:"
181
+
182
+ μ‚¬μš©μž 응닡 처리:
183
+ - 숫자 (1~N) β†’ ν•΄λ‹Ή feature 선택 β†’ 인자 뢄석 경둜 3번으둜
184
+ - μ •ν™•ν•œ feature 이름 β†’ 인자 뢄석 경둜 3번으둜
185
+ - "n" λ˜λŠ” "new" β†’ Step 3으둜
186
+ - "a" λ˜λŠ” "abort" β†’ μ’…λ£Œ
187
+ - 자유 ν…μŠ€νŠΈ (λ§€μΉ­ μ—†μŒ) β†’ "{μž…λ ₯}은 κΈ°μ‘΄ featureκ°€ μ•„λ‹™λ‹ˆλ‹€. μƒˆλ‘œ μ‹œμž‘ν• κΉŒμš”? (y/n)" 확인
188
+
189
+ Step 3) 빈 μ‹œμž‘ (κΈ°μ‘΄ λ™μž‘)
190
+ "πŸ‘‹ 무엇을 λ§Œλ“€κ³  μ‹ΆμœΌμ‹ κ°€μš”?" 질문 β†’ Phase 1 (interview)
191
+ ```
192
+
193
+ #### `.last-feature` 포인터 파일 κ°±μ‹  κ·œμΉ™
194
+
195
+ ```
196
+ 경둜: .claude/vibe/.last-feature
197
+ ν˜•μ‹: ν•œ 쀄, feature name만 μ €μž₯
198
+ 예: "bean-landing\n"
199
+
200
+ ⚠ 이 νŒŒμΌμ€ **개인 μž‘μ—… 포인터**μ΄λ―€λ‘œ git에 μ»€λ°‹ν•˜μ§€ μ•ŠλŠ”λ‹€.
201
+ `.gitignore` 에 `.claude/vibe/.last-feature` μ—”νŠΈλ¦¬ ν•„μˆ˜.
202
+
203
+ κ°±μ‹  μ‹œμ :
204
+ - Phase 1 (interview) μ§„μž… μ‹œ β†’ feature name κ²°μ •λ˜λ©΄ μ¦‰μ‹œ 기둝
205
+ - Phase 2 (plan) μ§„μž… μ‹œ β†’ 기둝 (이미 맞으면 no-op)
206
+ - Phase 3 (spec) μ§„μž… μ‹œ β†’ 기둝
207
+ - Phase 4 (review) μ§„μž… μ‹œ β†’ 기둝
208
+
209
+ 즉, μ–΄λŠ Phaseμ—μ„œ λ©ˆμΆ”λ“  λ‹€μŒ /vibe.spec 호좜 μ‹œ 이 featureκ°€ 1μˆœμœ„λ‘œ μ œμ•ˆλœλ‹€.
210
+
211
+ μ‚­μ œ μ‹œμ :
212
+ - Phase 7 (trace) μ™„λ£Œ μ‹œ β†’ 파일 μ‚­μ œ (μ›Œν¬ν”Œλ‘œ μ™„μ£Ό)
213
+ - μ‚¬μš©μžκ°€ λͺ…μ‹œμ μœΌλ‘œ μ’…λ£Œ/abort 선택 μ‹œ β†’ μ‚­μ œν•˜μ§€ μ•ŠμŒ (재개 κ°€λŠ₯ν•˜κ²Œ)
214
+ ```
215
+
216
+ **좜λ ₯ μ˜ˆμ‹œ:**
217
+
218
+ ```
219
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
220
+ πŸ” Input 뢄석
221
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
222
+
223
+ μž…λ ₯: "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ"
224
+ λΆ„λ₯˜: μ‹ κ·œ 아이디어
225
+ κΈ°μ‘΄ 파일: μ—†μŒ
226
+
227
+ β†’ μ‹œμž‘ 단계: Phase 1 (vibe-interview)
228
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
229
+ ```
230
+
231
+ ### Phase 1: Interview (쑰건뢀)
232
+
233
+ **μ§„μž… 쑰건:** interview 파일이 아직 μ—†μŒ
234
+
235
+ **μ§„μž… 방식:**
236
+
237
+ 1. **인자 있음** (`/vibe.spec "아이디어"`)
238
+ β†’ `vibe-interview` μŠ€ν‚¬ λ‘œλ“œ + 아이디어 전달
239
+
240
+ 2. **인자 μ—†μŒ** (`/vibe.spec`)
241
+ β†’ **Smart Resume Fallback λ¨Όμ €** (Phase 0.5 μ°Έμ‘°):
242
+ - `.last-feature` 있고 μ‚¬μš©μžκ°€ "μ΄μ–΄μ„œ" 선택 β†’ ν•΄λ‹Ή feature둜 μ§„μž… (이 Phase 1 κ±΄λ„ˆλ›Έ 수 있음)
243
+ - μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘μ—μ„œ 선택 β†’ ν•΄λ‹Ή feature둜 μ§„μž…
244
+ - "new" 선택 or μ§„ν–‰ 쀑 μž‘μ—… μ—†μŒ β†’ μ•„λž˜ 질문으둜 빈 μ‹œμž‘
245
+ β†’ 빈 μ‹œμž‘ 질문:
246
+ ```
247
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
248
+ πŸ‘‹ 무엇을 λ§Œλ“€κ³  μ‹ΆμœΌμ‹ κ°€μš”?
249
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
250
+
251
+ 예:
252
+ - "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ"
253
+ - "ν•  일 관리 μ•±"
254
+ - "Stripe 결제 연동 API"
255
+ - λ˜λŠ” 자유둭게 μ„€λͺ…
256
+
257
+ (파일/이미지 첨뢀도 κ°€λŠ₯)
258
+ ```
259
+ β†’ μ‚¬μš©μž 응닡 β†’ `vibe-interview` μŠ€ν‚¬ λ‘œλ“œ
260
+
261
+ **μŠ€ν‚¬ λ‘œλ“œ:**
262
+
263
+ ```
264
+ Load skill `vibe-interview` with input: {user_idea}
265
+ ```
266
+
267
+ > **`.last-feature` κ°±μ‹ **: vibe-interview μŠ€ν‚¬μ΄ feature name을 ν™•μ •ν•˜λŠ” μ¦‰μ‹œ `.claude/vibe/.last-feature` 에 ν•œ μ€„λ‘œ 기둝. 이후 Phase 2/3/4 μ§„μž… μ‹œμ—λ„ 동일 기둝 μœ μ§€ (값이 κ°™μœΌλ©΄ no-op).
268
+
269
+ `vibe-interview` μŠ€ν‚¬μ΄ 자체적으둜:
270
+ - ν”„λ‘œμ νŠΈ νƒ€μž… 감지 (website/webapp/mobile/api/library/feature)
271
+ - νƒ€μž…λ³„ 체크리슀트 λ‘œλ“œ (`skills/vibe-interview/checklists/{type}.md`)
272
+ - 반볡 인터뷰 μ‹€ν–‰ (μ‚¬μš©μž "그만"κΉŒμ§€)
273
+ - `.claude/vibe/interviews/{feature-name}.md` μ €μž₯
274
+
275
+ **Stop Gate 1**: Interview μ™„λ£Œ ν›„ (ultrawork λͺ¨λ“œ μŠ€ν‚΅)
276
+
277
+ ```
278
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
279
+ βœ… Interview μ™„λ£Œ
280
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
281
+
282
+ πŸ“„ .claude/vibe/interviews/{feature}.md
283
+ Required: N/M | Optional: K/L | Discovered: X
284
+
285
+ λ‹€μŒ 단계: κΈ°νšμ„œ μž‘μ„±
286
+ 1. 계속 μ§„ν–‰ (κΈ°λ³Έ)
287
+ 2. Interview만 μ €μž₯ν•˜κ³  μ’…λ£Œ
288
+ 3. Interview μˆ˜μ • ν›„ λ‹€μ‹œ (vibe-interview μž¬μ‹€ν–‰)
289
+
290
+ Enter β†’ 계속
291
+ ```
292
+
293
+ ### Phase 2: Plan (쑰건뢀)
294
+
295
+ **μ§„μž… 쑰건:** plan 파일이 아직 μ—†μŒ
296
+
297
+ ```
298
+ Load skill `vibe-plan` with input: .claude/vibe/interviews/{feature}.md
299
+ ```
300
+
301
+ `vibe-plan` μŠ€ν‚¬μ΄ 자체적으둜:
302
+ - ν…œν”Œλ¦Ώ λ‘œλ“œ (`~/.claude/vibe/templates/plan-template.md`)
303
+ - Interview μ„Ήμ…˜λ³„ μ •μ œ
304
+ - UI μ„Ήμ…˜ 쑰건뢀 포함 (type 기반)
305
+ - `.claude/vibe/plans/{feature}.md` μ €μž₯
306
+
307
+ **Stop Gate 2**: κΈ°νšμ„œ μ™„λ£Œ ν›„ + λΆ„κΈ° νŒλ‹¨ (ultrawork λͺ¨λ“œ μŠ€ν‚΅)
308
+
309
+ ```
310
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
311
+ βœ… κΈ°νšμ„œ μ™„μ„±
312
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
313
+
314
+ πŸ“„ .claude/vibe/plans/{feature}.md
315
+ Type: {type}
316
+
317
+ {type ∈ UI}:
318
+ μžλ™ 경둜: SPEC μž‘μ„± β†’ Review β†’ Logic Track + UI Track 병렬 μ‹€ν–‰
319
+ 1. 계속 (ꢌμž₯)
320
+ 2. Logic Track만 (SPEC만)
321
+ 3. UI Track만 (/vibe.figma λ°”λ‘œ)
322
+ 4. μ—¬κΈ°μ„œ μ’…λ£Œ
323
+
324
+ {type ∈ non-UI}:
325
+ μžλ™ 경둜: SPEC μž‘μ„± β†’ Review β†’ Logic Track
326
+ 1. 계속 (ꢌμž₯)
327
+ 2. μ—¬κΈ°μ„œ μ’…λ£Œ
328
+
329
+ Enter β†’ 계속
330
+ ```
331
+
332
+ ### Phase 3: SPEC μž‘μ„±
333
+
334
+ **μ§„μž… 쑰건:** spec 파일이 아직 μ—†μŒ (λ˜λŠ” μž¬μž‘μ„± μš”μ²­)
335
+
336
+ ```
337
+ Load skill `vibe-spec` with input: .claude/vibe/plans/{feature}.md
338
+ ```
339
+
340
+ `vibe-spec` μŠ€ν‚¬μ΄ PTCF ꡬ쑰 SPEC λ¬Έμ„œ + Feature(BDD) 파일 생성.
341
+
342
+ **핡심 단계** (μƒμ„ΈλŠ” `skills/vibe-spec/SKILL.md` μ°Έμ‘°):
343
+
344
+ 1. Project analysis (explorer agent)
345
+ 2. config.json references λ‘œλ“œ
346
+ 3. Parallel research (GPT + Gemini + Claude agents, 8개 병렬)
347
+ 4. UI/UX Design Intelligence (UI ν‚€μ›Œλ“œ μ‹œ μžλ™)
348
+ 5. PTCF SPEC μž‘μ„± (Large scope μžλ™ λΆ„ν• )
349
+ 6. Feature file (BDD) 생성
350
+ 7. Ambiguity scan
351
+ 8. Quality gate (100점, μˆ˜λ ΄κΉŒμ§€ 루프)
352
+
353
+ **좜λ ₯:**
354
+
355
+ - `.claude/vibe/specs/{feature-name}.md` (λ˜λŠ” split folder)
356
+ - `.claude/vibe/features/{feature-name}.feature` (λ˜λŠ” split folder)
357
+
358
+ ### Phase 4: SPEC Review
359
+
360
+ ```
361
+ Load skill `vibe-spec-review` with feature: {feature-name}
362
+ ```
363
+
364
+ `vibe-spec-review` μŠ€ν‚¬μ΄ Race Review + ν’ˆμ§ˆ 검증 + μ‚¬μš©μž 체크포인트 μ‹€ν–‰.
365
+
366
+ **핡심 단계** (μƒμ„ΈλŠ” `skills/vibe-spec-review/SKILL.md` μ°Έμ‘°):
367
+
368
+ 1. SPEC/Feature 파일 λ‘œλ“œ (single/split μžλ™ 감지)
369
+ 2. Quality Validation (100점 게이트, μˆ˜λ ΄κΉŒμ§€ auto-fix 루프)
370
+ 3. Race Review (GPT + Gemini parallel, λΌμš΄λ“œ 수 μΊ‘ μ—†μŒ, P1=0 + 수렴 μ‹œ μ’…λ£Œ)
371
+ 4. (μ˜΅μ…˜) Codex adversarial review
372
+ 5. Review Debate Team (2+ P1/P2 이슈 μ‹œ)
373
+ 6. μ‚¬μš©μž μ΅œμ’… 체크포인트
374
+
375
+ ### Phase 4.5: Contract Extract (auto, only for features with an API)
376
+
377
+ ```
378
+ Load skill `vibe-contract` with: extract "{feature-name}"
379
+ ```
380
+
381
+ If the SPEC has a `## API` / `## Endpoints` / `## Interface` section, extract the contract to `.claude/vibe/contracts/{feature-name}.md`. If the section is absent, exit cleanly (not every feature has an API).
382
+
383
+ The contract is referenced during Phase 5a implementation, and used by `/vibe.verify` for drift detection.
384
+
385
+ ### Phase 5a: Logic Track
386
+
387
+ ```
388
+ /vibe.run "{feature-name}"
389
+ ```
390
+
391
+ SPEC β†’ code. Auto-checks at start:
392
+ - `/vibe.regress list --feature {feature-name}` β€” warn if any open regressions exist
393
+ - `.claude/vibe/contracts/{feature-name}.md` β€” load if present, use as implementation guide
394
+
395
+ ### Phase 5b: UI Track (type ∈ {website, webapp, mobile}일 λ•Œλ§Œ)
396
+
397
+ **5a와 병렬 μ‹€ν–‰** (λ˜λŠ” 순차 β€” μ‚¬μš©μž 선택):
398
+
399
+ ```
400
+ /vibe.figma
401
+ ```
402
+
403
+ **`/vibe.figma`에 전달할 μ»¨ν…μŠ€νŠΈ:**
404
+
405
+ - `.claude/vibe/plans/{feature}.md` 경둜
406
+ - κΈ°νšμ„œμ˜ Β§7 Look & Feel, Β§8 λ ˆμ΄μ•„μ›ƒ, Β§9 λ°˜μ‘ν˜• μ„Ήμ…˜μ„ Phase 1 μŠ€ν† λ¦¬λ³΄λ“œ μž…λ ₯으둜 μ‚¬μš©
407
+
408
+ ### Phase 6: Verify
409
+
410
+ ```
411
+ /vibe.verify "{feature-name}"
412
+ ```
413
+
414
+ UI + 둜직 + μ—°κ²° 검증 (후속 PRμ—μ„œ 3μΆ• ν™•μž₯ μ˜ˆμ •).
415
+
416
+ ### Phase 7: Trace
417
+
418
+ ```
419
+ /vibe.trace "{feature-name}"
420
+ ```
421
+
422
+ SPEC ↔ κ΅¬ν˜„ 좔적.
423
+
424
+ > **Phase 7 μ™„λ£Œ μ‹œ**: `.claude/vibe/.last-feature` μ‚­μ œ (μ›Œν¬ν”Œλ‘œ μ™„μ£Ό β€” λ‹€μŒ `/vibe.spec` ν˜ΈμΆœμ€ 빈 μ‹œμž‘ λ˜λŠ” μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘μ—μ„œ μ‹œμž‘).
425
+
426
+ ## ultrawork λͺ¨λ“œ
427
+
428
+ `ultrawork` (λ˜λŠ” `ulw`)κ°€ μΈμžμ— ν¬ν•¨λ˜λ©΄:
429
+
430
+ - **λͺ¨λ“  Stop Gate μŠ€ν‚΅**
431
+ - interview β†’ plan β†’ spec β†’ review β†’ run β†’ (figma 병렬) 전체 μžλ™ μ‹€ν–‰
432
+ - askUser 체크포인트 μŠ€ν‚΅, κΈ°λ³Έκ°’ μ‚¬μš©
433
+ - μˆ˜λ™ κ°œμž… 없이 μ™„μ£Ό
434
+
435
+ ```
436
+ /vibe.spec "νŒ¨λŸ΄λž™μŠ€ μ›Ήμ‚¬μ΄νŠΈ" ultrawork
437
+ ```
438
+
439
+ ## Smart Resume μ˜ˆμ‹œ
440
+
441
+ ### μ˜ˆμ‹œ 1: μ‹ κ·œ ν”„λ‘œμ νŠΈ
442
+ ```
443
+ User: /vibe.spec "원두 λΈŒλžœλ“œ λžœλ”©"
444
+
445
+ Claude: πŸ” Input 뢄석
446
+ μž…λ ₯: "원두 λΈŒλžœλ“œ λžœλ”©"
447
+ λΆ„λ₯˜: μ‹ κ·œ 아이디어
448
+ κΈ°μ‘΄ 파일: μ—†μŒ
449
+ β†’ μ‹œμž‘ 단계: Phase 1 (vibe-interview)
450
+
451
+ [vibe-interview μŠ€ν‚¬ λ‘œλ“œ]
452
+ Type: website 감지 β†’ checklists/website.md λ‘œλ“œ
453
+ ...
454
+ ```
455
+
456
+ ### μ˜ˆμ‹œ 2: κΈ°νšμ„œμ—μ„œ μ‹œμž‘
457
+ ```
458
+ User: /vibe.spec ".claude/vibe/plans/bean-landing.md"
459
+
460
+ Claude: πŸ” Input 뢄석
461
+ μž…λ ₯: plan 파일 경둜
462
+ λΆ„λ₯˜: κΈ°μ‘΄ κΈ°νšμ„œ
463
+ Feature: bean-landing
464
+ β†’ μ‹œμž‘ 단계: Phase 3 (vibe-spec)
465
+
466
+ [vibe-spec μŠ€ν‚¬ λ‘œλ“œ]
467
+ κΈ°νšμ„œ 읽기 β†’ research β†’ PTCF μž‘μ„± ...
468
+ ```
469
+
470
+ ### μ˜ˆμ‹œ 3: κΈ°μ‘΄ feature 재개
471
+ ```
472
+ User: /vibe.spec "bean-landing"
473
+
474
+ Claude: πŸ” Input 뢄석
475
+ μž…λ ₯: feature name
476
+ κΈ°μ‘΄ 파일 검색...
477
+ βœ… interview: .claude/vibe/interviews/bean-landing.md
478
+ βœ… plan: .claude/vibe/plans/bean-landing.md
479
+ ❌ spec: μ—†μŒ
480
+ β†’ μ‹œμž‘ 단계: Phase 3 (vibe-spec)
481
+
482
+ [vibe-spec μŠ€ν‚¬ λ‘œλ“œ]
483
+ ...
484
+ ```
485
+
486
+ ### μ˜ˆμ‹œ 4: SPEC 리뷰 μž¬μ‹€ν–‰
487
+ ```
488
+ User: /vibe.spec "bean-landing"
489
+
490
+ Claude: πŸ” Input 뢄석
491
+ 기쑴 파일:
492
+ βœ… spec: .claude/vibe/specs/bean-landing.md
493
+ βœ… feature: .claude/vibe/features/bean-landing.feature
494
+
495
+ 이미 SPEC이 μ‘΄μž¬ν•©λ‹ˆλ‹€. μ–΄λ–»κ²Œ μ§„ν–‰ν• κΉŒμš”?
496
+ 1. SPEC 리뷰 (Phase 4: vibe-spec-review μŠ€ν‚¬ λ‘œλ“œ)
497
+ 2. /vibe.run μ‹€ν–‰ (κ΅¬ν˜„)
498
+ 3. SPEC μž¬μž‘μ„± (κΈ°μ‘΄ λ°±μ—… ν›„ μƒˆλ‘œ μž‘μ„±)
499
+ 4. μ’…λ£Œ
500
+ ```
501
+
502
+ ### μ˜ˆμ‹œ 5: feature 이름을 잊고 인자 없이 호좜 (Smart Resume Fallback)
503
+ ```
504
+ User: /vibe.spec
505
+
506
+ Claude: (.last-feature 읽기 β†’ "bean-landing" 발견)
507
+
508
+ πŸ”„ λ§ˆμ§€λ§‰ μž‘μ—…: bean-landing
509
+ βœ… interview: .claude/vibe/interviews/bean-landing.md (status: partial, 2일 μ „)
510
+ ❌ plan: μ—†μŒ
511
+ ❌ spec: μ—†μŒ
512
+ β†’ λ‹€μŒ 단계: Phase 2 (vibe-plan β€” κΈ°νšμ„œ μž‘μ„±)
513
+
514
+ μ΄μ–΄μ„œ μ§„ν–‰ν• κΉŒμš”?
515
+ Enter / yes β†’ μ΄μ–΄μ„œ μ§„ν–‰
516
+ list β†’ λ‹€λ₯Έ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ 보기
517
+ new β†’ μƒˆ μ•„μ΄λ””μ–΄λ‘œ μ‹œμž‘
518
+ abort β†’ μ’…λ£Œ
519
+
520
+ User: yes
521
+
522
+ Claude: [Phase 2 μ§„μž…]
523
+ .last-feature = bean-landing
524
+ [vibe-plan μŠ€ν‚¬ λ‘œλ“œ]
525
+ ...
526
+ ```
527
+
528
+ ### μ˜ˆμ‹œ 6: μ—¬λŸ¬ feature 쀑 선택 (Fallback list λͺ¨λ“œ)
529
+ ```
530
+ User: /vibe.spec
531
+
532
+ Claude: (.last-feature μ—†μŒ β†’ 디렉토리 μŠ€μΊ”)
533
+
534
+ πŸ” μ§„ν–‰ 쀑인 μž‘μ—…
535
+
536
+ 1. bean-landing [interview: partial] 2일 μ „
537
+ 2. todo-app [plan: complete] μ–΄μ œ
538
+ 3. payment-api [spec: complete] 방금 μ „
539
+ ─────────────────────────────────────────────
540
+ n. βž• μƒˆλ‘œ μ‹œμž‘
541
+ a. μ’…λ£Œ
542
+
543
+ 선택 번호 λ˜λŠ” feature 이름을 μž…λ ₯ν•˜μ„Έμš”:
544
+
545
+ User: 2
546
+
547
+ Claude: Feature: todo-app 선택
548
+ βœ… plan μ™„μ„± β†’ Phase 3 (vibe-spec) μ§„μž…
549
+ .last-feature = todo-app
550
+ ...
551
+ ```
552
+
553
+ ## Rollback / Resume
554
+
555
+ - 각 Phase μ’…λ£Œ μ‹œ μƒνƒœκ°€ `.claude/vibe/{interviews,plans,specs,features}/`에 μ €μž₯됨
556
+ - **`.claude/vibe/.last-feature` pointer**κ°€ 각 Phase μ§„μž… μ‹œ κ°±μ‹ λ˜μ–΄ "κ°€μž₯ μ΅œκ·Όμ— μž‘μ—…ν•œ feature" 좔적 (Phase 7 μ™„μ£Ό μ‹œ μ‚­μ œ)
557
+ - 쀑단 μ‹œ λ‹€μ‹œ `/vibe.spec`으둜 λŒμ•„μ˜€λ©΄ Smart Resume Fallback λ™μž‘:
558
+ - 인자 있음 (`/vibe.spec "feature-name"` λ˜λŠ” 파일 경둜) β†’ ν•΄λ‹Ή feature의 κ°€μž₯ μ§„ν–‰λœ 단계 λ‹€μŒμœΌλ‘œ λ°”λ‘œ μ§„μž…
559
+ - 인자 μ—†μŒ β†’ `.last-feature` μš°μ„  μ œμ•ˆ β†’ κ±°λΆ€ν•˜λ©΄ μ§„ν–‰ 쀑 μž‘μ—… λͺ©λ‘ μ œμ‹œ β†’ 또 κ±°λΆ€ν•˜λ©΄ 빈 μ‹œμž‘
560
+ - μˆ˜λ™ κ°œμž… ν•„μš”μ‹œ μŠ€ν‚¬ 직접 호좜 κ°€λŠ₯ (`Load skill vibe-interview` λ“±)
561
+
562
+ ## Next Step
563
+
564
+ ```
565
+ # μ „ν˜•μ μΈ μ‚¬μš©
566
+ /vibe.spec "ν”„λ‘œμ νŠΈ 아이디어"
567
+
568
+ # 쀑간 단계 재개
569
+ /vibe.spec "feature-name"
570
+
571
+ # ultrawork μžλ™ μ™„μ£Ό
572
+ /vibe.spec "feature-name" ultrawork
573
+ ```
574
+
575
+ ---
576
+
577
+ ARGUMENTS: $ARGUMENTS