@vibecheckai/cli 3.1.6 → 3.2.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.
- package/README.md +27 -32
- package/bin/registry.js +208 -343
- package/bin/runners/context/generators/mcp.js +18 -0
- package/bin/runners/context/index.js +72 -4
- package/bin/runners/context/proof-context.js +293 -1
- package/bin/runners/context/security-scanner.js +311 -73
- package/bin/runners/lib/analyzers.js +607 -20
- package/bin/runners/lib/detectors-v2.js +172 -15
- package/bin/runners/lib/entitlements-v2.js +48 -1
- package/bin/runners/lib/evidence-pack.js +678 -0
- package/bin/runners/lib/html-proof-report.js +913 -0
- package/bin/runners/lib/missions/plan.js +231 -41
- package/bin/runners/lib/missions/templates.js +125 -0
- package/bin/runners/lib/scan-output.js +492 -253
- package/bin/runners/lib/ship-output.js +901 -641
- package/bin/runners/runCheckpoint.js +44 -3
- package/bin/runners/runContext.d.ts +4 -0
- package/bin/runners/runContext.js +2 -3
- package/bin/runners/runDoctor.js +11 -4
- package/bin/runners/runFix.js +51 -341
- package/bin/runners/runInit.js +37 -20
- package/bin/runners/runPolish.d.ts +4 -0
- package/bin/runners/runPolish.js +608 -29
- package/bin/runners/runProve.js +210 -25
- package/bin/runners/runReality.js +861 -107
- package/bin/runners/runScan.js +238 -4
- package/bin/runners/runShip.js +19 -3
- package/bin/runners/runWatch.js +25 -5
- package/bin/vibecheck.js +35 -47
- package/mcp-server/consolidated-tools.js +408 -42
- package/mcp-server/index.js +152 -15
- package/mcp-server/package.json +1 -1
- package/mcp-server/proof-tools.js +571 -0
- package/mcp-server/tier-auth.js +22 -19
- package/mcp-server/tools-v3.js +744 -0
- package/mcp-server/truth-firewall-tools.js +190 -4
- package/package.json +3 -1
- package/bin/runners/runBadge.js +0 -916
- package/bin/runners/runContracts.js +0 -105
- package/bin/runners/runCtx.js +0 -680
- package/bin/runners/runCtxDiff.js +0 -301
- package/bin/runners/runCtxGuard.js +0 -176
- package/bin/runners/runCtxSync.js +0 -116
- package/bin/runners/runExport.js +0 -93
- package/bin/runners/runGraph.js +0 -454
- package/bin/runners/runInstall.js +0 -273
- package/bin/runners/runLabs.js +0 -341
- package/bin/runners/runLaunch.js +0 -181
- package/bin/runners/runPR.js +0 -255
- package/bin/runners/runPermissions.js +0 -310
- package/bin/runners/runPreflight.js +0 -580
- package/bin/runners/runReplay.js +0 -499
- package/bin/runners/runSecurity.js +0 -92
- package/bin/runners/runShare.js +0 -212
- package/bin/runners/runStatus.js +0 -102
- package/bin/runners/runVerify.js +0 -272
package/bin/runners/runInit.js
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
const fs = require("fs");
|
|
13
13
|
const path = require("path");
|
|
14
|
+
const { parseGlobalFlags, shouldShowBanner } = require("./lib/global-flags");
|
|
14
15
|
|
|
15
16
|
// Use enhanced wizard if available
|
|
16
17
|
let InitWizard;
|
|
@@ -1053,6 +1054,17 @@ function printNextSteps(options = {}) {
|
|
|
1053
1054
|
console.log();
|
|
1054
1055
|
console.log(` ${c.dim}Full docs:${c.reset} ${colors.info}https://docs.vibecheckai.dev${c.reset}`);
|
|
1055
1056
|
console.log();
|
|
1057
|
+
|
|
1058
|
+
// Upsell box
|
|
1059
|
+
console.log(` ${c.dim}╭────────────────────────────────────────────────────────────╮${c.reset}`);
|
|
1060
|
+
console.log(` ${c.dim}│${c.reset} ${c.dim}│${c.reset}`);
|
|
1061
|
+
console.log(` ${c.dim}│${c.reset} ${colors.accent}⚡ STARTER${c.reset} ${c.dim}•${c.reset} AI-powered fixes, GitHub CI, MCP tools ${c.dim}│${c.reset}`);
|
|
1062
|
+
console.log(` ${c.dim}│${c.reset} ${colors.accent}🏆 PRO${c.reset} ${c.dim}•${c.reset} Runtime proof, verified badges, AI testing ${c.dim}│${c.reset}`);
|
|
1063
|
+
console.log(` ${c.dim}│${c.reset} ${c.dim}│${c.reset}`);
|
|
1064
|
+
console.log(` ${c.dim}│${c.reset} ${colors.info}vibecheck login${c.reset} ${c.dim}to upgrade • vibecheck.dev/pricing${c.reset} ${c.dim}│${c.reset}`);
|
|
1065
|
+
console.log(` ${c.dim}│${c.reset} ${c.dim}│${c.reset}`);
|
|
1066
|
+
console.log(` ${c.dim}╰────────────────────────────────────────────────────────────╯${c.reset}`);
|
|
1067
|
+
console.log();
|
|
1056
1068
|
}
|
|
1057
1069
|
|
|
1058
1070
|
// ═══════════════════════════════════════════════════════════════════════════════
|
|
@@ -1100,8 +1112,10 @@ function printComplianceInfo(complianceType) {
|
|
|
1100
1112
|
// HELP DISPLAY
|
|
1101
1113
|
// ═══════════════════════════════════════════════════════════════════════════════
|
|
1102
1114
|
|
|
1103
|
-
function printHelp() {
|
|
1104
|
-
|
|
1115
|
+
function printHelp(showBanner = true) {
|
|
1116
|
+
if (showBanner && shouldShowBanner({})) {
|
|
1117
|
+
console.log(BANNER_FULL);
|
|
1118
|
+
}
|
|
1105
1119
|
console.log(`
|
|
1106
1120
|
${c.bold}Usage:${c.reset} vibecheck init [mode] [options]
|
|
1107
1121
|
|
|
@@ -1176,13 +1190,19 @@ function printHelp() {
|
|
|
1176
1190
|
// ═══════════════════════════════════════════════════════════════════════════════
|
|
1177
1191
|
|
|
1178
1192
|
function parseArgs(args) {
|
|
1193
|
+
// Parse global flags first
|
|
1194
|
+
const { flags: globalFlags, cleanArgs } = parseGlobalFlags(args);
|
|
1195
|
+
|
|
1179
1196
|
const out = {
|
|
1180
|
-
path: ".",
|
|
1197
|
+
path: globalFlags.path || ".",
|
|
1181
1198
|
gitHooks: false,
|
|
1182
|
-
help: false,
|
|
1199
|
+
help: globalFlags.help || false,
|
|
1183
1200
|
quick: false,
|
|
1184
|
-
json: false,
|
|
1185
|
-
verbose: false,
|
|
1201
|
+
json: globalFlags.json || false,
|
|
1202
|
+
verbose: globalFlags.verbose || false,
|
|
1203
|
+
noBanner: globalFlags.noBanner || false,
|
|
1204
|
+
ci: globalFlags.ci || false,
|
|
1205
|
+
quiet: globalFlags.quiet || false,
|
|
1186
1206
|
// Mode flags (--local is default, --connect requires STARTER)
|
|
1187
1207
|
local: false,
|
|
1188
1208
|
connect: false,
|
|
@@ -1194,24 +1214,20 @@ function parseArgs(args) {
|
|
|
1194
1214
|
verify: false,
|
|
1195
1215
|
// Enterprise options
|
|
1196
1216
|
enterprise: false,
|
|
1197
|
-
ci: false,
|
|
1198
1217
|
compliance: false,
|
|
1199
1218
|
team: false,
|
|
1200
1219
|
mcp: false,
|
|
1201
|
-
strict: false,
|
|
1220
|
+
strict: globalFlags.strict || false,
|
|
1202
1221
|
failOnWarn: false,
|
|
1203
1222
|
detect: false,
|
|
1204
1223
|
};
|
|
1205
1224
|
|
|
1206
|
-
for (let i = 0; i <
|
|
1207
|
-
const a =
|
|
1225
|
+
for (let i = 0; i < cleanArgs.length; i++) {
|
|
1226
|
+
const a = cleanArgs[i];
|
|
1208
1227
|
if (a.startsWith("--path=")) out.path = a.split("=")[1];
|
|
1209
|
-
if (a === "--path" || a === "-p") out.path =
|
|
1228
|
+
if (a === "--path" || a === "-p") out.path = cleanArgs[++i];
|
|
1210
1229
|
if (a === "--git-hooks") out.gitHooks = true;
|
|
1211
|
-
if (a === "--help" || a === "-h") out.help = true;
|
|
1212
1230
|
if (a === "--quick" || a === "-q") out.quick = true;
|
|
1213
|
-
if (a === "--json") out.json = true;
|
|
1214
|
-
if (a === "--verbose" || a === "-v") out.verbose = true;
|
|
1215
1231
|
if (a === "--verify") out.verify = true;
|
|
1216
1232
|
|
|
1217
1233
|
// Enhancement flags
|
|
@@ -1602,7 +1618,7 @@ async function runInit(args) {
|
|
|
1602
1618
|
const opts = parseArgs(args);
|
|
1603
1619
|
|
|
1604
1620
|
if (opts.help) {
|
|
1605
|
-
printHelp();
|
|
1621
|
+
printHelp(shouldShowBanner(opts));
|
|
1606
1622
|
return 0;
|
|
1607
1623
|
}
|
|
1608
1624
|
|
|
@@ -1621,7 +1637,7 @@ async function runInit(args) {
|
|
|
1621
1637
|
opts.team || opts.mcp || opts.detect;
|
|
1622
1638
|
|
|
1623
1639
|
if (EnterpriseInit && useEnterprise && !opts.local && !opts.connect) {
|
|
1624
|
-
if (
|
|
1640
|
+
if (shouldShowBanner(opts)) {
|
|
1625
1641
|
printBanner();
|
|
1626
1642
|
bannerPrinted = true;
|
|
1627
1643
|
printEnterpriseHeader(opts);
|
|
@@ -1637,7 +1653,7 @@ async function runInit(args) {
|
|
|
1637
1653
|
|
|
1638
1654
|
// Detect-only mode (quick detection report)
|
|
1639
1655
|
if (opts.detect) {
|
|
1640
|
-
if (
|
|
1656
|
+
if (shouldShowBanner(opts)) {
|
|
1641
1657
|
printBanner();
|
|
1642
1658
|
bannerPrinted = true;
|
|
1643
1659
|
console.log(` ${c.dim}Project:${c.reset} ${c.bold}${projectName}${c.reset}`);
|
|
@@ -1669,8 +1685,9 @@ async function runInit(args) {
|
|
|
1669
1685
|
|
|
1670
1686
|
// Interactive wizard mode
|
|
1671
1687
|
if (opts.wizard && InitWizard) {
|
|
1672
|
-
if (
|
|
1688
|
+
if (shouldShowBanner(opts) && !bannerPrinted) {
|
|
1673
1689
|
printBanner();
|
|
1690
|
+
bannerPrinted = true;
|
|
1674
1691
|
}
|
|
1675
1692
|
const wizard = new InitWizard(targetDir, opts);
|
|
1676
1693
|
return await wizard.run();
|
|
@@ -1678,7 +1695,7 @@ async function runInit(args) {
|
|
|
1678
1695
|
|
|
1679
1696
|
// Repair mode - fix partial state
|
|
1680
1697
|
if (opts.repair) {
|
|
1681
|
-
if (
|
|
1698
|
+
if (shouldShowBanner(opts) && !bannerPrinted) {
|
|
1682
1699
|
printBanner();
|
|
1683
1700
|
bannerPrinted = true;
|
|
1684
1701
|
console.log(` ${c.dim}Project:${c.reset} ${c.bold}${projectName}${c.reset}`);
|
|
@@ -1690,7 +1707,7 @@ async function runInit(args) {
|
|
|
1690
1707
|
}
|
|
1691
1708
|
|
|
1692
1709
|
// Print banner only once (not already printed in enterprise/detect modes)
|
|
1693
|
-
if (
|
|
1710
|
+
if (shouldShowBanner(opts) && !bannerPrinted) {
|
|
1694
1711
|
printBanner();
|
|
1695
1712
|
bannerPrinted = true;
|
|
1696
1713
|
|