@su-record/vibe 2.9.23 → 2.9.24

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 (461) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +105 -105
  3. package/LICENSE +21 -21
  4. package/README.en.md +220 -0
  5. package/README.md +75 -124
  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 +584 -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 +1940 -1940
  86. package/commands/vibe.scaffold.md +195 -195
  87. package/commands/vibe.spec.md +577 -577
  88. package/commands/vibe.test.md +96 -96
  89. package/commands/vibe.trace.md +276 -276
  90. package/commands/vibe.utils.md +413 -413
  91. package/commands/vibe.verify.md +550 -550
  92. package/dist/cli/collaborator.js +52 -52
  93. package/dist/cli/commands/codex-proxy.js +15 -15
  94. package/dist/cli/commands/config.js +9 -9
  95. package/dist/cli/commands/evolution.js +12 -12
  96. package/dist/cli/commands/figma.js +20 -20
  97. package/dist/cli/commands/info.js +52 -52
  98. package/dist/cli/commands/init.js +5 -5
  99. package/dist/cli/commands/remove.js +14 -14
  100. package/dist/cli/commands/sentinel.js +27 -27
  101. package/dist/cli/commands/skills.js +5 -5
  102. package/dist/cli/commands/slack.js +10 -10
  103. package/dist/cli/commands/stats.js +6 -6
  104. package/dist/cli/commands/telegram.js +12 -12
  105. package/dist/cli/detect.js +32 -32
  106. package/dist/cli/index.js +33 -33
  107. package/dist/cli/llm/claude-commands.js +16 -16
  108. package/dist/cli/llm/config.js +18 -18
  109. package/dist/cli/llm/gemini-commands.js +16 -16
  110. package/dist/cli/llm/gpt-commands.js +19 -19
  111. package/dist/cli/llm/help.js +21 -21
  112. package/dist/cli/postinstall/cursor-agents.js +32 -32
  113. package/dist/cli/postinstall/cursor-rules.js +83 -83
  114. package/dist/cli/postinstall/cursor-skills.js +743 -743
  115. package/dist/cli/setup/Provisioner.js +42 -42
  116. package/dist/infra/lib/DeepInit.js +24 -24
  117. package/dist/infra/lib/IterationTracker.js +11 -11
  118. package/dist/infra/lib/PythonParser.js +108 -108
  119. package/dist/infra/lib/ReviewRace.js +96 -96
  120. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  121. package/dist/infra/lib/SkillQualityGate.js +9 -9
  122. package/dist/infra/lib/SkillRepository.js +159 -159
  123. package/dist/infra/lib/UltraQA.js +99 -99
  124. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  125. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  126. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  127. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
  128. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  129. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  130. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  131. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  132. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  133. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  134. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  135. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  136. package/dist/infra/lib/evolution/ParityTester.js +57 -57
  137. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  138. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  139. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  140. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  141. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  142. package/dist/infra/lib/gemini/orchestration.js +5 -5
  143. package/dist/infra/lib/gpt/orchestration.js +4 -4
  144. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  145. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  146. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  147. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  148. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  149. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  150. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  151. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  152. package/dist/infra/orchestrator/AgentManager.js +12 -12
  153. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  154. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  155. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  156. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  157. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  158. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  159. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  160. package/dist/tools/memory/getMemoryGraph.js +12 -12
  161. package/dist/tools/memory/getSessionContext.js +9 -9
  162. package/dist/tools/memory/linkMemories.js +14 -14
  163. package/dist/tools/memory/listMemories.js +4 -4
  164. package/dist/tools/memory/recallMemory.js +4 -4
  165. package/dist/tools/memory/saveMemory.js +4 -4
  166. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  167. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  168. package/dist/tools/semantic/astGrep.test.js +6 -6
  169. package/dist/tools/spec/prdParser.test.js +171 -171
  170. package/dist/tools/spec/specGenerator.js +169 -169
  171. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  172. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  173. package/hooks/gemini-hooks.json +73 -73
  174. package/hooks/hooks.json +126 -126
  175. package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
  176. package/hooks/scripts/__tests__/pre-tool-guard.test.js +368 -368
  177. package/hooks/scripts/__tests__/sentinel-guard.test.js +208 -208
  178. package/hooks/scripts/auto-commit.js +97 -97
  179. package/hooks/scripts/auto-format.js +64 -64
  180. package/hooks/scripts/auto-test.js +81 -81
  181. package/hooks/scripts/code-check.js +271 -268
  182. package/hooks/scripts/codex-detect.js +46 -46
  183. package/hooks/scripts/codex-review-gate.js +80 -80
  184. package/hooks/scripts/command-log.js +32 -32
  185. package/hooks/scripts/context-save.js +353 -353
  186. package/hooks/scripts/evolution-engine.js +91 -91
  187. package/hooks/scripts/figma-extract.js +635 -635
  188. package/hooks/scripts/figma-guard.js +219 -219
  189. package/hooks/scripts/figma-refine.js +315 -315
  190. package/hooks/scripts/figma-to-scss.js +394 -394
  191. package/hooks/scripts/figma-validate.js +353 -353
  192. package/hooks/scripts/hud-status.js +321 -321
  193. package/hooks/scripts/keyword-detector.js +214 -214
  194. package/hooks/scripts/llm-orchestrate.js +645 -645
  195. package/hooks/scripts/post-edit.js +35 -32
  196. package/hooks/scripts/pr-test-gate.js +52 -52
  197. package/hooks/scripts/pre-tool-guard.js +254 -254
  198. package/hooks/scripts/prompt-dispatcher.js +190 -190
  199. package/hooks/scripts/sentinel-guard.js +130 -130
  200. package/hooks/scripts/session-start.js +186 -186
  201. package/hooks/scripts/skill-injector.js +83 -83
  202. package/hooks/scripts/stop-notify.js +209 -209
  203. package/hooks/scripts/utils.js +257 -257
  204. package/languages/csharp-unity.md +515 -515
  205. package/languages/gdscript-godot.md +470 -470
  206. package/languages/ruby-rails.md +489 -489
  207. package/languages/typescript-angular.md +433 -433
  208. package/languages/typescript-astro.md +416 -416
  209. package/languages/typescript-electron.md +406 -406
  210. package/languages/typescript-nestjs.md +524 -524
  211. package/languages/typescript-svelte.md +407 -407
  212. package/languages/typescript-tauri.md +365 -365
  213. package/package.json +1 -1
  214. package/skills/agents-md/SKILL.md +121 -121
  215. package/skills/agents-md/rubrics/what-to-keep.md +49 -49
  216. package/skills/agents-md/templates/agents-md.md +36 -36
  217. package/skills/arch-guard/SKILL.md +181 -181
  218. package/skills/arch-guard/agents/detector.md +48 -48
  219. package/skills/arch-guard/agents/reporter.md +48 -48
  220. package/skills/arch-guard/agents/rule-generator.md +49 -49
  221. package/skills/arch-guard/agents/violation-checker.md +51 -51
  222. package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
  223. package/skills/arch-guard/frameworks/solid.md +102 -102
  224. package/skills/arch-guard/scripts/check-boundaries.js +90 -90
  225. package/skills/arch-guard/templates/arch-rules.json +47 -47
  226. package/skills/arch-guard/templates/violation-report.md +53 -53
  227. package/skills/brand-assets/SKILL.md +147 -147
  228. package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
  229. package/skills/brand-assets/templates/brand-guide.md +161 -161
  230. package/skills/capability-loop/SKILL.md +272 -272
  231. package/skills/capability-loop/agents/capability-designer.md +61 -61
  232. package/skills/capability-loop/agents/failure-analyst.md +55 -55
  233. package/skills/capability-loop/agents/implementer.md +50 -50
  234. package/skills/capability-loop/agents/tester.md +53 -53
  235. package/skills/capability-loop/templates/capability-spec.md +118 -118
  236. package/skills/capability-loop/templates/failure-analysis.md +118 -118
  237. package/skills/characterization-test/SKILL.md +207 -207
  238. package/skills/characterization-test/agents/behavior-capturer.md +50 -50
  239. package/skills/characterization-test/agents/coverage-checker.md +54 -54
  240. package/skills/characterization-test/agents/reporter.md +50 -50
  241. package/skills/characterization-test/agents/test-writer.md +49 -49
  242. package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
  243. package/skills/characterization-test/templates/test-template.ts +101 -101
  244. package/skills/chub-usage/SKILL.md +139 -139
  245. package/skills/claude-md-guide/SKILL.md +351 -351
  246. package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
  247. package/skills/claude-md-guide/templates/claude-md.md +54 -54
  248. package/skills/commerce-patterns/SKILL.md +64 -64
  249. package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
  250. package/skills/commerce-patterns/templates/product-schema.md +85 -85
  251. package/skills/commit-push-pr/SKILL.md +77 -77
  252. package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
  253. package/skills/commit-push-pr/agents/message-writer.md +50 -50
  254. package/skills/commit-push-pr/agents/pr-writer.md +58 -58
  255. package/skills/commit-push-pr/agents/reviewer.md +52 -52
  256. package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
  257. package/skills/commit-push-pr/templates/pr-body.md +63 -63
  258. package/skills/context7-usage/SKILL.md +106 -106
  259. package/skills/context7-usage/rubrics/when-to-use.md +50 -50
  260. package/skills/create-prd/SKILL.md +90 -90
  261. package/skills/create-prd/agents/edge-case-finder.md +48 -48
  262. package/skills/create-prd/agents/prioritizer.md +60 -60
  263. package/skills/create-prd/agents/requirements-writer.md +48 -48
  264. package/skills/create-prd/agents/researcher.md +55 -55
  265. package/skills/create-prd/agents/reviewer.md +54 -54
  266. package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
  267. package/skills/create-prd/frameworks/rice-scoring.md +97 -97
  268. package/skills/create-prd/orchestrator.md +70 -70
  269. package/skills/create-prd/rubrics/completeness.md +58 -58
  270. package/skills/create-prd/templates/prd.md +139 -139
  271. package/skills/design-audit/SKILL.md +152 -152
  272. package/skills/design-audit/agents/a11y-auditor.md +43 -43
  273. package/skills/design-audit/agents/performance-auditor.md +46 -46
  274. package/skills/design-audit/agents/responsive-auditor.md +46 -46
  275. package/skills/design-audit/agents/scorer.md +47 -47
  276. package/skills/design-audit/agents/slop-detector.md +47 -47
  277. package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
  278. package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
  279. package/skills/design-audit/orchestrator.md +64 -64
  280. package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
  281. package/skills/design-audit/rubrics/scoring.md +63 -63
  282. package/skills/design-audit/templates/report.md +88 -88
  283. package/skills/design-critique/SKILL.md +139 -139
  284. package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
  285. package/skills/design-critique/templates/critique-report.md +86 -86
  286. package/skills/design-distill/SKILL.md +130 -130
  287. package/skills/design-distill/templates/design-system.md +132 -132
  288. package/skills/design-normalize/SKILL.md +133 -133
  289. package/skills/design-normalize/rubrics/token-naming.md +117 -117
  290. package/skills/design-normalize/templates/token-audit.md +89 -89
  291. package/skills/design-polish/SKILL.md +131 -131
  292. package/skills/design-polish/rubrics/polish-checklist.md +68 -68
  293. package/skills/design-polish/templates/polish-report.md +64 -64
  294. package/skills/design-teach/SKILL.md +182 -182
  295. package/skills/design-teach/rubrics/brand-personality.md +73 -73
  296. package/skills/design-teach/templates/design-context.json +36 -36
  297. package/skills/devlog/SKILL.md +143 -143
  298. package/skills/e2e-commerce/SKILL.md +62 -62
  299. package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
  300. package/skills/event-comms/SKILL.md +172 -172
  301. package/skills/event-comms/templates/email-invite.md +99 -99
  302. package/skills/event-comms/templates/sns-post.md +133 -133
  303. package/skills/event-ops/SKILL.md +207 -207
  304. package/skills/event-ops/rubrics/contingency.md +85 -85
  305. package/skills/event-ops/templates/d-day-checklist.md +65 -65
  306. package/skills/event-planning/SKILL.md +144 -144
  307. package/skills/event-planning/rubrics/timeline.md +70 -70
  308. package/skills/event-planning/templates/event-plan.md +91 -91
  309. package/skills/exec-plan/SKILL.md +149 -149
  310. package/skills/exec-plan/agents/decomposer.md +47 -47
  311. package/skills/exec-plan/agents/dependency-mapper.md +44 -44
  312. package/skills/exec-plan/agents/estimator.md +43 -43
  313. package/skills/exec-plan/agents/validator.md +55 -55
  314. package/skills/exec-plan/orchestrator.md +70 -70
  315. package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
  316. package/skills/exec-plan/templates/plan.md +147 -147
  317. package/skills/git-worktree/SKILL.md +73 -73
  318. package/skills/git-worktree/rubrics/when-to-use.md +55 -55
  319. package/skills/handoff/SKILL.md +110 -110
  320. package/skills/handoff/agents/context-summarizer.md +51 -51
  321. package/skills/handoff/agents/document-writer.md +63 -63
  322. package/skills/handoff/agents/state-collector.md +53 -53
  323. package/skills/handoff/agents/verifier.md +48 -48
  324. package/skills/handoff/rubrics/completeness.md +62 -62
  325. package/skills/handoff/templates/handoff.md +107 -107
  326. package/skills/parallel-research/SKILL.md +104 -104
  327. package/skills/parallel-research/agents/best-practices.md +43 -43
  328. package/skills/parallel-research/agents/codebase-patterns.md +46 -46
  329. package/skills/parallel-research/agents/framework-docs.md +45 -45
  330. package/skills/parallel-research/agents/security-advisory.md +46 -46
  331. package/skills/parallel-research/agents/synthesizer.md +57 -57
  332. package/skills/parallel-research/experts/best-practices.md +50 -50
  333. package/skills/parallel-research/experts/codebase-patterns.md +70 -70
  334. package/skills/parallel-research/experts/framework-docs.md +65 -65
  335. package/skills/parallel-research/experts/security-advisory.md +69 -69
  336. package/skills/parallel-research/orchestrator.md +79 -79
  337. package/skills/parallel-research/templates/awesome-list.md +32 -32
  338. package/skills/parallel-research/templates/paper.md +88 -88
  339. package/skills/parallel-research/templates/synthesis.md +101 -101
  340. package/skills/prioritization-frameworks/SKILL.md +87 -87
  341. package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
  342. package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
  343. package/skills/priority-todos/SKILL.md +64 -64
  344. package/skills/priority-todos/rubrics/prioritization.md +70 -70
  345. package/skills/priority-todos/templates/todo-board.md +59 -59
  346. package/skills/seo-checklist/SKILL.md +58 -58
  347. package/skills/seo-checklist/frameworks/structured-data.md +153 -153
  348. package/skills/seo-checklist/rubrics/content-seo.md +42 -42
  349. package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
  350. package/skills/techdebt/SKILL.md +124 -124
  351. package/skills/techdebt/agents/analyzer.md +50 -50
  352. package/skills/techdebt/agents/fixer.md +41 -41
  353. package/skills/techdebt/agents/reviewer.md +47 -47
  354. package/skills/techdebt/agents/scanner.md +44 -44
  355. package/skills/techdebt/orchestrator.md +70 -70
  356. package/skills/techdebt/rubrics/severity.md +51 -51
  357. package/skills/techdebt/scripts/scan.js +90 -90
  358. package/skills/techdebt/templates/report.md +86 -86
  359. package/skills/tool-fallback/SKILL.md +104 -104
  360. package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
  361. package/skills/typescript-advanced-types/SKILL.md +67 -67
  362. package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
  363. package/skills/ui-ux-pro-max/SKILL.md +236 -236
  364. package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
  365. package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
  366. package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
  367. package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
  368. package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
  369. package/skills/ui-ux-pro-max/reference/typography.md +455 -455
  370. package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
  371. package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
  372. package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
  373. package/skills/user-personas/SKILL.md +75 -75
  374. package/skills/user-personas/rubrics/research-methods.md +56 -56
  375. package/skills/user-personas/templates/persona.md +89 -89
  376. package/skills/vercel-react-best-practices/SKILL.md +60 -60
  377. package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
  378. package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
  379. package/skills/vibe-contract/SKILL.md +166 -166
  380. package/skills/vibe-docs/templates/architecture.md +80 -80
  381. package/skills/vibe-docs/templates/readme.md +84 -84
  382. package/skills/vibe-docs/templates/release-notes.md +74 -74
  383. package/skills/vibe-figma/SKILL.md +363 -363
  384. package/skills/vibe-figma/rubrics/extraction-checklist.md +51 -51
  385. package/skills/vibe-figma/templates/component-index.md +126 -126
  386. package/skills/vibe-figma/templates/component-spec.md +168 -168
  387. package/skills/vibe-figma/templates/figma-handoff.md +100 -100
  388. package/skills/vibe-figma/templates/remapped-tree.md +277 -277
  389. package/skills/vibe-figma-convert/SKILL.md +235 -235
  390. package/skills/vibe-figma-convert/rubrics/conversion-rules.md +141 -141
  391. package/skills/vibe-figma-convert/templates/component.md +140 -140
  392. package/skills/vibe-figma-extract/SKILL.md +219 -219
  393. package/skills/vibe-figma-extract/rubrics/image-rules.md +157 -157
  394. package/skills/vibe-interview/SKILL.md +358 -358
  395. package/skills/vibe-interview/checklists/api.md +101 -101
  396. package/skills/vibe-interview/checklists/feature.md +88 -88
  397. package/skills/vibe-interview/checklists/library.md +95 -95
  398. package/skills/vibe-interview/checklists/mobile.md +89 -89
  399. package/skills/vibe-interview/checklists/webapp.md +97 -97
  400. package/skills/vibe-interview/checklists/website.md +99 -99
  401. package/skills/vibe-plan/SKILL.md +254 -254
  402. package/skills/vibe-regress/SKILL.md +174 -174
  403. package/skills/vibe-regress/templates/bug.md +44 -44
  404. package/skills/vibe-regress/templates/test-jest.md +29 -29
  405. package/skills/vibe-regress/templates/test-vitest.md +30 -30
  406. package/skills/vibe-spec/SKILL.md +1195 -1195
  407. package/skills/vibe-spec-review/SKILL.md +726 -726
  408. package/skills/vibe-test/SKILL.md +247 -247
  409. package/skills/video-production/SKILL.md +52 -52
  410. package/skills/video-production/rubrics/quality-checklist.md +58 -58
  411. package/skills/video-production/templates/production-plan.md +104 -104
  412. package/vibe/config.json +29 -29
  413. package/vibe/constitution.md +227 -227
  414. package/vibe/rules/principles/communication-guide.md +98 -98
  415. package/vibe/rules/principles/development-philosophy.md +52 -52
  416. package/vibe/rules/principles/quick-start.md +102 -102
  417. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  418. package/vibe/rules/quality/checklist.md +276 -276
  419. package/vibe/rules/quality/performance.md +236 -236
  420. package/vibe/rules/quality/testing-strategy.md +440 -440
  421. package/vibe/rules/standards/anti-patterns.md +541 -541
  422. package/vibe/rules/standards/code-structure.md +291 -291
  423. package/vibe/rules/standards/complexity-metrics.md +313 -313
  424. package/vibe/rules/standards/git-workflow.md +237 -237
  425. package/vibe/rules/standards/naming-conventions.md +198 -198
  426. package/vibe/rules/standards/security.md +305 -305
  427. package/vibe/rules/writing/document-style.md +74 -74
  428. package/vibe/setup.sh +31 -31
  429. package/vibe/templates/claudemd-template.md +74 -74
  430. package/vibe/templates/constitution-template.md +267 -267
  431. package/vibe/templates/contract-backend-template.md +526 -526
  432. package/vibe/templates/contract-frontend-template.md +599 -599
  433. package/vibe/templates/feature-template.md +96 -96
  434. package/vibe/templates/plan-template.md +194 -194
  435. package/vibe/templates/spec-template.md +221 -221
  436. package/vibe/ui-ux-data/charts.csv +26 -26
  437. package/vibe/ui-ux-data/colors.csv +97 -97
  438. package/vibe/ui-ux-data/icons.csv +101 -101
  439. package/vibe/ui-ux-data/landing.csv +31 -31
  440. package/vibe/ui-ux-data/products.csv +96 -96
  441. package/vibe/ui-ux-data/react-performance.csv +45 -45
  442. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  443. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  444. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  445. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  446. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  447. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  448. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  449. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  450. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  451. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  452. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  453. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  454. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  455. package/vibe/ui-ux-data/styles.csv +68 -68
  456. package/vibe/ui-ux-data/typography.csv +57 -57
  457. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  458. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  459. package/vibe/ui-ux-data/version.json +31 -31
  460. package/vibe/ui-ux-data/web-interface.csv +31 -31
  461. package/README.ko.md +0 -171
