visionclaw 0.1.158 → 0.1.159

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/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## [0.1.159](https://github.com/babelcloud/visionclaw/compare/v0.1.158...v0.1.159) (2026-03-22)
2
+
3
+
4
+
1
5
  ## [0.1.158](https://github.com/babelcloud/visionclaw/compare/v0.1.157...v0.1.158) (2026-03-22)
2
6
 
3
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"restart.d.ts","sourceRoot":"","sources":["../../src/utils/restart.ts"],"names":[],"mappings":"AAiDA,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,wBAAgB,oBAAoB,IAAI,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAgB5E;AAkCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,SAAQ,EACf,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACpC,IAAI,CAyDN"}
1
+ {"version":3,"file":"restart.d.ts","sourceRoot":"","sources":["../../src/utils/restart.ts"],"names":[],"mappings":"AASA,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,wBAAgB,oBAAoB,IAAI,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAgB5E;AAoBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,SAAQ,EACf,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACpC,IAAI,CAyDN"}
@@ -1,51 +1,9 @@
1
- import { exec, execFileSync, execSync } from "node:child_process";
1
+ import { exec, execFileSync } from "node:child_process";
2
2
  import { promisify } from "node:util";
3
- import { existsSync } from "node:fs";
4
- import { join } from "node:path";
5
3
  import { logger } from "../logger.js";
6
4
  const execAsync = promisify(exec);
7
5
  const PACKAGE_NAME = "visionclaw";
8
6
  const RESTART_EXIT_CODE = 42;
9
- /**
10
- * Locate the globally-installed bundle.cjs after an upgrade.
11
- * Checks pnpm global root first, then npm.
12
- */
13
- function resolveGlobalBundlePath() {
14
- for (const cmd of ["pnpm root -g", "npm root -g"]) {
15
- try {
16
- const root = execSync(cmd, { encoding: "utf-8" }).trim();
17
- const bundlePath = join(root, PACKAGE_NAME, "dist-agent", "bundle.cjs");
18
- if (existsSync(bundlePath))
19
- return bundlePath;
20
- const distPath = join(root, PACKAGE_NAME, "dist", "index.js");
21
- if (existsSync(distPath))
22
- return distPath;
23
- }
24
- catch {
25
- // package manager not available
26
- }
27
- }
28
- return null;
29
- }
30
- /**
31
- * Collect the original trailing args (after `--`) that were passed to the
32
- * pm2-managed script, so they can be forwarded when doing `pm2 delete` +
33
- * `pm2 start`. pm2 sets `PM2_RESTART_ARGS` or we can read from process.argv.
34
- */
35
- function collectPm2TrailingArgs() {
36
- const argv = process.argv.slice(2);
37
- const args = [];
38
- for (let i = 0; i < argv.length; i++) {
39
- const arg = argv[i];
40
- if (arg === "--profile" && i + 1 < argv.length) {
41
- args.push("--profile", argv[++i]);
42
- }
43
- else if (arg === "--debug" || arg === "-d") {
44
- args.push("--debug");
45
- }
46
- }
47
- return args;
48
- }
49
7
  export function isElectronChild() {
50
8
  return process.env.VISIONCLAW_ELECTRON === "1";
51
9
  }
@@ -71,18 +29,6 @@ async function restartViaProcessManager(pm) {
71
29
  }
72
30
  if (pm === "pm2") {
73
31
  const pmId = process.env.pm_id ?? process.env.name ?? PACKAGE_NAME;
74
- const newEntry = resolveGlobalBundlePath();
75
- if (newEntry) {
76
- logger.system(`pm2: switching entry to ${newEntry}`);
77
- await execAsync(`pm2 delete ${pmId}`).catch((_e) => { });
78
- const interpreter = process.execPath;
79
- const trailingArgs = collectPm2TrailingArgs();
80
- const trailingSuffix = trailingArgs.length > 0
81
- ? ` -- ${trailingArgs.join(" ")}`
82
- : "";
83
- const { stdout, stderr } = await execAsync(`pm2 start "${newEntry}" --name ${PACKAGE_NAME} --interpreter "${interpreter}"${trailingSuffix}`);
84
- return (stdout + stderr).trim();
85
- }
86
32
  const { stdout, stderr } = await execAsync(`pm2 restart ${pmId}`);
87
33
  return (stdout + stderr).trim();
88
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"restart.js","sourceRoot":"","sources":["../../src/utils/restart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restart.js","sourceRoot":"","sources":["../../src/utils/restart.ts"],"names":[],"mappings":"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"}