@su-record/vibe 2.8.52 → 2.8.53

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 (417) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +169 -169
  3. package/LICENSE +21 -21
  4. package/agents/architect-low.md +41 -41
  5. package/agents/architect-medium.md +59 -59
  6. package/agents/architect.md +80 -80
  7. package/agents/build-error-resolver.md +115 -115
  8. package/agents/compounder.md +261 -261
  9. package/agents/diagrammer.md +178 -178
  10. package/agents/docs/api-documenter.md +99 -99
  11. package/agents/docs/changelog-writer.md +93 -93
  12. package/agents/e2e-tester.md +294 -294
  13. package/agents/event/event-comms.md +78 -78
  14. package/agents/event/event-content.md +68 -68
  15. package/agents/event/event-image.md +95 -95
  16. package/agents/event/event-ops.md +84 -84
  17. package/agents/event/event-scheduler.md +69 -69
  18. package/agents/event/event-speaker.md +86 -86
  19. package/agents/explorer-low.md +42 -42
  20. package/agents/explorer-medium.md +59 -59
  21. package/agents/explorer.md +48 -48
  22. package/agents/implementer-low.md +43 -43
  23. package/agents/implementer-medium.md +52 -52
  24. package/agents/implementer.md +54 -54
  25. package/agents/junior-mentor.md +141 -141
  26. package/agents/planning/requirements-analyst.md +84 -84
  27. package/agents/planning/ux-advisor.md +83 -83
  28. package/agents/qa/acceptance-tester.md +86 -86
  29. package/agents/qa/edge-case-finder.md +93 -93
  30. package/agents/qa/qa-coordinator.md +131 -131
  31. package/agents/refactor-cleaner.md +143 -143
  32. package/agents/research/best-practices-agent.md +199 -199
  33. package/agents/research/codebase-patterns-agent.md +157 -157
  34. package/agents/research/framework-docs-agent.md +188 -188
  35. package/agents/research/security-advisory-agent.md +213 -213
  36. package/agents/review/architecture-reviewer.md +107 -107
  37. package/agents/review/complexity-reviewer.md +116 -116
  38. package/agents/review/data-integrity-reviewer.md +88 -88
  39. package/agents/review/git-history-reviewer.md +103 -103
  40. package/agents/review/performance-reviewer.md +86 -86
  41. package/agents/review/python-reviewer.md +150 -150
  42. package/agents/review/rails-reviewer.md +139 -139
  43. package/agents/review/react-reviewer.md +144 -144
  44. package/agents/review/security-reviewer.md +80 -80
  45. package/agents/review/simplicity-reviewer.md +140 -140
  46. package/agents/review/test-coverage-reviewer.md +116 -116
  47. package/agents/review/typescript-reviewer.md +127 -127
  48. package/agents/searcher.md +54 -54
  49. package/agents/simplifier.md +120 -120
  50. package/agents/tester.md +49 -49
  51. package/agents/ui/ui-a11y-auditor.md +93 -93
  52. package/agents/ui/ui-antipattern-detector.md +102 -102
  53. package/agents/ui/ui-dataviz-advisor.md +69 -69
  54. package/agents/ui/ui-design-system-gen.md +57 -57
  55. package/agents/ui/ui-industry-analyzer.md +49 -49
  56. package/agents/ui/ui-layout-architect.md +65 -65
  57. package/agents/ui/ui-stack-implementer.md +68 -68
  58. package/agents/ui/ux-compliance-reviewer.md +81 -81
  59. package/agents/ui-previewer.md +258 -258
  60. package/commands/vibe.analyze.md +379 -379
  61. package/commands/vibe.docs.md +32 -32
  62. package/commands/vibe.event.md +163 -163
  63. package/commands/vibe.figma.md +69 -69
  64. package/commands/vibe.review.md +686 -686
  65. package/commands/vibe.run.md +2276 -2276
  66. package/commands/vibe.spec.md +1195 -1195
  67. package/commands/vibe.spec.review.md +609 -609
  68. package/commands/vibe.trace.md +259 -259
  69. package/commands/vibe.utils.md +413 -413
  70. package/commands/vibe.verify.md +510 -510
  71. package/dist/cli/collaborator.js +52 -52
  72. package/dist/cli/commands/config.js +9 -9
  73. package/dist/cli/commands/evolution.js +12 -12
  74. package/dist/cli/commands/figma.js +20 -20
  75. package/dist/cli/commands/info.js +53 -53
  76. package/dist/cli/commands/init.js +5 -5
  77. package/dist/cli/commands/remove.js +14 -14
  78. package/dist/cli/commands/sentinel.js +27 -27
  79. package/dist/cli/commands/skills.js +5 -5
  80. package/dist/cli/commands/slack.js +10 -10
  81. package/dist/cli/commands/stats.js +6 -6
  82. package/dist/cli/commands/telegram.js +12 -12
  83. package/dist/cli/detect.js +32 -32
  84. package/dist/cli/index.js +51 -51
  85. package/dist/cli/llm/claude-commands.js +16 -16
  86. package/dist/cli/llm/config.js +18 -18
  87. package/dist/cli/llm/gemini-commands.js +16 -16
  88. package/dist/cli/llm/gpt-commands.js +19 -19
  89. package/dist/cli/llm/help.js +21 -21
  90. package/dist/cli/postinstall/cursor-agents.js +32 -32
  91. package/dist/cli/postinstall/cursor-rules.js +83 -83
  92. package/dist/cli/postinstall/cursor-skills.js +743 -743
  93. package/dist/cli/setup/Provisioner.js +42 -42
  94. package/dist/infra/lib/DeepInit.js +24 -24
  95. package/dist/infra/lib/IterationTracker.js +11 -11
  96. package/dist/infra/lib/PythonParser.js +108 -108
  97. package/dist/infra/lib/ReviewRace.js +96 -96
  98. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  99. package/dist/infra/lib/SkillQualityGate.js +9 -9
  100. package/dist/infra/lib/SkillRepository.js +159 -159
  101. package/dist/infra/lib/TokenBudgetTracker.d.ts +13 -0
  102. package/dist/infra/lib/TokenBudgetTracker.d.ts.map +1 -1
  103. package/dist/infra/lib/TokenBudgetTracker.js +44 -3
  104. package/dist/infra/lib/TokenBudgetTracker.js.map +1 -1
  105. package/dist/infra/lib/UltraQA.js +99 -99
  106. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  107. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  108. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  109. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
  110. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  111. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  112. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  113. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  114. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  115. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  116. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  117. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  118. package/dist/infra/lib/evolution/ParityTester.js +57 -57
  119. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  120. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  121. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  122. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  123. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  124. package/dist/infra/lib/gemini/orchestration.js +5 -5
  125. package/dist/infra/lib/gpt/orchestration.js +4 -4
  126. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  127. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  128. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  129. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  130. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  131. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  132. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  133. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  134. package/dist/infra/orchestrator/AgentManager.js +12 -12
  135. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  136. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  137. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  138. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  139. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  140. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  141. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  142. package/dist/tools/memory/getMemoryGraph.js +12 -12
  143. package/dist/tools/memory/getSessionContext.js +9 -9
  144. package/dist/tools/memory/linkMemories.js +14 -14
  145. package/dist/tools/memory/listMemories.js +4 -4
  146. package/dist/tools/memory/recallMemory.js +4 -4
  147. package/dist/tools/memory/saveMemory.js +4 -4
  148. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  149. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  150. package/dist/tools/semantic/astGrep.test.js +6 -6
  151. package/dist/tools/spec/prdParser.test.js +171 -171
  152. package/dist/tools/spec/specGenerator.js +169 -169
  153. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  154. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  155. package/hooks/gemini-hooks.json +73 -73
  156. package/hooks/hooks.json +174 -174
  157. package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
  158. package/hooks/scripts/__tests__/pre-tool-guard.test.js +286 -286
  159. package/hooks/scripts/__tests__/sentinel-guard.test.js +210 -210
  160. package/hooks/scripts/auto-commit.js +97 -97
  161. package/hooks/scripts/auto-format.js +64 -64
  162. package/hooks/scripts/auto-test.js +81 -81
  163. package/hooks/scripts/code-check.js +268 -268
  164. package/hooks/scripts/codex-detect.js +46 -46
  165. package/hooks/scripts/codex-review-gate.js +80 -80
  166. package/hooks/scripts/command-log.js +32 -32
  167. package/hooks/scripts/context-save.js +353 -353
  168. package/hooks/scripts/evolution-engine.js +91 -91
  169. package/hooks/scripts/figma-extract.js +635 -477
  170. package/hooks/scripts/hud-status.js +321 -321
  171. package/hooks/scripts/keyword-detector.js +214 -214
  172. package/hooks/scripts/llm-orchestrate.js +572 -572
  173. package/hooks/scripts/post-edit.js +32 -32
  174. package/hooks/scripts/pr-test-gate.js +52 -52
  175. package/hooks/scripts/pre-tool-guard.js +214 -159
  176. package/hooks/scripts/prompt-dispatcher.js +185 -185
  177. package/hooks/scripts/sentinel-guard.js +131 -131
  178. package/hooks/scripts/session-start.js +177 -177
  179. package/hooks/scripts/skill-injector.js +83 -83
  180. package/hooks/scripts/stop-notify.js +209 -209
  181. package/hooks/scripts/utils.js +243 -243
  182. package/languages/csharp-unity.md +515 -515
  183. package/languages/gdscript-godot.md +470 -470
  184. package/languages/ruby-rails.md +489 -489
  185. package/languages/typescript-angular.md +433 -433
  186. package/languages/typescript-astro.md +416 -416
  187. package/languages/typescript-electron.md +406 -406
  188. package/languages/typescript-nestjs.md +524 -524
  189. package/languages/typescript-svelte.md +407 -407
  190. package/languages/typescript-tauri.md +365 -365
  191. package/package.json +101 -101
  192. package/skills/agents-md/SKILL.md +121 -121
  193. package/skills/agents-md/rubrics/what-to-keep.md +49 -49
  194. package/skills/agents-md/templates/agents-md.md +36 -36
  195. package/skills/arch-guard/SKILL.md +181 -181
  196. package/skills/arch-guard/agents/detector.md +48 -48
  197. package/skills/arch-guard/agents/reporter.md +48 -48
  198. package/skills/arch-guard/agents/rule-generator.md +49 -49
  199. package/skills/arch-guard/agents/violation-checker.md +51 -51
  200. package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
  201. package/skills/arch-guard/frameworks/solid.md +102 -102
  202. package/skills/arch-guard/scripts/check-boundaries.js +90 -90
  203. package/skills/arch-guard/templates/arch-rules.json +47 -47
  204. package/skills/arch-guard/templates/violation-report.md +53 -53
  205. package/skills/brand-assets/SKILL.md +147 -147
  206. package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
  207. package/skills/brand-assets/templates/brand-guide.md +161 -161
  208. package/skills/capability-loop/SKILL.md +168 -168
  209. package/skills/capability-loop/agents/capability-designer.md +61 -61
  210. package/skills/capability-loop/agents/failure-analyst.md +55 -55
  211. package/skills/capability-loop/agents/implementer.md +50 -50
  212. package/skills/capability-loop/agents/tester.md +53 -53
  213. package/skills/capability-loop/templates/capability-spec.md +118 -118
  214. package/skills/capability-loop/templates/failure-analysis.md +118 -118
  215. package/skills/characterization-test/SKILL.md +207 -207
  216. package/skills/characterization-test/agents/behavior-capturer.md +50 -50
  217. package/skills/characterization-test/agents/coverage-checker.md +54 -54
  218. package/skills/characterization-test/agents/reporter.md +50 -50
  219. package/skills/characterization-test/agents/test-writer.md +49 -49
  220. package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
  221. package/skills/characterization-test/templates/test-template.ts +101 -101
  222. package/skills/chub-usage/SKILL.md +139 -139
  223. package/skills/claude-md-guide/SKILL.md +351 -351
  224. package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
  225. package/skills/claude-md-guide/templates/claude-md.md +54 -54
  226. package/skills/commerce-patterns/SKILL.md +64 -64
  227. package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
  228. package/skills/commerce-patterns/templates/product-schema.md +85 -85
  229. package/skills/commit-push-pr/SKILL.md +77 -77
  230. package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
  231. package/skills/commit-push-pr/agents/message-writer.md +50 -50
  232. package/skills/commit-push-pr/agents/pr-writer.md +58 -58
  233. package/skills/commit-push-pr/agents/reviewer.md +52 -52
  234. package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
  235. package/skills/commit-push-pr/templates/pr-body.md +63 -63
  236. package/skills/context7-usage/SKILL.md +106 -106
  237. package/skills/context7-usage/rubrics/when-to-use.md +50 -50
  238. package/skills/create-prd/SKILL.md +90 -90
  239. package/skills/create-prd/agents/edge-case-finder.md +48 -48
  240. package/skills/create-prd/agents/prioritizer.md +60 -60
  241. package/skills/create-prd/agents/requirements-writer.md +48 -48
  242. package/skills/create-prd/agents/researcher.md +55 -55
  243. package/skills/create-prd/agents/reviewer.md +54 -54
  244. package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
  245. package/skills/create-prd/frameworks/rice-scoring.md +97 -97
  246. package/skills/create-prd/orchestrator.md +70 -70
  247. package/skills/create-prd/rubrics/completeness.md +58 -58
  248. package/skills/create-prd/templates/prd.md +139 -139
  249. package/skills/design-audit/SKILL.md +152 -152
  250. package/skills/design-audit/agents/a11y-auditor.md +43 -43
  251. package/skills/design-audit/agents/performance-auditor.md +46 -46
  252. package/skills/design-audit/agents/responsive-auditor.md +46 -46
  253. package/skills/design-audit/agents/scorer.md +47 -47
  254. package/skills/design-audit/agents/slop-detector.md +47 -47
  255. package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
  256. package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
  257. package/skills/design-audit/orchestrator.md +64 -64
  258. package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
  259. package/skills/design-audit/rubrics/scoring.md +63 -63
  260. package/skills/design-audit/templates/report.md +88 -88
  261. package/skills/design-critique/SKILL.md +139 -139
  262. package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
  263. package/skills/design-critique/templates/critique-report.md +86 -86
  264. package/skills/design-distill/SKILL.md +130 -130
  265. package/skills/design-distill/templates/design-system.md +132 -132
  266. package/skills/design-normalize/SKILL.md +133 -133
  267. package/skills/design-normalize/rubrics/token-naming.md +117 -117
  268. package/skills/design-normalize/templates/token-audit.md +89 -89
  269. package/skills/design-polish/SKILL.md +131 -131
  270. package/skills/design-polish/rubrics/polish-checklist.md +68 -68
  271. package/skills/design-polish/templates/polish-report.md +64 -64
  272. package/skills/design-teach/SKILL.md +182 -182
  273. package/skills/design-teach/rubrics/brand-personality.md +73 -73
  274. package/skills/design-teach/templates/design-context.json +36 -36
  275. package/skills/e2e-commerce/SKILL.md +62 -62
  276. package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
  277. package/skills/event-comms/SKILL.md +162 -162
  278. package/skills/event-comms/templates/email-invite.md +99 -99
  279. package/skills/event-comms/templates/sns-post.md +133 -133
  280. package/skills/event-ops/SKILL.md +198 -198
  281. package/skills/event-ops/rubrics/contingency.md +85 -85
  282. package/skills/event-ops/templates/d-day-checklist.md +65 -65
  283. package/skills/event-planning/SKILL.md +132 -132
  284. package/skills/event-planning/rubrics/timeline.md +70 -70
  285. package/skills/event-planning/templates/event-plan.md +91 -91
  286. package/skills/exec-plan/SKILL.md +149 -149
  287. package/skills/exec-plan/agents/decomposer.md +47 -47
  288. package/skills/exec-plan/agents/dependency-mapper.md +44 -44
  289. package/skills/exec-plan/agents/estimator.md +43 -43
  290. package/skills/exec-plan/agents/validator.md +55 -55
  291. package/skills/exec-plan/orchestrator.md +70 -70
  292. package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
  293. package/skills/exec-plan/templates/plan.md +147 -147
  294. package/skills/git-worktree/SKILL.md +73 -73
  295. package/skills/git-worktree/rubrics/when-to-use.md +55 -55
  296. package/skills/handoff/SKILL.md +110 -110
  297. package/skills/handoff/agents/context-summarizer.md +51 -51
  298. package/skills/handoff/agents/document-writer.md +63 -63
  299. package/skills/handoff/agents/state-collector.md +53 -53
  300. package/skills/handoff/agents/verifier.md +48 -48
  301. package/skills/handoff/rubrics/completeness.md +62 -62
  302. package/skills/handoff/templates/handoff.md +107 -107
  303. package/skills/parallel-research/SKILL.md +89 -89
  304. package/skills/parallel-research/agents/best-practices.md +43 -43
  305. package/skills/parallel-research/agents/codebase-patterns.md +46 -46
  306. package/skills/parallel-research/agents/framework-docs.md +45 -45
  307. package/skills/parallel-research/agents/security-advisory.md +46 -46
  308. package/skills/parallel-research/agents/synthesizer.md +52 -52
  309. package/skills/parallel-research/experts/best-practices.md +50 -50
  310. package/skills/parallel-research/experts/codebase-patterns.md +70 -70
  311. package/skills/parallel-research/experts/framework-docs.md +65 -65
  312. package/skills/parallel-research/experts/security-advisory.md +69 -69
  313. package/skills/parallel-research/orchestrator.md +65 -65
  314. package/skills/parallel-research/templates/synthesis.md +101 -101
  315. package/skills/prioritization-frameworks/SKILL.md +87 -87
  316. package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
  317. package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
  318. package/skills/priority-todos/SKILL.md +64 -64
  319. package/skills/priority-todos/rubrics/prioritization.md +70 -70
  320. package/skills/priority-todos/templates/todo-board.md +59 -59
  321. package/skills/seo-checklist/SKILL.md +58 -58
  322. package/skills/seo-checklist/frameworks/structured-data.md +153 -153
  323. package/skills/seo-checklist/rubrics/content-seo.md +42 -42
  324. package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
  325. package/skills/techdebt/SKILL.md +124 -124
  326. package/skills/techdebt/agents/analyzer.md +50 -50
  327. package/skills/techdebt/agents/fixer.md +41 -41
  328. package/skills/techdebt/agents/reviewer.md +47 -47
  329. package/skills/techdebt/agents/scanner.md +44 -44
  330. package/skills/techdebt/orchestrator.md +70 -70
  331. package/skills/techdebt/rubrics/severity.md +51 -51
  332. package/skills/techdebt/scripts/scan.js +90 -90
  333. package/skills/techdebt/templates/report.md +86 -86
  334. package/skills/tool-fallback/SKILL.md +104 -104
  335. package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
  336. package/skills/typescript-advanced-types/SKILL.md +67 -67
  337. package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
  338. package/skills/ui-ux-pro-max/SKILL.md +236 -236
  339. package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
  340. package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
  341. package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
  342. package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
  343. package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
  344. package/skills/ui-ux-pro-max/reference/typography.md +455 -455
  345. package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
  346. package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
  347. package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
  348. package/skills/user-personas/SKILL.md +75 -75
  349. package/skills/user-personas/rubrics/research-methods.md +56 -56
  350. package/skills/user-personas/templates/persona.md +89 -89
  351. package/skills/vercel-react-best-practices/SKILL.md +60 -60
  352. package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
  353. package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
  354. package/skills/vibe.docs/SKILL.md +171 -171
  355. package/skills/vibe.docs/templates/architecture.md +80 -80
  356. package/skills/vibe.docs/templates/readme.md +84 -84
  357. package/skills/vibe.docs/templates/release-notes.md +74 -74
  358. package/skills/vibe.figma/SKILL.md +215 -982
  359. package/skills/vibe.figma/rubrics/extraction-checklist.md +51 -51
  360. package/skills/vibe.figma/templates/component-index.md +126 -126
  361. package/skills/vibe.figma/templates/figma-handoff.md +100 -100
  362. package/skills/vibe.figma/templates/remapped-tree.md +277 -277
  363. package/skills/vibe.figma.convert/SKILL.md +188 -511
  364. package/skills/vibe.figma.convert/rubrics/conversion-rules.md +129 -113
  365. package/skills/vibe.figma.convert/templates/component.md +140 -140
  366. package/skills/vibe.figma.extract/SKILL.md +179 -300
  367. package/skills/vibe.figma.extract/rubrics/image-rules.md +145 -137
  368. package/skills/video-production/SKILL.md +52 -52
  369. package/skills/video-production/rubrics/quality-checklist.md +58 -58
  370. package/skills/video-production/templates/production-plan.md +104 -104
  371. package/vibe/config.json +29 -29
  372. package/vibe/constitution.md +227 -227
  373. package/vibe/rules/principles/communication-guide.md +98 -98
  374. package/vibe/rules/principles/development-philosophy.md +52 -52
  375. package/vibe/rules/principles/quick-start.md +102 -102
  376. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  377. package/vibe/rules/quality/checklist.md +276 -276
  378. package/vibe/rules/quality/performance.md +236 -236
  379. package/vibe/rules/quality/testing-strategy.md +440 -440
  380. package/vibe/rules/standards/anti-patterns.md +541 -541
  381. package/vibe/rules/standards/code-structure.md +291 -291
  382. package/vibe/rules/standards/complexity-metrics.md +313 -313
  383. package/vibe/rules/standards/git-workflow.md +237 -237
  384. package/vibe/rules/standards/naming-conventions.md +198 -198
  385. package/vibe/rules/standards/security.md +305 -305
  386. package/vibe/rules/writing/document-style.md +74 -74
  387. package/vibe/setup.sh +31 -31
  388. package/vibe/templates/constitution-template.md +252 -252
  389. package/vibe/templates/contract-backend-template.md +526 -526
  390. package/vibe/templates/contract-frontend-template.md +599 -599
  391. package/vibe/templates/feature-template.md +96 -96
  392. package/vibe/templates/spec-template.md +221 -221
  393. package/vibe/ui-ux-data/charts.csv +26 -26
  394. package/vibe/ui-ux-data/colors.csv +97 -97
  395. package/vibe/ui-ux-data/icons.csv +101 -101
  396. package/vibe/ui-ux-data/landing.csv +31 -31
  397. package/vibe/ui-ux-data/products.csv +96 -96
  398. package/vibe/ui-ux-data/react-performance.csv +45 -45
  399. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  400. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  401. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  402. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  403. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  404. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  405. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  406. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  407. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  408. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  409. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  410. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  411. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  412. package/vibe/ui-ux-data/styles.csv +68 -68
  413. package/vibe/ui-ux-data/typography.csv +57 -57
  414. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  415. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  416. package/vibe/ui-ux-data/version.json +31 -31
  417. package/vibe/ui-ux-data/web-interface.csv +31 -31
