@vibecheckai/cli 3.6.0 → 3.6.1
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
CHANGED
|
@@ -89,7 +89,7 @@ vibecheck reality --url http://localhost:3000
|
|
|
89
89
|
|------|-------|----------|
|
|
90
90
|
| FREE | $0 | init --local, scan, ship (static), doctor, polish, report (HTML/MD), context, guard, checkpoint (basic) |
|
|
91
91
|
| STARTER | $39/mo | + init --connect, scan --autofix, report (SARIF/CSV), mcp, reality (basic) |
|
|
92
|
-
| PRO | $
|
|
92
|
+
| PRO | $49/mo | + prove, fix --apply, checkpoint (hallucination), reality (advanced), ai-test |
|
|
93
93
|
|
|
94
94
|
## What It Catches
|
|
95
95
|
|
|
@@ -228,7 +228,7 @@ function computeNextAction(state) {
|
|
|
228
228
|
return {
|
|
229
229
|
action: "badge",
|
|
230
230
|
command: "vibecheck ship --badge",
|
|
231
|
-
dashboardLink: `${DASHBOARD_URL}/runs/${runId}
|
|
231
|
+
dashboardLink: runId ? `${DASHBOARD_URL}/runs/${runId}` : undefined,
|
|
232
232
|
why: "SHIP passed! Generate a verified badge for your README.",
|
|
233
233
|
timeEstimate: TIME_ESTIMATES.badge,
|
|
234
234
|
tier: "pro",
|
|
@@ -255,7 +255,7 @@ function computeNextAction(state) {
|
|
|
255
255
|
return {
|
|
256
256
|
action: "report",
|
|
257
257
|
command: "vibecheck report",
|
|
258
|
-
dashboardLink: `${DASHBOARD_URL}/runs/${runId}
|
|
258
|
+
dashboardLink: runId ? `${DASHBOARD_URL}/runs/${runId}` : undefined,
|
|
259
259
|
why: "Scan complete. Export report or upgrade to get verdict.",
|
|
260
260
|
timeEstimate: TIME_ESTIMATES.report,
|
|
261
261
|
tier: "free",
|
|
@@ -328,7 +328,7 @@ function getNextActionForCommand(completedCmd, result = {}, tier = "free") {
|
|
|
328
328
|
return {
|
|
329
329
|
action: "report",
|
|
330
330
|
command: "vibecheck report",
|
|
331
|
-
dashboardLink: `${DASHBOARD_URL}/runs/${runId}
|
|
331
|
+
dashboardLink: runId ? `${DASHBOARD_URL}/runs/${runId}` : undefined,
|
|
332
332
|
why: `Scan complete. Export report.`,
|
|
333
333
|
timeEstimate: TIME_ESTIMATES.report,
|
|
334
334
|
tier: "free",
|
|
@@ -344,7 +344,7 @@ function getNextActionForCommand(completedCmd, result = {}, tier = "free") {
|
|
|
344
344
|
return {
|
|
345
345
|
action: "badge",
|
|
346
346
|
command: "vibecheck ship --badge",
|
|
347
|
-
dashboardLink: `${DASHBOARD_URL}/runs/${runId}
|
|
347
|
+
dashboardLink: runId ? `${DASHBOARD_URL}/runs/${runId}` : undefined,
|
|
348
348
|
why: "SHIP passed! Generate a verified badge.",
|
|
349
349
|
timeEstimate: TIME_ESTIMATES.badge,
|
|
350
350
|
tier: "pro",
|
|
@@ -363,7 +363,7 @@ function getNextActionForCommand(completedCmd, result = {}, tier = "free") {
|
|
|
363
363
|
return {
|
|
364
364
|
action: "report",
|
|
365
365
|
command: "vibecheck report",
|
|
366
|
-
dashboardLink: `${DASHBOARD_URL}/runs/${runId}
|
|
366
|
+
dashboardLink: runId ? `${DASHBOARD_URL}/runs/${runId}` : undefined,
|
|
367
367
|
why: "Export detailed report.",
|
|
368
368
|
timeEstimate: TIME_ESTIMATES.report,
|
|
369
369
|
tier: "free",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Enterprise Scan Output - V5 "Mission Control" Format
|
|
3
3
|
* Features:
|
|
4
|
-
* - External
|
|
4
|
+
* - External Vibecheck Header (ANSI Shadow)
|
|
5
5
|
* - Internal SCAN Block (Centered)
|
|
6
6
|
* - Split-pane layout (Vitals vs. Diagnostics)
|
|
7
7
|
* - Gradient Health Bars
|
|
@@ -281,6 +281,9 @@ function formatScanOutput(result, options = {}) {
|
|
|
281
281
|
const healthStatus = score > 80 ? 'OPTIMAL' : score > 50 ? 'STABLE' : 'CRITICAL';
|
|
282
282
|
const healthColor = score > 80 ? chalk.green : score > 50 ? chalk.yellow : chalk.red;
|
|
283
283
|
|
|
284
|
+
// Extract runId early to avoid duplicate declaration issues
|
|
285
|
+
const runId = options.runId || result.runId || result.verdict?.runId;
|
|
286
|
+
|
|
284
287
|
const duration = ((result.duration || result.timings?.total || 0) / 1000).toFixed(1);
|
|
285
288
|
const memUsage = Math.round(process.memoryUsage().heapUsed / 1024 / 1024 / 1024 * 100) / 100;
|
|
286
289
|
const projectPath = process.cwd();
|
|
@@ -449,27 +452,6 @@ function formatScanOutput(result, options = {}) {
|
|
|
449
452
|
lines.push(`${chalk.gray}${BOX.bottomLeft}${BOX.horizontal.repeat(WIDTH - 2)}${BOX.bottomRight}${chalk.reset}`);
|
|
450
453
|
|
|
451
454
|
// DASHBOARD LINK (outside frame)
|
|
452
|
-
const runId = result.runId || result.verdict?.runId;
|
|
453
|
-
if (runId) {
|
|
454
|
-
lines.push('');
|
|
455
|
-
lines.push(` ${chalk.dim}🔗 Dashboard:${chalk.reset} https://app.vibecheckai.dev/runs/${runId}`);
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
// NEXT BEST ACTION (outside frame)
|
|
459
|
-
try {
|
|
460
|
-
const { formatNextActionOneLine, getNextActionForCommand } = require('./next-action');
|
|
461
|
-
const tier = options.tier || 'free';
|
|
462
|
-
const verdict = typeof result.verdict === 'object' ? result.verdict.verdict : result.verdict;
|
|
463
|
-
const nextAction = getNextActionForCommand('scan', { verdict, runId, findings }, tier);
|
|
464
|
-
lines.push('');
|
|
465
|
-
lines.push(` ${formatNextActionOneLine(nextAction)}`);
|
|
466
|
-
} catch (e) {
|
|
467
|
-
// Next action module might not be available, skip gracefully
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
// DASHBOARD LINK (outside frame)
|
|
472
|
-
const runId = result.runId || result.verdict?.runId;
|
|
473
455
|
if (runId) {
|
|
474
456
|
lines.push('');
|
|
475
457
|
lines.push(` ${chalk.dim}🔗 Dashboard:${chalk.reset} https://app.vibecheckai.dev/runs/${runId}`);
|