@su-record/vibe 2.16.4 → 3.1.0

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 (607) hide show
  1. package/CLAUDE.md +8 -8
  2. package/README.en.md +46 -29
  3. package/README.md +41 -24
  4. package/agents/acceptance-tester.md +56 -0
  5. package/agents/architect.md +25 -67
  6. package/agents/build-error-resolver.md +28 -97
  7. package/agents/code-reviewer.md +89 -0
  8. package/agents/diagrammer.md +34 -169
  9. package/agents/documenter.md +43 -0
  10. package/agents/e2e-tester.md +46 -281
  11. package/agents/event/event-ops.md +54 -77
  12. package/agents/event/event-planner.md +63 -0
  13. package/agents/figma/figma-engineer.md +76 -0
  14. package/agents/implementer.md +26 -41
  15. package/agents/security-reviewer.md +56 -0
  16. package/agents/tester.md +37 -33
  17. package/agents/ui/design-reviewer.md +62 -0
  18. package/agents/ui/design-system-gen.md +63 -0
  19. package/dist/cli/commands/remove.d.ts.map +1 -1
  20. package/dist/cli/commands/remove.js +8 -10
  21. package/dist/cli/commands/remove.js.map +1 -1
  22. package/dist/cli/index.d.ts +0 -4
  23. package/dist/cli/index.d.ts.map +1 -1
  24. package/dist/cli/index.js +0 -4
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/llm/model-refresh.js +1 -1
  27. package/dist/cli/llm/model-refresh.js.map +1 -1
  28. package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
  29. package/dist/cli/postinstall/claude-agents.js +16 -77
  30. package/dist/cli/postinstall/claude-agents.js.map +1 -1
  31. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  32. package/dist/cli/postinstall/constants.js +80 -296
  33. package/dist/cli/postinstall/constants.js.map +1 -1
  34. package/dist/cli/postinstall/cursor-agents.d.ts +5 -0
  35. package/dist/cli/postinstall/cursor-agents.d.ts.map +1 -1
  36. package/dist/cli/postinstall/cursor-agents.js +26 -68
  37. package/dist/cli/postinstall/cursor-agents.js.map +1 -1
  38. package/dist/cli/postinstall/cursor-skills.d.ts.map +1 -1
  39. package/dist/cli/postinstall/cursor-skills.js +26 -30
  40. package/dist/cli/postinstall/cursor-skills.js.map +1 -1
  41. package/dist/cli/postinstall/main.d.ts.map +1 -1
  42. package/dist/cli/postinstall/main.js +0 -2
  43. package/dist/cli/postinstall/main.js.map +1 -1
  44. package/dist/cli/setup/Provisioner.d.ts.map +1 -1
  45. package/dist/cli/setup/Provisioner.js +19 -21
  46. package/dist/cli/setup/Provisioner.js.map +1 -1
  47. package/dist/cli/utils.d.ts +4 -1
  48. package/dist/cli/utils.d.ts.map +1 -1
  49. package/dist/cli/utils.js +4 -1
  50. package/dist/cli/utils.js.map +1 -1
  51. package/dist/infra/lib/FrameworkDetector.js +4 -4
  52. package/dist/infra/lib/FrameworkDetector.js.map +1 -1
  53. package/dist/infra/lib/OrchestrateWorkflow.js +2 -2
  54. package/dist/infra/lib/OrchestrateWorkflow.js.map +1 -1
  55. package/dist/infra/lib/browser/launch.js +1 -1
  56. package/dist/infra/lib/browser/launch.js.map +1 -1
  57. package/dist/infra/lib/browser/types.d.ts +1 -1
  58. package/dist/infra/lib/browser/types.js +1 -1
  59. package/dist/infra/lib/constants.d.ts +1 -1
  60. package/dist/infra/lib/constants.d.ts.map +1 -1
  61. package/dist/infra/lib/constants.js +4 -5
  62. package/dist/infra/lib/constants.js.map +1 -1
  63. package/dist/infra/lib/evolution/__tests__/integration.test.js +7 -7
  64. package/dist/infra/lib/evolution/__tests__/integration.test.js.map +1 -1
  65. package/dist/infra/lib/memory/index.d.ts +0 -2
  66. package/dist/infra/lib/memory/index.d.ts.map +1 -1
  67. package/dist/infra/lib/memory/index.js +0 -2
  68. package/dist/infra/lib/memory/index.js.map +1 -1
  69. package/dist/infra/lib/telemetry/SkillTelemetry.test.js +1 -1
  70. package/dist/infra/lib/telemetry/SkillTelemetry.test.js.map +1 -1
  71. package/dist/tools/index.d.ts +0 -4
  72. package/dist/tools/index.d.ts.map +1 -1
  73. package/dist/tools/index.js +0 -4
  74. package/dist/tools/index.js.map +1 -1
  75. package/dist/tools/memory/autoSaveContext.d.ts +0 -1
  76. package/dist/tools/memory/autoSaveContext.d.ts.map +1 -1
  77. package/dist/tools/memory/autoSaveContext.js +13 -27
  78. package/dist/tools/memory/autoSaveContext.js.map +1 -1
  79. package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -78
  80. package/hooks/scripts/__tests__/.vibe/memories/memories.db +0 -0
  81. package/hooks/scripts/__tests__/.vibe/memories/memories.db-shm +0 -0
  82. package/hooks/scripts/__tests__/.vibe/memories/memories.db-wal +0 -0
  83. package/hooks/scripts/__tests__/clone-behaviors.test.js +64 -0
  84. package/hooks/scripts/__tests__/clone-merge-responsive.test.js +106 -0
  85. package/hooks/scripts/__tests__/code-check-detectors.test.js +2 -2
  86. package/hooks/scripts/__tests__/run-ledger.test.js +1 -1
  87. package/hooks/scripts/__tests__/scope-from-spec.test.js +12 -12
  88. package/hooks/scripts/__tests__/step-counter.test.js +1 -1
  89. package/hooks/scripts/clone-extract.js +242 -28
  90. package/hooks/scripts/clone-merge-responsive.js +184 -0
  91. package/hooks/scripts/clone-spec.js +33 -8
  92. package/hooks/scripts/clone-validate.js +15 -9
  93. package/hooks/scripts/code-check.js +16 -203
  94. package/hooks/scripts/context-save.js +0 -11
  95. package/hooks/scripts/lib/scope-from-spec.js +9 -6
  96. package/hooks/scripts/post-edit-dispatcher.js +1 -1
  97. package/hooks/scripts/prompt-dispatcher.js +7 -18
  98. package/hooks/scripts/session-start.js +25 -35
  99. package/package.json +6 -5
  100. package/skills/agents-md/SKILL.md +62 -15
  101. package/skills/arch-guard/SKILL.md +1 -1
  102. package/skills/brand-assets/SKILL.md +2 -2
  103. package/skills/capability-loop/SKILL.md +1 -1
  104. package/skills/chub-usage/SKILL.md +1 -1
  105. package/skills/clone/SKILL.md +132 -55
  106. package/skills/commerce-patterns/SKILL.md +2 -2
  107. package/skills/commit-push-pr/SKILL.md +0 -1
  108. package/skills/context7-usage/SKILL.md +1 -1
  109. package/skills/design-refine/SKILL.md +140 -0
  110. package/skills/{design-polish → design-refine}/templates/polish-report.md +1 -1
  111. package/skills/{design-normalize → design-refine}/templates/token-audit.md +3 -3
  112. package/skills/design-review/SKILL.md +143 -0
  113. package/skills/{design-audit → design-review}/agents/a11y-auditor.md +1 -1
  114. package/skills/{design-audit → design-review}/agents/performance-auditor.md +1 -1
  115. package/skills/{design-audit → design-review}/agents/responsive-auditor.md +1 -1
  116. package/skills/{design-audit → design-review}/agents/slop-detector.md +1 -1
  117. package/skills/{design-audit → design-review}/frameworks/core-web-vitals.md +1 -1
  118. package/skills/{design-audit → design-review}/frameworks/wcag-checklist.md +1 -1
  119. package/skills/{design-audit → design-review}/orchestrator.md +3 -3
  120. package/skills/{design-critique → design-review}/templates/critique-report.md +3 -3
  121. package/skills/{design-audit → design-review}/templates/report.md +3 -3
  122. package/skills/design-teach/SKILL.md +11 -11
  123. package/skills/docs/SKILL.md +14 -16
  124. package/skills/e2e-commerce/SKILL.md +1 -1
  125. package/skills/event-comms/SKILL.md +1 -1
  126. package/skills/event-ops/SKILL.md +2 -2
  127. package/skills/event-planning/SKILL.md +1 -1
  128. package/skills/exec-plan/SKILL.md +2 -2
  129. package/skills/figma/SKILL.md +240 -148
  130. package/skills/figma/rubrics/css-mapping.md +125 -0
  131. package/skills/git-worktree/SKILL.md +1 -1
  132. package/skills/handoff/SKILL.md +1 -1
  133. package/skills/parallel-research/SKILL.md +14 -28
  134. package/skills/priority-todos/SKILL.md +1 -1
  135. package/skills/regress/SKILL.md +11 -0
  136. package/skills/restraint/SKILL.md +72 -0
  137. package/skills/seo-checklist/SKILL.md +2 -2
  138. package/skills/spec/SKILL.md +65 -836
  139. package/skills/test/SKILL.md +3 -3
  140. package/skills/tool-fallback/SKILL.md +2 -2
  141. package/skills/vercel-react-best-practices/SKILL.md +1 -1
  142. package/skills/vibe/SKILL.md +20 -35
  143. package/skills/vibe.analyze/SKILL.md +7 -9
  144. package/skills/vibe.clone/SKILL.md +39 -19
  145. package/skills/vibe.docs/SKILL.md +1 -1
  146. package/skills/vibe.event/SKILL.md +27 -27
  147. package/skills/vibe.figma/SKILL.md +14 -18
  148. package/skills/vibe.harness/SKILL.md +5 -5
  149. package/skills/vibe.reason/SKILL.md +0 -2
  150. package/skills/vibe.review/SKILL.md +45 -49
  151. package/skills/vibe.run/SKILL.md +2 -5
  152. package/skills/vibe.run/references/parallel-agents.md +33 -98
  153. package/skills/vibe.spec/SKILL.md +38 -535
  154. package/skills/vibe.utils/SKILL.md +3 -3
  155. package/skills/vibe.verify/SKILL.md +70 -542
  156. package/skills/video-production/SKILL.md +1 -1
  157. package/vibe/rules/orchestrator-contract.md +5 -4
  158. package/vibe/rules/quality/performance.md +1 -1
  159. package/vibe/templates/claudemd-template.md +1 -1
  160. package/vibe/templates/spec-template.md +35 -185
  161. package/agents/architect-low.md +0 -41
  162. package/agents/architect-medium.md +0 -59
  163. package/agents/compounder.md +0 -265
  164. package/agents/docs/api-documenter.md +0 -99
  165. package/agents/docs/changelog-writer.md +0 -93
  166. package/agents/event/event-comms.md +0 -78
  167. package/agents/event/event-content.md +0 -68
  168. package/agents/event/event-image.md +0 -95
  169. package/agents/event/event-scheduler.md +0 -69
  170. package/agents/event/event-speaker.md +0 -86
  171. package/agents/explorer-low.md +0 -42
  172. package/agents/explorer-medium.md +0 -59
  173. package/agents/explorer.md +0 -48
  174. package/agents/figma/figma-analyst.md +0 -56
  175. package/agents/figma/figma-architect.md +0 -116
  176. package/agents/figma/figma-auditor.md +0 -86
  177. package/agents/figma/figma-builder.md +0 -104
  178. package/agents/implementer-low.md +0 -43
  179. package/agents/implementer-medium.md +0 -52
  180. package/agents/junior-mentor.md +0 -141
  181. package/agents/planning/requirements-analyst.md +0 -84
  182. package/agents/planning/ux-advisor.md +0 -83
  183. package/agents/qa/acceptance-tester.md +0 -86
  184. package/agents/qa/edge-case-finder.md +0 -93
  185. package/agents/qa/qa-coordinator.md +0 -131
  186. package/agents/refactor-cleaner.md +0 -143
  187. package/agents/research/best-practices.md +0 -199
  188. package/agents/research/codebase-patterns.md +0 -157
  189. package/agents/research/framework-docs.md +0 -188
  190. package/agents/research/security-advisory.md +0 -213
  191. package/agents/review/architecture-reviewer.md +0 -107
  192. package/agents/review/complexity-reviewer.md +0 -116
  193. package/agents/review/data-integrity-reviewer.md +0 -88
  194. package/agents/review/git-history-reviewer.md +0 -103
  195. package/agents/review/performance-reviewer.md +0 -86
  196. package/agents/review/python-reviewer.md +0 -150
  197. package/agents/review/rails-reviewer.md +0 -139
  198. package/agents/review/react-reviewer.md +0 -144
  199. package/agents/review/security-reviewer.md +0 -80
  200. package/agents/review/simplicity-reviewer.md +0 -140
  201. package/agents/review/test-coverage-reviewer.md +0 -116
  202. package/agents/review/typescript-reviewer.md +0 -127
  203. package/agents/searcher.md +0 -54
  204. package/agents/simplifier.md +0 -124
  205. package/agents/teams/debug-team.md +0 -74
  206. package/agents/teams/dev-team.md +0 -92
  207. package/agents/teams/docs-team.md +0 -84
  208. package/agents/teams/figma-team.md +0 -89
  209. package/agents/teams/fullstack-team.md +0 -87
  210. package/agents/teams/lite-team.md +0 -73
  211. package/agents/teams/migration-team.md +0 -82
  212. package/agents/teams/refactor-team.md +0 -98
  213. package/agents/teams/research-team.md +0 -90
  214. package/agents/teams/review-debate-team.md +0 -129
  215. package/agents/teams/security-team.md +0 -85
  216. package/agents/ui/ui-a11y-auditor.md +0 -93
  217. package/agents/ui/ui-antipattern-detector.md +0 -102
  218. package/agents/ui/ui-dataviz-advisor.md +0 -69
  219. package/agents/ui/ui-design-system-gen.md +0 -57
  220. package/agents/ui/ui-industry-analyzer.md +0 -49
  221. package/agents/ui/ui-layout-architect.md +0 -65
  222. package/agents/ui/ui-stack-implementer.md +0 -68
  223. package/agents/ui/ux-compliance-reviewer.md +0 -81
  224. package/agents/ui-previewer.md +0 -262
  225. package/dist/cli/llm/gemini-commands.d.ts +0 -25
  226. package/dist/cli/llm/gemini-commands.d.ts.map +0 -1
  227. package/dist/cli/llm/gemini-commands.js +0 -143
  228. package/dist/cli/llm/gemini-commands.js.map +0 -1
  229. package/dist/cli/postinstall/codex-agents.d.ts +0 -24
  230. package/dist/cli/postinstall/codex-agents.d.ts.map +0 -1
  231. package/dist/cli/postinstall/codex-agents.js +0 -114
  232. package/dist/cli/postinstall/codex-agents.js.map +0 -1
  233. package/dist/cli/postinstall/codex-instruction.d.ts +0 -10
  234. package/dist/cli/postinstall/codex-instruction.d.ts.map +0 -1
  235. package/dist/cli/postinstall/codex-instruction.js +0 -56
  236. package/dist/cli/postinstall/codex-instruction.js.map +0 -1
  237. package/dist/cli/postinstall/gemini-agents.d.ts +0 -12
  238. package/dist/cli/postinstall/gemini-agents.d.ts.map +0 -1
  239. package/dist/cli/postinstall/gemini-agents.js +0 -80
  240. package/dist/cli/postinstall/gemini-agents.js.map +0 -1
  241. package/dist/cli/postinstall/gemini-instruction.d.ts +0 -10
  242. package/dist/cli/postinstall/gemini-instruction.d.ts.map +0 -1
  243. package/dist/cli/postinstall/gemini-instruction.js +0 -59
  244. package/dist/cli/postinstall/gemini-instruction.js.map +0 -1
  245. package/dist/infra/lib/ContextCompressor.d.ts +0 -104
  246. package/dist/infra/lib/ContextCompressor.d.ts.map +0 -1
  247. package/dist/infra/lib/ContextCompressor.js +0 -297
  248. package/dist/infra/lib/ContextCompressor.js.map +0 -1
  249. package/dist/infra/lib/ContextCompressor.test.d.ts +0 -2
  250. package/dist/infra/lib/ContextCompressor.test.d.ts.map +0 -1
  251. package/dist/infra/lib/ContextCompressor.test.js +0 -25
  252. package/dist/infra/lib/ContextCompressor.test.js.map +0 -1
  253. package/dist/infra/lib/ProgressTracker.d.ts +0 -73
  254. package/dist/infra/lib/ProgressTracker.d.ts.map +0 -1
  255. package/dist/infra/lib/ProgressTracker.js +0 -267
  256. package/dist/infra/lib/ProgressTracker.js.map +0 -1
  257. package/dist/infra/lib/TokenBudgetTracker.d.ts +0 -68
  258. package/dist/infra/lib/TokenBudgetTracker.d.ts.map +0 -1
  259. package/dist/infra/lib/TokenBudgetTracker.js +0 -191
  260. package/dist/infra/lib/TokenBudgetTracker.js.map +0 -1
  261. package/dist/infra/lib/autonomy/AuditStore.d.ts +0 -63
  262. package/dist/infra/lib/autonomy/AuditStore.d.ts.map +0 -1
  263. package/dist/infra/lib/autonomy/AuditStore.js +0 -185
  264. package/dist/infra/lib/autonomy/AuditStore.js.map +0 -1
  265. package/dist/infra/lib/autonomy/AutonomyConfig.d.ts +0 -84
  266. package/dist/infra/lib/autonomy/AutonomyConfig.d.ts.map +0 -1
  267. package/dist/infra/lib/autonomy/AutonomyConfig.js +0 -49
  268. package/dist/infra/lib/autonomy/AutonomyConfig.js.map +0 -1
  269. package/dist/infra/lib/autonomy/AutonomyOrchestrator.d.ts +0 -78
  270. package/dist/infra/lib/autonomy/AutonomyOrchestrator.d.ts.map +0 -1
  271. package/dist/infra/lib/autonomy/AutonomyOrchestrator.js +0 -246
  272. package/dist/infra/lib/autonomy/AutonomyOrchestrator.js.map +0 -1
  273. package/dist/infra/lib/autonomy/BackgroundMonitor.d.ts +0 -36
  274. package/dist/infra/lib/autonomy/BackgroundMonitor.d.ts.map +0 -1
  275. package/dist/infra/lib/autonomy/BackgroundMonitor.js +0 -138
  276. package/dist/infra/lib/autonomy/BackgroundMonitor.js.map +0 -1
  277. package/dist/infra/lib/autonomy/CollaborationProtocol.d.ts +0 -56
  278. package/dist/infra/lib/autonomy/CollaborationProtocol.d.ts.map +0 -1
  279. package/dist/infra/lib/autonomy/CollaborationProtocol.js +0 -122
  280. package/dist/infra/lib/autonomy/CollaborationProtocol.js.map +0 -1
  281. package/dist/infra/lib/autonomy/ConfirmationManager.d.ts +0 -42
  282. package/dist/infra/lib/autonomy/ConfirmationManager.d.ts.map +0 -1
  283. package/dist/infra/lib/autonomy/ConfirmationManager.js +0 -200
  284. package/dist/infra/lib/autonomy/ConfirmationManager.js.map +0 -1
  285. package/dist/infra/lib/autonomy/ConfirmationStore.d.ts +0 -55
  286. package/dist/infra/lib/autonomy/ConfirmationStore.d.ts.map +0 -1
  287. package/dist/infra/lib/autonomy/ConfirmationStore.js +0 -130
  288. package/dist/infra/lib/autonomy/ConfirmationStore.js.map +0 -1
  289. package/dist/infra/lib/autonomy/EventBus.d.ts +0 -20
  290. package/dist/infra/lib/autonomy/EventBus.d.ts.map +0 -1
  291. package/dist/infra/lib/autonomy/EventBus.js +0 -119
  292. package/dist/infra/lib/autonomy/EventBus.js.map +0 -1
  293. package/dist/infra/lib/autonomy/EventOutbox.d.ts +0 -32
  294. package/dist/infra/lib/autonomy/EventOutbox.d.ts.map +0 -1
  295. package/dist/infra/lib/autonomy/EventOutbox.js +0 -152
  296. package/dist/infra/lib/autonomy/EventOutbox.js.map +0 -1
  297. package/dist/infra/lib/autonomy/NotificationDispatcher.d.ts +0 -24
  298. package/dist/infra/lib/autonomy/NotificationDispatcher.d.ts.map +0 -1
  299. package/dist/infra/lib/autonomy/NotificationDispatcher.js +0 -112
  300. package/dist/infra/lib/autonomy/NotificationDispatcher.js.map +0 -1
  301. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +0 -76
  302. package/dist/infra/lib/autonomy/PolicyEngine.d.ts.map +0 -1
  303. package/dist/infra/lib/autonomy/PolicyEngine.js +0 -208
  304. package/dist/infra/lib/autonomy/PolicyEngine.js.map +0 -1
  305. package/dist/infra/lib/autonomy/ProactiveAnalyzer.d.ts +0 -61
  306. package/dist/infra/lib/autonomy/ProactiveAnalyzer.d.ts.map +0 -1
  307. package/dist/infra/lib/autonomy/ProactiveAnalyzer.js +0 -236
  308. package/dist/infra/lib/autonomy/ProactiveAnalyzer.js.map +0 -1
  309. package/dist/infra/lib/autonomy/RiskClassifier.d.ts +0 -35
  310. package/dist/infra/lib/autonomy/RiskClassifier.d.ts.map +0 -1
  311. package/dist/infra/lib/autonomy/RiskClassifier.js +0 -147
  312. package/dist/infra/lib/autonomy/RiskClassifier.js.map +0 -1
  313. package/dist/infra/lib/autonomy/SecuritySentinel.d.ts +0 -51
  314. package/dist/infra/lib/autonomy/SecuritySentinel.d.ts.map +0 -1
  315. package/dist/infra/lib/autonomy/SecuritySentinel.js +0 -162
  316. package/dist/infra/lib/autonomy/SecuritySentinel.js.map +0 -1
  317. package/dist/infra/lib/autonomy/SuggestionStore.d.ts +0 -54
  318. package/dist/infra/lib/autonomy/SuggestionStore.d.ts.map +0 -1
  319. package/dist/infra/lib/autonomy/SuggestionStore.js +0 -144
  320. package/dist/infra/lib/autonomy/SuggestionStore.js.map +0 -1
  321. package/dist/infra/lib/autonomy/TaskDecomposer.d.ts +0 -38
  322. package/dist/infra/lib/autonomy/TaskDecomposer.d.ts.map +0 -1
  323. package/dist/infra/lib/autonomy/TaskDecomposer.js +0 -175
  324. package/dist/infra/lib/autonomy/TaskDecomposer.js.map +0 -1
  325. package/dist/infra/lib/autonomy/__tests__/audit-store.test.d.ts +0 -2
  326. package/dist/infra/lib/autonomy/__tests__/audit-store.test.d.ts.map +0 -1
  327. package/dist/infra/lib/autonomy/__tests__/audit-store.test.js +0 -198
  328. package/dist/infra/lib/autonomy/__tests__/audit-store.test.js.map +0 -1
  329. package/dist/infra/lib/autonomy/__tests__/event-bus.test.d.ts +0 -2
  330. package/dist/infra/lib/autonomy/__tests__/event-bus.test.d.ts.map +0 -1
  331. package/dist/infra/lib/autonomy/__tests__/event-bus.test.js +0 -225
  332. package/dist/infra/lib/autonomy/__tests__/event-bus.test.js.map +0 -1
  333. package/dist/infra/lib/autonomy/__tests__/event-core.test.d.ts +0 -2
  334. package/dist/infra/lib/autonomy/__tests__/event-core.test.d.ts.map +0 -1
  335. package/dist/infra/lib/autonomy/__tests__/event-core.test.js +0 -194
  336. package/dist/infra/lib/autonomy/__tests__/event-core.test.js.map +0 -1
  337. package/dist/infra/lib/autonomy/__tests__/governance.test.d.ts +0 -2
  338. package/dist/infra/lib/autonomy/__tests__/governance.test.d.ts.map +0 -1
  339. package/dist/infra/lib/autonomy/__tests__/governance.test.js +0 -540
  340. package/dist/infra/lib/autonomy/__tests__/governance.test.js.map +0 -1
  341. package/dist/infra/lib/autonomy/__tests__/integration.test.d.ts +0 -2
  342. package/dist/infra/lib/autonomy/__tests__/integration.test.d.ts.map +0 -1
  343. package/dist/infra/lib/autonomy/__tests__/integration.test.js +0 -480
  344. package/dist/infra/lib/autonomy/__tests__/integration.test.js.map +0 -1
  345. package/dist/infra/lib/autonomy/__tests__/proactive.test.d.ts +0 -2
  346. package/dist/infra/lib/autonomy/__tests__/proactive.test.d.ts.map +0 -1
  347. package/dist/infra/lib/autonomy/__tests__/proactive.test.js +0 -410
  348. package/dist/infra/lib/autonomy/__tests__/proactive.test.js.map +0 -1
  349. package/dist/infra/lib/autonomy/__tests__/sentinel.test.d.ts +0 -2
  350. package/dist/infra/lib/autonomy/__tests__/sentinel.test.d.ts.map +0 -1
  351. package/dist/infra/lib/autonomy/__tests__/sentinel.test.js +0 -486
  352. package/dist/infra/lib/autonomy/__tests__/sentinel.test.js.map +0 -1
  353. package/dist/infra/lib/autonomy/index.d.ts +0 -18
  354. package/dist/infra/lib/autonomy/index.d.ts.map +0 -1
  355. package/dist/infra/lib/autonomy/index.js +0 -22
  356. package/dist/infra/lib/autonomy/index.js.map +0 -1
  357. package/dist/infra/lib/autonomy/schemas.d.ts +0 -317
  358. package/dist/infra/lib/autonomy/schemas.d.ts.map +0 -1
  359. package/dist/infra/lib/autonomy/schemas.js +0 -90
  360. package/dist/infra/lib/autonomy/schemas.js.map +0 -1
  361. package/dist/infra/lib/claude/index.d.ts +0 -5
  362. package/dist/infra/lib/claude/index.d.ts.map +0 -1
  363. package/dist/infra/lib/claude/index.js +0 -5
  364. package/dist/infra/lib/claude/index.js.map +0 -1
  365. package/dist/infra/lib/claude/storage.d.ts +0 -12
  366. package/dist/infra/lib/claude/storage.d.ts.map +0 -1
  367. package/dist/infra/lib/claude/storage.js +0 -54
  368. package/dist/infra/lib/claude/storage.js.map +0 -1
  369. package/dist/infra/lib/gemini/auth.d.ts +0 -18
  370. package/dist/infra/lib/gemini/auth.d.ts.map +0 -1
  371. package/dist/infra/lib/gemini/auth.js +0 -32
  372. package/dist/infra/lib/gemini/auth.js.map +0 -1
  373. package/dist/infra/lib/gemini/capabilities.d.ts +0 -28
  374. package/dist/infra/lib/gemini/capabilities.d.ts.map +0 -1
  375. package/dist/infra/lib/gemini/capabilities.js +0 -178
  376. package/dist/infra/lib/gemini/capabilities.js.map +0 -1
  377. package/dist/infra/lib/gemini/chat.d.ts +0 -35
  378. package/dist/infra/lib/gemini/chat.d.ts.map +0 -1
  379. package/dist/infra/lib/gemini/chat.js +0 -161
  380. package/dist/infra/lib/gemini/chat.js.map +0 -1
  381. package/dist/infra/lib/gemini/completion.d.ts +0 -12
  382. package/dist/infra/lib/gemini/completion.d.ts.map +0 -1
  383. package/dist/infra/lib/gemini/completion.js +0 -13
  384. package/dist/infra/lib/gemini/completion.js.map +0 -1
  385. package/dist/infra/lib/gemini/constants.d.ts +0 -8
  386. package/dist/infra/lib/gemini/constants.d.ts.map +0 -1
  387. package/dist/infra/lib/gemini/constants.js +0 -11
  388. package/dist/infra/lib/gemini/constants.js.map +0 -1
  389. package/dist/infra/lib/gemini/index.d.ts +0 -13
  390. package/dist/infra/lib/gemini/index.d.ts.map +0 -1
  391. package/dist/infra/lib/gemini/index.js +0 -12
  392. package/dist/infra/lib/gemini/index.js.map +0 -1
  393. package/dist/infra/lib/gemini/models.d.ts +0 -11
  394. package/dist/infra/lib/gemini/models.d.ts.map +0 -1
  395. package/dist/infra/lib/gemini/models.js +0 -38
  396. package/dist/infra/lib/gemini/models.js.map +0 -1
  397. package/dist/infra/lib/gemini/orchestration.d.ts +0 -33
  398. package/dist/infra/lib/gemini/orchestration.d.ts.map +0 -1
  399. package/dist/infra/lib/gemini/orchestration.js +0 -62
  400. package/dist/infra/lib/gemini/orchestration.js.map +0 -1
  401. package/dist/infra/lib/gemini/types.d.ts +0 -115
  402. package/dist/infra/lib/gemini/types.d.ts.map +0 -1
  403. package/dist/infra/lib/gemini/types.js +0 -5
  404. package/dist/infra/lib/gemini/types.js.map +0 -1
  405. package/dist/infra/orchestrator/AgentAnnouncer.d.ts +0 -64
  406. package/dist/infra/orchestrator/AgentAnnouncer.d.ts.map +0 -1
  407. package/dist/infra/orchestrator/AgentAnnouncer.js +0 -127
  408. package/dist/infra/orchestrator/AgentAnnouncer.js.map +0 -1
  409. package/dist/infra/orchestrator/AgentAnnouncer.test.d.ts +0 -5
  410. package/dist/infra/orchestrator/AgentAnnouncer.test.d.ts.map +0 -1
  411. package/dist/infra/orchestrator/AgentAnnouncer.test.js +0 -119
  412. package/dist/infra/orchestrator/AgentAnnouncer.test.js.map +0 -1
  413. package/dist/infra/orchestrator/AgentExecutor.d.ts +0 -22
  414. package/dist/infra/orchestrator/AgentExecutor.d.ts.map +0 -1
  415. package/dist/infra/orchestrator/AgentExecutor.js +0 -272
  416. package/dist/infra/orchestrator/AgentExecutor.js.map +0 -1
  417. package/dist/infra/orchestrator/AgentManager.d.ts +0 -72
  418. package/dist/infra/orchestrator/AgentManager.d.ts.map +0 -1
  419. package/dist/infra/orchestrator/AgentManager.js +0 -183
  420. package/dist/infra/orchestrator/AgentManager.js.map +0 -1
  421. package/dist/infra/orchestrator/AgentManifestCache.d.ts +0 -54
  422. package/dist/infra/orchestrator/AgentManifestCache.d.ts.map +0 -1
  423. package/dist/infra/orchestrator/AgentManifestCache.js +0 -191
  424. package/dist/infra/orchestrator/AgentManifestCache.js.map +0 -1
  425. package/dist/infra/orchestrator/AgentRegistry.d.ts +0 -76
  426. package/dist/infra/orchestrator/AgentRegistry.d.ts.map +0 -1
  427. package/dist/infra/orchestrator/AgentRegistry.js +0 -217
  428. package/dist/infra/orchestrator/AgentRegistry.js.map +0 -1
  429. package/dist/infra/orchestrator/AgentRegistry.test.d.ts +0 -5
  430. package/dist/infra/orchestrator/AgentRegistry.test.d.ts.map +0 -1
  431. package/dist/infra/orchestrator/AgentRegistry.test.js +0 -122
  432. package/dist/infra/orchestrator/AgentRegistry.test.js.map +0 -1
  433. package/dist/infra/orchestrator/BackgroundManager.d.ts +0 -128
  434. package/dist/infra/orchestrator/BackgroundManager.d.ts.map +0 -1
  435. package/dist/infra/orchestrator/BackgroundManager.js +0 -620
  436. package/dist/infra/orchestrator/BackgroundManager.js.map +0 -1
  437. package/dist/infra/orchestrator/BackgroundManager.test.d.ts +0 -6
  438. package/dist/infra/orchestrator/BackgroundManager.test.d.ts.map +0 -1
  439. package/dist/infra/orchestrator/BackgroundManager.test.js +0 -162
  440. package/dist/infra/orchestrator/BackgroundManager.test.js.map +0 -1
  441. package/dist/infra/orchestrator/CheckpointManager.d.ts +0 -54
  442. package/dist/infra/orchestrator/CheckpointManager.d.ts.map +0 -1
  443. package/dist/infra/orchestrator/CheckpointManager.js +0 -121
  444. package/dist/infra/orchestrator/CheckpointManager.js.map +0 -1
  445. package/dist/infra/orchestrator/CodexAgentRuntime.d.ts +0 -12
  446. package/dist/infra/orchestrator/CodexAgentRuntime.d.ts.map +0 -1
  447. package/dist/infra/orchestrator/CodexAgentRuntime.js +0 -94
  448. package/dist/infra/orchestrator/CodexAgentRuntime.js.map +0 -1
  449. package/dist/infra/orchestrator/CodexAgentRuntime.test.d.ts +0 -2
  450. package/dist/infra/orchestrator/CodexAgentRuntime.test.d.ts.map +0 -1
  451. package/dist/infra/orchestrator/CodexAgentRuntime.test.js +0 -37
  452. package/dist/infra/orchestrator/CodexAgentRuntime.test.js.map +0 -1
  453. package/dist/infra/orchestrator/LLMCluster.d.ts +0 -82
  454. package/dist/infra/orchestrator/LLMCluster.d.ts.map +0 -1
  455. package/dist/infra/orchestrator/LLMCluster.js +0 -146
  456. package/dist/infra/orchestrator/LLMCluster.js.map +0 -1
  457. package/dist/infra/orchestrator/MultiLlmResearch.d.ts +0 -31
  458. package/dist/infra/orchestrator/MultiLlmResearch.d.ts.map +0 -1
  459. package/dist/infra/orchestrator/MultiLlmResearch.js +0 -160
  460. package/dist/infra/orchestrator/MultiLlmResearch.js.map +0 -1
  461. package/dist/infra/orchestrator/PhasePipeline.d.ts +0 -122
  462. package/dist/infra/orchestrator/PhasePipeline.d.ts.map +0 -1
  463. package/dist/infra/orchestrator/PhasePipeline.js +0 -385
  464. package/dist/infra/orchestrator/PhasePipeline.js.map +0 -1
  465. package/dist/infra/orchestrator/PhaseResultStore.d.ts +0 -39
  466. package/dist/infra/orchestrator/PhaseResultStore.d.ts.map +0 -1
  467. package/dist/infra/orchestrator/PhaseResultStore.js +0 -151
  468. package/dist/infra/orchestrator/PhaseResultStore.js.map +0 -1
  469. package/dist/infra/orchestrator/SessionStore.d.ts +0 -40
  470. package/dist/infra/orchestrator/SessionStore.d.ts.map +0 -1
  471. package/dist/infra/orchestrator/SessionStore.js +0 -116
  472. package/dist/infra/orchestrator/SessionStore.js.map +0 -1
  473. package/dist/infra/orchestrator/SmartRouter.d.ts +0 -90
  474. package/dist/infra/orchestrator/SmartRouter.d.ts.map +0 -1
  475. package/dist/infra/orchestrator/SmartRouter.js +0 -277
  476. package/dist/infra/orchestrator/SmartRouter.js.map +0 -1
  477. package/dist/infra/orchestrator/SmartRouter.test.d.ts +0 -5
  478. package/dist/infra/orchestrator/SmartRouter.test.d.ts.map +0 -1
  479. package/dist/infra/orchestrator/SmartRouter.test.js +0 -484
  480. package/dist/infra/orchestrator/SmartRouter.test.js.map +0 -1
  481. package/dist/infra/orchestrator/SwarmOrchestrator.d.ts +0 -143
  482. package/dist/infra/orchestrator/SwarmOrchestrator.d.ts.map +0 -1
  483. package/dist/infra/orchestrator/SwarmOrchestrator.js +0 -378
  484. package/dist/infra/orchestrator/SwarmOrchestrator.js.map +0 -1
  485. package/dist/infra/orchestrator/SwarmOrchestrator.test.d.ts +0 -5
  486. package/dist/infra/orchestrator/SwarmOrchestrator.test.d.ts.map +0 -1
  487. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +0 -95
  488. package/dist/infra/orchestrator/SwarmOrchestrator.test.js.map +0 -1
  489. package/dist/infra/orchestrator/agentDiscovery.d.ts +0 -26
  490. package/dist/infra/orchestrator/agentDiscovery.d.ts.map +0 -1
  491. package/dist/infra/orchestrator/agentDiscovery.js +0 -175
  492. package/dist/infra/orchestrator/agentDiscovery.js.map +0 -1
  493. package/dist/infra/orchestrator/backgroundAgent.d.ts +0 -9
  494. package/dist/infra/orchestrator/backgroundAgent.d.ts.map +0 -1
  495. package/dist/infra/orchestrator/backgroundAgent.js +0 -10
  496. package/dist/infra/orchestrator/backgroundAgent.js.map +0 -1
  497. package/dist/infra/orchestrator/index.d.ts +0 -207
  498. package/dist/infra/orchestrator/index.d.ts.map +0 -1
  499. package/dist/infra/orchestrator/index.js +0 -362
  500. package/dist/infra/orchestrator/index.js.map +0 -1
  501. package/dist/infra/orchestrator/orchestrator.d.ts +0 -60
  502. package/dist/infra/orchestrator/orchestrator.d.ts.map +0 -1
  503. package/dist/infra/orchestrator/orchestrator.js +0 -214
  504. package/dist/infra/orchestrator/orchestrator.js.map +0 -1
  505. package/dist/infra/orchestrator/parallelResearch.d.ts +0 -27
  506. package/dist/infra/orchestrator/parallelResearch.d.ts.map +0 -1
  507. package/dist/infra/orchestrator/parallelResearch.js +0 -285
  508. package/dist/infra/orchestrator/parallelResearch.js.map +0 -1
  509. package/dist/infra/orchestrator/types.d.ts +0 -205
  510. package/dist/infra/orchestrator/types.d.ts.map +0 -1
  511. package/dist/infra/orchestrator/types.js +0 -87
  512. package/dist/infra/orchestrator/types.js.map +0 -1
  513. package/dist/infra/orchestrator/types.test.d.ts +0 -2
  514. package/dist/infra/orchestrator/types.test.d.ts.map +0 -1
  515. package/dist/infra/orchestrator/types.test.js +0 -57
  516. package/dist/infra/orchestrator/types.test.js.map +0 -1
  517. package/dist/tools/semantic/analyzeDependencyGraph.d.ts +0 -12
  518. package/dist/tools/semantic/analyzeDependencyGraph.d.ts.map +0 -1
  519. package/dist/tools/semantic/analyzeDependencyGraph.js +0 -359
  520. package/dist/tools/semantic/analyzeDependencyGraph.js.map +0 -1
  521. package/dist/tools/semantic/astGrep.d.ts +0 -25
  522. package/dist/tools/semantic/astGrep.d.ts.map +0 -1
  523. package/dist/tools/semantic/astGrep.js +0 -324
  524. package/dist/tools/semantic/astGrep.js.map +0 -1
  525. package/dist/tools/semantic/astGrep.test.d.ts +0 -2
  526. package/dist/tools/semantic/astGrep.test.d.ts.map +0 -1
  527. package/dist/tools/semantic/astGrep.test.js +0 -74
  528. package/dist/tools/semantic/astGrep.test.js.map +0 -1
  529. package/dist/tools/semantic/findReferences.d.ts +0 -9
  530. package/dist/tools/semantic/findReferences.d.ts.map +0 -1
  531. package/dist/tools/semantic/findReferences.js +0 -200
  532. package/dist/tools/semantic/findReferences.js.map +0 -1
  533. package/dist/tools/semantic/findSymbol.d.ts +0 -8
  534. package/dist/tools/semantic/findSymbol.d.ts.map +0 -1
  535. package/dist/tools/semantic/findSymbol.js +0 -204
  536. package/dist/tools/semantic/findSymbol.js.map +0 -1
  537. package/dist/tools/semantic/index.d.ts +0 -9
  538. package/dist/tools/semantic/index.d.ts.map +0 -1
  539. package/dist/tools/semantic/index.js +0 -11
  540. package/dist/tools/semantic/index.js.map +0 -1
  541. package/dist/tools/semantic/lsp.d.ts +0 -68
  542. package/dist/tools/semantic/lsp.d.ts.map +0 -1
  543. package/dist/tools/semantic/lsp.js +0 -561
  544. package/dist/tools/semantic/lsp.js.map +0 -1
  545. package/dist/tools/spec/e2eTestGenerator.d.ts +0 -61
  546. package/dist/tools/spec/e2eTestGenerator.d.ts.map +0 -1
  547. package/dist/tools/spec/e2eTestGenerator.js +0 -255
  548. package/dist/tools/spec/e2eTestGenerator.js.map +0 -1
  549. package/dist/tools/spec/specVersioning.d.ts +0 -76
  550. package/dist/tools/spec/specVersioning.d.ts.map +0 -1
  551. package/dist/tools/spec/specVersioning.js +0 -236
  552. package/dist/tools/spec/specVersioning.js.map +0 -1
  553. package/hooks/scripts/__tests__/keyword-detector.test.js +0 -242
  554. package/hooks/scripts/keyword-detector.js +0 -226
  555. package/skills/characterization-test/SKILL.md +0 -209
  556. package/skills/characterization-test/agents/behavior-capturer.md +0 -50
  557. package/skills/characterization-test/agents/coverage-checker.md +0 -54
  558. package/skills/characterization-test/agents/reporter.md +0 -50
  559. package/skills/characterization-test/agents/test-writer.md +0 -49
  560. package/skills/characterization-test/rubrics/coverage-criteria.md +0 -53
  561. package/skills/characterization-test/templates/test-template.ts +0 -101
  562. package/skills/claude-md-guide/SKILL.md +0 -353
  563. package/skills/claude-md-guide/rubrics/anti-patterns.md +0 -88
  564. package/skills/design-audit/SKILL.md +0 -154
  565. package/skills/design-critique/SKILL.md +0 -140
  566. package/skills/design-distill/SKILL.md +0 -131
  567. package/skills/design-normalize/SKILL.md +0 -135
  568. package/skills/design-polish/SKILL.md +0 -132
  569. package/skills/figma-convert/SKILL.md +0 -236
  570. package/skills/figma-extract/SKILL.md +0 -242
  571. package/skills/interview/SKILL.md +0 -358
  572. package/skills/interview/checklists/api.md +0 -101
  573. package/skills/interview/checklists/feature.md +0 -88
  574. package/skills/interview/checklists/library.md +0 -95
  575. package/skills/interview/checklists/mobile.md +0 -89
  576. package/skills/interview/checklists/webapp.md +0 -97
  577. package/skills/interview/checklists/website.md +0 -99
  578. package/skills/plan/SKILL.md +0 -254
  579. package/skills/rob-pike/SKILL.md +0 -66
  580. package/skills/spec/references/askuser-examples.md +0 -57
  581. package/skills/spec/references/example-session.md +0 -87
  582. package/skills/spec/references/templates.md +0 -194
  583. package/skills/spec-review/SKILL.md +0 -725
  584. package/skills/systematic-debugging/SKILL.md +0 -142
  585. package/skills/techdebt/SKILL.md +0 -126
  586. package/skills/techdebt/agents/analyzer.md +0 -50
  587. package/skills/techdebt/agents/fixer.md +0 -41
  588. package/skills/techdebt/agents/reviewer.md +0 -47
  589. package/skills/techdebt/agents/scanner.md +0 -44
  590. package/skills/techdebt/orchestrator.md +0 -72
  591. package/skills/techdebt/rubrics/severity.md +0 -51
  592. package/skills/techdebt/scripts/scan.js +0 -90
  593. package/skills/techdebt/templates/report.md +0 -86
  594. package/skills/typescript-advanced-types/SKILL.md +0 -68
  595. package/skills/typescript-advanced-types/rubrics/type-patterns.md +0 -109
  596. package/skills/yagni-ladder/SKILL.md +0 -90
  597. /package/skills/{claude-md-guide → agents-md}/templates/claude-md.md +0 -0
  598. /package/skills/{design-polish → design-refine}/rubrics/polish-checklist.md +0 -0
  599. /package/skills/{design-normalize → design-refine}/rubrics/token-naming.md +0 -0
  600. /package/skills/{design-distill → design-refine}/templates/design-system.md +0 -0
  601. /package/skills/{design-audit → design-review}/agents/scorer.md +0 -0
  602. /package/skills/{design-audit → design-review}/rubrics/ai-slop-patterns.md +0 -0
  603. /package/skills/{design-audit → design-review}/rubrics/scoring.md +0 -0
  604. /package/skills/{design-critique → design-review}/rubrics/ux-heuristics.md +0 -0
  605. /package/skills/{figma-convert → figma}/rubrics/conversion-rules.md +0 -0
  606. /package/skills/{figma-extract → figma}/rubrics/image-rules.md +0 -0
  607. /package/skills/{figma-convert → figma}/templates/component.md +0 -0
