@delta-infra/cli 1.0.46 → 1.0.48
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/checksums.txt +5 -5
- package/package.json +1 -1
- package/scripts/install-wizard.js +70 -11
- package/scripts/install.js +5 -3
package/checksums.txt
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
915ea8aa85e7cbed2edb47273fa755da58e7e422c2f70f897582a8389a6d1e28 delta-cli-darwin-amd64.tar.gz
|
|
2
|
+
87dd614dfea3e5a1c8776a874f5c58b767454ca214e1aa0de6920e561c808ddf delta-cli-darwin-arm64.tar.gz
|
|
3
|
+
43a594728d1047389fdd57b3f12252b73d772a903ef27ff3ce13e804226a2a06 delta-cli-linux-amd64.tar.gz
|
|
4
|
+
29a7b43babdd8d61f11189762518c513c619a6a9106b02f01460c09c71df2fb2 delta-cli-linux-arm64.tar.gz
|
|
5
|
+
7f61f034ed7ccd3034bccaf2a891973dc82e4bf71a885124a01ae48c5dc6af60 delta-cli-windows-amd64.zip
|
package/package.json
CHANGED
|
@@ -214,12 +214,12 @@ async function stepInstallGlobally(msg) {
|
|
|
214
214
|
// Install the npm package (which triggers postinstall → install.js),
|
|
215
215
|
// then explicitly download the correct version binary in case the
|
|
216
216
|
// npx cache has stale package.json that misleads install.js.
|
|
217
|
-
await runSilentAsync("npm", ["install", "-g", PKG], { timeout:
|
|
217
|
+
await runSilentAsync("npm", ["install", "-g", PKG], { timeout: 300000 });
|
|
218
218
|
if (targetVer) {
|
|
219
219
|
await runSilentAsync(process.execPath, [
|
|
220
220
|
path.join(__dirname, "install.js"),
|
|
221
221
|
], {
|
|
222
|
-
timeout:
|
|
222
|
+
timeout: 300000,
|
|
223
223
|
env: { ...process.env, DELTA_CLI_RUN: "true", DELTA_CLI_VERSION: targetVer },
|
|
224
224
|
});
|
|
225
225
|
}
|
|
@@ -232,12 +232,45 @@ async function stepInstallGlobally(msg) {
|
|
|
232
232
|
}
|
|
233
233
|
|
|
234
234
|
async function skillsAlreadyInstalled() {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
235
|
+
const agentsDir = path.join(osHomedir(), ".agents", "skills");
|
|
236
|
+
return fs.existsSync(path.join(agentsDir, "delta-sandbox", "SKILL.md")) &&
|
|
237
|
+
fs.existsSync(path.join(agentsDir, "delta-shared", "SKILL.md"));
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
function installSkillsFromLocalPackage() {
|
|
241
|
+
const npmRoot = runSilent("npm", ["root", "-g"], { timeout: 10000 })
|
|
242
|
+
.toString().trim();
|
|
243
|
+
const pkgSkillsDir = path.join(npmRoot, PKG, "skills");
|
|
244
|
+
if (!fs.existsSync(path.join(pkgSkillsDir, "delta-sandbox", "SKILL.md"))) {
|
|
245
|
+
return false;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
const home = osHomedir();
|
|
249
|
+
const agentsDir = path.join(home, ".agents", "skills");
|
|
250
|
+
fs.mkdirSync(agentsDir, { recursive: true });
|
|
251
|
+
|
|
252
|
+
for (const skill of ["delta-sandbox", "delta-shared"]) {
|
|
253
|
+
const src = path.join(pkgSkillsDir, skill);
|
|
254
|
+
if (!fs.existsSync(src)) continue;
|
|
255
|
+
const dst = path.join(agentsDir, skill);
|
|
256
|
+
fs.rmSync(dst, { recursive: true, force: true });
|
|
257
|
+
fs.cpSync(src, dst, { recursive: true });
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
const claudeDir = path.join(home, ".claude", "skills");
|
|
261
|
+
if (fs.existsSync(path.dirname(claudeDir))) {
|
|
262
|
+
fs.mkdirSync(claudeDir, { recursive: true });
|
|
263
|
+
for (const skill of ["delta-sandbox", "delta-shared"]) {
|
|
264
|
+
const linkPath = path.join(claudeDir, skill);
|
|
265
|
+
const targetPath = path.join(agentsDir, skill);
|
|
266
|
+
try {
|
|
267
|
+
fs.rmSync(linkPath, { force: true });
|
|
268
|
+
fs.symlinkSync(path.relative(path.dirname(linkPath), targetPath), linkPath);
|
|
269
|
+
} catch { /* symlink may fail on some platforms */ }
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
return true;
|
|
241
274
|
}
|
|
242
275
|
|
|
243
276
|
async function stepInstallSkills(msg) {
|
|
@@ -248,17 +281,24 @@ async function stepInstallSkills(msg) {
|
|
|
248
281
|
s.stop(msg.step2Skip);
|
|
249
282
|
return;
|
|
250
283
|
}
|
|
284
|
+
|
|
285
|
+
try {
|
|
286
|
+
if (installSkillsFromLocalPackage()) {
|
|
287
|
+
s.stop(msg.step2Done);
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
} catch { }
|
|
291
|
+
|
|
251
292
|
const GH_PROXY = "https://gh-proxy.com/https://github.com";
|
|
252
293
|
const urls = [
|
|
253
294
|
`${GH_PROXY}/${SKILLS_REPO}`,
|
|
254
|
-
SKILLS_REPO,
|
|
255
295
|
`https://github.com/${SKILLS_REPO}`,
|
|
256
296
|
];
|
|
257
297
|
let lastErr;
|
|
258
298
|
for (const url of urls) {
|
|
259
299
|
try {
|
|
260
300
|
await runSilentAsync("npx", ["-y", "skills", "add", url, "-y", "-g"], {
|
|
261
|
-
timeout:
|
|
301
|
+
timeout: 60000,
|
|
262
302
|
env: { ...process.env, GIT_TERMINAL_PROMPT: "0" },
|
|
263
303
|
});
|
|
264
304
|
s.stop(msg.step2Done);
|
|
@@ -342,9 +382,28 @@ async function stepAuthLogin(msg) {
|
|
|
342
382
|
async function stepUninstallSkills(msg) {
|
|
343
383
|
const s = createSpinner();
|
|
344
384
|
s.start("Removing AI skills...");
|
|
385
|
+
|
|
386
|
+
const home = osHomedir();
|
|
387
|
+
const agentsDir = path.join(home, ".agents", "skills");
|
|
388
|
+
const claudeDir = path.join(home, ".claude", "skills");
|
|
389
|
+
let removedLocally = false;
|
|
390
|
+
|
|
391
|
+
for (const skill of ["delta-sandbox", "delta-shared"]) {
|
|
392
|
+
try {
|
|
393
|
+
fs.rmSync(path.join(agentsDir, skill), { recursive: true, force: true });
|
|
394
|
+
fs.rmSync(path.join(claudeDir, skill), { force: true });
|
|
395
|
+
removedLocally = true;
|
|
396
|
+
} catch { }
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
if (removedLocally) {
|
|
400
|
+
s.stop("AI skills removed");
|
|
401
|
+
return;
|
|
402
|
+
}
|
|
403
|
+
|
|
345
404
|
try {
|
|
346
405
|
await runSilentAsync("npx", ["-y", "skills", "remove", "delta-sandbox", "delta-shared", "-g"], {
|
|
347
|
-
timeout:
|
|
406
|
+
timeout: 60000,
|
|
348
407
|
});
|
|
349
408
|
s.stop("AI skills removed");
|
|
350
409
|
} catch {
|
package/scripts/install.js
CHANGED
|
@@ -130,7 +130,7 @@ function probeMirrors(version, cb) {
|
|
|
130
130
|
];
|
|
131
131
|
var child;
|
|
132
132
|
try {
|
|
133
|
-
child = require("child_process").spawn("curl", args, { stdio: ["ignore", "pipe", "pipe"], timeout:
|
|
133
|
+
child = require("child_process").spawn("curl", args, { stdio: ["ignore", "pipe", "pipe"], timeout: 5000 });
|
|
134
134
|
var stdout = "";
|
|
135
135
|
var stderr = "";
|
|
136
136
|
child.stdout.on("data", function(d) { stdout += d; });
|
|
@@ -153,7 +153,7 @@ function probeMirrors(version, cb) {
|
|
|
153
153
|
})(i);
|
|
154
154
|
}
|
|
155
155
|
// Safety timeout: if probes hang, continue without mirrors after 10s
|
|
156
|
-
setTimeout(finish,
|
|
156
|
+
setTimeout(finish, 5000);
|
|
157
157
|
}
|
|
158
158
|
|
|
159
159
|
function releaseAssetUrls(version, assetName, cb) {
|
|
@@ -225,7 +225,9 @@ function download(url, destPath) {
|
|
|
225
225
|
assertAllowedHost(url);
|
|
226
226
|
const args = [
|
|
227
227
|
"--fail", "--location", "--silent", "--show-error",
|
|
228
|
-
"--connect-timeout", "10",
|
|
228
|
+
"--connect-timeout", "10",
|
|
229
|
+
"--max-time", "45",
|
|
230
|
+
"--speed-limit", "50000", "--speed-time", "10",
|
|
229
231
|
"--max-redirs", "3",
|
|
230
232
|
"--output", destPath,
|
|
231
233
|
];
|