package/dist/cli/index.js CHANGED
@@ -95,13 +95,13 @@ switch (command) {
95
95
  claudeStatus();
96
96
  break;
97
97
  default:
98
- console.log(`
99
- Claude Commands:
100
- vibe claude key <key> Set Anthropic API key
101
- vibe claude status Check status
102
- vibe claude logout Remove key
103
-
104
- Get key: https://console.anthropic.com/settings/keys
98
+ console.log(`
99
+ Claude Commands:
100
+ vibe claude key <key> Set Anthropic API key
101
+ vibe claude status Check status
102
+ vibe claude logout Remove key
103
+
104
+ Get key: https://console.anthropic.com/settings/keys
105
105
  `);
106
106
  }
107
107
  break;
@@ -128,15 +128,15 @@ Get key: https://console.anthropic.com/settings/keys
128
128
  gptStatus();
129
129
  break;
130
130
  default:
131
- console.log(`
132
- GPT Commands:
133
- vibe gpt key <key> Set OpenAI API key (for embeddings)
134
- vibe gpt status Check status (Codex CLI + API key)
135
- vibe gpt logout Remove API key
136
-
137
- Text generation: codex exec (via Codex CLI)
138
- Embeddings: OpenAI API (requires API key)
139
- Codex auth: codex auth
131
+ console.log(`
132
+ GPT Commands:
133
+ vibe gpt key <key> Set OpenAI API key (for embeddings)
134
+ vibe gpt status Check status (Codex CLI + API key)
135
+ vibe gpt logout Remove API key
136
+
137
+ Text generation: codex exec (via Codex CLI)
138
+ Embeddings: OpenAI API (requires API key)
139
+ Codex auth: codex auth
140
140
  `);
141
141
  }
142
142
  break;
@@ -165,14 +165,14 @@ Codex auth: codex auth
165
165
  geminiStatus();
166
166
  break;
167
167
  default:
168
- console.log(`
169
- Gemini Commands:
170
- vibe gemini key <key> Set API key
171
- vibe gemini status Check status
172
- vibe gemini logout Clear config
173
- vibe gemini remove Remove config
174
-
175
- gemini-cli is auto-detected if installed.
168
+ console.log(`
169
+ Gemini Commands:
170
+ vibe gemini key <key> Set API key
171
+ vibe gemini status Check status
172
+ vibe gemini logout Clear config
173
+ vibe gemini remove Remove config
174
+
175
+ gemini-cli is auto-detected if installed.
176
176
  `);
177
177
  }
178
178
  break;
@@ -185,11 +185,11 @@ gemini-cli is auto-detected if installed.
185
185
  skillsAdd(positionalArgs[2]);
186
186
  break;
187
187
  default:
188
- console.log(`
189
- Skills Commands:
190
- vibe skills add <owner/repo> Install skill from skills.sh
191
-
192
- Example: vibe skills add vercel-labs/skills
188
+ console.log(`
189
+ Skills Commands:
190
+ vibe skills add <owner/repo> Install skill from skills.sh
191
+
192
+ Example: vibe skills add vercel-labs/skills
193
193
  `);
194
194
  }
195
195
  break;
@@ -339,10 +339,10 @@ Example: vibe skills add vercel-labs/skills
339
339
  console.log('');
340
340
  }