package/CLAUDE.md CHANGED
@@ -28,12 +28,12 @@ Transform imperative tasks into verifiable goals **before** coding:
28
28
 
29
29
  Weak criteria ("make it work") require constant clarification. Strong criteria let the loop run independently.
30
30
 
31
- ### TypeScript (detected by Quality Gate hooks violations injected as additionalContext; blocked by auto-commit verify gate, Stop warning, and pr-test-gate)
31
+ ### TypeScript (hard rules — `any`/`console.log` detected by Quality Gate hooks and injected as additionalContext; deterministic gates are pr-test-gate + Stop verify warning)
32
32
  - No `any` / `as any` / `@ts-ignore` — use `unknown` + type guards; fix at root
33
33
  - Explicit return types on all functions
34
34
 
35
- ### Complexity Limits
36
- Function ≤50 lines · Nesting ≤3 · Params ≤5 · Cyclomatic ≤10
35
+ ### Complexity Limits (model-judged, not hook-detected)
36
+ Function ≤50 lines · Nesting ≤3 · Params ≤5 · Cyclomatic ≤10 — apply in-context judgement; no regex heuristics enforce these
37
37
 
38
38
  ### Forbidden Patterns
39
39
  No `console.log` in commits · No hardcoded strings/numbers · No commented-out code · No incomplete code without TODO
