aiblueprint-cli 1.4.40 → 1.4.41
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/dist/cli.js +84 -37
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -5,15 +5,29 @@ var __getProtoOf = Object.getPrototypeOf;
|
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
function __accessProp(key) {
|
|
9
|
+
return this[key];
|
|
10
|
+
}
|
|
11
|
+
var __toESMCache_node;
|
|
12
|
+
var __toESMCache_esm;
|
|
8
13
|
var __toESM = (mod, isNodeMode, target) => {
|
|
14
|
+
var canCache = mod != null && typeof mod === "object";
|
|
15
|
+
if (canCache) {
|
|
16
|
+
var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
|
|
17
|
+
var cached = cache.get(mod);
|
|
18
|
+
if (cached)
|
|
19
|
+
return cached;
|
|
20
|
+
}
|
|
9
21
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
10
22
|
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
11
23
|
for (let key of __getOwnPropNames(mod))
|
|
12
24
|
if (!__hasOwnProp.call(to, key))
|
|
13
25
|
__defProp(to, key, {
|
|
14
|
-
get: (
|
|
26
|
+
get: __accessProp.bind(mod, key),
|
|
15
27
|
enumerable: true
|
|
16
28
|
});
|
|
29
|
+
if (canCache)
|
|
30
|
+
cache.set(mod, to);
|
|
17
31
|
return to;
|
|
18
32
|
};
|
|
19
33
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
@@ -32921,45 +32935,78 @@ async function setupOpenCodeSymlink(claudeDir, customOpenCodeFolder, customClaud
|
|
|
32921
32935
|
import { execSync } from "child_process";
|
|
32922
32936
|
import path4 from "path";
|
|
32923
32937
|
import os5 from "os";
|
|
32924
|
-
|
|
32925
|
-
|
|
32926
|
-
|
|
32927
|
-
|
|
32928
|
-
|
|
32929
|
-
|
|
32938
|
+
var isWindows = os5.platform() === "win32";
|
|
32939
|
+
function checkCommand(cmd) {
|
|
32940
|
+
try {
|
|
32941
|
+
const whichCmd = isWindows ? `where ${cmd}` : `which ${cmd}`;
|
|
32942
|
+
execSync(whichCmd, { stdio: "ignore" });
|
|
32943
|
+
return true;
|
|
32944
|
+
} catch {
|
|
32945
|
+
return false;
|
|
32946
|
+
}
|
|
32947
|
+
}
|
|
32948
|
+
function silentExec(command, options) {
|
|
32949
|
+
try {
|
|
32950
|
+
execSync(command, {
|
|
32951
|
+
stdio: "pipe",
|
|
32952
|
+
timeout: options?.timeout ?? 60000,
|
|
32953
|
+
cwd: options?.cwd,
|
|
32954
|
+
env: { ...process.env, CI: "true" }
|
|
32955
|
+
});
|
|
32956
|
+
return true;
|
|
32957
|
+
} catch {
|
|
32958
|
+
return false;
|
|
32959
|
+
}
|
|
32960
|
+
}
|
|
32961
|
+
function installBun() {
|
|
32962
|
+
if (!isWindows) {
|
|
32963
|
+
if (silentExec("curl -fsSL https://bun.sh/install | bash", { timeout: 120000 })) {
|
|
32930
32964
|
return true;
|
|
32931
|
-
} catch {
|
|
32932
|
-
return false;
|
|
32933
32965
|
}
|
|
32934
|
-
}
|
|
32966
|
+
}
|
|
32967
|
+
return silentExec("npm install -g bun");
|
|
32968
|
+
}
|
|
32969
|
+
function installCcusage() {
|
|
32970
|
+
return silentExec("npm install -g ccusage");
|
|
32971
|
+
}
|
|
32972
|
+
function logSkipped(name) {
|
|
32973
|
+
console.log(source_default.gray(` ${name} already installed, skipping...`));
|
|
32974
|
+
}
|
|
32975
|
+
function logInstalling(name) {
|
|
32976
|
+
console.log(source_default.yellow(`
|
|
32977
|
+
Installing ${name}...`));
|
|
32978
|
+
}
|
|
32979
|
+
function logInstalled(name) {
|
|
32980
|
+
console.log(source_default.green(` ✓ ${name} installed`));
|
|
32981
|
+
}
|
|
32982
|
+
function logInstallFailed(name, manualCommand) {
|
|
32983
|
+
console.log("");
|
|
32984
|
+
console.log(source_default.yellow(` ⚠ Could not install ${name} automatically`));
|
|
32985
|
+
console.log(source_default.gray(` This is usually a permissions issue with npm global installs.`));
|
|
32986
|
+
console.log(source_default.gray(` Run this manually to fix it:
|
|
32987
|
+
`));
|
|
32988
|
+
console.log(source_default.white(` ${manualCommand}`));
|
|
32989
|
+
console.log("");
|
|
32990
|
+
}
|
|
32991
|
+
async function checkAndInstallDependencies() {
|
|
32935
32992
|
if (checkCommand("bun")) {
|
|
32936
|
-
|
|
32993
|
+
logSkipped("bun");
|
|
32937
32994
|
} else {
|
|
32938
|
-
|
|
32939
|
-
|
|
32940
|
-
|
|
32941
|
-
|
|
32942
|
-
|
|
32943
|
-
timeout: 60000,
|
|
32944
|
-
env: { ...process.env, CI: "true" }
|
|
32945
|
-
});
|
|
32946
|
-
} catch {
|
|
32947
|
-
console.log(source_default.yellow(" ⚠ Failed to install bun. Please install it manually: npm install -g bun"));
|
|
32995
|
+
logInstalling("bun");
|
|
32996
|
+
if (installBun()) {
|
|
32997
|
+
logInstalled("bun");
|
|
32998
|
+
} else {
|
|
32999
|
+
logInstallFailed("bun", isWindows ? "npm install -g bun" : "curl -fsSL https://bun.sh/install | bash");
|
|
32948
33000
|
}
|
|
32949
33001
|
}
|
|
32950
33002
|
if (checkCommand("ccusage")) {
|
|
32951
|
-
|
|
33003
|
+
logSkipped("ccusage");
|
|
32952
33004
|
} else {
|
|
32953
|
-
|
|
32954
|
-
|
|
32955
|
-
|
|
32956
|
-
|
|
32957
|
-
|
|
32958
|
-
timeout: 60000,
|
|
32959
|
-
env: { ...process.env, CI: "true" }
|
|
32960
|
-
});
|
|
32961
|
-
} catch {
|
|
32962
|
-
console.log(source_default.yellow(" ⚠ Failed to install ccusage. Please install it manually: npm install -g ccusage"));
|
|
33005
|
+
logInstalling("ccusage");
|
|
33006
|
+
if (installCcusage()) {
|
|
33007
|
+
logInstalled("ccusage");
|
|
33008
|
+
} else {
|
|
33009
|
+
logInstallFailed("ccusage", "sudo npm install -g ccusage");
|
|
32963
33010
|
}
|
|
32964
33011
|
}
|
|
32965
33012
|
}
|
|
@@ -32970,7 +33017,7 @@ async function installScriptsDependencies(claudeDir) {
|
|
|
32970
33017
|
try {
|
|
32971
33018
|
execSync("bun install --no-save", {
|
|
32972
33019
|
cwd: scriptsDir,
|
|
32973
|
-
stdio: "
|
|
33020
|
+
stdio: "pipe",
|
|
32974
33021
|
timeout: 60000,
|
|
32975
33022
|
env: {
|
|
32976
33023
|
...process.env,
|
|
@@ -36510,10 +36557,10 @@ import { spawn as spawn2 } from "child_process";
|
|
|
36510
36557
|
import { execSync as execSync4 } from "child_process";
|
|
36511
36558
|
import path21 from "path";
|
|
36512
36559
|
import os19 from "os";
|
|
36513
|
-
function
|
|
36560
|
+
function checkCommand2(cmd) {
|
|
36514
36561
|
try {
|
|
36515
|
-
const
|
|
36516
|
-
const whichCmd =
|
|
36562
|
+
const isWindows2 = os19.platform() === "win32";
|
|
36563
|
+
const whichCmd = isWindows2 ? `where ${cmd}` : `which ${cmd}`;
|
|
36517
36564
|
execSync4(whichCmd, { stdio: "ignore" });
|
|
36518
36565
|
return true;
|
|
36519
36566
|
} catch {
|
|
@@ -36534,7 +36581,7 @@ Usage: aiblueprint ${prefix} <action>`));
|
|
|
36534
36581
|
`));
|
|
36535
36582
|
}
|
|
36536
36583
|
async function executeScript(scriptName, claudeDir) {
|
|
36537
|
-
if (!
|
|
36584
|
+
if (!checkCommand2("bun")) {
|
|
36538
36585
|
console.error(source_default.red("Bun is not installed. Install with: npm install -g bun"));
|
|
36539
36586
|
return 1;
|
|
36540
36587
|
}
|