@sellable/install 0.1.30 → 0.1.31
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/bin/sellable-install.mjs +60 -27
- package/package.json +1 -1
package/bin/sellable-install.mjs
CHANGED
|
@@ -1394,44 +1394,77 @@ function verify(opts) {
|
|
|
1394
1394
|
function printNextSteps(installedHosts) {
|
|
1395
1395
|
console.log("");
|
|
1396
1396
|
printDivider();
|
|
1397
|
-
console.log(
|
|
1397
|
+
console.log(
|
|
1398
|
+
` ${C.bold}You're set. Let's launch your first campaign.${C.reset}`
|
|
1399
|
+
);
|
|
1398
1400
|
printDivider();
|
|
1399
1401
|
console.log("");
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
` 1. Quit and reopen ${installedHosts.join(" and ")} so MCP tools reload.`
|
|
1403
|
-
);
|
|
1404
|
-
console.log(" 2. Start a new thread and run:");
|
|
1405
|
-
if (installedHosts.includes("Claude Code")) {
|
|
1406
|
-
console.log(
|
|
1407
|
-
` ${C.cyan}/sellable:create-campaign${C.reset} ${C.grey}(Claude Code)${C.reset}`
|
|
1408
|
-
);
|
|
1409
|
-
}
|
|
1410
|
-
if (installedHosts.includes("Codex")) {
|
|
1411
|
-
console.log(
|
|
1412
|
-
` ${C.cyan}$sellable:create-campaign${C.reset} ${C.grey}(Codex)${C.reset}`
|
|
1413
|
-
);
|
|
1414
|
-
}
|
|
1402
|
+
|
|
1403
|
+
if (installedHosts.length === 0) {
|
|
1415
1404
|
console.log(
|
|
1416
|
-
`
|
|
1405
|
+
` ${C.yellow}!${C.reset} Neither Claude Code nor Codex was found on this machine.`
|
|
1417
1406
|
);
|
|
1418
1407
|
console.log("");
|
|
1408
|
+
console.log(` Install one of them, then rerun this command:`);
|
|
1409
|
+
console.log(` ${C.cyan}npx -y @sellable/install@latest${C.reset}`);
|
|
1410
|
+
console.log("");
|
|
1419
1411
|
console.log(
|
|
1420
|
-
`
|
|
1421
|
-
);
|
|
1422
|
-
console.log(` Need help?`);
|
|
1423
|
-
console.log(
|
|
1424
|
-
` Slack: ${C.cyan}https://join.slack.com/t/ditttoai/shared_invite/zt-3wvs86yau-csKZGP3iGXO3oEiAUmtH9A${C.reset}`
|
|
1412
|
+
` ${C.grey}Claude Code: https://docs.anthropic.com/en/docs/claude-code${C.reset}`
|
|
1425
1413
|
);
|
|
1426
|
-
console.log(` Email: ${C.cyan}admin@dittto.ai${C.reset}`);
|
|
1427
|
-
} else {
|
|
1428
1414
|
console.log(
|
|
1429
|
-
|
|
1415
|
+
` ${C.grey}Codex: https://github.com/openai/codex${C.reset}`
|
|
1430
1416
|
);
|
|
1417
|
+
console.log("");
|
|
1418
|
+
return;
|
|
1419
|
+
}
|
|
1420
|
+
|
|
1421
|
+
const useClaude = installedHosts.includes("Claude Code");
|
|
1422
|
+
const primary = useClaude
|
|
1423
|
+
? {
|
|
1424
|
+
label: "Claude Code",
|
|
1425
|
+
cmd: "claude",
|
|
1426
|
+
slash: "/sellable:create-campaign",
|
|
1427
|
+
}
|
|
1428
|
+
: { label: "Codex", cmd: "codex", slash: "/sellable:create-campaign" };
|
|
1429
|
+
const secondary =
|
|
1430
|
+
useClaude && installedHosts.includes("Codex")
|
|
1431
|
+
? { label: "Codex", cmd: "codex", slash: "/sellable:create-campaign" }
|
|
1432
|
+
: null;
|
|
1433
|
+
|
|
1434
|
+
console.log(
|
|
1435
|
+
` ${C.bold}Try it now${C.reset} ${C.grey}(in a new terminal)${C.reset}`
|
|
1436
|
+
);
|
|
1437
|
+
console.log("");
|
|
1438
|
+
console.log(` ${C.grey}1.${C.reset} Open ${primary.label}:`);
|
|
1439
|
+
console.log("");
|
|
1440
|
+
console.log(` ${C.cyan}${primary.cmd}${C.reset}`);
|
|
1441
|
+
console.log("");
|
|
1442
|
+
console.log(` ${C.grey}2.${C.reset} Type this and hit enter:`);
|
|
1443
|
+
console.log("");
|
|
1444
|
+
console.log(` ${C.cyan}${primary.slash}${C.reset}`);
|
|
1445
|
+
console.log("");
|
|
1446
|
+
console.log(
|
|
1447
|
+
` ${C.grey}First time? Sellable signs you up automatically — just answer in chat.${C.reset}`
|
|
1448
|
+
);
|
|
1449
|
+
|
|
1450
|
+
if (secondary) {
|
|
1451
|
+
console.log("");
|
|
1431
1452
|
console.log(
|
|
1432
|
-
`
|
|
1453
|
+
` ${C.grey}Prefer ${secondary.label}? Run ${C.reset}${C.cyan}${secondary.cmd}${C.reset}${C.grey} and type ${C.reset}${C.cyan}${secondary.slash}${C.reset}${C.grey}.${C.reset}`
|
|
1433
1454
|
);
|
|
1434
1455
|
}
|
|
1456
|
+
|
|
1457
|
+
console.log("");
|
|
1458
|
+
printDivider();
|
|
1459
|
+
console.log("");
|
|
1460
|
+
console.log(
|
|
1461
|
+
` Verify install: ${C.cyan}sellable --verify-only --host all${C.reset}`
|
|
1462
|
+
);
|
|
1463
|
+
console.log(` Need help?`);
|
|
1464
|
+
console.log(
|
|
1465
|
+
` Slack: ${C.cyan}https://join.slack.com/t/ditttoai/shared_invite/zt-3wvs86yau-csKZGP3iGXO3oEiAUmtH9A${C.reset}`
|
|
1466
|
+
);
|
|
1467
|
+
console.log(` Email: ${C.cyan}admin@dittto.ai${C.reset}`);
|
|
1435
1468
|
console.log("");
|
|
1436
1469
|
}
|
|
1437
1470
|
|
|
@@ -1514,7 +1547,7 @@ async function main() {
|
|
|
1514
1547
|
verify(opts);
|
|
1515
1548
|
}
|
|
1516
1549
|
|
|
1517
|
-
if (!opts.verifyOnly
|
|
1550
|
+
if (!opts.verifyOnly) {
|
|
1518
1551
|
printNextSteps(installedHosts);
|
|
1519
1552
|
}
|
|
1520
1553
|
} catch (error) {
|