@su-record/vibe 2.7.12 → 2.7.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +126 -126
  3. package/LICENSE +21 -21
  4. package/README.md +449 -580
  5. package/agents/architect-low.md +41 -41
  6. package/agents/architect-medium.md +59 -59
  7. package/agents/architect.md +80 -80
  8. package/agents/build-error-resolver.md +115 -115
  9. package/agents/compounder.md +261 -261
  10. package/agents/diagrammer.md +178 -178
  11. package/agents/docs/api-documenter.md +99 -99
  12. package/agents/docs/changelog-writer.md +93 -93
  13. package/agents/e2e-tester.md +294 -266
  14. package/agents/explorer-low.md +42 -42
  15. package/agents/explorer-medium.md +59 -59
  16. package/agents/explorer.md +48 -48
  17. package/agents/implementer-low.md +43 -43
  18. package/agents/implementer-medium.md +52 -52
  19. package/agents/implementer.md +54 -54
  20. package/agents/junior-mentor.md +141 -141
  21. package/agents/planning/requirements-analyst.md +84 -84
  22. package/agents/planning/ux-advisor.md +83 -83
  23. package/agents/qa/acceptance-tester.md +86 -86
  24. package/agents/qa/edge-case-finder.md +93 -93
  25. package/agents/refactor-cleaner.md +143 -143
  26. package/agents/research/best-practices-agent.md +199 -199
  27. package/agents/research/codebase-patterns-agent.md +157 -157
  28. package/agents/research/framework-docs-agent.md +188 -188
  29. package/agents/research/security-advisory-agent.md +213 -213
  30. package/agents/review/architecture-reviewer.md +107 -107
  31. package/agents/review/complexity-reviewer.md +116 -116
  32. package/agents/review/data-integrity-reviewer.md +88 -88
  33. package/agents/review/git-history-reviewer.md +103 -103
  34. package/agents/review/performance-reviewer.md +86 -86
  35. package/agents/review/python-reviewer.md +150 -150
  36. package/agents/review/rails-reviewer.md +139 -139
  37. package/agents/review/react-reviewer.md +144 -144
  38. package/agents/review/security-reviewer.md +80 -80
  39. package/agents/review/simplicity-reviewer.md +140 -140
  40. package/agents/review/test-coverage-reviewer.md +116 -116
  41. package/agents/review/typescript-reviewer.md +127 -127
  42. package/agents/searcher.md +54 -54
  43. package/agents/simplifier.md +120 -120
  44. package/agents/tester.md +49 -49
  45. package/agents/ui/ui-a11y-auditor.md +93 -93
  46. package/agents/ui/ui-antipattern-detector.md +94 -94
  47. package/agents/ui/ui-dataviz-advisor.md +69 -69
  48. package/agents/ui/ui-design-system-gen.md +57 -57
  49. package/agents/ui/ui-industry-analyzer.md +49 -49
  50. package/agents/ui/ui-layout-architect.md +65 -65
  51. package/agents/ui/ui-stack-implementer.md +68 -68
  52. package/agents/ui/ux-compliance-reviewer.md +81 -81
  53. package/agents/ui-previewer.md +258 -260
  54. package/commands/vibe.analyze.md +8 -0
  55. package/commands/vibe.review.md +10 -3
  56. package/commands/vibe.run.md +2078 -2022
  57. package/commands/vibe.spec.md +10 -10
  58. package/commands/vibe.spec.review.md +565 -558
  59. package/commands/vibe.utils.md +413 -413
  60. package/commands/vibe.verify.md +45 -0
  61. package/dist/cli/auth.d.ts.map +1 -1
  62. package/dist/cli/auth.js +1 -7
  63. package/dist/cli/auth.js.map +1 -1
  64. package/dist/cli/collaborator.js +52 -52
  65. package/dist/cli/commands/evolution.js +12 -12
  66. package/dist/cli/commands/info.d.ts.map +1 -1
  67. package/dist/cli/commands/info.js +55 -70
  68. package/dist/cli/commands/info.js.map +1 -1
  69. package/dist/cli/commands/init.d.ts.map +1 -1
  70. package/dist/cli/commands/init.js +6 -7
  71. package/dist/cli/commands/init.js.map +1 -1
  72. package/dist/cli/commands/remove.js +14 -14
  73. package/dist/cli/commands/sentinel.js +27 -27
  74. package/dist/cli/commands/setup.js +1 -1
  75. package/dist/cli/commands/setup.js.map +1 -1
  76. package/dist/cli/commands/skills.js +5 -5
  77. package/dist/cli/commands/slack.js +10 -10
  78. package/dist/cli/commands/telegram.js +12 -12
  79. package/dist/cli/commands/update.d.ts.map +1 -1
  80. package/dist/cli/commands/update.js +3 -4
  81. package/dist/cli/commands/update.js.map +1 -1
  82. package/dist/cli/detect.js +32 -32
  83. package/dist/cli/index.js +51 -55
  84. package/dist/cli/index.js.map +1 -1
  85. package/dist/cli/llm/claude-commands.js +16 -16
  86. package/dist/cli/llm/config.js +20 -20
  87. package/dist/cli/llm/config.js.map +1 -1
  88. package/dist/cli/llm/gemini-commands.d.ts +4 -6
  89. package/dist/cli/llm/gemini-commands.d.ts.map +1 -1
  90. package/dist/cli/llm/gemini-commands.js +52 -322
  91. package/dist/cli/llm/gemini-commands.js.map +1 -1
  92. package/dist/cli/llm/gpt-commands.js +21 -21
  93. package/dist/cli/llm/gpt-commands.js.map +1 -1
  94. package/dist/cli/llm/help.js +21 -21
  95. package/dist/cli/postinstall/constants.js +1 -1
  96. package/dist/cli/postinstall/constants.js.map +1 -1
  97. package/dist/cli/postinstall/cursor-agents.js +32 -32
  98. package/dist/cli/postinstall/cursor-rules.js +83 -83
  99. package/dist/cli/postinstall/cursor-skills.js +743 -743
  100. package/dist/cli/postinstall/inline-skills.js +1 -1
  101. package/dist/cli/postinstall/inline-skills.js.map +1 -1
  102. package/dist/cli/setup/Provisioner.js +42 -42
  103. package/dist/cli/types.d.ts +2 -18
  104. package/dist/cli/types.d.ts.map +1 -1
  105. package/dist/cli/utils.d.ts +0 -9
  106. package/dist/cli/utils.d.ts.map +1 -1
  107. package/dist/cli/utils.js +0 -28
  108. package/dist/cli/utils.js.map +1 -1
  109. package/dist/infra/lib/DeepInit.js +24 -24
  110. package/dist/infra/lib/IterationTracker.js +11 -11
  111. package/dist/infra/lib/PythonParser.js +108 -108
  112. package/dist/infra/lib/ReviewRace.js +96 -96
  113. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  114. package/dist/infra/lib/SkillQualityGate.js +9 -9
  115. package/dist/infra/lib/SkillRepository.js +159 -159
  116. package/dist/infra/lib/UltraQA.js +99 -99
  117. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  118. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  119. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  120. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  121. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  122. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  123. package/dist/infra/lib/config/GlobalConfigManager.d.ts +0 -2
  124. package/dist/infra/lib/config/GlobalConfigManager.d.ts.map +1 -1
  125. package/dist/infra/lib/config/GlobalConfigManager.js +0 -27
  126. package/dist/infra/lib/config/GlobalConfigManager.js.map +1 -1
  127. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  128. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  129. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  130. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  131. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  132. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  133. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  134. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  135. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  136. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  137. package/dist/infra/lib/gemini/auth.d.ts +4 -16
  138. package/dist/infra/lib/gemini/auth.d.ts.map +1 -1
  139. package/dist/infra/lib/gemini/auth.js +10 -405
  140. package/dist/infra/lib/gemini/auth.js.map +1 -1
  141. package/dist/infra/lib/gemini/capabilities.d.ts +4 -8
  142. package/dist/infra/lib/gemini/capabilities.d.ts.map +1 -1
  143. package/dist/infra/lib/gemini/capabilities.js +8 -166
  144. package/dist/infra/lib/gemini/capabilities.js.map +1 -1
  145. package/dist/infra/lib/gemini/chat.d.ts +4 -13
  146. package/dist/infra/lib/gemini/chat.d.ts.map +1 -1
  147. package/dist/infra/lib/gemini/chat.js +10 -323
  148. package/dist/infra/lib/gemini/chat.js.map +1 -1
  149. package/dist/infra/lib/gemini/completion.d.ts +5 -15
  150. package/dist/infra/lib/gemini/completion.d.ts.map +1 -1
  151. package/dist/infra/lib/gemini/completion.js +6 -97
  152. package/dist/infra/lib/gemini/completion.js.map +1 -1
  153. package/dist/infra/lib/gemini/constants.d.ts +2 -31
  154. package/dist/infra/lib/gemini/constants.d.ts.map +1 -1
  155. package/dist/infra/lib/gemini/constants.js +2 -77
  156. package/dist/infra/lib/gemini/constants.js.map +1 -1
  157. package/dist/infra/lib/gemini/index.d.ts +5 -8
  158. package/dist/infra/lib/gemini/index.d.ts.map +1 -1
  159. package/dist/infra/lib/gemini/index.js +4 -7
  160. package/dist/infra/lib/gemini/index.js.map +1 -1
  161. package/dist/infra/lib/gemini/models.d.ts +3 -4
  162. package/dist/infra/lib/gemini/models.d.ts.map +1 -1
  163. package/dist/infra/lib/gemini/models.js +8 -84
  164. package/dist/infra/lib/gemini/models.js.map +1 -1
  165. package/dist/infra/lib/gemini/orchestration.js +5 -5
  166. package/dist/infra/lib/gemini/types.d.ts +16 -44
  167. package/dist/infra/lib/gemini/types.d.ts.map +1 -1
  168. package/dist/infra/lib/gemini/types.js +1 -1
  169. package/dist/infra/lib/gpt/auth.d.ts +2 -5
  170. package/dist/infra/lib/gpt/auth.d.ts.map +1 -1
  171. package/dist/infra/lib/gpt/auth.js +8 -38
  172. package/dist/infra/lib/gpt/auth.js.map +1 -1
  173. package/dist/infra/lib/gpt/chat.d.ts +3 -3
  174. package/dist/infra/lib/gpt/chat.d.ts.map +1 -1
  175. package/dist/infra/lib/gpt/chat.js +37 -53
  176. package/dist/infra/lib/gpt/chat.js.map +1 -1
  177. package/dist/infra/lib/gpt/constants.d.ts +2 -5
  178. package/dist/infra/lib/gpt/constants.d.ts.map +1 -1
  179. package/dist/infra/lib/gpt/constants.js +4 -9
  180. package/dist/infra/lib/gpt/constants.js.map +1 -1
  181. package/dist/infra/lib/gpt/embedding.d.ts +1 -1
  182. package/dist/infra/lib/gpt/embedding.js +3 -3
  183. package/dist/infra/lib/gpt/embedding.js.map +1 -1
  184. package/dist/infra/lib/gpt/oauth.d.ts +6 -39
  185. package/dist/infra/lib/gpt/oauth.d.ts.map +1 -1
  186. package/dist/infra/lib/gpt/oauth.js +8 -340
  187. package/dist/infra/lib/gpt/oauth.js.map +1 -1
  188. package/dist/infra/lib/gpt/orchestration.js +5 -5
  189. package/dist/infra/lib/gpt/orchestration.js.map +1 -1
  190. package/dist/infra/lib/gpt/specializations.d.ts +2 -2
  191. package/dist/infra/lib/gpt/specializations.js +3 -3
  192. package/dist/infra/lib/gpt/specializations.js.map +1 -1
  193. package/dist/infra/lib/gpt/types.d.ts +1 -1
  194. package/dist/infra/lib/gpt/types.d.ts.map +1 -1
  195. package/dist/infra/lib/llm/auth/AuthProfileManager.d.ts +2 -2
  196. package/dist/infra/lib/llm/auth/AuthProfileManager.d.ts.map +1 -1
  197. package/dist/infra/lib/llm/auth/AuthProfileManager.js.map +1 -1
  198. package/dist/infra/lib/llm/auth/AuthProfileManager.test.js +1 -1
  199. package/dist/infra/lib/llm/auth/AuthProfileManager.test.js.map +1 -1
  200. package/dist/infra/lib/llm/auth/TokenRefresher.d.ts +1 -1
  201. package/dist/infra/lib/llm/auth/TokenRefresher.js +1 -1
  202. package/dist/infra/lib/llm/auth/index.d.ts +2 -12
  203. package/dist/infra/lib/llm/auth/index.d.ts.map +1 -1
  204. package/dist/infra/lib/llm/auth/index.js +5 -63
  205. package/dist/infra/lib/llm/auth/index.js.map +1 -1
  206. package/dist/infra/lib/llm/types.d.ts +1 -1
  207. package/dist/infra/lib/llm/types.d.ts.map +1 -1
  208. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  209. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  210. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  211. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  212. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  213. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  214. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  215. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  216. package/dist/infra/orchestrator/AgentManager.js +12 -12
  217. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  218. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  219. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  220. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  221. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  222. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  223. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  224. package/dist/tools/memory/getMemoryGraph.js +12 -12
  225. package/dist/tools/memory/getSessionContext.js +9 -9
  226. package/dist/tools/memory/linkMemories.js +14 -14
  227. package/dist/tools/memory/listMemories.js +4 -4
  228. package/dist/tools/memory/recallMemory.js +4 -4
  229. package/dist/tools/memory/saveMemory.js +4 -4
  230. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  231. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  232. package/dist/tools/semantic/astGrep.test.js +6 -6
  233. package/dist/tools/spec/prdParser.test.js +171 -171
  234. package/dist/tools/spec/specGenerator.js +169 -169
  235. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  236. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  237. package/hooks/gemini-hooks.json +73 -73
  238. package/hooks/hooks.json +137 -137
  239. package/hooks/scripts/code-check.js +70 -70
  240. package/hooks/scripts/context-save.js +212 -212
  241. package/hooks/scripts/hud-status.js +291 -291
  242. package/hooks/scripts/keyword-detector.js +214 -214
  243. package/hooks/scripts/llm-orchestrate.js +475 -646
  244. package/hooks/scripts/post-edit.js +32 -32
  245. package/hooks/scripts/pre-tool-guard.js +125 -125
  246. package/hooks/scripts/prompt-dispatcher.js +185 -185
  247. package/hooks/scripts/sentinel-guard.js +104 -104
  248. package/hooks/scripts/session-start.js +106 -106
  249. package/hooks/scripts/stop-notify.js +209 -209
  250. package/hooks/scripts/utils.js +100 -100
  251. package/languages/csharp-unity.md +515 -515
  252. package/languages/gdscript-godot.md +470 -470
  253. package/languages/ruby-rails.md +489 -489
  254. package/languages/typescript-angular.md +433 -433
  255. package/languages/typescript-astro.md +416 -416
  256. package/languages/typescript-electron.md +406 -406
  257. package/languages/typescript-nestjs.md +524 -524
  258. package/languages/typescript-svelte.md +407 -407
  259. package/languages/typescript-tauri.md +365 -365
  260. package/package.json +121 -121
  261. package/skills/agents-md/SKILL.md +120 -120
  262. package/skills/arch-guard/SKILL.md +180 -180
  263. package/skills/brand-assets/SKILL.md +146 -146
  264. package/skills/capability-loop/SKILL.md +167 -167
  265. package/skills/characterization-test/SKILL.md +206 -206
  266. package/skills/commerce-patterns/SKILL.md +59 -59
  267. package/skills/commit-push-pr/SKILL.md +75 -75
  268. package/skills/context7-usage/SKILL.md +105 -105
  269. package/skills/core-capabilities/SKILL.md +48 -48
  270. package/skills/e2e-commerce/SKILL.md +57 -57
  271. package/skills/exec-plan/SKILL.md +147 -147
  272. package/skills/frontend-design/SKILL.md +73 -73
  273. package/skills/git-worktree/SKILL.md +72 -72
  274. package/skills/handoff/SKILL.md +109 -109
  275. package/skills/parallel-research/SKILL.md +87 -87
  276. package/skills/priority-todos/SKILL.md +63 -63
  277. package/skills/seo-checklist/SKILL.md +57 -57
  278. package/skills/techdebt/SKILL.md +122 -122
  279. package/skills/tool-fallback/SKILL.md +103 -103
  280. package/skills/typescript-advanced-types/SKILL.md +66 -65
  281. package/skills/ui-ux-pro-max/SKILL.md +206 -206
  282. package/skills/vercel-react-best-practices/SKILL.md +59 -59
  283. package/skills/video-production/SKILL.md +51 -51
  284. package/vibe/config.json +29 -29
  285. package/vibe/constitution.md +227 -227
  286. package/vibe/rules/principles/communication-guide.md +98 -98
  287. package/vibe/rules/principles/development-philosophy.md +52 -52
  288. package/vibe/rules/principles/quick-start.md +102 -102
  289. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  290. package/vibe/rules/quality/checklist.md +276 -276
  291. package/vibe/rules/quality/performance.md +236 -236
  292. package/vibe/rules/quality/testing-strategy.md +440 -440
  293. package/vibe/rules/standards/anti-patterns.md +541 -541
  294. package/vibe/rules/standards/code-structure.md +291 -291
  295. package/vibe/rules/standards/complexity-metrics.md +313 -313
  296. package/vibe/rules/standards/git-workflow.md +237 -237
  297. package/vibe/rules/standards/naming-conventions.md +198 -198
  298. package/vibe/rules/standards/security.md +305 -305
  299. package/vibe/rules/writing/document-style.md +74 -74
  300. package/vibe/setup.sh +31 -31
  301. package/vibe/templates/constitution-template.md +252 -252
  302. package/vibe/templates/contract-backend-template.md +526 -526
  303. package/vibe/templates/contract-frontend-template.md +599 -599
  304. package/vibe/templates/feature-template.md +96 -96
  305. package/vibe/templates/spec-template.md +221 -221
  306. package/vibe/ui-ux-data/charts.csv +26 -26
  307. package/vibe/ui-ux-data/colors.csv +97 -97
  308. package/vibe/ui-ux-data/icons.csv +101 -101
  309. package/vibe/ui-ux-data/landing.csv +31 -31
  310. package/vibe/ui-ux-data/products.csv +96 -96
  311. package/vibe/ui-ux-data/react-performance.csv +45 -45
  312. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  313. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  314. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  315. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  316. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  317. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  318. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  319. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  320. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  321. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  322. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  323. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  324. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  325. package/vibe/ui-ux-data/styles.csv +68 -68
  326. package/vibe/ui-ux-data/typography.csv +57 -57
  327. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  328. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  329. package/vibe/ui-ux-data/version.json +31 -31
  330. package/vibe/ui-ux-data/web-interface.csv +31 -31
  331. package/commands/vibe.voice.md +0 -79