@@ -1,294 +1,294 @@
1
- ---
2
- description: End-to-end testing with Closed Loop automation
3
- argument-hint: "test scenario or URL"
4
- ---
5
-
6
- # /vibe.e2e
7
-
8
- **Closed Loop E2E Testing** - AI가 직접 브라우저를 조작하여 검증하고, 실패 시 자동 수정을 반복
9
-
10
- ## Philosophy: Closed Loop
11
-
12
- ```
13
- 구현 → 검증 → 실패 → 수정 → 재검증 → ... → 통과
14
- ↑_________________________________↓
15
-
16
- 사람 개입 없이 AI가 루프를 완주한다.
17
- 검증이 가벼울수록 루프는 더 많이 돈다.
18
- ```
19
-
20
- ## Usage
21
-
22
- ```
23
- /vibe.e2e # Run all E2E tests
24
- /vibe.e2e "login flow" # Test specific scenario
25
- /vibe.e2e http://localhost:3000/login # Test specific URL
26
- /vibe.e2e --visual # Visual regression testing
27
- /vibe.e2e --record # Record test video
28
- ```
29
-
30
- ## Browser Tool Selection (Token Efficiency)
31
-
32
- **검증 비용이 비싸면 루프가 돌지 않는다.**
33
-
34
- | Tool | 클릭 1회 토큰 | 방식 | Closed Loop 적합성 |
35
- |------|-------------|------|-------------------|
36
- | Playwright MCP | ~12,000+ chars | DOM 트리 전체 전달 | Bad - 2~3회 만에 컨텍스트 소진 |
37
- | Agent Browser | ~6 chars | 접근성 트리 (의미만 추출) | Good - 수십 회 루프 가능 |
38
- | Playwright Test Runner | N/A (코드 실행) | 테스트 코드 결과만 반환 | Good - pass/fail만 반환 |
39
-
40
- ### Tool Priority
41
-
42
- ```
43
- 1. Agent Browser (MCP) — AI가 직접 브라우저 조작, 접근성 트리 기반 (최소 토큰)
44
- 2. Playwright Test Runner — 테스트 코드 작성 후 실행, 결과만 수신 (pass/fail)
45
- 3. Playwright MCP — DOM 기반 직접 조작 (토큰 비효율, 최후 수단)
46
- ```
47
-
48
- ### Why Accessibility Tree?
49
-
50
- ```
51
- DOM (Playwright MCP):
52
- div class="nav-wrapper mx-4 flex items-center justify-between..." → 200+ chars
53
-
54
- Accessibility Tree (Agent Browser):
55
- button "Sign In" → 15 chars
56
-
57
- AI에게 필요한 건 후자다.
58
- 시각장애인용 스크린 리더가 쓰는 트리가, AI 에이전트에게도 최적의 웹 표현이다.
59
- ```
60
-
61
- ## Core Features
62
-
63
- - Screenshot Capture - Record UI state
64
- - Console Error Collection - Detect JS errors
65
- - Network Monitoring - Detect API failures
66
- - Visual Regression - Compare screenshots
67
- - Video Recording - Bug reproduction evidence
68
- - Accessibility Check - Detect a11y violations
69
-
70
- ## Process
71
-
72
- ### Phase 1: Environment Detection
73
-
74
- ```
75
- 1. Agent Browser MCP 사용 가능? → 사용 (최우선)
76
- 2. Playwright 설치됨? → npx playwright --version
77
- 3. 없으면 → npx playwright install chromium
78
- ```
79
-
80
- ### Phase 2: Test Scenario Analysis
81
-
82
- ```
83
- Scenario Detection
84
- ├── .claude/vibe/features/{feature}.feature → Extract BDD scenarios
85
- ├── .claude/vibe/specs/{feature}.md → Check acceptance criteria
86
- └── Analyze existing e2e/*.spec.ts
87
- ```
88
-
89
- **File Reading Policy**: Feature/SPEC 파일은 반드시 Read 도구로 전체 읽을 것.
90
-
91
- ### Phase 3: Closed Loop Execution
92
-
93
- ```
94
- ┌─────────────────────────────────────────────────────────────────┐
95
- │ CLOSED LOOP E2E VERIFICATION │
96
- │ │
97
- │ For each scenario in Feature file: │
98
- │ │
99
- │ ┌──────────────────────────────────────────────────────────┐ │
100
- │ │ Scenario: "User submits notification form" │ │
101
- │ │ │ │
102
- │ │ [Browser] Navigate to URL │ │
103
- │ │ [Browser] Find form (accessibility tree) │ │
104
- │ │ [Browser] Fill inputs │ │
105
- │ │ [Browser] Click submit │ │
106
- │ │ [Browser] Check success message │ │
107
- │ │ │ │ │
108
- │ │ ├─ PASS → Next scenario │ │
109
- │ │ └─ FAIL → Root cause analysis │ │
110
- │ │ → Fix code │ │
111
- │ │ → Re-run scenario (max 3 retries) │ │
112
- │ └──────────────────────────────────────────────────────────┘ │
113
- │ │
114
- │ All scenarios pass → DONE │
115
- │ Max retries exceeded → Report failures │
116
- └─────────────────────────────────────────────────────────────────┘
117
- ```
118
-
119
- **Agent Browser approach (preferred):**
120
-
121
- ```
122
- AI directly controls browser:
123
- 1. navigate("http://localhost:3000/login")
124
- 2. type("email field", "test@example.com")
125
- 3. type("password field", "password123")
126
- 4. click("Sign In")
127
- 5. assert: page contains "Dashboard"
128
-
129
- Each action: ~6-20 chars of context (accessibility tree)
130
- Total scenario: ~100-200 chars
131
- → Can run 50+ scenarios in one session
132
- ```
133
-
134
- **Playwright Test Runner approach (fallback):**
135
-
136
- ```typescript
137
- // Auto-generated lightweight test
138
- import { test, expect } from '@playwright/test';
139
-
140
- test('login flow', async ({ page }) => {
141
- await page.goto('http://localhost:3000/login');
142
- await page.fill('[data-testid="email"]', 'test@example.com');
143
- await page.fill('[data-testid="password"]', 'password123');
144
- await page.click('[data-testid="submit"]');
145
- await page.waitForURL('**/dashboard');
146
- await expect(page.locator('h1')).toContainText('Dashboard');
147
- });
148
- ```
149
-
150
- ```bash
151
- # Run and get pass/fail only (minimal token usage)
152
- npx playwright test --reporter=line 2>&1 | tail -5
153
- ```
154
-
155
- ### Phase 4: Auto-Fix Loop (Closed Loop Core)
156
-
157
- ```
158
- E2E scenario FAILED
159
-
160
-
161
- [Collect evidence]
162
- - Screenshot of failure state
163
- - Console errors
164
- - Network failures
165
- - Accessibility tree snapshot (lightweight)
166
-
167
-
168
- [Root cause analysis]
169
- - Which step failed? (Given/When/Then)
170
- - Error type? (element not found / assertion failed / network error)
171
-
172
-
173
- [Fix implementation]
174
- - Read target source file (FULL, not Grep)
175
- - Apply minimal fix
176
-
177
-
178
- [Re-run ONLY failed scenario]
179
- - Don't re-run passed scenarios (save tokens)
180
-
181
-
182
- PASS → Continue to next scenario
183
- FAIL → Retry (max 3)
184
- 3x FAIL → Report as manual fix needed
185
- ```
186
-
187
- ### Phase 5: Visual Regression (--visual)
188
-
189
- ```
190
- Comparing screenshots:
191
- ├── login-page.png
192
- │ ├── Baseline: .claude/vibe/e2e/baseline/login-page.png
193
- │ ├── Current: .claude/vibe/e2e/current/login-page.png
194
- │ └── Diff: 0.02% (threshold: 1%) → PASS
195
- ├── dashboard.png
196
- │ └── Diff: 5.3% (threshold: 1%) → FAIL → auto-fix loop
197
- ```
198
-
199
- ### Phase 6: Accessibility Check
200
-
201
- ```typescript
202
- import { injectAxe, checkA11y } from 'axe-playwright';
203
-
204
- test('accessibility check', async ({ page }) => {
205
- await page.goto('/login');
206
- await injectAxe(page);
207
- await checkA11y(page, null, {
208
- detailedReport: true,
209
- detailedReportOptions: { html: true }
210
- });
211
- });
212
- ```
213
-
214
- ## Output
215
-
216
- ```
217
- E2E CLOSED LOOP RESULTS
218
-
219
- Test Suite: Login Flow
220
- Duration: 12.3s
221
- Browser Tool: Agent Browser (accessibility tree)
222
- Loop Iterations: 2 (1 auto-fix applied)
223
-
224
- Results:
225
- Passed: 8 (1 after auto-fix)
226
- Failed: 0
227
- Skipped: 0
228
-
229
- Auto-Fixes Applied:
230
- 1. Scenario "invalid password error"
231
- Root cause: Missing error message element
232
- Fix: Added error toast in LoginForm.tsx:42
233
- Re-test: PASSED
234
-
235
- Console Errors: 0
236
- Accessibility Issues: 0
237
-
238
- Token Usage: ~2,400 chars (vs ~96,000 with DOM-based approach)
239
- ```
240
-
241
- ## Configuration
242
-
243
- `.claude/vibe/e2e/config.json`:
244
-
245
- ```json
246
- {
247
- "baseURL": "http://localhost:3000",
248
- "browsers": ["chromium"],
249
- "viewport": { "width": 1280, "height": 720 },
250
- "browserTool": "auto",
251
- "closedLoop": {
252
- "enabled": true,
253
- "maxRetries": 3,
254
- "autoFix": true,
255
- "rerunFailedOnly": true
256
- },
257
- "video": "retain-on-failure",
258
- "screenshot": "only-on-failure",
259
- "trace": "retain-on-failure",
260
- "visualRegression": {
261
- "enabled": true,
262
- "threshold": 0.01
263
- },
264
- "accessibility": {
265
- "enabled": true,
266
- "rules": ["wcag2aa"]
267
- }
268
- }
269
- ```
270
-
271
- ## Integration with /vibe.run
272
-
273
- `/vibe.run` 에서 UI 시나리오 구현 후 자동으로 Closed Loop E2E 검증 트리거:
274
-
275
- ```
276
- /vibe.run "login" ultrawork
277
- ├── Phase 1: Implement login form
278
- ├── Phase 2: Implement validation
279
- ├── [AUTO] E2E Closed Loop verification
280
- │ ├── Scenario 1: valid login → PASS
281
- │ ├── Scenario 2: invalid password → FAIL → auto-fix → PASS
282
- │ └── Scenario 3: email validation → PASS
283
- └── All scenarios verified → Complete
284
- ```
285
-
286
- ## Related Commands
287
-
288
- - `/vibe.review` - Code review
289
- - `/vibe.verify` - SPEC verification
290
- - `/vibe.run` - Implementation with auto-verification
291
-
292
- ---
293
-
294
- ARGUMENTS: $ARGUMENTS
1
+ ---
2
+ description: End-to-end testing with Closed Loop automation
3
+ argument-hint: "test scenario or URL"
4
+ ---
5
+
6
+ # /vibe.e2e
7
+
8
+ **Closed Loop E2E Testing** - AI가 직접 브라우저를 조작하여 검증하고, 실패 시 자동 수정을 반복
9
+
10
+ ## Philosophy: Closed Loop
11
+
12
+ ```
13
+ 구현 → 검증 → 실패 → 수정 → 재검증 → ... → 통과
14
+ ↑_________________________________↓
15
+
16
+ 사람 개입 없이 AI가 루프를 완주한다.
17
+ 검증이 가벼울수록 루프는 더 많이 돈다.
18
+ ```
19
+
20
+ ## Usage
21
+
22
+ ```
23
+ /vibe.e2e # Run all E2E tests
24
+ /vibe.e2e "login flow" # Test specific scenario
25
+ /vibe.e2e http://localhost:3000/login # Test specific URL
26
+ /vibe.e2e --visual # Visual regression testing
27
+ /vibe.e2e --record # Record test video
28
+ ```
29
+
30
+ ## Browser Tool Selection (Token Efficiency)
31
+
32
+ **검증 비용이 비싸면 루프가 돌지 않는다.**
33
+
34
+ | Tool | 클릭 1회 토큰 | 방식 | Closed Loop 적합성 |
35
+ |------|-------------|------|-------------------|
36
+ | Playwright MCP | ~12,000+ chars | DOM 트리 전체 전달 | Bad - 2~3회 만에 컨텍스트 소진 |
37
+ | Agent Browser | ~6 chars | 접근성 트리 (의미만 추출) | Good - 수십 회 루프 가능 |
38
+ | Playwright Test Runner | N/A (코드 실행) | 테스트 코드 결과만 반환 | Good - pass/fail만 반환 |
39
+
40
+ ### Tool Priority
41
+
42
+ ```
43
+ 1. Agent Browser (MCP) — AI가 직접 브라우저 조작, 접근성 트리 기반 (최소 토큰)
44
+ 2. Playwright Test Runner — 테스트 코드 작성 후 실행, 결과만 수신 (pass/fail)
45
+ 3. Playwright MCP — DOM 기반 직접 조작 (토큰 비효율, 최후 수단)
46
+ ```
47
+
48
+ ### Why Accessibility Tree?
49
+
50
+ ```
51
+ DOM (Playwright MCP):
52
+ div class="nav-wrapper mx-4 flex items-center justify-between..." → 200+ chars
53
+
54
+ Accessibility Tree (Agent Browser):
55
+ button "Sign In" → 15 chars
56
+
57
+ AI에게 필요한 건 후자다.
58
+ 시각장애인용 스크린 리더가 쓰는 트리가, AI 에이전트에게도 최적의 웹 표현이다.
59
+ ```
60
+
61
+ ## Core Features
62
+
63
+ - Screenshot Capture - Record UI state
64
+ - Console Error Collection - Detect JS errors
65
+ - Network Monitoring - Detect API failures
66
+ - Visual Regression - Compare screenshots
67
+ - Video Recording - Bug reproduction evidence
68
+ - Accessibility Check - Detect a11y violations
69
+
70
+ ## Process
71
+
72
+ ### Phase 1: Environment Detection
73
+
74
+ ```
75
+ 1. Agent Browser MCP 사용 가능? → 사용 (최우선)
76
+ 2. Playwright 설치됨? → npx playwright --version
77
+ 3. 없으면 → npx playwright install chromium
78
+ ```
79
+
80
+ ### Phase 2: Test Scenario Analysis
81
+
82
+ ```
83
+ Scenario Detection
84
+ ├── .claude/vibe/features/{feature}.feature → Extract BDD scenarios
85
+ ├── .claude/vibe/specs/{feature}.md → Check acceptance criteria
86
+ └── Analyze existing e2e/*.spec.ts
87
+ ```
88
+
89
+ **File Reading Policy**: Feature/SPEC 파일은 반드시 Read 도구로 전체 읽을 것.
90
+
91
+ ### Phase 3: Closed Loop Execution
92
+
93
+ ```
94
+ ┌─────────────────────────────────────────────────────────────────┐
95
+ │ CLOSED LOOP E2E VERIFICATION │
96
+ │ │
97
+ │ For each scenario in Feature file: │
98
+ │ │
99
+ │ ┌──────────────────────────────────────────────────────────┐ │
100
+ │ │ Scenario: "User submits notification form" │ │
101
+ │ │ │ │
102
+ │ │ [Browser] Navigate to URL │ │
103
+ │ │ [Browser] Find form (accessibility tree) │ │
104
+ │ │ [Browser] Fill inputs │ │
105
+ │ │ [Browser] Click submit │ │
106
+ │ │ [Browser] Check success message │ │
107
+ │ │ │ │ │
108
+ │ │ ├─ PASS → Next scenario │ │
109
+ │ │ └─ FAIL → Root cause analysis │ │
110
+ │ │ → Fix code │ │
111
+ │ │ → Re-run scenario (max 3 retries) │ │
112
+ │ └──────────────────────────────────────────────────────────┘ │
113
+ │ │
114
+ │ All scenarios pass → DONE │
115
+ │ Max retries exceeded → Report failures │
116
+ └─────────────────────────────────────────────────────────────────┘
117
+ ```
118
+
119
+ **Agent Browser approach (preferred):**
120
+
121
+ ```
122
+ AI directly controls browser:
123
+ 1. navigate("http://localhost:3000/login")
124
+ 2. type("email field", "test@example.com")
125
+ 3. type("password field", "password123")
126
+ 4. click("Sign In")
127
+ 5. assert: page contains "Dashboard"
128
+
129
+ Each action: ~6-20 chars of context (accessibility tree)
130
+ Total scenario: ~100-200 chars
131
+ → Can run 50+ scenarios in one session
132
+ ```
133
+
134
+ **Playwright Test Runner approach (fallback):**
135
+
136
+ ```typescript
137
+ // Auto-generated lightweight test
138
+ import { test, expect } from '@playwright/test';
139
+
140
+ test('login flow', async ({ page }) => {
141
+ await page.goto('http://localhost:3000/login');
142
+ await page.fill('[data-testid="email"]', 'test@example.com');
143
+ await page.fill('[data-testid="password"]', 'password123');
144
+ await page.click('[data-testid="submit"]');
145
+ await page.waitForURL('**/dashboard');
146
+ await expect(page.locator('h1')).toContainText('Dashboard');
147
+ });
148
+ ```
149
+
150
+ ```bash
151
+ # Run and get pass/fail only (minimal token usage)
152
+ npx playwright test --reporter=line 2>&1 | tail -5
153
+ ```
154
+
155
+ ### Phase 4: Auto-Fix Loop (Closed Loop Core)
156
+
157
+ ```
158
+ E2E scenario FAILED
159
+
160
+
161
+ [Collect evidence]
162
+ - Screenshot of failure state
163
+ - Console errors
164
+ - Network failures
165
+ - Accessibility tree snapshot (lightweight)
166
+
167
+
168
+ [Root cause analysis]
169
+ - Which step failed? (Given/When/Then)
170
+ - Error type? (element not found / assertion failed / network error)
171
+
172
+
173
+ [Fix implementation]
174
+ - Read target source file (FULL, not Grep)
175
+ - Apply minimal fix
176
+
177
+
178
+ [Re-run ONLY failed scenario]
179
+ - Don't re-run passed scenarios (save tokens)
180
+
181
+
182
+ PASS → Continue to next scenario
183
+ FAIL → Retry (max 3)
184
+ 3x FAIL → Report as manual fix needed
185
+ ```
186
+
187
+ ### Phase 5: Visual Regression (--visual)
188
+
189
+ ```
190
+ Comparing screenshots:
191
+ ├── login-page.png
192
+ │ ├── Baseline: .claude/vibe/e2e/baseline/login-page.png
193
+ │ ├── Current: .claude/vibe/e2e/current/login-page.png
194
+ │ └── Diff: 0.02% (threshold: 1%) → PASS
195
+ ├── dashboard.png
196
+ │ └── Diff: 5.3% (threshold: 1%) → FAIL → auto-fix loop
197
+ ```
198
+
199
+ ### Phase 6: Accessibility Check
200
+
201
+ ```typescript
202
+ import { injectAxe, checkA11y } from 'axe-playwright';
203
+
204
+ test('accessibility check', async ({ page }) => {
205
+ await page.goto('/login');
206
+ await injectAxe(page);
207
+ await checkA11y(page, null, {
208
+ detailedReport: true,
209
+ detailedReportOptions: { html: true }
210
+ });
211
+ });
212
+ ```
213
+
214
+ ## Output
215
+
216
+ ```
217
+ E2E CLOSED LOOP RESULTS
218
+
219
+ Test Suite: Login Flow
220
+ Duration: 12.3s
221
+ Browser Tool: Agent Browser (accessibility tree)
222
+ Loop Iterations: 2 (1 auto-fix applied)
223
+
224
+ Results:
225
+ Passed: 8 (1 after auto-fix)
226
+ Failed: 0
227
+ Skipped: 0
228
+
229
+ Auto-Fixes Applied:
230
+ 1. Scenario "invalid password error"
231
+ Root cause: Missing error message element
232
+ Fix: Added error toast in LoginForm.tsx:42
233
+ Re-test: PASSED
234
+
235
+ Console Errors: 0
236
+ Accessibility Issues: 0
237
+
238
+ Token Usage: ~2,400 chars (vs ~96,000 with DOM-based approach)
239
+ ```
240
+
241
+ ## Configuration
242
+
243
+ `.claude/vibe/e2e/config.json`:
244
+
245
+ ```json
246
+ {
247
+ "baseURL": "http://localhost:3000",
248
+ "browsers": ["chromium"],
249
+ "viewport": { "width": 1280, "height": 720 },
250
+ "browserTool": "auto",
251
+ "closedLoop": {
252
+ "enabled": true,
253
+ "maxRetries": 3,
254
+ "autoFix": true,
255
+ "rerunFailedOnly": true
256
+ },
257
+ "video": "retain-on-failure",
258
+ "screenshot": "only-on-failure",
259
+ "trace": "retain-on-failure",
260
+ "visualRegression": {
261
+ "enabled": true,
262
+ "threshold": 0.01
263
+ },
264
+ "accessibility": {
265
+ "enabled": true,
266
+ "rules": ["wcag2aa"]
267
+ }
268
+ }
269
+ ```
270
+
271
+ ## Integration with /vibe.run
272
+
273
+ `/vibe.run` 에서 UI 시나리오 구현 후 자동으로 Closed Loop E2E 검증 트리거:
274
+
275
+ ```
276
+ /vibe.run "login" ultrawork
277
+ ├── Phase 1: Implement login form
278
+ ├── Phase 2: Implement validation
279
+ ├── [AUTO] E2E Closed Loop verification
280
+ │ ├── Scenario 1: valid login → PASS
281
+ │ ├── Scenario 2: invalid password → FAIL → auto-fix → PASS
282
+ │ └── Scenario 3: email validation → PASS
283
+ └── All scenarios verified → Complete
284
+ ```
285
+
286
+ ## Related Commands
287
+
288
+ - `/vibe.review` - Code review
289
+ - `/vibe.verify` - SPEC verification
290
+ - `/vibe.run` - Implementation with auto-verification
291
+
292
+ ---
293
+
294
+ ARGUMENTS: $ARGUMENTS