@@ -60,7 +60,7 @@ Loop semantics SSOT: `vibe/rules/loop-contract.md` (ANCHOR→ACT→JUDGE→RECOR
60
60
  | `~/.codex/config.toml` | Codex `notify` (turn-complete lifecycle hook, auto-installed) |
61
61
 
62
62
  **`.vibe/config.json` behavior keys** (set per-project to tune gate behavior):
63
- - `scopeGuard.enabled` / `scopeGuard.mode` — scope fence on/off; `warn` (default) or `block`
63
+ - `scopeGuard.enabled` / `scopeGuard.mode` — scope fence opt-in (default **off** everywhere — CLI and hooks share this default); mode `warn` (default) or `block`
64
64
  - `verifyGate.mode` — `warn` (default) or `block` (Stop hook blocks once if run started but verify not passed)
65
65
  - `autoTest.mode` — `debounce` (default, 120s cooldown per unchanged test file) / `always` / `off`
66
66
  - `qualityCheck.consoleAllow` — array of file globs where `console.log` is permitted
@@ -80,7 +80,7 @@ Legacy: 기존 `.claude/vibe/` 는 런타임에 자동 인식되며 `vibe init`/
80
80
  - `better-sqlite3` WAL mode — synchronous API
81
81
  - `crypto.timingSafeEqual` requires same-length buffers — check length first
82
82
  - **Stack → asset SSOT**: `GLOBAL_SKILLS_*`, `STACK_TO_SKILLS`, `CAPABILITY_SKILLS` in `src/cli/postinstall/constants.ts`
83
- - **Hook dispatch order**: `prompt-dispatcher.js` → `keyword-detector.js` `llm-orchestrate.js`
83
+ - **Hook dispatch order**: `prompt-dispatcher.js` → `llm-orchestrate.js` (매직 키워드 배너 훅 없음 — deprecated 별칭은 "Deprecated aliases" 표가 SSOT, 모델이 직접 해석)
84
84
  - **Hook 실행 모델**: per-event process spawn 유지 — **daemon/IPC 지양** (무상태·크래시 격리·인프라 제로가 ~20ms VM 기동 절감보다 우선). 훅 레이턴시 최적화는 dispatcher in-process 평탄화(자식 spawn → `import` 실행)로만 접근한다
85
85
 
86
86
  ## Workflow
@@ -91,13 +91,13 @@ Claude Code uses `/vibe` as the **single slash entry point**. Codex exposes the
91
91
  $vibe "<requirement>" [+ 📎 attachments] # Codex
92
92
  /vibe "<requirement>" [+ 📎 attachments] # Claude Code
93
93
  → Intent classification (new feature / figma-driven / clone / resume / review / regress / contract / scaffold / docs / analyze / harness / test / utils)
94
- → Smart Resume detection (.vibe/{interviews,plans,specs,features}/)
94
+ → Smart Resume detection (.vibe/{specs,features}/ — legacy interviews/plans 는 입력 컨텍스트로만 인식)
95
95
  → SPEC confirmation (1-time approval; skipped on automationLevel: autonomous)
96
96
  → Loop: ANCHOR→ACT→JUDGE→RECORD until gates pass │ stuck │ max-iter
97
97
  ```
98
98
 
99
99
  **Advanced (explicit phase) entrypoints** — still available for power users when you know exactly which phase to run:
100
- - Codex: `$vibe.spec` / Claude Code: `/vibe.spec` — interview planspec → review orchestration
100
+ - Codex: `$vibe.spec` / Claude Code: `/vibe.spec` — single-pass SPEC (인라인 질문 SPEC 1패스 승인 1회; 구 interview/plan/spec-review 4단계는 폐지)
101
101
  - Codex: `$vibe.figma` / Claude Code: `/vibe.figma` — Figma ↔ code (UI track)
102
102
  - Codex: `$vibe.run` / Claude Code: `/vibe.run` — SPEC-driven implementation
103
103
  - Codex: `$vibe.verify` / Claude Code: `/vibe.verify` — implementation vs SPEC verification
@@ -130,7 +130,7 @@ $vibe "<requirement>" [+ 📎 attachments] # Codex
130
130
 
131
131
  ## Context Management
132
132
 
133
- - Exploration Haiku · Implementation → Sonnet · Architecture Opus
133
+ - **Model routing: inherit by default** — 서브에이전트는 세션 모델을 상속한다. 명시적 예외만 tier alias 로 지정 (아키텍처 심층 리뷰 `opus`). 구세대 "탐색→Haiku·구현→Sonnet" 비용 라우팅은 폐기 — 강한 기본 모델에서 라우팅 우회가 절약보다 품질 손실이 크다
134
134
  - At 85%+ context: `save_memory` → `/new` → `/vibe.utils --continue` (raised from 70% — `/new` 는 KV prefix cache 를 전량 폐기하므로, 압축 빈도를 낮춰 캐쉬 재사용을 늘린다)
135
135
 
136
136
  ## Git
package/README.en.md CHANGED
@@ -1,13 +1,13 @@
1
1
  # VIBE
2
2
 
3
- **Easy vibe coding. Minimum quality guaranteed.**
3
+ **Easy vibe coding. Done is judged by machines.**
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/@su-record/vibe)](https://www.npmjs.com/package/@su-record/vibe)
6
6
  [![npm downloads](https://img.shields.io/npm/dt/@su-record/vibe.svg?style=flat-square&color=blue)](https://www.npmjs.com/package/@su-record/vibe)
7
7
  [![Node.js](https://img.shields.io/badge/node-%3E%3D18-green)](https://nodejs.org/)
8
8
  [![License: MIT](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)
9
9
 
10
- Vibe is a quality harness for AI coding tools. It wraps around Claude Code, Codex, Cursor, or Antigravity CLI and automatically enforces type safety, code quality, and security — so you can vibe-code fast without shipping garbage.
10
+ Vibe is a **verification harness** for AI coding. Today's models already plan and implement well — what's missing is a reason to trust "it's done." Vibe wraps Claude Code, Codex, Cursor, or Antigravity CLI and hands the completion verdict to **deterministic gates (test exit codes, a run ledger, regression memory) instead of the model's self-report** — so you can vibe-code fast without shipping unverified code.
11
11
 
12
12
  ```bash
13
13
  npm install -g @su-record/vibe
@@ -16,31 +16,47 @@ vibe init
16
16
 
17
17
  ---
18
18
 
19
+ ## Philosophy: verify, don't instruct
20
+
21
+ Scaffolding that teaches a 2026-era model *how to work* is pure overhead. Vibe v3 stripped that layer away — what remains is only **what the model cannot prove about itself**:
22
+
23
+ - **Did the tests actually pass?** — the PR gate runs the suite itself
24
+ - **Did verification actually run?** — `.vibe/metrics/run-ledger.json` records it in code
25
+ - **Is the review loop converging?** — a discover-hash (2 identical rounds → stuck) decides
26
+ - **Are we repeating the same mistake?** — verify failures auto-register as regression tests
27
+
28
+ The smarter the model, the more persuasive its "done" — which makes a code-enforced ground truth *more* valuable, not less.
29
+
30
+ ---
31
+
19
32
  ## The Workflow
20
33
 
21
- One entry point. Everything else is automatic.
34
+ One entry point. Single-pass SPEC one approval → loop until the gates pass.
22
35
 
23
36
  ```
24
37
  /vibe "coffee brand landing page"
25
38
  |
26
39
  v
27
40
  Intent classification ─── new feature? figma-driven? clone? resume? review? regress? ...
41
+ |
28
42
  v
29
- Smart Resume ─── detect .vibe/{interviews,plans,specs,features}/ state
43
+ Smart Resume ─── detect .vibe/{specs,features}/ state ("continue?")
30
44
  |
31
45
  v
32
- Pipeline design ─── /vibe.spec /vibe.figma /vibe.run/vibe.verify /vibe.trace
46
+ Single-pass SPEC ─── inline questions only at genuine forks SPEC + BDD scenarios
33
47
  |
34
48
  v
35
49
  SPEC approval once ─── the only mandatory human gate (defines Done)
36
50
  |
37
51
  v
38
- Loop ─── ANCHOR→ACT→JUDGE→RECORD until gates pass (stuck/iteration guards)
52
+ Loop ─── ANCHOR→ACT→JUDGE→RECORD until deterministic gates pass
39
53
  ```
40
54
 
55
+ **Single-pass SPEC** — the old interview → plan → spec → review 4-stage pipeline is gone. The model produces the SPEC in one pass and asks only at genuine forks. One approval gate: SPEC confirmation.
56
+
41
57
  **Smart Resume** — Stop at any step, close the session, come back later. `/vibe` auto-detects where you left off and picks up from there. No need to remember feature names.
42
58
 
43
- **Loop-default** — After SPEC approval, vibe loops (ANCHOR→ACT→JUDGE→RECORD) until gates pass, with deterministic stuck/iteration guards. `--interactive` for step-by-step confirmation; `--max-iter N` to cap iterations. `ultrawork` is a deprecated alias for `automationLevel: autonomous` + parallel ACT.
59
+ **Loop-default** — After SPEC approval, vibe loops (ANCHOR→ACT→JUDGE→RECORD) until gates pass, with deterministic stuck/iteration guards. `--interactive` for step-by-step confirmation; `--max-iter N` to cap iterations; `automationLevel: autonomous` (`.vibe/config.json`) runs non-interactively to completion.
44
60
 
45
61
  **Loop engineering** — `/vibe.loop` designs and installs autonomous goal loops (triage → run/verify pipelines). Completion is judged by deterministic gates (run-ledger/tests), not self-report; results land in a human triage inbox — loops never push or release.
46
62
 
@@ -76,10 +92,10 @@ Vibe is built on the [Harness Engineering](https://anthropic.com/engineering/har
76
92
  |------|---------------|---------------------|
77
93
  | **Scaffolding** | Project structure, tools, boundaries | `/vibe.scaffold` generates optimized folder structure (docs/, .dev/, layered src/) |
78
94
  | **Context** | What AI knows | `vibe init` generates project-aware `CLAUDE.md` / `AGENTS.md` from actual structure analysis |
79
- | **Planning** | What to build | `/vibe` routes to interview plan SPEC review pipeline |
80
- | **Orchestration** | How to execute | 40+ agents, 12 teams, skill-based dispatch |
81
- | **Verification** | How to trust | Hooks, convergence loops, RTM traceability |
82
- | **Compounding** | How to improve | Evolution engine, session memory, auto-generated skills |
95
+ | **Planning** | What to build | `/vibe` routes to a single-pass SPEC with one approval gate |
96
+ | **Orchestration** | How to execute | 15 goal-oriented agents + native parallel subagents, skill-based dispatch |
97
+ | **Verification** | How to trust | Deterministic gates (run-ledger, test exit codes), convergence loops, RTM traceability |
98
+ | **Compounding** | How to improve | Regression memory, session memory, recipes/anti-patterns |
83
99
 
84
100
  ### Diagnose Your Project
85
101
 
@@ -124,7 +140,7 @@ Bidirectional. Read designs from Figma, or write designs to Figma from a plan.
124
140
  /vibe.figma plan.md --create-design # Visual design only
125
141
  ```
126
142
 
127
- **How READ works**: Extracts the Figma node tree + 30 CSS properties via REST API, maps Auto Layout to Flexbox 1:1, generates responsive SCSS. Screenshot is for verification only — the tree is the source of truth.
143
+ **How READ works**: Extracts the Figma node tree + 30 CSS properties via REST API, maps Auto Layout to Flexbox 1:1, generates responsive SCSS. Screenshot is for verification only — the tree is the source of truth; rendering is gated by pixelmatch visual comparison.
128
144
 
129
145
  **How WRITE works**: Parses plan document sections (Look & Feel, layout, responsive strategy), builds wireframe first for structure review, then applies visual design with design system components. Idempotent — re-run after editing the plan and only changed sections update.
130
146
 
@@ -147,7 +163,7 @@ The **third SSOT** alongside `CLAUDE.md` (code) and `AGENTS.md` (build). Google
147
163
  ```
148
164
 
149
165
  **Auto-integrated**:
150
- - `/vibe.run` — On UI work, suggests DESIGN.md once if missing (silent skip in ultrawork, never blocks)
166
+ - `/vibe.run` — On UI work, suggests DESIGN.md once if missing (silent skip in autonomous mode, never blocks)
151
167
  - `/vibe.verify` — `### 3.2 Visual Drift Detection` flags hardcoded hex as P1
152
168
  - `/vibe.review` — `#### Visual P1 Baseline` — DESIGN.md first, WCAG AA fallback
153
169
  - `/vibe.figma` — `--emit-design-md` outputs DESIGN.md from READ; WRITE uses DESIGN.md tone/palette as primary input
@@ -158,40 +174,40 @@ The **third SSOT** alongside `CLAUDE.md` (code) and `AGENTS.md` (build). Google
158
174
 
159
175
  ## Quality Gates
160
176
 
161
- Detection at edit time, blocking at deterministic gates — three layers of defense:
177
+ Detection at edit time, blocking at deterministic gates:
162
178
 
163
179
  | Layer | What it does |
164
180
  |-------|--------------|
165
- | Edit hooks (Edit/Write) | **Detects** `any` types, `@ts-ignore`, `console.log`, functions > 50 lines → injects findings to the model (additionalContext) + records verify-required state |
166
- | Deterministic gates | **auto-commit verify gate** (refuses commits until verify passes) · **Stop hook** verify-skip warn/block · **PR test gate** (incl. `gh pr create`) · **scope-guard** (monitors edits outside SPEC scope) |
167
- | Review + convergence loop | 12 specialized reviewers in parallel findings loop until P1 = 0. No round cap. Run/verify state tracked in `.vibe/metrics/run-ledger.json`. Stuck = ask user, never silently proceed. |
181
+ | Edit hooks (Edit/Write) | **Detects** only low-false-positive hard rules — `any`/`@ts-ignore`, `console.log` → injects findings to the model (additionalContext). No length/nesting heuristics the model judges those better in context |
182
+ | Deterministic gates | **PR test gate** (runs the actual test suite before PR creation, incl. `gh pr create`) · **auto-commit verify gate** (refuses commits until verify passes) · **Stop hook** verify-skip warn/block · **scope-guard** (opt-in; monitors edits outside SPEC scope) · **sentinel** (blocks destructive commands and harness self-modification) |
183
+ | Review + convergence loop | Parallel `code-reviewer` instances one per focus (correctness / architecture / performance / data-integrity / …) — plus `security-reviewer`. Loops until P1 = 0, with convergence decided by discover-hash: two identical rounds = stuck, ask the user. Never silently proceeds. |
168
184
 
169
185
  ---
170
186
 
171
187
  ## Key Features
172
188
 
173
- **42+ agents** — Exploration, implementation, architecture, parallel code review, UI/UX analysis, security audit, Figma analysis/building. The UI/Figma/Event groups (18 agents) are excluded from the global install `vibe init` installs them project-locally (`.claude/agents/`) only when the stack/capability matches, so they never occupy context in unrelated projects.
189
+ **10+ agents** — 10 global goal-oriented agents (architect, implementer, tester, code-reviewer, security-reviewer, …) + 5 conditional (UI/Figma/Event installed project-locally only when the stack/capability matches; 15 total). Agents are delegated by goal + constraints + Done criteria, not step scripts; exploration, planning, and parallelism use the harness's native subagents directly.
174
190
 
175
- **73 skills** — Not all loaded at once. 3-tier system prevents context overload:
191
+ **59 skills** — Not all loaded at once. 3-tier system prevents context overload:
176
192
 
177
193
  | Tier | When loaded | Purpose | Examples |
178
194
  |------|-------------|---------|----------|
179
- | **Core** | Always active | Bug prevention, workflow entry | quality gates, interview, plan |
180
- | **Standard** | `vibe init` selects by stack | Stack/capability support | figma, design-audit, techdebt |
195
+ | **Core** | Always active | Gate entry, restraint principles | spec, test, restraint, arch-guard |
196
+ | **Standard** | `vibe init` selects by stack | Stack/capability support | figma, design-review, docs |
181
197
  | **Optional** | Explicit `/skill` only | Reference, wrappers | chub-usage, context7 |
182
198
 
183
- **Multi-LLM** Claude Code or Codex runs the harness, GPT reasons, and Antigravity researches. Auto-routes by availability.
199
+ Skills teach only what the model doesn't know (domain gotchas, current APIs, project conventions). Skills that re-taught basics like "how to debug" were deleted in v3.
200
+
201
+ **Second opinion (opt-in)** — Default execution is the session model alone. When you want one, prefix with `gpt …`/`agy …` to ask an external LLM, or run `/vibe.review --race` for cross-validation. No auto-routing ever pulls an external model into your loop.
184
202
 
185
203
  **Stack detection** — Auto-detects 24 frameworks (Next.js, Django, Rails, Go, Rust, Flutter, and more) and applies framework-specific rules and skills.
186
204
 
187
205
  **Project-aware harness docs** — `vibe init` and `vibe update` analyze your project's actual structure (folders, tech stack, build commands) and generate tailored `CLAUDE.md` / `AGENTS.md` files — not static templates.
188
206
 
189
- **Session memory** — Decisions, constraints, and goals persist across sessions via SQLite + FTS5 hybrid search.
207
+ **Regression memory** — verify failures auto-register via `/vibe.regress`; recurring patterns get promoted to preventive tests. Decisions and constraints persist across sessions via SQLite + FTS5 search.
190
208
 
191
209
  **Smart Resume** — `.last-feature` pointer tracks your latest work. `/vibe` without arguments shows where you left off or lists all in-progress features.
192
210
 
193
- **Self-repair** — Skills include error recovery tables. `/vibe.harness` diagnoses gaps and chains to `/vibe.scaffold` → `vibe update` for automated fixes.
194
-
195
211
  ---
196
212
 
197
213
  ## Supported Tools
@@ -209,12 +225,13 @@ Detection at edit time, blocking at deterministic gates — three layers of defe
209
225
 
210
226
  | Command | Purpose |
211
227
  |---------|---------|
212
- | `/vibe` | Main entry point — natural language requirement → pipeline previewchained execution |
213
- | `/vibe.spec` | Advanced phase command interview, plan, spec, review |
228
+ | `/vibe` | Main entry point — natural language requirement → single-pass SPECone approval → loop until gates pass |
229
+ | `/vibe.spec` | Advanced explicit single-pass SPEC (inline questions SPEC + BDD → approval) |
214
230
  | `/vibe.run` | Implement from SPEC |
215
231
  | `/vibe.figma` | Figma ↔ Code (read or write, 3 modes) |
216
232
  | `/vibe.design` | DESIGN.md visual quality SSOT — init / lint / verify / sync |
217
- | `/vibe.verify` | Verify implementation against SPEC |
233
+ | `/vibe.verify` | Verify implementation against SPEC Done criteria — result recorded in the run ledger |
234
+ | `/vibe.regress` | Regression test auto-evolution — auto-registers on verify failure, promotes recurring patterns |
218
235
  | `/vibe.trace` | Requirements traceability matrix |
219
236
  | `/vibe.analyze` | Analyze any target — code, documents, websites, Figma |
220
237
  | `/vibe.scaffold` | Generate or audit project folder structure |
@@ -236,7 +253,7 @@ Full guides, skill reference, and configuration details are in the [Wiki](https:
236
253
 
237
254
  - Node.js >= 18.0.0
238
255
  - Claude Code or Codex CLI
239
- - GPT, Antigravity (optional)
256
+ - GPT, Antigravity (optional — second opinions only)
240
257
 
241
258
  ## License
242
259
 
package/README.md CHANGED
@@ -1,13 +1,13 @@
1
1
  # VIBE
2
2
 
3
- **바이브 코딩은 쉽게. 최소 품질은 보장.**
3
+ **바이브 코딩은 쉽게. 완료 판정은 기계가.**
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/@su-record/vibe)](https://www.npmjs.com/package/@su-record/vibe)
6
6
  [![npm downloads](https://img.shields.io/npm/dt/@su-record/vibe.svg?style=flat-square&color=blue)](https://www.npmjs.com/package/@su-record/vibe)
7
7
  [![Node.js](https://img.shields.io/badge/node-%3E%3D18-green)](https://nodejs.org/)
8
8
  [![License: MIT](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)
9
9
 
10
- Vibe는 AI 코딩 도구를 위한 품질 하네스입니다. Claude Code, Codex, Cursor, Antigravity CLI를 감싸고, 타입 안전성, 코드 품질, 보안을 자동으로 강제합니다. 빠르게 바이브 코딩하되, 엉망인 코드가 나가지 않게.
10
+ Vibe는 AI 코딩을 위한 **검증 하네스(verification harness)** 입니다. 모델은 이미 계획도 구현도 잘합니다 — 부족한 것은 "다 됐다"는 말을 믿을 근거입니다. Vibe는 Claude Code, Codex, Cursor, Antigravity CLI를 감싸고, **완료 판정을 모델의 자기 보고가 아니라 결정론적 게이트(테스트 exit code, run-ledger, 회귀 기억)에 맡깁니다.** 빠르게 바이브 코딩하되, 검증 안 된 코드가 나가지 않게.
11
11
 
12
12
  ```bash
13
13
  npm install -g @su-record/vibe
@@ -18,9 +18,22 @@ vibe init
18
18
 
19
19
  ---
20
20
 
21
+ ## 철학: 지시하지 않고 검증한다
22
+
23
+ 2026년의 모델에게 "어떻게 일하라"고 가르치는 스캐폴딩은 비용입니다. Vibe v3는 그 층을 걷어냈습니다 — 남긴 것은 **모델이 스스로 증명할 수 없는 것들**뿐입니다:
24
+
25
+ - **테스트가 실제로 통과했는가** — PR 게이트가 테스트 스위트를 직접 실행
26
+ - **verify가 실제로 실행됐는가** — `.vibe/metrics/run-ledger.json`이 코드로 기록
27
+ - **리뷰 루프가 수렴하고 있는가** — discover-hash(2라운드 동일 → stuck)가 판정
28
+ - **같은 실수가 반복되지 않는가** — verify 실패가 회귀 테스트로 자동 등록
29
+
30
+ 똑똑한 모델일수록 "다 됐다"는 말이 그럴듯해집니다. 그래서 코드가 판정하는 ground truth는 모델이 강해질수록 **더** 가치 있습니다.
31
+
32
+ ---
33
+
21
34
  ## 워크플로우
22
35
 
23
- **진입점 하나.** 자연어 요구사항만 던지세요. vibe가 의도를 분석해서 파이프라인을 설계하고, 번만 승인받고, 자동 실행합니다.
36
+ **진입점 하나.** 자연어 요구사항만 던지세요. SPEC 1패스 승인 1회 게이트 통과까지 자동 루프.
24
37
 
25
38
  ```
26
39
  /vibe "커피 브랜드 랜딩 페이지" [+ 📎 figma URL / 이미지 / PDF / 파일]
@@ -29,16 +42,16 @@ vibe init
29
42
  Intent 분류 ─── new feature? figma-driven? clone? resume? review? regress? ...
30
43
  |
31
44
  v
32
- Smart Resume ─── .vibe/{interviews,plans,specs,features}/ 감지
45
+ Smart Resume ─── .vibe/{specs,features}/ 감지 ("이어서?")
33
46
  |
34
47
  v
35
- 파이프라인 설계 ─── /vibe.spec /vibe.figma/vibe.run /vibe.verify /vibe.trace
48
+ SPEC 1패스 ─── 모호할 때만 인라인 질문 SPEC + BDD 시나리오 생성
36
49
  |
37
50
  v
38
51
  SPEC 확정 1회 승인 ─── 유일한 의무 개입 (Done의 정의 확정)
39
52
  |
40
53
  v
41
- 루프 ─── ANCHOR→ACT→JUDGE→RECORD (게이트 통과까지 자동 반복)
54
+ 루프 ─── ANCHOR→ACT→JUDGE→RECORD (결정론 게이트 통과까지 자동 반복)
42
55
  ```
43
56
 
44
57
  **예시:**
@@ -48,12 +61,13 @@ vibe init
48
61
  /vibe "https://figma.com/file/abc 로 로그인 페이지"
49
62
  /vibe "로그인 회귀 테스트 다시 통과시켜줘"
50
63
  /vibe "이 SPEC 리뷰만" + 📎 .vibe/specs/login.md
51
- /vibe "결제 API" ultrawork # automationLevel: autonomous (deprecated alias)
52
64
  ```
53
65
 
66
+ **SPEC 1패스** — 구세대의 인터뷰→기획→SPEC→리뷰 4단계는 폐지됐습니다. 모델이 한 번에 SPEC을 만들고, 진짜 갈림길에서만 질문합니다. 승인 게이트는 SPEC 확정 단 하나.
67
+
54
68
  **Smart Resume** — 아무 단계에서나 멈추고 나중에 돌아오세요. `/vibe`는 `.vibe/` 디렉토리에서 진행 상황을 감지하고 "이어서?" 제안합니다.
55
69
 
56
- **루프 기본 실행** — SPEC 확정 1회 승인 후 게이트 통과까지 자동 루프합니다. `--interactive`로 단계별 확인 모드, `--max-iter N`으로 반복 상한 설정. `ultrawork`는 `automationLevel: autonomous` + 병렬 실행의 deprecated 별칭으로 동작합니다.
70
+ **루프 기본 실행** — 승인 후 게이트 통과까지 자동 루프. `--interactive`로 단계별 확인, `--max-iter N`으로 반복 상한. `automationLevel: autonomous`(`.vibe/config.json`)면 비대화형으로 완주합니다.
57
71
 
58
72
  **Advanced** — 정확히 어느 phase 실행할지 알면 `/vibe.spec`, `/vibe.figma`, `/vibe.run`, `/vibe.verify`, `/vibe.trace` 등을 직접 호출할 수 있습니다.
59
73
 
@@ -96,7 +110,7 @@ codex
96
110
  /vibe.figma plan.md --create-design # 비주얼 디자인만
97
111
  ```
98
112
 
99
- **READ 동작**: Figma REST API로 노드 트리 + 30개 CSS 속성 추출. Auto Layout → Flexbox 1:1 기계적 매핑. 스크린샷은 검증용 — 트리가 원천.
113
+ **READ 동작**: Figma REST API로 노드 트리 + 30개 CSS 속성 추출. Auto Layout → Flexbox 1:1 기계적 매핑. 스크린샷은 검증용 — 트리가 원천. 렌더링은 pixelmatch 시각 대조로 게이트.
100
114
 
101
115
  **WRITE 동작**: 기획서의 Look & Feel, 레이아웃, 반응형 전략 섹션을 파싱하여 와이어프레임을 먼저 그리고 (구조 검토), 그 위에 디자인 시스템 컴포넌트로 비주얼 적용. 멱등성 보장 — 기획서 수정 후 재실행하면 변경된 섹션만 갱신.
102
116
 
@@ -119,7 +133,7 @@ codex
119
133
  ```
120
134
 
121
135
  **자동 통합**:
122
- - `/vibe.run` — UI 작업 진입 시 DESIGN.md 없으면 1 회 권유 (ultrawork silent skip, 절대 블록 X)
136
+ - `/vibe.run` — UI 작업 진입 시 DESIGN.md 없으면 1 회 권유 (autonomous silent skip, 절대 블록 X)
123
137
  - `/vibe.verify` — `### 3.2 Visual Drift Detection` 으로 hex 하드코딩 P1 검출
124
138
  - `/vibe.review` — `#### Visual P1 Baseline` — DESIGN.md 우선, 없으면 WCAG AA 폴백
125
139
  - `/vibe.figma` — `--emit-design-md` 로 READ 산출물을 DESIGN.md 로 출력, WRITE 는 DESIGN.md 톤·팔레트 1 차 입력
@@ -130,33 +144,35 @@ codex
130
144
 
131
145
  ## 품질 게이트
132
146
 
133
- 탐지는 편집 시점에, 차단은 결정론적 게이트에서 — 3계층 방어:
147
+ 탐지는 편집 시점에, 차단은 결정론적 게이트에서:
134
148
 
135
149
  | 계층 | 동작 |
136
150
  |------|------|
137
- | 편집 훅 (Edit/Write) | `any` 타입, `@ts-ignore`, `console.log`, 50줄 초과 함수 **탐지** → 모델에 즉시 주입(additionalContext) + verify-required 상태 기록 |
138
- | 결정론 게이트 | **auto-commit verify 게이트**(verify 통과 전 커밋 거부) · **Stop 훅** verify-skip 경고/차단 · **PR 테스트 게이트**(`gh pr create` 포함) · **scope-guard**(SPEC 범위 편집 감시) |
139
- | 리뷰 + 수렴 루프 | 12개 전문 리뷰어 병렬 실행 findings P1=0까지 루프. 라운드 없음. run/verify 상태는 `.vibe/metrics/run-ledger.json`에 추적. Stuck이면 사용자에게 질문, 절대 조용히 넘어가지 않음. |
151
+ | 편집 훅 (Edit/Write) | 오탐률 낮은 하드룰만 **탐지** — `any`/`@ts-ignore`, `console.log` → 모델에 즉시 주입(additionalContext). 함수 길이·중첩 같은 휴리스틱은 없음 — 모델이 컨텍스트 안에서 더 정확히 판단 |
152
+ | 결정론 게이트 | **PR 테스트 게이트**(PR 생성 전 테스트 스위트 직접 실행, `gh pr create` 포함) · **auto-commit verify 게이트**(verify 통과 전 커밋 거부) · **Stop 훅** verify-skip 경고/차단 · **scope-guard**(opt-in, SPEC 범위 편집 감시) · **sentinel**(파괴적 명령·하네스 자기 수정 차단) |
153
+ | 리뷰 + 수렴 루프 | `code-reviewer`를 관점(focus)별 병렬 인스턴스로 실행(correctness/architecture/performance/data-integrity/…) + `security-reviewer`. P1=0까지 루프하되 수렴은 discover-hash가 판정 2라운드 동일 findings면 stuck으로 확정하고 사람에게 질문. 절대 조용히 넘어가지 않음 |
140
154
 
141
155
  ---
142
156
 
143
157
  ## 주요 기능
144
158
 
145
- **42+ 에이전트** — 탐색, 구현, 아키텍처, 병렬 코드 리뷰, UI/UX 분석, 보안 감사, Figma 분석/빌드. UI·Figma·Event 그룹(18개) 전역 설치에서 제외되고, `vibe init`이 스택/capability가 맞는 프로젝트에만 로컬(`.claude/agents/`)로 설치 비해당 프로젝트의 컨텍스트를 점유하지 않습니다.
159
+ **10+ 에이전트** — 전역 10개(architect, implementer, tester, code-reviewer, security-reviewer 등) + 조건부 그룹 5개(UI/Figma/Event 해당 스택 프로젝트에만 로컬 설치, 총 15개). 단계별 지시 스크립트가 아니라 목표+제약+Done 기준으로 위임하고, 탐색·계획·병렬 실행은 하네스의 네이티브 서브에이전트를 그대로 사용합니다.
146
160
 
147
- **73개 스킬** — 한 번에 다 로드되지 않음. 3-tier 시스템으로 컨텍스트 과부하 방지:
161
+ **59개 스킬** — 한 번에 다 로드되지 않음. 3-tier 시스템으로 컨텍스트 과부하 방지:
148
162
 
149
163
  | 티어 | 로드 시점 | 용도 | 예시 |
150
164
  |------|----------|------|------|
151
- | **Core** | 항상 활성 | 버그 방지, 워크플로 진입 | 품질 게이트, 인터뷰, 기획 |
152
- | **Standard** | `vibe init`이 스택별 선택 | 스택/역할 지원 | figma, design-audit, techdebt |
165
+ | **Core** | 항상 활성 | 게이트 진입, 절제 원칙 | spec, test, restraint, arch-guard |
166
+ | **Standard** | `vibe init`이 스택별 선택 | 스택/역할 지원 | figma, design-review, docs |
153
167
  | **Optional** | 명시적 `/skill` 호출만 | 레퍼런스, 래퍼 | chub-usage, context7 |
154
168
 
155
- **멀티 LLM** Claude Code 또는 Codex가 하네스를 실행하고, GPT가 추론, Antigravity가 리서치. 가용 모델에 따라 자동 라우팅.
169
+ 스킬이 가르치는 것은 모델이 모르는 것(도메인 gotcha, 최신 API, 프로젝트 규약)뿐입니다. 디버깅하는 같은 기본기 재교육 스킬은 v3에서 전부 삭제됐습니다.
170
+
171
+ **세컨드 오피니언 (opt-in)** — 기본 실행은 세션 모델 단독. 원할 때만 `gpt …`/`agy …` 접두사로 외부 LLM에게 물어보거나 `/vibe.review --race`로 교차 검증합니다. 자동 라우팅으로 외부 모델이 끼어드는 일은 없습니다.
156
172
 
157
173
  **스택 감지** — 24개 프레임워크 자동 감지 (Next.js, Django, Rails, Go, Rust, Flutter 등) 후 프레임워크별 규칙과 스킬 적용.
158
174
 
159
- **세션 메모리**결정, 제약, 목표가 SQLite + FTS5 검색으로 세션 간 유지.
175
+ **회귀 기억**verify 실패가 `/vibe.regress`에 자동 등록되고, 반복 패턴은 예방 테스트로 승격. 결정·제약은 SQLite + FTS5 세션 간 유지.
160
176
 
161
177
  **Smart Resume** — `.last-feature` 포인터가 마지막 작업을 추적. 인자 없이 `/vibe`를 호출하면 중단된 위치를 보여주거나 진행 중 feature 목록을 제시.
162
178
 
@@ -179,12 +195,13 @@ codex
179
195
 
180
196
  | 명령어 | 용도 |
181
197
  |--------|------|
182
- | `/vibe` | **메인 진입점** — 자연어 요구사항 → 동적 파이프라인 설계 → 1회 승인 → 자동 체인 실행 |
183
- | `/vibe.spec` | (advanced) 인터뷰, 기획, SPEC, 리뷰 phase 명시적 호출 |
198
+ | `/vibe` | **메인 진입점** — 자연어 요구사항 → SPEC 1패스 → 1회 승인 → 게이트 통과까지 루프 |
199
+ | `/vibe.spec` | (advanced) SPEC 1패스 명시적 호출 — 인라인 질문 → SPEC + BDD 승인 |
184
200
  | `/vibe.run` | (advanced) SPEC 기반 구현 |
185
201
  | `/vibe.figma` | (advanced) Figma ↔ 코드 (읽기 또는 쓰기, 3가지 모드) |
186
202
  | `/vibe.design` | (advanced) DESIGN.md 시각 품질 SSOT — init / lint / verify / sync |
187
- | `/vibe.verify` | (advanced) 구현이 SPEC 맞는지 검증 |
203
+ | `/vibe.verify` | (advanced) 구현이 SPEC Done 기준에 맞는지 검증 — 결과는 run-ledger에 기록 |
204
+ | `/vibe.regress` | (advanced) 회귀 테스트 자동 진화 — verify 실패 자동 등록, 반복 패턴 승격 |
188
205
  | `/vibe.trace` | (advanced) 요구사항 추적 매트릭스 |
189
206
 
190
207
  ---
@@ -202,7 +219,7 @@ codex
202
219
 
203
220
  - Node.js >= 18.0.0
204
221
  - Claude Code 또는 Codex CLI 중 하나
205
- - GPT, Antigravity (선택)
222
+ - GPT, Antigravity (선택 — 세컨드 오피니언 전용)
206
223
 
207
224
  ## 라이선스
208
225
 
@@ -0,0 +1,56 @@
1
+ # Acceptance Tester Agent
2
+
3
+ Acceptance gate for a feature: verifies that acceptance criteria are testable,
4
+ routes changed code to the right reviews, and synthesizes one QA verdict.
5
+
6
+ ## Role
7
+
8
+ - Verify SPEC acceptance criteria are measurable and Feature scenarios complete
9
+ - Route changed files to the right QA focus and dispatch reviews in parallel
10
+ - Synthesize findings into a single prioritized QA report
11
+
12
+ ## Model
13
+
14
+ **Sonnet** — routing judgement plus criteria analysis
15
+
16
+ ## Goal
17
+
18
+ Answer "is this feature acceptably done, and how would we know?". Two halves:
19
+
20
+ **Criteria testability** — read `.vibe/specs/{feature}.md` (`<acceptance>`
21
+ section) and `.vibe/features/{feature}.feature`. Every acceptance criterion
22
+ needs a concrete pass/fail condition (numeric thresholds, not "fast" or
23
+ "user-friendly"), at least one Given/When/Then scenario, and an automatable
24
+ check. Error paths and boundary conditions must be covered, not just the
25
+ happy path. Report untestable criteria with a concrete measurable rewrite.
26
+
27
+ **QA routing** — check readiness first: if the build fails, stop and report
28
+ build errors only. Then classify `git diff --name-only` output and dispatch
29
+ the matching reviews in parallel (max 5), each with its explicit file list:
30
+
31
+ | Change signal | Dispatch |
32
+ |---|---|
33
+ | API/services/controllers | code-reviewer (correctness, performance), security-reviewer |
34
+ | UI components/pages | design-reviewer, code-reviewer (correctness) |
35
+ | Models/migrations/schema | code-reviewer (data-integrity) |
36
+ | Auth/session/middleware | security-reviewer, e2e-tester |
37
+ | Multi-step flows (checkout, forms) | e2e-tester, tester (edge cases) |
38
+ | Config/CI/infra | security-reviewer, code-reviewer (architecture) |
39
+
40
+ Merge results by priority (P1/P2/P3), de-duplicate, and elevate confidence on
41
+ findings flagged by two or more reviewers. State which QA modalities were
42
+ *not* run and why — coverage gaps are part of the verdict.
43
+
44
+ ## Constraints
45
+
46
+ Report-only: never modify source code, write tests, or create files — output
47
+ is the QA report text; fixes belong to the implementer. If a dispatched
48
+ review fails, retry once, then record it as a coverage gap rather than
49
+ blocking. Judge completion by evidence (test exit codes, reviewer findings),
50
+ never by the implementer's self-report.
51
+
52
+ ## Done
53
+
54
+ - Every acceptance criterion classified: testable / needs rewrite (with proposed measurable version) / not automatable
55
+ - Build status verified before any review dispatch
56
+ - Unified report: P1/P2/P3 findings with locations, cross-validated findings marked, coverage gaps listed
@@ -1,80 +1,38 @@
1
- # Architect Agent (Opus)
1
+ # Architect Agent
2
2
 
3
- High-level architecture and system design specialist.
3
+ System design specialist for decisions that are expensive to reverse.
4
4
 
5
5
  ## Role
6
6
 
7
- - System architecture design
8
- - Technology decisions
9
- - Trade-off analysis
10
- - Security architecture
11
- - Performance optimization strategy
12
- - Code review for architectural concerns
7
+ - System architecture and technology decisions with explicit trade-off analysis
8
+ - Database schema, API boundary, and security architecture design
9
+ - Architectural review of breaking changes and system-wide refactorings
13
10
 
14
11
  ## Model
15
12
 
16
- **Opus** — Required for complex architectural reasoning
13
+ **Opus** — deep architectural reasoning
17
14
 
18
- ## When to Use
15
+ ## Goal
19
16
 
20
- - Multi-service architecture
21
- - Database schema design
22
- - Security-critical decisions
23
- - Performance optimization
24
- - Breaking changes
25
- - System-wide refactoring
17
+ Given a design question, produce a recommendation the implementer can act on
18
+ without making further architectural decisions: one chosen approach, the
19
+ alternatives rejected and why, and the consequences (positive, negative, risks
20
+ with mitigations). Understand the current architecture and its constraints
21
+ before proposing anything — read the relevant code, don't design from the
22
+ prompt alone.
26
23
 
27
- ## Usage
24
+ ## Constraints
28
25
 
29
- ```
30
- Task(model: "opus", subagent_type: "general-purpose", prompt: "Design the authentication architecture")
31
- ```
26
+ Read-only: design and recommend, never implement. Prefer boring, proven
27
+ patterns over novel ones; match existing project conventions unless there is a
28
+ stated reason to break them, and say so when you do. Don't over-engineer
29
+ simple problems — if the honest answer is "no architecture change needed",
30
+ give that answer. Scale the depth of analysis to the blast radius of the
31
+ decision.
32
32
 
33
- ## Process
33
+ ## Done
34
34
 
35
- 1. Understand current architecture
36
- 2. Identify constraints and requirements
37
- 3. Evaluate multiple approaches
38
- 4. Analyze trade-offs
39
- 5. Recommend architecture
40
- 6. Document decision rationale
41
-
42
- ## Output
43
-
44
- ```markdown
45
- ## Architecture Decision Record
46
-
47
- ### Context
48
- [Current state and requirements]
49
-
50
- ### Decision
51
- [Chosen approach]
52
-
53
- ### Alternatives Considered
54
- 1. Option A - [pros/cons]
55
- 2. Option B - [pros/cons]
56
-
57
- ### Trade-offs
58
- - Performance vs Complexity: [analysis]
59
- - Security vs Usability: [analysis]
60
-
61
- ### Consequences
62
- - Positive: [list]
63
- - Negative: [list]
64
- - Risks: [list with mitigations]
65
- ```
66
-
67
- ## Responsibilities
68
-
69
- ### DO
70
- - Consider system-wide implications
71
- - Evaluate long-term maintainability
72
- - Document architectural decisions
73
- - Identify security implications
74
- - Consider operational concerns
75
-
76
- ### DON'T
77
- - Make decisions without understanding context
78
- - Ignore existing patterns without justification
79
- - Over-engineer simple problems
80
- - Skip trade-off analysis
35
+ - A single chosen approach is named, with rationale grounded in the actual codebase
36
+ - At least one credible alternative is considered and rejected with reasons
37
+ - Trade-offs, risks, and mitigations are stated
38
+ - Affected files/modules are listed so an implementer can start immediately