@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
@@ -0,0 +1,123 @@
1
+ # Vibecheck Easy Mode
2
+
3
+ **The simplest way to use Vibecheck.** No coding knowledge required.
4
+
5
+ ---
6
+
7
+ ## Getting Started
8
+
9
+ Just run this in your project folder:
10
+
11
+ ```bash
12
+ npx vibecheck
13
+ ```
14
+
15
+ That's it! An interactive wizard will guide you through everything.
16
+
17
+ ---
18
+
19
+ ## Commands
20
+
21
+ ### Test Your App (Reality Mode)
22
+
23
+ ```bash
24
+ npx vibecheck test
25
+ ```
26
+
27
+ This opens your app in a browser and tests it like a real user would:
28
+ - Clicks all the buttons
29
+ - Fills out forms
30
+ - Checks if everything works
31
+ - Creates a report of any issues found
32
+
33
+ **Have a specific URL?**
34
+ ```bash
35
+ npx vibecheck test http://localhost:3000
36
+ ```
37
+
38
+ ---
39
+
40
+ ### Protect Your Code (Firewall)
41
+
42
+ ```bash
43
+ npx vibecheck protect
44
+ ```
45
+
46
+ This sets up automatic protection that:
47
+ - Watches your code as you write it
48
+ - Warns you about security issues
49
+ - Blocks bad code from being committed
50
+ - Learns from your feedback
51
+
52
+ **Turn it off:**
53
+ ```bash
54
+ npx vibecheck protect --off
55
+ ```
56
+
57
+ ---
58
+
59
+ ### Check Status
60
+
61
+ ```bash
62
+ npx vibecheck status
63
+ ```
64
+
65
+ See what's currently enabled.
66
+
67
+ ---
68
+
69
+ ## What Gets Detected?
70
+
71
+ ### Security Issues
72
+ - Passwords in your code (should be in environment variables)
73
+ - SQL injection vulnerabilities
74
+ - Cross-site scripting (XSS) risks
75
+
76
+ ### Quality Issues
77
+ - Fake/mock data that shouldn't be in production
78
+ - `console.log` statements (debugging leftovers)
79
+ - TODO comments that need attention
80
+
81
+ ### Suggestions
82
+ - Missing error handling
83
+ - TypeScript `any` types
84
+ - Magic numbers (unexplained constants)
85
+
86
+ ---
87
+
88
+ ## Reports
89
+
90
+ After testing, find your report at:
91
+ ```
92
+ vibecheck-report.html
93
+ ```
94
+
95
+ Just open it in your browser to see the full results.
96
+
97
+ ---
98
+
99
+ ## Need Help?
100
+
101
+ - Run `npx vibecheck help` for more options
102
+ - Visit [vibecheck.dev/docs](https://vibecheck.dev/docs)
103
+ - Email support@vibecheck.dev
104
+
105
+ ---
106
+
107
+ ## Modes
108
+
109
+ | Mode | Description |
110
+ |------|-------------|
111
+ | `protect` | Block critical issues, warn about others (default) |
112
+ | `monitor` | Only warn, don't block anything |
113
+ | `strict` | Block everything, including suggestions |
114
+
115
+ Set mode when enabling:
116
+ ```bash
117
+ npx vibecheck protect --strict
118
+ npx vibecheck protect --monitor
119
+ ```
120
+
121
+ ---
122
+
123
+ Made with ♥ by the Vibecheck team
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Easy Mode - Unified Export
3
+ *
4
+ * ═══════════════════════════════════════════════════════════════════════════════
5
+ * EVERYTHING YOU NEED FOR ZERO-FRICTION VIBECHECK
6
+ * ═══════════════════════════════════════════════════════════════════════════════
7
+ *
8
+ * This module exports all the easy-to-use components:
9
+ *
10
+ * 1. Interactive Wizard - Guided setup for new users
11
+ * 2. Zero-Config Reality - One command to test your app
12
+ * 3. One-Click Firewall - Instant protection
13
+ */
14
+
15
+ "use strict";
16
+
17
+ // Interactive Wizard
18
+ const {
19
+ Wizard,
20
+ showWelcomeBanner,
21
+ colors,
22
+ icons
23
+ } = require("./interactive-wizard");
24
+
25
+ // Zero-Config Reality Mode
26
+ const {
27
+ ZeroConfigReality,
28
+ ProjectDetector,
29
+ ServerManager,
30
+ SimpleOutput
31
+ } = require("./zero-config-reality");
32
+
33
+ // One-Click Firewall
34
+ const {
35
+ OneClickFirewall,
36
+ quickCheck,
37
+ DEFAULT_FIREWALL_CONFIG
38
+ } = require("./one-click-firewall");
39
+
40
+ // ═══════════════════════════════════════════════════════════════════════════════
41
+ // SUPER SIMPLE API
42
+ // ═══════════════════════════════════════════════════════════════════════════════
43
+
44
+ /**
45
+ * Start the interactive wizard
46
+ * @example
47
+ * const { startWizard } = require('vibecheck/easy');
48
+ * startWizard();
49
+ */
50
+ async function startWizard() {
51
+ const wizard = new Wizard();
52
+ return wizard.start();
53
+ }
54
+
55
+ /**
56
+ * Test your app with zero configuration
57
+ * @param {string} [url] - Optional URL to test (auto-detects if not provided)
58
+ * @example
59
+ * const { testApp } = require('vibecheck/easy');
60
+ * testApp(); // Auto-detects your app
61
+ * testApp('http://localhost:3000'); // Test specific URL
62
+ */
63
+ async function testApp(url) {
64
+ const reality = new ZeroConfigReality({ url });
65
+ return reality.run();
66
+ }
67
+
68
+ /**
69
+ * Enable firewall protection with one line
70
+ * @param {Object} [options] - Configuration options
71
+ * @param {string} [options.mode='protect'] - 'monitor' | 'protect' | 'strict'
72
+ * @example
73
+ * const { enableProtection } = require('vibecheck/easy');
74
+ * enableProtection(); // Enable with defaults
75
+ * enableProtection({ mode: 'strict' }); // Enable strict mode
76
+ */
77
+ async function enableProtection(options = {}) {
78
+ const firewall = new OneClickFirewall(options);
79
+ return firewall.enable();
80
+ }
81
+
82
+ /**
83
+ * Disable firewall protection
84
+ * @example
85
+ * const { disableProtection } = require('vibecheck/easy');
86
+ * disableProtection();
87
+ */
88
+ async function disableProtection() {
89
+ const firewall = new OneClickFirewall();
90
+ return firewall.disable();
91
+ }
92
+
93
+ /**
94
+ * Get current status
95
+ * @example
96
+ * const { getStatus } = require('vibecheck/easy');
97
+ * const status = await getStatus();
98
+ */
99
+ async function getStatus() {
100
+ const firewall = new OneClickFirewall({ quiet: true });
101
+ return firewall.status();
102
+ }
103
+
104
+ /**
105
+ * Quick check files (used by git hooks)
106
+ * @param {Object} options
107
+ * @param {boolean} options.staged - Check only staged files
108
+ */
109
+ async function checkFiles(options = {}) {
110
+ return quickCheck(options);
111
+ }
112
+
113
+ // ═══════════════════════════════════════════════════════════════════════════════
114
+ // EXPORTS
115
+ // ═══════════════════════════════════════════════════════════════════════════════
116
+
117
+ module.exports = {
118
+ // Super simple API
119
+ startWizard,
120
+ testApp,
121
+ enableProtection,
122
+ disableProtection,
123
+ getStatus,
124
+ checkFiles,
125
+
126
+ // Classes (for advanced usage)
127
+ Wizard,
128
+ ZeroConfigReality,
129
+ OneClickFirewall,
130
+ ProjectDetector,
131
+ ServerManager,
132
+ SimpleOutput,
133
+
134
+ // Utilities
135
+ colors,
136
+ icons,
137
+ showWelcomeBanner,
138
+ quickCheck,
139
+ DEFAULT_FIREWALL_CONFIG
140
+ };