341
341
  else {
342
- console.log(`
343
- Env Commands:
344
- vibe env import [path] .env 파일을 ~/.vibe/config.json으로 가져오기
345
- path 생략 시 현재 디렉토리의 .env 사용
342
+ console.log(`
343
+ Env Commands:
344
+ vibe env import [path] .env 파일을 ~/.vibe/config.json으로 가져오기
345
+ path 생략 시 현재 디렉토리의 .env 사용
346
346
  `);
347
347
  }
348
348
  break;
@@ -390,24 +390,24 @@ Env Commands:
390
390
  showHelp();
391
391
  break;
392
392
  default:
393
- console.log(`
394
- ❌ Unknown command: ${command}
395
-
396
- Available commands:
397
- vibe setup 셋업 위자드
398
- vibe upgrade 최신 버전으로 업그레이드
399
- vibe update 프로젝트 설정 업데이트
400
- vibe status 전체 상태 확인
401
- vibe config show 설정 통합 보기
402
- vibe claude <cmd> Claude (key, status, logout)
403
- vibe gpt <cmd> GPT (auth, key, status, logout)
404
- vibe gemini <cmd> Gemini (auth, key, status, logout)
405
-
406
- vibe figma <cmd> Figma (setup, extract, status, logout)
407
- vibe telegram <cmd> Telegram (setup, status) - notification only
408
- vibe slack <cmd> Slack (setup, status) - notification only
409
-
410
- Usage: vibe help
393
+ console.log(`
394
+ ❌ Unknown command: ${command}
395
+
396
+ Available commands:
397
+ vibe setup 셋업 위자드
398
+ vibe upgrade 최신 버전으로 업그레이드
399
+ vibe update 프로젝트 설정 업데이트
400
+ vibe status 전체 상태 확인
401
+ vibe config show 설정 통합 보기
402
+ vibe claude <cmd> Claude (key, status, logout)
403
+ vibe gpt <cmd> GPT (auth, key, status, logout)
404
+ vibe gemini <cmd> Gemini (auth, key, status, logout)
405
+
406
+ vibe figma <cmd> Figma (setup, extract, status, logout)
407
+ vibe telegram <cmd> Telegram (setup, status) - notification only
408
+ vibe slack <cmd> Slack (setup, status) - notification only
409
+
410
+ Usage: vibe help
411
411
  `);
412
412
  process.exit(1);
413
413
  }
@@ -25,14 +25,14 @@ export function claudeStatus() {
25
25
  catch { /* ignore */ }
26
26
  const hasEnvKey = !!process.env.ANTHROPIC_API_KEY;
27
27
  if (!hasFileKey && !hasEnvKey) {
28
- console.log(`
29
- Claude API: ✗ Not configured
30
-
31
- Setup:
32
- vibe claude key <ANTHROPIC_API_KEY>
33
- vibe setup
34
-
35
- Get key: https://console.anthropic.com/settings/keys
28
+ console.log(`
29
+ Claude API: ✗ Not configured
30
+
31
+ Setup:
32
+ vibe claude key <ANTHROPIC_API_KEY>
33
+ vibe setup
34
+
35
+ Get key: https://console.anthropic.com/settings/keys
36
36
  `);
37
37
  return;
38
38
  }
@@ -41,14 +41,14 @@ Get key: https://console.anthropic.com/settings/keys
41
41
  methods.push(`✓ API Key (${maskedKey})`);
42
42
  if (hasEnvKey)
43
43
  methods.push('✓ ANTHROPIC_API_KEY env');
44
- console.log(`
45
- Claude API: ${methods.join(', ')}
46
-
47
- Models: Claude Opus 4.5, Sonnet 4.5, Haiku 4.5
48
- Role: Fallback / Direct API
49
-
50
- Manage:
51
- vibe claude logout Remove key
44
+ console.log(`
45
+ Claude API: ${methods.join(', ')}
46
+
47
+ Models: Claude Opus 4.5, Sonnet 4.5, Haiku 4.5
48
+ Role: Fallback / Direct API
49
+
50
+ Manage:
51
+ vibe claude logout Remove key
52
52
  `);
53
53
  }
54
54
  /**
@@ -38,13 +38,13 @@ export const EXTERNAL_LLMS = {
38
38
  */
39
39
  export function setupExternalLLM(llmType, apiKey) {
40
40
  if (!apiKey) {
41
- console.log(`
42
- API key required.
43
-
44
- Usage:
45
- vibe ${llmType} key <api-key>
46
-
47
- ${llmType === 'gpt' ? 'OpenAI API key: https://platform.openai.com/api-keys' : 'Google API key: https://aistudio.google.com/apikey'}
41
+ console.log(`
42
+ API key required.
43
+
44
+ Usage:
45
+ vibe ${llmType} key <api-key>
46
+
47
+ ${llmType === 'gpt' ? 'OpenAI API key: https://platform.openai.com/api-keys' : 'Google API key: https://aistudio.google.com/apikey'}
48
48
  `);
49
49
  return;
50
50
  }
@@ -79,17 +79,17 @@ ${llmType === 'gpt' ? 'OpenAI API key: https://platform.openai.com/api-keys' : '
79
79
  catch { /* ignore: optional operation */ }
80
80
  }
81
81
  const configJsonPath = path.join(getVibeDir(), 'config.json');
82
- console.log(`
83
- ${llmType.toUpperCase()} API key configured!
84
-
85
- Role: ${llmConfig.description}
86
- Stored: ${configJsonPath}
87
-
88
- ${llmType.toUpperCase()} is called directly via Hooks:
89
- - Auto-called with "${llmType}. query" prefix
90
- - Direct use: import('@su-record/vibe/lib/${llmType}')
91
-
92
- Disable: vibe ${llmType} remove
82
+ console.log(`
83
+ ${llmType.toUpperCase()} API key configured!
84
+
85
+ Role: ${llmConfig.description}
86
+ Stored: ${configJsonPath}
87
+
88
+ ${llmType.toUpperCase()} is called directly via Hooks:
89
+ - Auto-called with "${llmType}. query" prefix
90
+ - Direct use: import('@su-record/vibe/lib/${llmType}')
91
+
92
+ Disable: vibe ${llmType} remove
93
93
  `);
94
94
  }
95
95
  /**
@@ -27,14 +27,14 @@ export function geminiAuthCore() {
27
27
  * Gemini 인증 (CLI 명령어용)
28
28
  */
29
29
  export async function geminiAuth() {
30
- console.log(`
31
- Gemini Authentication
32
-
33
- API Key (Google AI Studio):
34
- vibe gemini key <your-api-key>
35
-
36
- Get your API key from:
37
- https://aistudio.google.com/apikey
30
+ console.log(`
31
+ Gemini Authentication
32
+
33
+ API Key (Google AI Studio):
34
+ vibe gemini key <your-api-key>
35
+
36
+ Get your API key from:
37
+ https://aistudio.google.com/apikey
38
38
  `);
39
39
  const config = readGlobalConfig();
40
40
  const apiKey = config.credentials?.gemini?.apiKey;
@@ -69,14 +69,14 @@ export function geminiStatus() {
69
69
  console.log(lines.join('\n'));
70
70
  return;
71
71
  }
72
- console.log(`
73
- Gemini Status
74
-
75
- No credentials found.
76
-
77
- Set up:
78
- vibe gemini key <your-api-key>
79
- or set GEMINI_API_KEY env var
72
+ console.log(`
73
+ Gemini Status
74
+
75
+ No credentials found.
76
+
77
+ Set up:
78
+ vibe gemini key <your-api-key>
79
+ or set GEMINI_API_KEY env var
80
80
  `);
81
81
  }
82
82
  catch (error) {
@@ -36,25 +36,25 @@ export function gptStatus() {
36
36
  }
37
37
  const modelGpt = config.models?.gpt || 'gpt-5.4 (default)';
38
38
  const modelCodex = config.models?.gptCodex || 'gpt-5.3-codex (default)';
39
- console.log(`
40
- GPT Status
41
-
42
- Codex CLI: ${codexVersion}
43
- Codex Auth: ${codexAuthStatus}
44
- API Key: ${hasApiKey ? 'configured (for embeddings)' : 'not set'}
45
-
46
- Models:
47
- gpt (review): ${modelGpt}
48
- gpt-codex (code review & analysis): ${modelCodex}
49
-
50
- Auth priority: codex-cli (~/.codex/auth.json) > apikey
51
- Stored: ~/.vibe/config.json
52
-
53
- Commands:
54
- vibe gpt key <key> Set OpenAI API key (for embeddings)
55
- vibe gpt status This status
56
- vibe gpt logout Remove API key
57
- codex auth Codex CLI authentication
39
+ console.log(`
40
+ GPT Status
41
+
42
+ Codex CLI: ${codexVersion}
43
+ Codex Auth: ${codexAuthStatus}
44
+ API Key: ${hasApiKey ? 'configured (for embeddings)' : 'not set'}
45
+
46
+ Models:
47
+ gpt (review): ${modelGpt}
48
+ gpt-codex (code review & analysis): ${modelCodex}
49
+
50
+ Auth priority: codex-cli (~/.codex/auth.json) > apikey
51
+ Stored: ~/.vibe/config.json
52
+
53
+ Commands:
54
+ vibe gpt key <key> Set OpenAI API key (for embeddings)
55
+ vibe gpt status This status
56
+ vibe gpt logout Remove API key
57
+ codex auth Codex CLI authentication
58
58
  `);
59
59
  }
60
60
  /**
@@ -5,33 +5,33 @@
5
5
  * Auth help (legacy - now shows new format)
6
6
  */
7
7
  export function showAuthHelp() {
8
- console.log(`
9
- 🔐 LLM Authentication
10
-
11
- GPT Commands:
12
- vibe gpt key <KEY> API key
13
- vibe gpt status Check status
14
- codex auth Codex CLI authentication
15
-
16
- Gemini Commands:
17
- vibe gemini key <KEY> API key
18
- vibe gemini status Check status
19
-
20
- Examples:
21
- codex auth Codex CLI login
22
- vibe gpt key sk-xxx API key setup
8
+ console.log(`
9
+ 🔐 LLM Authentication
10
+
11
+ GPT Commands:
12
+ vibe gpt key <KEY> API key
13
+ vibe gpt status Check status
14
+ codex auth Codex CLI authentication
15
+
16
+ Gemini Commands:
17
+ vibe gemini key <KEY> API key
18
+ vibe gemini status Check status
19
+
20
+ Examples:
21
+ codex auth Codex CLI login
22
+ vibe gpt key sk-xxx API key setup
23
23
  `);
24
24
  }
25
25
  /**
26
26
  * Logout help (legacy - now shows new format)
27
27
  */
28
28
  export function showLogoutHelp() {
29
- console.log(`
30
- 🚪 LLM Logout
31
-
32
- Usage:
33
- vibe gpt logout GPT logout
34
- vibe gemini logout Gemini logout
29
+ console.log(`
30
+ 🚪 LLM Logout
31
+
32
+ Usage:
33
+ vibe gpt logout GPT logout
34
+ vibe gemini logout Gemini logout
35
35
  `);
36
36
  }
37
37
  //# sourceMappingURL=help.js.map
@@ -67,38 +67,38 @@ function convertAgentToCursor(content, filename) {
67
67
  const nextStepsSection = nextAgents
68
68
  .map((a) => `- For ${a.replace('-reviewer', '')} review: "Use ${a}"`)
69
69
  .join('\n');
70
- return `---
71
- name: ${name}
72
- model: ${model}
73
- description: ${description}
74
- ---
75
-
76
- # ${title}
77
-
78
- ## When Invoked
79
-
80
- 1. Run \`git diff\` to see recent changes
81
- 2. Focus on modified files relevant to this review type
82
- 3. Begin review immediately without asking questions
83
-
84
- ## Role
85
-
86
- ${roleLines.map((r) => `- ${r}`).join('\n')}
87
-
88
- ## Checklist
89
-
90
- ${checklist}
91
-
92
- ## Output Format
93
-
94
- ${outputFormat}
95
-
96
- ## Next Steps
97
-
98
- Review complete. Consider these follow-up actions:
99
-
100
- ${nextStepsSection}
101
- - All reviews done: Ready to commit
70
+ return `---
71
+ name: ${name}
72
+ model: ${model}
73
+ description: ${description}
74
+ ---
75
+
76
+ # ${title}
77
+
78
+ ## When Invoked
79
+
80
+ 1. Run \`git diff\` to see recent changes
81
+ 2. Focus on modified files relevant to this review type
82
+ 3. Begin review immediately without asking questions
83
+
84
+ ## Role
85
+
86
+ ${roleLines.map((r) => `- ${r}`).join('\n')}
87
+
88
+ ## Checklist
89
+
90
+ ${checklist}
91
+
92
+ ## Output Format
93
+
94
+ ${outputFormat}
95
+
96
+ ## Next Steps
97
+
98
+ Review complete. Consider these follow-up actions:
99
+
100
+ ${nextStepsSection}
101
+ - All reviews done: Ready to commit
102
102
  `;
103
103
  }
104
104
  /**
@@ -21,13 +21,13 @@ function convertLanguageRuleToCursor(content, filename) {
21
21
  // glob 패턴 가져오기
22
22
  const globs = LANGUAGE_GLOBS[filename] || '**/*';
23
23
  // .mdc frontmatter + 본문
24
- return `---
25
- description: ${description} - complexity limits, type safety, error handling
26
- globs: "${globs}"
27
- alwaysApply: false
28
- ---
29
-
30
- ${normalizedContent}
24
+ return `---
25
+ description: ${description} - complexity limits, type safety, error handling
26
+ globs: "${globs}"
27
+ alwaysApply: false
28
+ ---
29
+
30
+ ${normalizedContent}
31
31
  `;
32
32
  }
33
33
  /**
@@ -104,86 +104,86 @@ export function generateCursorRules(cursorRulesDir, detectedStacks = [], languag
104
104
  const commonRules = [
105
105
  {
106
106
  filename: 'code-quality.mdc',
107
- content: `---
108
- description: General code quality rules for all files
109
- alwaysApply: true
110
- ---
111
-
112
- # Code Quality Rules
113
-
114
- ## Core Principles
115
- - **Modify only requested scope** - Don't touch unrelated code
116
- - **Preserve existing style** - Follow project conventions
117
- - **Keep working code** - No unnecessary refactoring
118
-
119
- ## Forbidden Patterns
120
- - No \`console.log\` in production code (remove after debugging)
121
- - No hardcoded strings/numbers → Extract to constants
122
- - No commented-out code in commits
123
- - No incomplete code without TODO marker
124
-
125
- ## Naming Conventions
126
- - Variables/functions: camelCase
127
- - Classes/types: PascalCase
128
- - Constants: UPPER_SNAKE_CASE
129
- - Files: kebab-case or PascalCase (match project style)
130
-
131
- ## Function Design
132
- - Single responsibility per function
133
- - Max 5 parameters (use object for more)
134
- - Descriptive names (verb + noun)
135
- - Document non-obvious behavior
136
-
137
- ## Complexity Limits
138
- | Metric | Limit |
139
- |--------|-------|
140
- | Function length | ≤30 lines (recommended), ≤50 lines (max) |
141
- | Nesting depth | ≤3 levels |
142
- | Parameters | ≤5 |
143
- | Cyclomatic complexity | ≤10 |
144
-
145
- ## Dependency Management
146
- - Avoid circular dependencies
147
- - Keep loose coupling (depend on interfaces)
148
- - High cohesion (group related functions)
107
+ content: `---
108
+ description: General code quality rules for all files
109
+ alwaysApply: true
110
+ ---
111
+
112
+ # Code Quality Rules
113
+
114
+ ## Core Principles
115
+ - **Modify only requested scope** - Don't touch unrelated code
116
+ - **Preserve existing style** - Follow project conventions
117
+ - **Keep working code** - No unnecessary refactoring
118
+
119
+ ## Forbidden Patterns
120
+ - No \`console.log\` in production code (remove after debugging)
121
+ - No hardcoded strings/numbers → Extract to constants
122
+ - No commented-out code in commits
123
+ - No incomplete code without TODO marker
124
+
125
+ ## Naming Conventions
126
+ - Variables/functions: camelCase
127
+ - Classes/types: PascalCase
128
+ - Constants: UPPER_SNAKE_CASE
129
+ - Files: kebab-case or PascalCase (match project style)
130
+
131
+ ## Function Design
132
+ - Single responsibility per function
133
+ - Max 5 parameters (use object for more)
134
+ - Descriptive names (verb + noun)
135
+ - Document non-obvious behavior
136
+
137
+ ## Complexity Limits
138
+ | Metric | Limit |
139
+ |--------|-------|
140
+ | Function length | ≤30 lines (recommended), ≤50 lines (max) |
141
+ | Nesting depth | ≤3 levels |
142
+ | Parameters | ≤5 |
143
+ | Cyclomatic complexity | ≤10 |
144
+
145
+ ## Dependency Management
146
+ - Avoid circular dependencies
147
+ - Keep loose coupling (depend on interfaces)
148
+ - High cohesion (group related functions)
149
149
  `,
150
150
  },
151
151
  {
152
152
  filename: 'security-checklist.mdc',
153
- content: `---
154
- description: Security checklist for code changes
155
- globs: "**/*.ts,**/*.tsx,**/*.js,**/*.jsx,**/*.py,**/*.go,**/*.rs,**/*.java,**/*.kt,**/*.swift"
156
- alwaysApply: false
157
- ---
158
-
159
- # Security Checklist
160
-
161
- ## Input Validation
162
- - [ ] Validate all user inputs
163
- - [ ] Sanitize data before database queries
164
- - [ ] Use parameterized queries (prevent SQL injection)
165
-
166
- ## Authentication
167
- - [ ] Secure password handling (never store plain text)
168
- - [ ] Session management is secure
169
- - [ ] Tokens have appropriate expiry
170
-
171
- ## Data Protection
172
- - [ ] Sensitive data is encrypted
173
- - [ ] API keys not committed to code
174
- - [ ] Error messages don't leak sensitive info
175
-
176
- ## OWASP Top 10 Awareness
177
- - Injection (SQL, XSS, Command)
178
- - Broken authentication
179
- - Sensitive data exposure
180
- - XML external entities (XXE)
181
- - Broken access control
182
- - Security misconfiguration
183
- - Cross-site scripting (XSS)
184
- - Insecure deserialization
185
- - Using components with known vulnerabilities
186
- - Insufficient logging & monitoring
153
+ content: `---
154
+ description: Security checklist for code changes
155
+ globs: "**/*.ts,**/*.tsx,**/*.js,**/*.jsx,**/*.py,**/*.go,**/*.rs,**/*.java,**/*.kt,**/*.swift"
156
+ alwaysApply: false
157
+ ---
158
+
159
+ # Security Checklist
160
+
161
+ ## Input Validation
162
+ - [ ] Validate all user inputs
163
+ - [ ] Sanitize data before database queries
164
+ - [ ] Use parameterized queries (prevent SQL injection)
165
+
166
+ ## Authentication
167
+ - [ ] Secure password handling (never store plain text)
168
+ - [ ] Session management is secure
169
+ - [ ] Tokens have appropriate expiry
170
+
171
+ ## Data Protection
172
+ - [ ] Sensitive data is encrypted
173
+ - [ ] API keys not committed to code
174
+ - [ ] Error messages don't leak sensitive info
175
+
176
+ ## OWASP Top 10 Awareness
177
+ - Injection (SQL, XSS, Command)
178
+ - Broken authentication
179
+ - Sensitive data exposure
180
+ - XML external entities (XXE)
181
+ - Broken access control
182
+ - Security misconfiguration
183
+ - Cross-site scripting (XSS)
184
+ - Insecure deserialization
185
+ - Using components with known vulnerabilities
186
+ - Insufficient logging & monitoring
187
187
  `,
188
188
  },
189
189
  ];