@vibecheckai/cli 3.4.0 → 3.5.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 (166) hide show
  1. package/bin/registry.js +243 -152
  2. package/bin/runners/cli-utils.js +2 -33
  3. package/bin/runners/context/generators/cursor.js +49 -2
  4. package/bin/runners/lib/agent-firewall/learning/learning-engine.js +849 -0
  5. package/bin/runners/lib/analyzers.js +544 -19
  6. package/bin/runners/lib/audit-logger.js +532 -0
  7. package/bin/runners/lib/authority/authorities/architecture.js +364 -0
  8. package/bin/runners/lib/authority/authorities/compliance.js +341 -0
  9. package/bin/runners/lib/authority/authorities/human.js +343 -0
  10. package/bin/runners/lib/authority/authorities/quality.js +420 -0
  11. package/bin/runners/lib/authority/authorities/security.js +228 -0
  12. package/bin/runners/lib/authority/index.js +293 -0
  13. package/bin/runners/lib/authority-badge.js +425 -425
  14. package/bin/runners/lib/bundle/bundle-intelligence.js +846 -0
  15. package/bin/runners/lib/cli-charts.js +368 -0
  16. package/bin/runners/lib/cli-config-display.js +405 -0
  17. package/bin/runners/lib/cli-demo.js +275 -0
  18. package/bin/runners/lib/cli-errors.js +438 -0
  19. package/bin/runners/lib/cli-help-formatter.js +439 -0
  20. package/bin/runners/lib/cli-interactive-menu.js +509 -0
  21. package/bin/runners/lib/cli-prompts.js +441 -0
  22. package/bin/runners/lib/cli-scan-cards.js +362 -0
  23. package/bin/runners/lib/compliance-reporter.js +710 -0
  24. package/bin/runners/lib/conductor/index.js +671 -0
  25. package/bin/runners/lib/easy/README.md +123 -0
  26. package/bin/runners/lib/easy/index.js +140 -0
  27. package/bin/runners/lib/easy/interactive-wizard.js +788 -0
  28. package/bin/runners/lib/easy/one-click-firewall.js +564 -0
  29. package/bin/runners/lib/easy/zero-config-reality.js +714 -0
  30. package/bin/runners/lib/engines/accessibility-engine.js +218 -18
  31. package/bin/runners/lib/engines/api-consistency-engine.js +335 -30
  32. package/bin/runners/lib/engines/async-patterns-engine.js +444 -0
  33. package/bin/runners/lib/engines/bundle-size-engine.js +433 -0
  34. package/bin/runners/lib/engines/confidence-scoring.js +276 -0
  35. package/bin/runners/lib/engines/context-detection.js +264 -0
  36. package/bin/runners/lib/engines/cross-file-analysis-engine.js +292 -27
  37. package/bin/runners/lib/engines/database-patterns-engine.js +429 -0
  38. package/bin/runners/lib/engines/duplicate-code-engine.js +354 -0
  39. package/bin/runners/lib/engines/empty-catch-engine.js +127 -17
  40. package/bin/runners/lib/engines/env-variables-engine.js +458 -0
  41. package/bin/runners/lib/engines/error-handling-engine.js +437 -0
  42. package/bin/runners/lib/engines/false-positive-prevention.js +630 -0
  43. package/bin/runners/lib/engines/framework-adapters/index.js +607 -0
  44. package/bin/runners/lib/engines/framework-detection.js +508 -0
  45. package/bin/runners/lib/engines/import-order-engine.js +429 -0
  46. package/bin/runners/lib/engines/mock-data-engine.js +53 -10
  47. package/bin/runners/lib/engines/naming-conventions-engine.js +544 -0
  48. package/bin/runners/lib/engines/noise-reduction-engine.js +452 -0
  49. package/bin/runners/lib/engines/orchestrator.js +334 -0
  50. package/bin/runners/lib/engines/performance-issues-engine.js +176 -36
  51. package/bin/runners/lib/engines/react-patterns-engine.js +457 -0
  52. package/bin/runners/lib/engines/security-vulnerabilities-engine.js +382 -54
  53. package/bin/runners/lib/engines/type-aware-engine.js +263 -39
  54. package/bin/runners/lib/engines/vibecheck-engines/index.js +122 -13
  55. package/bin/runners/lib/engines/vibecheck-engines/lib/ai-hallucination-engine.js +806 -0
  56. package/bin/runners/lib/engines/vibecheck-engines/lib/hardcoded-secrets-engine.js +373 -73
  57. package/bin/runners/lib/engines/vibecheck-engines/lib/smart-fix-engine.js +577 -0
  58. package/bin/runners/lib/engines/vibecheck-engines/lib/vibe-score-engine.js +543 -0
  59. package/bin/runners/lib/engines/vibecheck-engines.js +514 -0
  60. package/bin/runners/lib/enhanced-features/index.js +305 -0
  61. package/bin/runners/lib/enhanced-output.js +631 -0
  62. package/bin/runners/lib/enterprise.js +300 -0
  63. package/bin/runners/lib/entitlements-v2.js +103 -11
  64. package/bin/runners/lib/firewall/command-validator.js +351 -0
  65. package/bin/runners/lib/firewall/config.js +341 -0
  66. package/bin/runners/lib/firewall/content-validator.js +519 -0
  67. package/bin/runners/lib/firewall/index.js +101 -0
  68. package/bin/runners/lib/firewall/path-validator.js +256 -0
  69. package/bin/runners/lib/html-proof-report.js +350 -700
  70. package/bin/runners/lib/intelligence/cross-repo-intelligence.js +817 -0
  71. package/bin/runners/lib/mcp-utils.js +425 -0
  72. package/bin/runners/lib/missions/plan.js +46 -6
  73. package/bin/runners/lib/missions/templates.js +232 -0
  74. package/bin/runners/lib/output/index.js +1022 -0
  75. package/bin/runners/lib/policy-engine.js +652 -0
  76. package/bin/runners/lib/polish/autofix/accessibility-fixes.js +333 -0
  77. package/bin/runners/lib/polish/autofix/async-handlers.js +273 -0
  78. package/bin/runners/lib/polish/autofix/dead-code.js +280 -0
  79. package/bin/runners/lib/polish/autofix/imports-optimizer.js +344 -0
  80. package/bin/runners/lib/polish/autofix/index.js +200 -0
  81. package/bin/runners/lib/polish/autofix/remove-consoles.js +209 -0
  82. package/bin/runners/lib/polish/autofix/strengthen-types.js +245 -0
  83. package/bin/runners/lib/polish/backend-checks.js +148 -0
  84. package/bin/runners/lib/polish/documentation-checks.js +111 -0
  85. package/bin/runners/lib/polish/frontend-checks.js +168 -0
  86. package/bin/runners/lib/polish/index.js +71 -0
  87. package/bin/runners/lib/polish/infrastructure-checks.js +131 -0
  88. package/bin/runners/lib/polish/library-detection.js +175 -0
  89. package/bin/runners/lib/polish/performance-checks.js +100 -0
  90. package/bin/runners/lib/polish/security-checks.js +148 -0
  91. package/bin/runners/lib/polish/utils.js +203 -0
  92. package/bin/runners/lib/prompt-builder.js +540 -0
  93. package/bin/runners/lib/proof-certificate.js +634 -0
  94. package/bin/runners/lib/reality/accessibility-audit.js +946 -0
  95. package/bin/runners/lib/reality/api-contract-validator.js +1012 -0
  96. package/bin/runners/lib/reality/chaos-engineering.js +1084 -0
  97. package/bin/runners/lib/reality/performance-tracker.js +1077 -0
  98. package/bin/runners/lib/reality/scenario-generator.js +1404 -0
  99. package/bin/runners/lib/reality/visual-regression.js +852 -0
  100. package/bin/runners/lib/reality-profiler.js +717 -0
  101. package/bin/runners/lib/replay/flight-recorder-viewer.js +1160 -0
  102. package/bin/runners/lib/review/ai-code-review.js +832 -0
  103. package/bin/runners/lib/rules/custom-rule-engine.js +985 -0
  104. package/bin/runners/lib/sbom-generator.js +641 -0
  105. package/bin/runners/lib/scan-output-enhanced.js +512 -0
  106. package/bin/runners/lib/scan-output.js +47 -0
  107. package/bin/runners/lib/security/owasp-scanner.js +939 -0
  108. package/bin/runners/lib/terminal-ui.js +113 -1
  109. package/bin/runners/lib/unified-cli-output.js +603 -430
  110. package/bin/runners/lib/validators/contract-validator.js +283 -0
  111. package/bin/runners/lib/validators/dead-export-detector.js +279 -0
  112. package/bin/runners/lib/validators/dep-audit.js +245 -0
  113. package/bin/runners/lib/validators/env-validator.js +319 -0
  114. package/bin/runners/lib/validators/index.js +120 -0
  115. package/bin/runners/lib/validators/license-checker.js +252 -0
  116. package/bin/runners/lib/validators/route-validator.js +290 -0
  117. package/bin/runners/runAIAgent.js +5 -10
  118. package/bin/runners/runAgent.js +3 -0
  119. package/bin/runners/runApprove.js +1233 -1200
  120. package/bin/runners/runAuth.js +22 -1
  121. package/bin/runners/runAuthority.js +528 -0
  122. package/bin/runners/runCheckpoint.js +4 -24
  123. package/bin/runners/runClassify.js +862 -859
  124. package/bin/runners/runConductor.js +772 -0
  125. package/bin/runners/runContainer.js +366 -0
  126. package/bin/runners/runContext.js +3 -0
  127. package/bin/runners/runDoctor.js +28 -41
  128. package/bin/runners/runEasy.js +410 -0
  129. package/bin/runners/runFirewall.js +3 -0
  130. package/bin/runners/runFirewallHook.js +3 -0
  131. package/bin/runners/runFix.js +76 -66
  132. package/bin/runners/runGuard.js +411 -18
  133. package/bin/runners/runIaC.js +372 -0
  134. package/bin/runners/runInit.js +10 -60
  135. package/bin/runners/runMcp.js +11 -12
  136. package/bin/runners/runPolish.js +240 -64
  137. package/bin/runners/runPromptFirewall.js +5 -12
  138. package/bin/runners/runProve.js +20 -55
  139. package/bin/runners/runReality.js +68 -59
  140. package/bin/runners/runReport.js +31 -5
  141. package/bin/runners/runRuntime.js +5 -8
  142. package/bin/runners/runScan.js +194 -1286
  143. package/bin/runners/runShip.js +695 -47
  144. package/bin/runners/runTruth.js +3 -0
  145. package/bin/runners/runValidate.js +7 -11
  146. package/bin/runners/runVibe.js +791 -0
  147. package/bin/runners/runWatch.js +14 -23
  148. package/bin/vibecheck.js +175 -56
  149. package/mcp-server/index.js +190 -14
  150. package/mcp-server/package.json +1 -1
  151. package/mcp-server/tools-v3.js +397 -64
  152. package/mcp-server/tools.js +495 -0
  153. package/package.json +1 -1
  154. package/bin/runners/lib/engines/vibecheck-engines/lib/ast-cache.js +0 -164
  155. package/bin/runners/lib/engines/vibecheck-engines/lib/code-quality-engine.js +0 -291
  156. package/bin/runners/lib/engines/vibecheck-engines/lib/console-logs-engine.js +0 -83
  157. package/bin/runners/lib/engines/vibecheck-engines/lib/dead-code-engine.js +0 -198
  158. package/bin/runners/lib/engines/vibecheck-engines/lib/deprecated-api-engine.js +0 -275
  159. package/bin/runners/lib/engines/vibecheck-engines/lib/empty-catch-engine.js +0 -167
  160. package/bin/runners/lib/engines/vibecheck-engines/lib/file-filter.js +0 -217
  161. package/bin/runners/lib/engines/vibecheck-engines/lib/mock-data-engine.js +0 -140
  162. package/bin/runners/lib/engines/vibecheck-engines/lib/parallel-processor.js +0 -164
  163. package/bin/runners/lib/engines/vibecheck-engines/lib/performance-issues-engine.js +0 -234
  164. package/bin/runners/lib/engines/vibecheck-engines/lib/type-aware-engine.js +0 -217
  165. package/bin/runners/lib/engines/vibecheck-engines/lib/unsafe-regex-engine.js +0 -78
  166. package/mcp-server/index-v1.js +0 -698
