vibecheck-ai 2.0.1 → 5.0.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 (456) hide show
  1. package/bin/.generated +25 -0
  2. package/bin/_deprecations.js +463 -0
  3. package/bin/_router.js +46 -0
  4. package/bin/cli-hygiene.js +241 -0
  5. package/bin/dev/run-v2-torture.js +30 -0
  6. package/bin/registry.js +656 -0
  7. package/bin/runners/CLI_REFACTOR_SUMMARY.md +229 -0
  8. package/bin/runners/ENHANCEMENT_GUIDE.md +121 -0
  9. package/bin/runners/REPORT_AUDIT.md +64 -0
  10. package/bin/runners/cli-utils.js +1070 -0
  11. package/bin/runners/context/ai-task-decomposer.js +337 -0
  12. package/bin/runners/context/analyzer.js +513 -0
  13. package/bin/runners/context/api-contracts.js +427 -0
  14. package/bin/runners/context/context-diff.js +342 -0
  15. package/bin/runners/context/context-pruner.js +291 -0
  16. package/bin/runners/context/dependency-graph.js +414 -0
  17. package/bin/runners/context/generators/claude.js +107 -0
  18. package/bin/runners/context/generators/codex.js +108 -0
  19. package/bin/runners/context/generators/copilot.js +119 -0
  20. package/bin/runners/context/generators/cursor-enhanced.js +2525 -0
  21. package/bin/runners/context/generators/cursor.js +514 -0
  22. package/bin/runners/context/generators/mcp.js +169 -0
  23. package/bin/runners/context/generators/windsurf.js +180 -0
  24. package/bin/runners/context/git-context.js +304 -0
  25. package/bin/runners/context/index.js +1110 -0
  26. package/bin/runners/context/insights.js +173 -0
  27. package/bin/runners/context/mcp-server/generate-rules.js +337 -0
  28. package/bin/runners/context/mcp-server/index.js +1176 -0
  29. package/bin/runners/context/mcp-server/package.json +24 -0
  30. package/bin/runners/context/memory.js +200 -0
  31. package/bin/runners/context/monorepo.js +215 -0
  32. package/bin/runners/context/multi-repo-federation.js +404 -0
  33. package/bin/runners/context/patterns.js +253 -0
  34. package/bin/runners/context/proof-context.js +1264 -0
  35. package/bin/runners/context/security-scanner.js +541 -0
  36. package/bin/runners/context/semantic-search.js +350 -0
  37. package/bin/runners/context/shared.js +264 -0
  38. package/bin/runners/context/team-conventions.js +336 -0
  39. package/bin/runners/lib/__tests__/entitlements-v2.test.js +295 -0
  40. package/bin/runners/lib/agent-firewall/ai/false-positive-analyzer.js +474 -0
  41. package/bin/runners/lib/agent-firewall/change-packet/builder.js +488 -0
  42. package/bin/runners/lib/agent-firewall/change-packet/schema.json +228 -0
  43. package/bin/runners/lib/agent-firewall/change-packet/store.js +200 -0
  44. package/bin/runners/lib/agent-firewall/claims/claim-types.js +21 -0
  45. package/bin/runners/lib/agent-firewall/claims/extractor.js +303 -0
  46. package/bin/runners/lib/agent-firewall/claims/patterns.js +24 -0
  47. package/bin/runners/lib/agent-firewall/critic/index.js +151 -0
  48. package/bin/runners/lib/agent-firewall/critic/judge.js +432 -0
  49. package/bin/runners/lib/agent-firewall/critic/prompts.js +305 -0
  50. package/bin/runners/lib/agent-firewall/enforcement/gateway.js +1059 -0
  51. package/bin/runners/lib/agent-firewall/enforcement/index.js +98 -0
  52. package/bin/runners/lib/agent-firewall/enforcement/mode.js +318 -0
  53. package/bin/runners/lib/agent-firewall/enforcement/orchestrator.js +484 -0
  54. package/bin/runners/lib/agent-firewall/enforcement/proof-artifact.js +418 -0
  55. package/bin/runners/lib/agent-firewall/enforcement/schemas/change-event.schema.json +173 -0
  56. package/bin/runners/lib/agent-firewall/enforcement/schemas/intent.schema.json +181 -0
  57. package/bin/runners/lib/agent-firewall/enforcement/schemas/verdict.schema.json +222 -0
  58. package/bin/runners/lib/agent-firewall/enforcement/verdict-v2.js +333 -0
  59. package/bin/runners/lib/agent-firewall/evidence/auth-evidence.js +88 -0
  60. package/bin/runners/lib/agent-firewall/evidence/contract-evidence.js +75 -0
  61. package/bin/runners/lib/agent-firewall/evidence/env-evidence.js +127 -0
  62. package/bin/runners/lib/agent-firewall/evidence/resolver.js +102 -0
  63. package/bin/runners/lib/agent-firewall/evidence/route-evidence.js +213 -0
  64. package/bin/runners/lib/agent-firewall/evidence/side-effect-evidence.js +145 -0
  65. package/bin/runners/lib/agent-firewall/fs-hook/daemon.js +19 -0
  66. package/bin/runners/lib/agent-firewall/fs-hook/installer.js +87 -0
  67. package/bin/runners/lib/agent-firewall/fs-hook/watcher.js +184 -0
  68. package/bin/runners/lib/agent-firewall/git-hook/pre-commit.js +163 -0
  69. package/bin/runners/lib/agent-firewall/ide-extension/cursor.js +107 -0
  70. package/bin/runners/lib/agent-firewall/ide-extension/vscode.js +68 -0
  71. package/bin/runners/lib/agent-firewall/ide-extension/windsurf.js +66 -0
  72. package/bin/runners/lib/agent-firewall/index.js +200 -0
  73. package/bin/runners/lib/agent-firewall/integration/index.js +20 -0
  74. package/bin/runners/lib/agent-firewall/integration/ship-gate.js +437 -0
  75. package/bin/runners/lib/agent-firewall/intent/alignment-engine.js +634 -0
  76. package/bin/runners/lib/agent-firewall/intent/auto-detect.js +426 -0
  77. package/bin/runners/lib/agent-firewall/intent/index.js +102 -0
  78. package/bin/runners/lib/agent-firewall/intent/schema.js +352 -0
  79. package/bin/runners/lib/agent-firewall/intent/store.js +283 -0
  80. package/bin/runners/lib/agent-firewall/interception/fs-interceptor.js +502 -0
  81. package/bin/runners/lib/agent-firewall/interception/index.js +23 -0
  82. package/bin/runners/lib/agent-firewall/interceptor/base.js +308 -0
  83. package/bin/runners/lib/agent-firewall/interceptor/cursor.js +35 -0
  84. package/bin/runners/lib/agent-firewall/interceptor/vscode.js +35 -0
  85. package/bin/runners/lib/agent-firewall/interceptor/windsurf.js +34 -0
  86. package/bin/runners/lib/agent-firewall/lawbook/distributor.js +465 -0
  87. package/bin/runners/lib/agent-firewall/lawbook/evaluator.js +604 -0
  88. package/bin/runners/lib/agent-firewall/lawbook/index.js +304 -0
  89. package/bin/runners/lib/agent-firewall/lawbook/registry.js +514 -0
  90. package/bin/runners/lib/agent-firewall/lawbook/schema.js +420 -0
  91. package/bin/runners/lib/agent-firewall/logger.js +141 -0
  92. package/bin/runners/lib/agent-firewall/policy/default-policy.json +90 -0
  93. package/bin/runners/lib/agent-firewall/policy/engine.js +103 -0
  94. package/bin/runners/lib/agent-firewall/policy/loader.js +451 -0
  95. package/bin/runners/lib/agent-firewall/policy/rules/auth-drift.js +50 -0
  96. package/bin/runners/lib/agent-firewall/policy/rules/contract-drift.js +50 -0
  97. package/bin/runners/lib/agent-firewall/policy/rules/fake-success.js +79 -0
  98. package/bin/runners/lib/agent-firewall/policy/rules/ghost-env.js +227 -0
  99. package/bin/runners/lib/agent-firewall/policy/rules/ghost-route.js +191 -0
  100. package/bin/runners/lib/agent-firewall/policy/rules/scope.js +93 -0
  101. package/bin/runners/lib/agent-firewall/policy/rules/unsafe-side-effect.js +57 -0
  102. package/bin/runners/lib/agent-firewall/policy/schema.json +183 -0
  103. package/bin/runners/lib/agent-firewall/policy/verdict.js +54 -0
  104. package/bin/runners/lib/agent-firewall/proposal/extractor.js +394 -0
  105. package/bin/runners/lib/agent-firewall/proposal/index.js +212 -0
  106. package/bin/runners/lib/agent-firewall/proposal/schema.js +251 -0
  107. package/bin/runners/lib/agent-firewall/proposal/validator.js +386 -0
  108. package/bin/runners/lib/agent-firewall/reality/index.js +332 -0
  109. package/bin/runners/lib/agent-firewall/reality/state.js +625 -0
  110. package/bin/runners/lib/agent-firewall/reality/watcher.js +322 -0
  111. package/bin/runners/lib/agent-firewall/risk/index.js +173 -0
  112. package/bin/runners/lib/agent-firewall/risk/scorer.js +328 -0
  113. package/bin/runners/lib/agent-firewall/risk/thresholds.js +322 -0
  114. package/bin/runners/lib/agent-firewall/risk/vectors.js +421 -0
  115. package/bin/runners/lib/agent-firewall/session/collector.js +451 -0
  116. package/bin/runners/lib/agent-firewall/session/index.js +26 -0
  117. package/bin/runners/lib/agent-firewall/simulator/diff-simulator.js +472 -0
  118. package/bin/runners/lib/agent-firewall/simulator/import-resolver.js +346 -0
  119. package/bin/runners/lib/agent-firewall/simulator/index.js +181 -0
  120. package/bin/runners/lib/agent-firewall/simulator/route-validator.js +380 -0
  121. package/bin/runners/lib/agent-firewall/time-machine/incident-correlator.js +661 -0
  122. package/bin/runners/lib/agent-firewall/time-machine/index.js +267 -0
  123. package/bin/runners/lib/agent-firewall/time-machine/replay-engine.js +436 -0
  124. package/bin/runners/lib/agent-firewall/time-machine/state-reconstructor.js +490 -0
  125. package/bin/runners/lib/agent-firewall/time-machine/timeline-builder.js +530 -0
  126. package/bin/runners/lib/agent-firewall/truthpack/index.js +67 -0
  127. package/bin/runners/lib/agent-firewall/truthpack/loader.js +137 -0
  128. package/bin/runners/lib/agent-firewall/unblock/planner.js +337 -0
  129. package/bin/runners/lib/agent-firewall/utils/ignore-checker.js +118 -0
  130. package/bin/runners/lib/ai-bridge.js +416 -0
  131. package/bin/runners/lib/analysis-core.js +309 -0
  132. package/bin/runners/lib/analyzers.js +2500 -0
  133. package/bin/runners/lib/api-client.js +269 -0
  134. package/bin/runners/lib/approve-output.js +235 -0
  135. package/bin/runners/lib/artifact-envelope.js +540 -0
  136. package/bin/runners/lib/assets/vibecheck-logo.png +0 -0
  137. package/bin/runners/lib/audit-bridge.js +391 -0
  138. package/bin/runners/lib/auth-shared.js +977 -0
  139. package/bin/runners/lib/auth-truth.js +193 -0
  140. package/bin/runners/lib/auth.js +215 -0
  141. package/bin/runners/lib/authority-badge.js +425 -0
  142. package/bin/runners/lib/backup.js +62 -0
  143. package/bin/runners/lib/billing.js +107 -0
  144. package/bin/runners/lib/checkpoint.js +941 -0
  145. package/bin/runners/lib/claims.js +118 -0
  146. package/bin/runners/lib/classify-output.js +204 -0
  147. package/bin/runners/lib/cleanup/engine.js +571 -0
  148. package/bin/runners/lib/cleanup/index.js +53 -0
  149. package/bin/runners/lib/cleanup/output.js +375 -0
  150. package/bin/runners/lib/cleanup/rules.js +1060 -0
  151. package/bin/runners/lib/cli-output.js +400 -0
  152. package/bin/runners/lib/cli-ui.js +540 -0
  153. package/bin/runners/lib/compliance-bridge-new.js +0 -0
  154. package/bin/runners/lib/compliance-bridge.js +165 -0
  155. package/bin/runners/lib/contracts/auth-contract.js +202 -0
  156. package/bin/runners/lib/contracts/env-contract.js +181 -0
  157. package/bin/runners/lib/contracts/external-contract.js +206 -0
  158. package/bin/runners/lib/contracts/guard.js +168 -0
  159. package/bin/runners/lib/contracts/index.js +89 -0
  160. package/bin/runners/lib/contracts/plan-validator.js +311 -0
  161. package/bin/runners/lib/contracts/route-contract.js +199 -0
  162. package/bin/runners/lib/contracts.js +804 -0
  163. package/bin/runners/lib/default-config.js +127 -0
  164. package/bin/runners/lib/detect.js +89 -0
  165. package/bin/runners/lib/detectors-v2.js +622 -0
  166. package/bin/runners/lib/doctor/autofix.js +254 -0
  167. package/bin/runners/lib/doctor/diagnosis-receipt.js +454 -0
  168. package/bin/runners/lib/doctor/failure-signatures.js +526 -0
  169. package/bin/runners/lib/doctor/fix-script.js +336 -0
  170. package/bin/runners/lib/doctor/index.js +37 -0
  171. package/bin/runners/lib/doctor/modules/build-tools.js +453 -0
  172. package/bin/runners/lib/doctor/modules/dependencies.js +325 -0
  173. package/bin/runners/lib/doctor/modules/index.js +105 -0
  174. package/bin/runners/lib/doctor/modules/network.js +250 -0
  175. package/bin/runners/lib/doctor/modules/os-quirks.js +706 -0
  176. package/bin/runners/lib/doctor/modules/project.js +312 -0
  177. package/bin/runners/lib/doctor/modules/repo-integrity.js +485 -0
  178. package/bin/runners/lib/doctor/modules/runtime.js +224 -0
  179. package/bin/runners/lib/doctor/modules/security.js +350 -0
  180. package/bin/runners/lib/doctor/modules/system.js +213 -0
  181. package/bin/runners/lib/doctor/modules/vibecheck.js +394 -0
  182. package/bin/runners/lib/doctor/reporter.js +262 -0
  183. package/bin/runners/lib/doctor/safe-repair.js +384 -0
  184. package/bin/runners/lib/doctor/service.js +262 -0
  185. package/bin/runners/lib/doctor/types.js +113 -0
  186. package/bin/runners/lib/doctor/ui.js +263 -0
  187. package/bin/runners/lib/doctor-enhanced.js +233 -0
  188. package/bin/runners/lib/doctor-output.js +226 -0
  189. package/bin/runners/lib/doctor-v2.js +608 -0
  190. package/bin/runners/lib/drift.js +425 -0
  191. package/bin/runners/lib/enforcement.js +72 -0
  192. package/bin/runners/lib/engine/ast-cache.js +210 -0
  193. package/bin/runners/lib/engine/auth-extractor.js +211 -0
  194. package/bin/runners/lib/engine/billing-extractor.js +112 -0
  195. package/bin/runners/lib/engine/enforcement-extractor.js +100 -0
  196. package/bin/runners/lib/engine/env-extractor.js +207 -0
  197. package/bin/runners/lib/engine/express-extractor.js +208 -0
  198. package/bin/runners/lib/engine/extractors.js +849 -0
  199. package/bin/runners/lib/engine/index.js +207 -0
  200. package/bin/runners/lib/engine/repo-index.js +514 -0
  201. package/bin/runners/lib/engine/types.js +124 -0
  202. package/bin/runners/lib/engines/accessibility-engine.js +190 -0
  203. package/bin/runners/lib/engines/api-consistency-engine.js +162 -0
  204. package/bin/runners/lib/engines/ast-cache.js +99 -0
  205. package/bin/runners/lib/engines/attack-detector.js +1192 -0
  206. package/bin/runners/lib/engines/code-quality-engine.js +255 -0
  207. package/bin/runners/lib/engines/console-logs-engine.js +115 -0
  208. package/bin/runners/lib/engines/cross-file-analysis-engine.js +268 -0
  209. package/bin/runners/lib/engines/dead-code-engine.js +198 -0
  210. package/bin/runners/lib/engines/deprecated-api-engine.js +226 -0
  211. package/bin/runners/lib/engines/empty-catch-engine.js +150 -0
  212. package/bin/runners/lib/engines/file-filter.js +131 -0
  213. package/bin/runners/lib/engines/hardcoded-secrets-engine.js +251 -0
  214. package/bin/runners/lib/engines/mock-data-engine.js +272 -0
  215. package/bin/runners/lib/engines/parallel-processor.js +71 -0
  216. package/bin/runners/lib/engines/performance-issues-engine.js +265 -0
  217. package/bin/runners/lib/engines/security-vulnerabilities-engine.js +243 -0
  218. package/bin/runners/lib/engines/todo-fixme-engine.js +115 -0
  219. package/bin/runners/lib/engines/type-aware-engine.js +152 -0
  220. package/bin/runners/lib/engines/unsafe-regex-engine.js +225 -0
  221. package/bin/runners/lib/engines/vibecheck-engines/README.md +53 -0
  222. package/bin/runners/lib/engines/vibecheck-engines/index.js +15 -0
  223. package/bin/runners/lib/engines/vibecheck-engines/lib/ast-cache.js +164 -0
  224. package/bin/runners/lib/engines/vibecheck-engines/lib/code-quality-engine.js +291 -0
  225. package/bin/runners/lib/engines/vibecheck-engines/lib/console-logs-engine.js +83 -0
  226. package/bin/runners/lib/engines/vibecheck-engines/lib/dead-code-engine.js +198 -0
  227. package/bin/runners/lib/engines/vibecheck-engines/lib/deprecated-api-engine.js +275 -0
  228. package/bin/runners/lib/engines/vibecheck-engines/lib/empty-catch-engine.js +167 -0
  229. package/bin/runners/lib/engines/vibecheck-engines/lib/file-filter.js +217 -0
  230. package/bin/runners/lib/engines/vibecheck-engines/lib/hardcoded-secrets-engine.js +139 -0
  231. package/bin/runners/lib/engines/vibecheck-engines/lib/mock-data-engine.js +140 -0
  232. package/bin/runners/lib/engines/vibecheck-engines/lib/parallel-processor.js +164 -0
  233. package/bin/runners/lib/engines/vibecheck-engines/lib/performance-issues-engine.js +234 -0
  234. package/bin/runners/lib/engines/vibecheck-engines/lib/type-aware-engine.js +217 -0
  235. package/bin/runners/lib/engines/vibecheck-engines/lib/unsafe-regex-engine.js +78 -0
  236. package/bin/runners/lib/engines/vibecheck-engines/package.json +13 -0
  237. package/bin/runners/lib/enterprise-detect.js +603 -0
  238. package/bin/runners/lib/enterprise-init.js +942 -0
  239. package/bin/runners/lib/entitlements-v2.js +265 -0
  240. package/bin/runners/lib/entitlements.generated.js +0 -0
  241. package/bin/runners/lib/entitlements.js +340 -0
  242. package/bin/runners/lib/env-resolver.js +417 -0
  243. package/bin/runners/lib/env-template.js +66 -0
  244. package/bin/runners/lib/env.js +189 -0
  245. package/bin/runners/lib/error-handler.js +368 -0
  246. package/bin/runners/lib/error-messages.js +289 -0
  247. package/bin/runners/lib/evidence-pack.js +684 -0
  248. package/bin/runners/lib/exit-codes.js +275 -0
  249. package/bin/runners/lib/extractors/client-calls.js +990 -0
  250. package/bin/runners/lib/extractors/fastify-route-dump.js +573 -0
  251. package/bin/runners/lib/extractors/fastify-routes.js +426 -0
  252. package/bin/runners/lib/extractors/index.js +363 -0
  253. package/bin/runners/lib/extractors/next-routes.js +524 -0
  254. package/bin/runners/lib/extractors/proof-graph.js +431 -0
  255. package/bin/runners/lib/extractors/route-matcher.js +451 -0
  256. package/bin/runners/lib/extractors/truthpack-v2.js +377 -0
  257. package/bin/runners/lib/extractors/ui-bindings.js +547 -0
  258. package/bin/runners/lib/finding-id.js +69 -0
  259. package/bin/runners/lib/finding-sorter.js +89 -0
  260. package/bin/runners/lib/findings-schema.js +281 -0
  261. package/bin/runners/lib/fingerprint.js +377 -0
  262. package/bin/runners/lib/firewall-prompt.js +50 -0
  263. package/bin/runners/lib/fix-output.js +228 -0
  264. package/bin/runners/lib/global-flags.js +250 -0
  265. package/bin/runners/lib/graph/graph-builder.js +265 -0
  266. package/bin/runners/lib/graph/html-renderer.js +413 -0
  267. package/bin/runners/lib/graph/index.js +32 -0
  268. package/bin/runners/lib/graph/runtime-collector.js +215 -0
  269. package/bin/runners/lib/graph/static-extractor.js +518 -0
  270. package/bin/runners/lib/help-formatter.js +413 -0
  271. package/bin/runners/lib/html-proof-report.js +913 -0
  272. package/bin/runners/lib/html-report.js +650 -0
  273. package/bin/runners/lib/init-wizard.js +601 -0
  274. package/bin/runners/lib/interactive-menu.js +1496 -0
  275. package/bin/runners/lib/json-output.js +76 -0
  276. package/bin/runners/lib/llm.js +75 -0
  277. package/bin/runners/lib/logger.js +38 -0
  278. package/bin/runners/lib/meter.js +61 -0
  279. package/bin/runners/lib/missions/briefing.js +427 -0
  280. package/bin/runners/lib/missions/checkpoint.js +753 -0
  281. package/bin/runners/lib/missions/evidence.js +126 -0
  282. package/bin/runners/lib/missions/hardening.js +851 -0
  283. package/bin/runners/lib/missions/plan.js +648 -0
  284. package/bin/runners/lib/missions/safety-gates.js +645 -0
  285. package/bin/runners/lib/missions/schema.js +478 -0
  286. package/bin/runners/lib/missions/templates.js +317 -0
  287. package/bin/runners/lib/next-action.js +560 -0
  288. package/bin/runners/lib/packs/bundle.js +675 -0
  289. package/bin/runners/lib/packs/evidence-pack.js +671 -0
  290. package/bin/runners/lib/packs/pack-factory.js +837 -0
  291. package/bin/runners/lib/packs/permissions-pack.js +686 -0
  292. package/bin/runners/lib/packs/proof-graph-pack.js +779 -0
  293. package/bin/runners/lib/patch.js +40 -0
  294. package/bin/runners/lib/permissions/auth-model.js +213 -0
  295. package/bin/runners/lib/permissions/idor-prover.js +205 -0
  296. package/bin/runners/lib/permissions/index.js +45 -0
  297. package/bin/runners/lib/permissions/matrix-builder.js +198 -0
  298. package/bin/runners/lib/pkgjson.js +28 -0
  299. package/bin/runners/lib/policy.js +295 -0
  300. package/bin/runners/lib/polish/accessibility.js +62 -0
  301. package/bin/runners/lib/polish/analyzer.js +93 -0
  302. package/bin/runners/lib/polish/backend.js +87 -0
  303. package/bin/runners/lib/polish/configuration.js +83 -0
  304. package/bin/runners/lib/polish/documentation.js +83 -0
  305. package/bin/runners/lib/polish/frontend.js +817 -0
  306. package/bin/runners/lib/polish/index.js +27 -0
  307. package/bin/runners/lib/polish/infrastructure.js +80 -0
  308. package/bin/runners/lib/polish/internationalization.js +85 -0
  309. package/bin/runners/lib/polish/libraries.js +180 -0
  310. package/bin/runners/lib/polish/observability.js +75 -0
  311. package/bin/runners/lib/polish/performance.js +64 -0
  312. package/bin/runners/lib/polish/privacy.js +110 -0
  313. package/bin/runners/lib/polish/resilience.js +92 -0
  314. package/bin/runners/lib/polish/security.js +78 -0
  315. package/bin/runners/lib/polish/seo.js +71 -0
  316. package/bin/runners/lib/polish/styles.js +62 -0
  317. package/bin/runners/lib/polish/utils.js +104 -0
  318. package/bin/runners/lib/preflight.js +142 -0
  319. package/bin/runners/lib/prerequisites.js +149 -0
  320. package/bin/runners/lib/prove-output.js +220 -0
  321. package/bin/runners/lib/reality/correlation-detectors.js +359 -0
  322. package/bin/runners/lib/reality/index.js +318 -0
  323. package/bin/runners/lib/reality/request-hashing.js +416 -0
  324. package/bin/runners/lib/reality/request-mapper.js +453 -0
  325. package/bin/runners/lib/reality/safety-rails.js +463 -0
  326. package/bin/runners/lib/reality/semantic-snapshot.js +408 -0
  327. package/bin/runners/lib/reality/toast-detector.js +393 -0
  328. package/bin/runners/lib/reality-findings.js +84 -0
  329. package/bin/runners/lib/reality-output.js +231 -0
  330. package/bin/runners/lib/receipts.js +179 -0
  331. package/bin/runners/lib/redact.js +29 -0
  332. package/bin/runners/lib/replay/capsule-manager.js +154 -0
  333. package/bin/runners/lib/replay/index.js +263 -0
  334. package/bin/runners/lib/replay/player.js +348 -0
  335. package/bin/runners/lib/replay/recorder.js +331 -0
  336. package/bin/runners/lib/report-engine.js +626 -0
  337. package/bin/runners/lib/report-html.js +1233 -0
  338. package/bin/runners/lib/report-output.js +366 -0
  339. package/bin/runners/lib/report-templates.js +967 -0
  340. package/bin/runners/lib/report.js +135 -0
  341. package/bin/runners/lib/route-detection.js +1209 -0
  342. package/bin/runners/lib/route-truth.js +1322 -0
  343. package/bin/runners/lib/safelist/index.js +96 -0
  344. package/bin/runners/lib/safelist/integration.js +334 -0
  345. package/bin/runners/lib/safelist/matcher.js +696 -0
  346. package/bin/runners/lib/safelist/schema.js +948 -0
  347. package/bin/runners/lib/safelist/store.js +438 -0
  348. package/bin/runners/lib/sandbox/index.js +59 -0
  349. package/bin/runners/lib/sandbox/proof-chain.js +399 -0
  350. package/bin/runners/lib/sandbox/sandbox-runner.js +205 -0
  351. package/bin/runners/lib/sandbox/worktree.js +174 -0
  352. package/bin/runners/lib/scan-cache.js +330 -0
  353. package/bin/runners/lib/scan-output-schema.js +344 -0
  354. package/bin/runners/lib/scan-output.js +631 -0
  355. package/bin/runners/lib/scan-runner.js +135 -0
  356. package/bin/runners/lib/schema-validator.js +350 -0
  357. package/bin/runners/lib/schemas/ajv-validator.js +464 -0
  358. package/bin/runners/lib/schemas/contracts.schema.json +160 -0
  359. package/bin/runners/lib/schemas/error-envelope.schema.json +105 -0
  360. package/bin/runners/lib/schemas/finding-v3.schema.json +151 -0
  361. package/bin/runners/lib/schemas/finding.schema.json +100 -0
  362. package/bin/runners/lib/schemas/mission-pack.schema.json +206 -0
  363. package/bin/runners/lib/schemas/proof-graph.schema.json +176 -0
  364. package/bin/runners/lib/schemas/reality-report.schema.json +162 -0
  365. package/bin/runners/lib/schemas/report-artifact.schema.json +120 -0
  366. package/bin/runners/lib/schemas/run-request.schema.json +108 -0
  367. package/bin/runners/lib/schemas/share-pack.schema.json +180 -0
  368. package/bin/runners/lib/schemas/ship-manifest.schema.json +251 -0
  369. package/bin/runners/lib/schemas/ship-report.schema.json +117 -0
  370. package/bin/runners/lib/schemas/truthpack-v2.schema.json +303 -0
  371. package/bin/runners/lib/schemas/validator.js +465 -0
  372. package/bin/runners/lib/schemas/verdict.schema.json +140 -0
  373. package/bin/runners/lib/score-history.js +282 -0
  374. package/bin/runners/lib/security-bridge.js +249 -0
  375. package/bin/runners/lib/server-usage.js +513 -0
  376. package/bin/runners/lib/share-pack.js +239 -0
  377. package/bin/runners/lib/ship-gate.js +832 -0
  378. package/bin/runners/lib/ship-manifest.js +1153 -0
  379. package/bin/runners/lib/ship-output-enterprise.js +239 -0
  380. package/bin/runners/lib/ship-output.js +1128 -0
  381. package/bin/runners/lib/snippets.js +67 -0
  382. package/bin/runners/lib/status-output.js +340 -0
  383. package/bin/runners/lib/terminal-ui.js +356 -0
  384. package/bin/runners/lib/truth.js +1691 -0
  385. package/bin/runners/lib/ui.js +562 -0
  386. package/bin/runners/lib/unified-cli-output.js +947 -0
  387. package/bin/runners/lib/unified-output.js +197 -0
  388. package/bin/runners/lib/upsell.js +410 -0
  389. package/bin/runners/lib/usage.js +153 -0
  390. package/bin/runners/lib/validate-patch.js +156 -0
  391. package/bin/runners/lib/verdict-engine.js +628 -0
  392. package/bin/runners/lib/verification.js +345 -0
  393. package/bin/runners/lib/why-tree.js +650 -0
  394. package/bin/runners/reality/engine.js +917 -0
  395. package/bin/runners/reality/flows.js +122 -0
  396. package/bin/runners/reality/report.js +378 -0
  397. package/bin/runners/reality/session.js +193 -0
  398. package/bin/runners/runAIAgent.js +229 -0
  399. package/bin/runners/runAgent.d.ts +5 -0
  400. package/bin/runners/runAgent.js +161 -0
  401. package/bin/runners/runAllowlist.js +418 -0
  402. package/bin/runners/runApprove.js +320 -0
  403. package/bin/runners/runAudit.js +692 -0
  404. package/bin/runners/runAuth.js +731 -0
  405. package/bin/runners/runCI.js +353 -0
  406. package/bin/runners/runCheckpoint.js +530 -0
  407. package/bin/runners/runClassify.js +928 -0
  408. package/bin/runners/runCleanup.js +343 -0
  409. package/bin/runners/runContext.d.ts +4 -0
  410. package/bin/runners/runContext.js +175 -0
  411. package/bin/runners/runDoctor.js +877 -0
  412. package/bin/runners/runEvidencePack.js +362 -0
  413. package/bin/runners/runFirewall.d.ts +5 -0
  414. package/bin/runners/runFirewall.js +134 -0
  415. package/bin/runners/runFirewallHook.d.ts +5 -0
  416. package/bin/runners/runFirewallHook.js +56 -0
  417. package/bin/runners/runFix.js +1355 -0
  418. package/bin/runners/runForge.js +451 -0
  419. package/bin/runners/runGuard.js +262 -0
  420. package/bin/runners/runInit.js +1927 -0
  421. package/bin/runners/runIntent.js +906 -0
  422. package/bin/runners/runKickoff.js +878 -0
  423. package/bin/runners/runLabs.js +424 -0
  424. package/bin/runners/runLaunch.js +2000 -0
  425. package/bin/runners/runLink.js +785 -0
  426. package/bin/runners/runMcp.js +1875 -0
  427. package/bin/runners/runPacks.js +2089 -0
  428. package/bin/runners/runPolish.d.ts +4 -0
  429. package/bin/runners/runPolish.js +390 -0
  430. package/bin/runners/runPromptFirewall.js +211 -0
  431. package/bin/runners/runProve.js +1411 -0
  432. package/bin/runners/runQuickstart.js +531 -0
  433. package/bin/runners/runReality.js +2260 -0
  434. package/bin/runners/runReport.js +726 -0
  435. package/bin/runners/runRuntime.js +110 -0
  436. package/bin/runners/runSafelist.js +1190 -0
  437. package/bin/runners/runScan.js +688 -0
  438. package/bin/runners/runShield.js +1282 -0
  439. package/bin/runners/runShip.js +1660 -0
  440. package/bin/runners/runTruth.d.ts +5 -0
  441. package/bin/runners/runTruth.js +101 -0
  442. package/bin/runners/runValidate.js +179 -0
  443. package/bin/runners/runWatch.js +478 -0
  444. package/bin/runners/utils.js +360 -0
  445. package/bin/scan.js +617 -0
  446. package/bin/vibecheck.js +1617 -0
  447. package/dist/guardrail/index.d.ts +2405 -0
  448. package/dist/guardrail/index.js +9747 -0
  449. package/dist/guardrail/index.js.map +1 -0
  450. package/dist/scanner/index.d.ts +282 -0
  451. package/dist/scanner/index.js +3395 -0
  452. package/dist/scanner/index.js.map +1 -0
  453. package/package.json +123 -104
  454. package/README.md +0 -491
  455. package/dist/index.js +0 -99711
  456. package/dist/index.js.map +0 -1
