mu-agent-bridge 1.0.69 → 1.0.70
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/src-ts/cli.js
CHANGED
|
@@ -119,7 +119,7 @@ async function update() {
|
|
|
119
119
|
return 2;
|
|
120
120
|
}
|
|
121
121
|
await stopDaemon();
|
|
122
|
-
await execFileAsync("npm.cmd", ["install", "-g", "mu-agent-bridge@latest", "--no-fund", "--no-audit"], { timeout: 120_000, shell: true });
|
|
122
|
+
await execFileAsync("npm.cmd", ["install", "-g", "mu-agent-bridge@latest", "--no-fund", "--no-audit"], { timeout: 120_000, shell: true, windowsHide: true });
|
|
123
123
|
await startDaemon();
|
|
124
124
|
console.log("核心已更新,旧 daemon 已结束并启动新版本");
|
|
125
125
|
return 0;
|
|
@@ -21,7 +21,7 @@ async function sameDirectory(left, right) {
|
|
|
21
21
|
}
|
|
22
22
|
async function runNpm(args) {
|
|
23
23
|
const command = process.platform === "win32" ? "npm.cmd" : "npm";
|
|
24
|
-
const { stdout } = await execFileAsync(command, args, { timeout: 180_000, maxBuffer: 4 * 1024 * 1024, ...(process.platform === "win32" ? { shell: true } : {}) });
|
|
24
|
+
const { stdout } = await execFileAsync(command, args, { timeout: 180_000, maxBuffer: 4 * 1024 * 1024, windowsHide: true, ...(process.platform === "win32" ? { shell: true } : {}) });
|
|
25
25
|
return stdout.trim();
|
|
26
26
|
}
|
|
27
27
|
async function updateCoreAtStartup(options) {
|
|
@@ -102,7 +102,7 @@ class PluginManager {
|
|
|
102
102
|
try {
|
|
103
103
|
const spec = version ? `${packageName}@${version}` : packageName;
|
|
104
104
|
if (process.platform === "win32")
|
|
105
|
-
await execFileAsync("npm.cmd", ["install", "--prefix", target, "--no-save", "--ignore-scripts", spec], { shell: true });
|
|
105
|
+
await execFileAsync("npm.cmd", ["install", "--prefix", target, "--no-save", "--ignore-scripts", spec], { shell: true, windowsHide: true });
|
|
106
106
|
else
|
|
107
107
|
await execFileAsync("npm", ["install", "--prefix", target, "--no-save", "--ignore-scripts", spec]);
|
|
108
108
|
const candidate = (0, node_path_1.join)(target, "node_modules", packageName);
|
|
@@ -276,7 +276,7 @@ class PluginManager {
|
|
|
276
276
|
this.log("info", `开始安装插件:${packageName}`, undefined, "插件安装");
|
|
277
277
|
try {
|
|
278
278
|
if (process.platform === "win32")
|
|
279
|
-
await execFileAsync("npm.cmd", ["install", "--prefix", prefix, "--no-save", "--ignore-scripts", packageName], { shell: true });
|
|
279
|
+
await execFileAsync("npm.cmd", ["install", "--prefix", prefix, "--no-save", "--ignore-scripts", packageName], { shell: true, windowsHide: true });
|
|
280
280
|
else
|
|
281
281
|
await execFileAsync("npm", ["install", "--prefix", prefix, "--no-save", "--ignore-scripts", packageName]);
|
|
282
282
|
const directory = (0, node_path_1.join)(prefix, "node_modules", name);
|
|
@@ -765,7 +765,7 @@ class PluginManager {
|
|
|
765
765
|
const req = (0, node_module_1.createRequire)((0, node_path_1.resolve)(process.cwd(), "package.json"));
|
|
766
766
|
const roots = [process.cwd()];
|
|
767
767
|
try {
|
|
768
|
-
roots.push((await execFileAsync("npm", ["root", "-g"])).stdout.trim());
|
|
768
|
+
roots.push((await execFileAsync("npm", ["root", "-g"], { windowsHide: true })).stdout.trim());
|
|
769
769
|
}
|
|
770
770
|
catch { /* npm 不可用时仍扫描本地依赖 */ }
|
|
771
771
|
for (const name of names) {
|
|
@@ -76,6 +76,6 @@ class VersionManager {
|
|
|
76
76
|
this.saveTask = this.saveTask.catch(() => undefined).then(async () => { await (0, promises_1.mkdir)(this.options.stateDir, { recursive: true }); await (0, promises_1.writeFile)((0, node_path_1.join)(this.options.stateDir, "versions.json"), JSON.stringify(this.list(), null, 2)); });
|
|
77
77
|
await this.saveTask;
|
|
78
78
|
}
|
|
79
|
-
async queryNpm(args) { return (await execFileAsync(process.platform === "win32" ? "npm.cmd" : "npm", args, { timeout: 30_000, maxBuffer: 1024 * 1024, ...(process.platform === "win32" ? { shell: true } : {}) })).stdout; }
|
|
79
|
+
async queryNpm(args) { return (await execFileAsync(process.platform === "win32" ? "npm.cmd" : "npm", args, { timeout: 30_000, maxBuffer: 1024 * 1024, windowsHide: true, ...(process.platform === "win32" ? { shell: true } : {}) })).stdout; }
|
|
80
80
|
}
|
|
81
81
|
exports.VersionManager = VersionManager;
|
|
@@ -78,7 +78,7 @@ const node_util_1 = require("node:util");
|
|
|
78
78
|
strict_1.default.match(setup, /环境与桥接服务/);
|
|
79
79
|
strict_1.default.match(setup, /Get-ChildItem -LiteralPath \$root -Filter \$fileName -File -Recurse/);
|
|
80
80
|
strict_1.default.match(setup, /api\/plugins\/\$agent\/config/);
|
|
81
|
-
strict_1.default.
|
|
81
|
+
strict_1.default.doesNotMatch(setup, /TopMost = \$true/);
|
|
82
82
|
strict_1.default.match(setup, /BringToFront\(\)/);
|
|
83
83
|
strict_1.default.match(setup, /Invoke-AunCommand @\('list'\)/);
|
|
84
84
|
strict_1.default.match(setup, /自动解除未安装千问办公的残留绑定/);
|
|
@@ -109,7 +109,7 @@ const node_util_1 = require("node:util");
|
|
|
109
109
|
strict_1.default.match(setup, /AddSeconds\(180\)/);
|
|
110
110
|
strict_1.default.match(setup, /System.Windows.Forms.LinkLabel/);
|
|
111
111
|
strict_1.default.match(setup, /重新检测/);
|
|
112
|
-
for (const domain of ["qwenwork.cn/download", "www.doubao.com", "www.workbuddy.ai", "
|
|
112
|
+
for (const domain of ["qwenwork.cn/download", "www.doubao.com", "www.workbuddy.ai", "download.deepseek.com/desktop/dsh-latest-windows-x64.exe"])
|
|
113
113
|
strict_1.default.ok(setup.includes(domain));
|
|
114
114
|
});
|
|
115
115
|
(0, node_test_1.default)("先检测并显示缺失 App,再配置 AID,最后单独绑定 Agent", async () => {
|