package/.env.example CHANGED
@@ -1,37 +1,37 @@
1
- # ─── VIBE Configuration ─────────────────────────────────────────────
2
- #
3
- # All credentials, channels, and model overrides are stored in:
4
- # ~/.vibe/config.json
5
- #
6
- # Use CLI commands to configure:
7
- # vibe setup Interactive setup wizard
8
- # vibe gpt auth GPT OAuth (Plus/Pro)
9
- # vibe gpt key <key> GPT API key
10
- # vibe gemini auth Gemini OAuth
11
- # vibe gemini key <key> Gemini API key
12
- # vibe claude key <key> Claude API key
13
- # vibe telegram setup <token> Telegram bot
14
- # vibe slack setup <bot> <app> Slack bot
15
- # vibe status Check all status
16
- #
17
- # Config structure (~/.vibe/config.json):
18
- # {
19
- # "version": "1",
20
- # "credentials": {
21
- # "gpt": { "apiKey": "sk-..." },
22
- # "gemini": { "apiKey": "AIza..." }
23
- # },
24
- # "channels": {
25
- # "telegram": { "botToken": "123:ABC", "allowedChatIds": ["-100..."] },
26
- # "slack": { "botToken": "xoxb-...", "appToken": "xapp-..." }
27
- # },
28
- # "models": {
29
- # "gpt": "gpt-5.2",
30
- # "gemini": "gemini-3-pro-preview",
31
- # "claudeBackground": "claude-sonnet-4-5"
32
- # }
33
- # }
34
- #
35
- # Environment variables are still supported as fallback:
36
- # OPENAI_API_KEY, GEMINI_API_KEY, GPT_MODEL, etc.
37
- # ────────────────────────────────────────────────────────────────────
1
+ # ─── VIBE Configuration ─────────────────────────────────────────────
2
+ #
3
+ # All credentials, channels, and model overrides are stored in:
4
+ # ~/.vibe/config.json
5
+ #
6
+ # Use CLI commands to configure:
7
+ # vibe setup Interactive setup wizard
8
+ # vibe gpt auth GPT OAuth (Plus/Pro)
9
+ # vibe gpt key <key> GPT API key
10
+ # vibe gemini auth Gemini OAuth
11
+ # vibe gemini key <key> Gemini API key
12
+ # vibe claude key <key> Claude API key
13
+ # vibe telegram setup <token> Telegram bot
14
+ # vibe slack setup <bot> <app> Slack bot
15
+ # vibe status Check all status
16
+ #
17
+ # Config structure (~/.vibe/config.json):
18
+ # {
19
+ # "version": "1",
20
+ # "credentials": {
21
+ # "gpt": { "apiKey": "sk-..." },
22
+ # "gemini": { "apiKey": "AIza..." }
23
+ # },
24
+ # "channels": {
25
+ # "telegram": { "botToken": "123:ABC", "allowedChatIds": ["-100..."] },
26
+ # "slack": { "botToken": "xoxb-...", "appToken": "xapp-..." }
27
+ # },
28
+ # "models": {
29
+ # "gpt": "gpt-5.4",
30
+ # "gemini": "gemini-3.1-pro-preview",
31
+ # "claudeBackground": "claude-sonnet-4-5"
32
+ # }
33
+ # }
34
+ #
35
+ # Environment variables are still supported as fallback:
36
+ # OPENAI_API_KEY, GEMINI_API_KEY, GPT_MODEL, etc.
37
+ # ────────────────────────────────────────────────────────────────────
package/CLAUDE.md CHANGED
@@ -1,126 +1,126 @@
1
- # VIBE
2
-
3
- ## Project Nature
4
-
5
- > **This is the source code for `@su-record/vibe` npm package.**
6
- > Modify files in THIS repository only — never the installed copy (`~/.claude/`, `~/.vibe/`).
7
-
8
- ## Philosophy
9
-
10
- > **vibe = Easy vibe coding + Minimum quality guaranteed**
11
-
12
- - **Easy Vibe Coding** — Fast flow, think collaboratively with AI
13
- - **Minimum Quality Guaranteed** — Type safety, code quality, security — automatic baseline
14
- - **Iterative Reasoning** — Break down problems, ask questions, reason together (don't delegate)
15
-
16
- ## Constraints (Hard Rules)
17
-
18
- ### Code Behavior
19
-
20
- - **Modify only requested scope** — Don't touch unrelated code
21
- - **Preserve existing style** — Follow project conventions
22
- - **Edit existing files, never create new ones** — Fix problems at source
23
- - **Respect user interrupts** — Ctrl+C/Escape = previous task CANCELLED
24
-
25
- ### Complexity Limits
26
-
27
- | Metric | Limit |
28
- |--------|-------|
29
- | Function length | ≤50 lines |
30
- | Nesting depth | ≤3 levels |
31
- | Parameters | ≤5 |
32
- | Cyclomatic complexity | ≤10 |
33
-
34
- ### TypeScript (Enforced by Quality Gate hooks)
35
-
36
- - No `any` — use `unknown` + type guards
37
- - No `as any` — define proper interfaces
38
- - No `@ts-ignore` — fix type issues at root
39
- - Explicit return types on all functions
40
-
41
- ### Forbidden Patterns
42
-
43
- - No `console.log` in commits
44
- - No hardcoded strings/numbers (use constants)
45
- - No commented-out code
46
- - No incomplete code without TODO
47
-
48
- ## Architecture (What's NOT Obvious)
49
-
50
- ### Module System
51
-
52
- - ESM only (`"type": "module"`) — imports need `.js` extension
53
- - TypeScript strict mode → `dist/` via `tsc`
54
- - Build before test: `npm run build && npx vitest run`
55
-
56
- ### Config Locations (Don't Confuse)
57
-
58
- | Path | Purpose |
59
- |------|---------|
60
- | `~/.vibe/config.json` | Global credentials, channels, models (0o600) |
61
- | `.claude/vibe/config.json` | Project stacks, capabilities, details |
62
- | `.claude/settings.local.json` | Project hooks (auto-generated, don't commit) |
63
-
64
- ### Installation Flow
65
-
66
- - `postinstall` → global assets (`~/.claude/agents/`, `~/.claude/skills/`, `~/.claude/commands/`)
67
- - `vibe init` → project setup (detect stacks → config → constitution → rules → hooks → local skills + languages)
68
- - `vibe update` → re-detect stacks, refresh project config (preserves user capabilities)
69
-
70
- ### Key Directories (Where to Find Things)
71
-
72
- | What | Where |
73
- |------|-------|
74
- | CLI commands | `src/cli/commands/` |
75
- | Postinstall modules | `src/cli/postinstall/` |
76
- | Stack detection | `src/cli/detect.ts` |
77
- | Auth (all LLMs) | `src/cli/auth.ts` |
78
- | Setup helpers | `src/cli/setup.ts`, `src/cli/setup/` |
79
- | Hooks scripts | `hooks/scripts/` |
80
- | Agent definitions | `agents/` |
81
- | Skill definitions | `skills/` |
82
- | Language rules | `languages/` |
83
- | SPEC/rule templates | `vibe/rules/`, `vibe/templates/` |
84
- | Infra (daemon, memory, policy) | `src/infra/` |
85
-
86
- ### Gotchas
87
-
88
- - `better-sqlite3` WAL mode — DB module uses synchronous API
89
- - `crypto.timingSafeEqual` requires same-length buffers — check length first
90
- - `STACK_TO_LANGUAGE_FILE`, `STACK_TO_SKILLS`, `CAPABILITY_SKILLS` in `src/cli/postinstall/constants.ts` — single source of truth for stack→asset mapping
91
- - Hook dispatch chain: `prompt-dispatcher.js` → `keyword-detector.js` → `llm-orchestrate.js` (order matters)
92
- - Pre-existing test failures in `prdParser.test.ts` (7) and `traceabilityMatrix.test.ts` (1) — unrelated to current work
93
-
94
- ## Workflow
95
-
96
- ```text
97
- /vibe.spec → /new → /vibe.spec.review → /vibe.run → /vibe.trace → (auto) code review → Done
98
- ```
99
-
100
- | Task Size | Approach |
101
- |-----------|----------|
102
- | 1-2 files | Plan Mode |
103
- | 3+ files | `/vibe.spec` |
104
-
105
- ## Magic Keywords
106
-
107
- | Keyword | Effect |
108
- |---------|--------|
109
- | `ultrawork` / `ulw` | Parallel agents + auto-continue + Ralph Loop |
110
- | `ralph` | Iterate until 100% complete (no scope reduction) |
111
- | `ralplan` | Iterative planning + persistence |
112
- | `verify` | Strict verification mode |
113
- | `quick` | Fast mode, minimal verification |
114
-
115
- ## Context Management
116
-
117
- - **Exploration/Search**: Haiku | **Implementation**: Sonnet | **Architecture**: Opus
118
- - At 70%+ context: `save_memory` → `/new` → `/vibe.utils --continue`
119
-
120
- ## Git Commit Rules
121
-
122
- **Must include:** `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
123
-
124
- **Exclude:** `~/.claude/vibe/rules/`, `~/.claude/commands/`, `~/.claude/agents/`, `~/.claude/skills/`, `.claude/settings.local.json`
125
-
126
- <!-- VIBE:END -->
1
+ # VIBE
2
+
3
+ ## Project Nature
4
+
5
+ > **This is the source code for `@su-record/vibe` npm package.**
6
+ > Modify files in THIS repository only — never the installed copy (`~/.claude/`, `~/.vibe/`).
7
+
8
+ ## Philosophy
9
+
10
+ > **vibe = Easy vibe coding + Minimum quality guaranteed**
11
+
12
+ - **Easy Vibe Coding** — Fast flow, think collaboratively with AI
13
+ - **Minimum Quality Guaranteed** — Type safety, code quality, security — automatic baseline
14
+ - **Iterative Reasoning** — Break down problems, ask questions, reason together (don't delegate)
15
+
16
+ ## Constraints (Hard Rules)
17
+
18
+ ### Code Behavior
19
+
20
+ - **Modify only requested scope** — Don't touch unrelated code
21
+ - **Preserve existing style** — Follow project conventions
22
+ - **Edit existing files, never create new ones** — Fix problems at source
23
+ - **Respect user interrupts** — Ctrl+C/Escape = previous task CANCELLED
24
+
25
+ ### Complexity Limits
26
+
27
+ | Metric | Limit |
28
+ |--------|-------|
29
+ | Function length | ≤50 lines |
30
+ | Nesting depth | ≤3 levels |
31
+ | Parameters | ≤5 |
32
+ | Cyclomatic complexity | ≤10 |
33
+
34
+ ### TypeScript (Enforced by Quality Gate hooks)
35
+
36
+ - No `any` — use `unknown` + type guards
37
+ - No `as any` — define proper interfaces
38
+ - No `@ts-ignore` — fix type issues at root
39
+ - Explicit return types on all functions
40
+
41
+ ### Forbidden Patterns
42
+
43
+ - No `console.log` in commits
44
+ - No hardcoded strings/numbers (use constants)
45
+ - No commented-out code
46
+ - No incomplete code without TODO
47
+
48
+ ## Architecture (What's NOT Obvious)
49
+
50
+ ### Module System
51
+
52
+ - ESM only (`"type": "module"`) — imports need `.js` extension
53
+ - TypeScript strict mode → `dist/` via `tsc`
54
+ - Build before test: `npm run build && npx vitest run`
55
+
56
+ ### Config Locations (Don't Confuse)
57
+
58
+ | Path | Purpose |
59
+ |------|---------|
60
+ | `~/.vibe/config.json` | Global credentials, channels, models (0o600) |
61
+ | `.claude/vibe/config.json` | Project stacks, capabilities, details |
62
+ | `.claude/settings.local.json` | Project hooks (auto-generated, don't commit) |
63
+
64
+ ### Installation Flow
65
+
66
+ - `postinstall` → global assets (`~/.claude/agents/`, `~/.claude/skills/`, `~/.claude/commands/`)
67
+ - `vibe init` → project setup (detect stacks → config → constitution → rules → hooks → local skills + languages)
68
+ - `vibe update` → re-detect stacks, refresh project config (preserves user capabilities)
69
+
70
+ ### Key Directories (Where to Find Things)
71
+
72
+ | What | Where |
73
+ |------|-------|
74
+ | CLI commands | `src/cli/commands/` |
75
+ | Postinstall modules | `src/cli/postinstall/` |
76
+ | Stack detection | `src/cli/detect.ts` |
77
+ | Auth (all LLMs) | `src/cli/auth.ts` |
78
+ | Setup helpers | `src/cli/setup.ts`, `src/cli/setup/` |
79
+ | Hooks scripts | `hooks/scripts/` |
80
+ | Agent definitions | `agents/` |
81
+ | Skill definitions | `skills/` |
82
+ | Language rules | `languages/` |
83
+ | SPEC/rule templates | `vibe/rules/`, `vibe/templates/` |
84
+ | Infra (daemon, memory, policy) | `src/infra/` |
85
+
86
+ ### Gotchas
87
+
88
+ - `better-sqlite3` WAL mode — DB module uses synchronous API
89
+ - `crypto.timingSafeEqual` requires same-length buffers — check length first
90
+ - `STACK_TO_LANGUAGE_FILE`, `STACK_TO_SKILLS`, `CAPABILITY_SKILLS` in `src/cli/postinstall/constants.ts` — single source of truth for stack→asset mapping
91
+ - Hook dispatch chain: `prompt-dispatcher.js` → `keyword-detector.js` → `llm-orchestrate.js` (order matters)
92
+ - Pre-existing test failures in `prdParser.test.ts` (7) and `traceabilityMatrix.test.ts` (1) — unrelated to current work
93
+
94
+ ## Workflow
95
+
96
+ ```text
97
+ /vibe.spec → /new → /vibe.spec.review → /vibe.run → /vibe.trace → (auto) code review → Done
98
+ ```
99
+
100
+ | Task Size | Approach |
101
+ |-----------|----------|
102
+ | 1-2 files | Plan Mode |
103
+ | 3+ files | `/vibe.spec` |
104
+
105
+ ## Magic Keywords
106
+
107
+ | Keyword | Effect |
108
+ |---------|--------|
109
+ | `ultrawork` / `ulw` | Parallel agents + auto-continue + Ralph Loop |
110
+ | `ralph` | Iterate until 100% complete (no scope reduction) |
111
+ | `ralplan` | Iterative planning + persistence |
112
+ | `verify` | Strict verification mode |
113
+ | `quick` | Fast mode, minimal verification |
114
+
115
+ ## Context Management
116
+
117
+ - **Exploration/Search**: Haiku | **Implementation**: Sonnet | **Architecture**: Opus
118
+ - At 70%+ context: `save_memory` → `/new` → `/vibe.utils --continue`
119
+
120
+ ## Git Commit Rules
121
+
122
+ **Must include:** `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
123
+
124
+ **Exclude:** `~/.claude/vibe/rules/`, `~/.claude/commands/`, `~/.claude/agents/`, `~/.claude/skills/`, `.claude/settings.local.json`
125
+
126
+ <!-- VIBE:END -->
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 Su
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Su
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.