@@ -27,7 +27,12 @@ const ansi = {
27
27
  dim: `${ESC}[2m`,
28
28
  italic: `${ESC}[3m`,
29
29
  underline: `${ESC}[4m`,
30
+ blink: `${ESC}[5m`,
31
+ inverse: `${ESC}[7m`,
32
+ hidden: `${ESC}[8m`,
33
+ strike: `${ESC}[9m`,
30
34
  // Colors
35
+ black: `${ESC}[30m`,
31
36
  red: `${ESC}[31m`,
32
37
  green: `${ESC}[32m`,
33
38
  yellow: `${ESC}[33m`,
@@ -35,22 +40,42 @@ const ansi = {
35
40
  magenta: `${ESC}[35m`,
36
41
  cyan: `${ESC}[36m`,
37
42
  white: `${ESC}[37m`,
43
+ // Bright colors
38
44
  gray: `${ESC}[90m`,
45
+ brightRed: `${ESC}[91m`,
46
+ brightGreen: `${ESC}[92m`,
47
+ brightYellow: `${ESC}[93m`,
48
+ brightBlue: `${ESC}[94m`,
49
+ brightMagenta: `${ESC}[95m`,
50
+ brightCyan: `${ESC}[96m`,
51
+ brightWhite: `${ESC}[97m`,
39
52
  // RGB colors (truecolor support)
40
53
  rgb: (r, g, b) => SUPPORTS_TRUECOLOR ? `${ESC}[38;2;${r};${g};${b}m` : '',
41
54
  bgRgb: (r, g, b) => SUPPORTS_TRUECOLOR ? `${ESC}[48;2;${r};${g};${b}m` : '',
42
55
  // Backgrounds
56
+ bgBlack: `${ESC}[40m`,
43
57
  bgRed: `${ESC}[41m`,
44
58
  bgGreen: `${ESC}[42m`,
45
59
  bgYellow: `${ESC}[43m`,
46
60
  bgBlue: `${ESC}[44m`,
47
61
  bgMagenta: `${ESC}[45m`,
48
62
  bgCyan: `${ESC}[46m`,
49
- // Cursor
63
+ bgWhite: `${ESC}[47m`,
64
+ bgBrightBlack: `${ESC}[100m`,
65
+ // Cursor control
50
66
  hideCursor: `${ESC}[?25l`,
51
67
  showCursor: `${ESC}[?25h`,
52
68
  clearLine: `${ESC}[2K`,
69
+ clearScreen: `${ESC}[2J`,
70
+ clearToEnd: `${ESC}[0J`,
71
+ saveCursor: `${ESC}[s`,
72
+ restoreCursor: `${ESC}[u`,
53
73
  cursorUp: (n = 1) => `${ESC}[${n}A`,
74
+ cursorDown: (n = 1) => `${ESC}[${n}B`,
75
+ cursorRight: (n = 1) => `${ESC}[${n}C`,
76
+ cursorLeft: (n = 1) => `${ESC}[${n}D`,
77
+ cursorTo: (row, col) => `${ESC}[${row};${col}H`,
78
+ cursorHome: `${ESC}[H`,
54
79
  };
55
80
 
56
81
  // Semantic Palette
@@ -69,17 +94,50 @@ const style = {
69
94
  };
70
95
 
71
96
  const icons = {
97
+ // Status
72
98
  success: '✓',
99
+ check: '✓',
73
100
  error: '✗',
101
+ cross: '✗',
74
102
  warning: '⚠',
75
103
  info: 'ℹ',
104
+ // Navigation
76
105
  bullet: '•',
77
106
  pointer: '❯',
78
107
  arrowRight: '→',
108
+ arrow: '→',
109
+ arrowLeft: '←',
110
+ arrowUp: '↑',
111
+ arrowDown: '↓',
112
+ // Shapes
79
113
  line: '─',
80
114
  radioOn: '◉',
81
115
  radioOff: '○',
116
+ star: '★',
117
+ sparkle: '✨',
118
+ // Emoji icons
82
119
  lock: '🔒',
120
+ ship: '🚀',
121
+ rocket: '🚀',
122
+ eye: '👁️',
123
+ brain: '🧠',
124
+ target: '🎯',
125
+ chart: '📊',
126
+ wrench: '🔧',
127
+ gear: '⚙️',
128
+ shield: '🛡️',
129
+ lightning: '⚡',
130
+ fire: '🔥',
131
+ folder: '📁',
132
+ file: '📄',
133
+ search: '🔍',
134
+ book: '📖',
135
+ server: '🖥️',
136
+ // Severity
137
+ critical: '🔴',
138
+ high: '🟠',
139
+ medium: '🟡',
140
+ low: '🔵',
83
141
  };
84
142
 
85
143
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -283,6 +341,27 @@ const colors = {
283
341
  accent: ansi.cyan,
284
342
  muted: ansi.gray,
285
343
  highlight: ansi.white,
344
+ // Extended palette for specific use cases
345
+ shipGreen: ansi.rgb(0, 255, 150),
346
+ warnAmber: ansi.rgb(255, 200, 0),
347
+ blockRed: ansi.rgb(255, 80, 80),
348
+ watching: ansi.rgb(100, 200, 255),
349
+ gradient1: ansi.rgb(150, 100, 255),
350
+ gradient2: ansi.rgb(130, 80, 255),
351
+ gradient3: ansi.rgb(110, 60, 255),
352
+ };
353
+
354
+ // ═══════════════════════════════════════════════════════════════════════════════
355
+ // SHORTHAND 'c' ALIAS (for legacy runner compatibility)
356
+ // ═══════════════════════════════════════════════════════════════════════════════
357
+
358
+ /**
359
+ * Legacy shorthand - prefer using `ansi` directly in new code
360
+ */
361
+ const c = {
362
+ ...ansi,
363
+ // Clear shorthand
364
+ clear: `${ESC}[2J${ESC}[H`,
286
365
  };
287
366
 
288
367
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -325,27 +404,60 @@ class PhaseProgress {
325
404
  stop() { return this; }
326
405
  }
327
406
 
407
+ // ═══════════════════════════════════════════════════════════════════════════════
408
+ // TOP-LEVEL RGB FUNCTIONS (for migration ease)
409
+ // ═══════════════════════════════════════════════════════════════════════════════
410
+
411
+ const rgb = ansi.rgb;
412
+ const bgRgb = ansi.bgRgb;
413
+
328
414
  // ═══════════════════════════════════════════════════════════════════════════════
329
415
  // EXPORTS
330
416
  // ═══════════════════════════════════════════════════════════════════════════════
331
417
 
332
418
  module.exports = {
419
+ // Core constants
333
420
  WIDTH,
421
+ ESC,
422
+ SUPPORTS_TRUECOLOR,
423
+
424
+ // ANSI codes (main export)
334
425
  ansi,
426
+
427
+ // Legacy shorthand alias
428
+ c,
429
+
430
+ // Semantic colors
335
431
  colors,
336
432
  style,
433
+
434
+ // Icons
337
435
  icons,
436
+
437
+ // Box drawing
338
438
  BOX,
439
+
440
+ // RGB functions (top-level)
441
+ rgb,
442
+ bgRgb,
443
+
444
+ // Text utilities
339
445
  padCenter,
340
446
  padRight,
341
447
  truncate,
448
+
449
+ // Components
342
450
  Spinner,
343
451
  PhaseProgress,
452
+
453
+ // Render functions
344
454
  renderProgressBar,
345
455
  renderScreenHeader,
346
456
  renderScreenFooter,
347
457
  renderVerdictTable,
348
458
  renderSection,
349
459
  renderBanner,
460
+
461
+ // Utilities
350
462
  formatDuration,
351
463
  };