@@ -0,0 +1,229 @@
1
+ # CLI Refactor Summary - The 14-Command Vibecheck CLI
2
+
3
+ **Date:** $(date)
4
+ **Purpose:** Consolidate CLI into 14 core commands with backward-compatible aliases
5
+
6
+ ---
7
+
8
+ ## The 14 Core Commands
9
+
10
+ ### SETUP (2 commands)
11
+ | # | Command | Description | Tier |
12
+ |---|---------|-------------|------|
13
+ | 1 | `init` | One-time setup (config + contracts + scripts) | FREE |
14
+ | 2 | `doctor` | Environment + dependency + config health check | FREE |
15
+
16
+ ### AI TRUTH LANE (4 commands)
17
+ | # | Command | Description | Tier |
18
+ |---|---------|-------------|------|
19
+ | 3 | `ctx` | Truthpack generation - core truth engine | FREE |
20
+ | 4 | `context` | Generate IDE rules (.cursorrules, MDC, Windsurf, Copilot) | FREE |
21
+ | 5 | `guard` | AI guardrails - prompt firewall & hallucination checking | FREE |
22
+ | 6 | `contracts` | CI gate for contract drift / invariants | FREE |
23
+
24
+ ### PROOF LOOP (5 commands)
25
+ | # | Command | Description | Tier |
26
+ |---|---------|-------------|------|
27
+ | 7 | `ship` | Verdict engine - SHIP / WARN / BLOCK | FREE |
28
+ | 8 | `runtime` | Browser-based runtime verification | FREE |
29
+ | 9 | `fix` | AI-powered auto-fix | FREE |
30
+ | 10 | `prove` | Full proof loop - ctx → runtime → ship → fix | PRO |
31
+ | 11 | `security` | AuthZ matrix & IDOR detection | PRO |
32
+
33
+ ### OUTPUT & AUTOMATION (3 commands)
34
+ | # | Command | Description | Tier |
35
+ |---|---------|-------------|------|
36
+ | 12 | `report` | Generate HTML/MD/SARIF reports | FREE |
37
+ | 13 | `export` | Generate collaboration outputs | FREE |
38
+ | 14 | `mcp` | Start MCP server for AI IDEs | STARTER |
39
+
40
+ ---
41
+
42
+ ## AI Truth Lane - Deep Dive
43
+
44
+ ### `vibecheck ctx` - Truthpack Generation
45
+ The core truth engine that builds the "ground truth" of your project:
46
+ - Project metadata (frameworks, workspaces, entrypoints)
47
+ - Server routes and client route references
48
+ - Environment variables and auth patterns
49
+ - Billing/payment integrations
50
+ - External service integrations
51
+
52
+ **Subcommands:**
53
+ - `ctx build` - Build/refresh truthpack
54
+ - `ctx diff` - Show drift from contracts
55
+ - `ctx sync` - Update contracts from truthpack
56
+ - `ctx search` - Semantic search in context
57
+
58
+ ### `vibecheck context` - IDE Rules & MDC Generation
59
+ Generates context files for AI coding assistants:
60
+ - `.cursorrules` - Cursor IDE rules
61
+ - `.cursor/rules/*.mdc` - Cursor MDC files
62
+ - `.windsurf/rules/*.md` - Windsurf rules
63
+ - `.github/copilot-instructions.md` - GitHub Copilot
64
+ - `.claude/` and `.codex/` instructions
65
+ - `.vibecheck/context.json` - Universal context
66
+
67
+ Also supports:
68
+ - Semantic code search
69
+ - Secret/vulnerability scanning
70
+ - AI task decomposition
71
+ - Multi-repo federation
72
+ - AI memory storage
73
+
74
+ ### `vibecheck guard` - AI Guardrails
75
+ The prompt firewall and hallucination prevention system:
76
+ - Validates AI claims against truthpack
77
+ - Breaks prompts into tasks and verifies them
78
+ - Checks for hallucination risks
79
+ - Version-control aware fixes
80
+ - Can generate diffs and apply fixes
81
+
82
+ ### `vibecheck contracts` - Contract Drift Detection
83
+ CI gate for ensuring code doesn't drift from contracts:
84
+ - Validates routes against routes.json
85
+ - Validates env vars against env.json
86
+ - Validates auth patterns against auth.json
87
+ - Returns SHIP/WARN/BLOCK verdict
88
+
89
+ ---
90
+
91
+ ## Subcommand Reference
92
+
93
+ ### `runtime` Subcommands
94
+ - `runtime crawl --url <url>` - UI verification (replaces `reality`)
95
+ - `runtime agent --url <url>` - AI autonomous testing (replaces `ai-test`)
96
+ - `runtime record --url <url>` - Record session (replaces `replay record`)
97
+ - `runtime play <capsule>` - Replay session (replaces `replay play`)
98
+
99
+ ### `export` Subcommands
100
+ - `export pr` - Generate PR comment (replaces `pr`)
101
+ - `export badge` - Generate ship badge (replaces `badge`)
102
+ - `export bundle` - Generate share pack (replaces `share`)
103
+
104
+ ### `security` Subcommands
105
+ - `security model` - Extract auth model (replaces `permissions --learn`)
106
+ - `security matrix` - Build AuthZ matrix (replaces `permissions --matrix`)
107
+ - `security idor` - Detect IDOR candidates (replaces `permissions --idor`)
108
+ - `security prove --url <url>` - Runtime verification
109
+
110
+ ---
111
+
112
+ ## Backward Compatibility Aliases
113
+
114
+ All old commands still work:
115
+
116
+ | Old Command | New Command |
117
+ |-------------|-------------|
118
+ | `install` | `init --quick` |
119
+ | `scan` | `ship --mode scan` |
120
+ | `gate` | `ship --ci` |
121
+ | `reality` | `runtime crawl` |
122
+ | `ai-test` | `runtime agent` |
123
+ | `replay record` | `runtime record` |
124
+ | `replay play` | `runtime play` |
125
+ | `pr` | `export pr` |
126
+ | `badge` | `export badge` |
127
+ | `share` | `export bundle` |
128
+ | `permissions` | `security model` |
129
+ | `mdc` | `context` (alias) |
130
+
131
+ ---
132
+
133
+ ## The "What Do I Run?" Cheat Sheet
134
+
135
+ ### Daily Development
136
+ ```bash
137
+ vibecheck ship # Quick verdict
138
+ vibecheck watch # Continuous mode
139
+ ```
140
+
141
+ ### New Project Setup
142
+ ```bash
143
+ vibecheck init # Full wizard
144
+ vibecheck init --quick # Fast setup
145
+ ```
146
+
147
+ ### Before Pushing
148
+ ```bash
149
+ vibecheck ship # Static verdict
150
+ vibecheck ship --with runtime # Include runtime findings
151
+ ```
152
+
153
+ ### Before Deploying
154
+ ```bash
155
+ vibecheck prove # Full proof loop
156
+ ```
157
+
158
+ ### In CI/CD
159
+ ```bash
160
+ vibecheck ship --ci # CI verdict
161
+ vibecheck contracts --strict # Contract drift gate
162
+ ```
163
+
164
+ ### AI Context Generation
165
+ ```bash
166
+ vibecheck ctx # Build truthpack
167
+ vibecheck context # Generate IDE rules & MDC
168
+ ```
169
+
170
+ ### AI Guardrails
171
+ ```bash
172
+ vibecheck guard # Validate AI output
173
+ vibecheck verify # Verify AI-generated code
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Key Distinctions
179
+
180
+ ### `guard` vs `contracts`
181
+ - **`guard`** = AI guardrails (prompt firewall, hallucination checking)
182
+ - **`contracts`** = Contract drift (CI gate for code vs contracts)
183
+
184
+ ### `ctx` vs `context`
185
+ - **`ctx`** = Core truth engine (builds truthpack)
186
+ - **`context`** = IDE rules & MDC generation (consumes truthpack)
187
+
188
+ ### `ship` vs `prove`
189
+ - **`ship`** = Single verdict (static or with runtime)
190
+ - **`prove`** = Full loop (ctx → runtime → ship → fix → verify)
191
+
192
+ ---
193
+
194
+ ## Additional Commands (DX Helpers)
195
+
196
+ These commands are kept for convenience but not part of the core 14:
197
+
198
+ | Command | Description | Tier |
199
+ |---------|-------------|------|
200
+ | `status` | Project health dashboard | FREE |
201
+ | `watch` | Continuous mode - re-runs on changes | FREE |
202
+ | `launch` | Pre-launch checklist wizard | STARTER |
203
+ | `preflight` | Deployment validation checks | FREE |
204
+ | `verify` | Verify AI-generated code output | FREE |
205
+ | `graph` | Reality proof graph visualization | PRO |
206
+
207
+ ### Account Commands
208
+ | Command | Description |
209
+ |---------|-------------|
210
+ | `login` | Authenticate with API key |
211
+ | `logout` | Remove stored credentials |
212
+ | `whoami` | Show current user and plan |
213
+
214
+ ---
215
+
216
+ ## Summary
217
+
218
+ The 14-command structure provides:
219
+
220
+ 1. **Clear Setup** - `init`, `doctor`
221
+ 2. **AI Truth Lane** - `ctx`, `context`, `guard`, `contracts`
222
+ 3. **Proof Loop** - `ship`, `runtime`, `fix`, `prove`, `security`
223
+ 4. **Output & Automation** - `report`, `export`, `mcp`
224
+
225
+ All features preserved, no confusion:
226
+ - AI guardrails live in `guard`
227
+ - Contract drift lives in `contracts`
228
+ - MDC/IDE rules live in `context`
229
+ - Truthpack generation lives in `ctx`
@@ -0,0 +1,121 @@
1
+ # Command Enhancement Guide
2
+
3
+ This guide shows how to apply the enhancements from `vibecheck.js` to all command runners.
4
+
5
+ ## 1. Add Global Flags Support
6
+
7
+ ### Import the utilities:
8
+ ```javascript
9
+ const { parseGlobalFlags, shouldShowBanner } = require("./lib/global-flags");
10
+ ```
11
+
12
+ ### Update parseArgs function:
13
+ ```javascript
14
+ function parseArgs(args) {
15
+ // Parse global flags first
16
+ const { flags: globalFlags, cleanArgs } = parseGlobalFlags(args);
17
+
18
+ const opts = {
19
+ // ... existing options
20
+ path: globalFlags.path || process.cwd(),
21
+ json: globalFlags.json || false,
22
+ verbose: globalFlags.verbose || false,
23
+ help: globalFlags.help || false,
24
+ noBanner: globalFlags.noBanner || false,
25
+ ci: globalFlags.ci || false,
26
+ quiet: globalFlags.quiet || false,
27
+ };
28
+
29
+ // Parse command-specific args from cleanArgs
30
+ for (let i = 0; i < cleanArgs.length; i++) {
31
+ const a = cleanArgs[i];
32
+ // ... command-specific parsing
33
+ }
34
+
35
+ return opts;
36
+ }
37
+ ```
38
+
39
+ ## 2. Update Banner Printing
40
+
41
+ ### Update printHelp:
42
+ ```javascript
43
+ function printHelp(showBanner = true) {
44
+ if (showBanner && shouldShowBanner({})) {
45
+ console.log(BANNER);
46
+ }
47
+ // ... rest of help
48
+ }
49
+ ```
50
+
51
+ ### Update banner printing in main function:
52
+ ```javascript
53
+ async function runCommand(args) {
54
+ const opts = parseArgs(args);
55
+
56
+ if (opts.help) {
57
+ printHelp(shouldShowBanner(opts));
58
+ return 0;
59
+ }
60
+
61
+ // Print banner (respects --no-banner, VIBECHECK_NO_BANNER, --ci, --quiet, --json)
62
+ if (shouldShowBanner(opts)) {
63
+ printBanner();
64
+ }
65
+
66
+ // ... rest of command
67
+ }
68
+ ```
69
+
70
+ ## 3. Add Aliases to Help Text
71
+
72
+ Update help text to show aliases:
73
+ ```javascript
74
+ function printHelp(showBanner = true) {
75
+ // ...
76
+ console.log(`
77
+ ${ansi.bold}Usage:${ansi.reset} vibecheck command ${ansi.dim}(alias1, alias2)${ansi.reset} [options]
78
+
79
+ ${ansi.bold}Aliases:${ansi.reset} ${ansi.dim}alias1, alias2${ansi.reset}
80
+ `);
81
+ }
82
+ ```
83
+
84
+ ## 4. Lazy Loading (Optional)
85
+
86
+ For commands that load heavy modules, use lazy loading:
87
+ ```javascript
88
+ const { lazy } = require("./lib/global-flags");
89
+
90
+ const getHeavyModule = lazy("heavy-module", () => require("./lib/heavy-module"));
91
+
92
+ // Use later:
93
+ const heavyModule = getHeavyModule();
94
+ ```
95
+
96
+ ## Commands Updated
97
+
98
+ ✅ `runScan.js` - Full support for --no-banner, global flags, aliases in help
99
+ ✅ `runShip.js` - Full support for --no-banner, global flags, aliases in help
100
+ ✅ `runReport.js` - Full support for --no-banner, global flags
101
+ ✅ `runInit.js` - Already enhanced with all features
102
+
103
+ ## Commands Pending
104
+
105
+ - `runStatus.js` - No banner, but should support global flags
106
+ - `runFix.js` - Needs banner support
107
+ - `runProve.js` - Needs banner support
108
+ - `runContext.js` - Needs banner support
109
+ - `runCtx.js` - Needs banner support
110
+ - All other commands - Apply same pattern
111
+
112
+ ## Testing Checklist
113
+
114
+ For each command:
115
+ - [ ] `command --no-banner` suppresses banner
116
+ - [ ] `VIBECHECK_NO_BANNER=true command` suppresses banner
117
+ - [ ] `command --ci` suppresses banner
118
+ - [ ] `command --quiet` suppresses banner
119
+ - [ ] `command --json` suppresses banner
120
+ - [ ] `command --help` shows aliases (if any)
121
+ - [ ] Global flags (--path, --output, --verbose) work correctly
@@ -0,0 +1,64 @@
1
+ # Report Generation Audit
2
+
3
+ ## Commands That Generate Reports Automatically
4
+
5
+ ### ✅ Updated Commands
6
+
7
+ 1. **`vibecheck ship`**
8
+ - **Location**: `bin/runners/runShip.js`
9
+ - **Report**: `.vibecheck/report.html`
10
+ - **Type**: Technical report (detailed)
11
+ - **Generator**: `lib/html-report.js` → `generateHTMLReport()`
12
+ - **Status**: ✅ Updated to use better HTML report generator
13
+
14
+ 2. **`vibecheck report`**
15
+ - **Location**: `bin/runners/runReport.js`
16
+ - **Report**: `.vibecheck/report.html` (or custom path)
17
+ - **Types**:
18
+ - `--type=executive`: Client-friendly executive report
19
+ - `--type=technical` (default): Detailed technical report
20
+ - `--type=compliance`: Compliance report (PRO tier)
21
+ - **Generator**:
22
+ - Executive: `lib/report-templates.js` → `generateEnhancedExecutiveReport()`
23
+ - Technical: `lib/html-report.js` → `generateHTMLReport()`
24
+ - **Status**: ✅ Updated - executive uses client-friendly template, technical uses detailed generator
25
+
26
+ 3. **`writeArtifacts()` utility**
27
+ - **Location**: `bin/runners/utils.js`
28
+ - **Report**: `.vibecheck/report.html`
29
+ - **Type**: Technical report (detailed)
30
+ - **Generator**: `lib/html-report.js` → `generateHTMLReport()`
31
+ - **Used by**: `runShip.js` (but skipped since ship generates its own)
32
+ - **Status**: ✅ Updated to use better HTML report generator
33
+
34
+ ### ✅ Specialized Reports (Keep As-Is)
35
+
36
+ 4. **`vibecheck reality`**
37
+ - **Location**: `bin/runners/reality/report.js`
38
+ - **Report**: `.vibecheck/reality/reality-report.html`
39
+ - **Type**: Reality mode specific report (runtime testing results)
40
+ - **Generator**: `reality/report.js` → `writeHtmlReport()`
41
+ - **Status**: ✅ Appropriate - specialized for reality mode, different format needed
42
+
43
+ 5. **`vibecheck prove`**
44
+ - **Location**: `bin/runners/runProve.js`
45
+ - **Report**: `.vibecheck/prove_report.json` (JSON only, no HTML)
46
+ - **Status**: ✅ Appropriate - JSON format for orchestration results
47
+
48
+ ### 📋 Summary
49
+
50
+ **Commands that generate `report.html` automatically:**
51
+ - ✅ `vibecheck ship` → Uses technical report generator
52
+ - ✅ `vibecheck report` → Uses executive (client-friendly) or technical (default)
53
+ - ✅ `writeArtifacts()` → Uses technical report generator (fallback)
54
+
55
+ **Report Types:**
56
+ - **Executive Report** (`--type=executive`): Client-friendly, simplified, stakeholder-focused
57
+ - **Technical Report** (default): Detailed, developer-focused, includes file paths and code references
58
+ - **Reality Report**: Specialized runtime testing report (different format)
59
+
60
+ **Consistency:**
61
+ - All general-purpose reports now use the unified HTML report generator
62
+ - Executive reports use client-friendly templates
63
+ - Technical reports use detailed generator
64
+ - Specialized reports (reality) use their own formats (appropriate)