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.
@@ -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.match(setup, /TopMost = \$true/);
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", "github.com/deepseek-ai/deepseek-harness"])
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 () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mu-agent-bridge",
3
- "version": "1.0.69",
3
+ "version": "1.0.70",
4
4
  "description": "将 AUN Agent 连接到本地桌面 AI 客户端的插件平台。",
5
5
  "main": "dist/src-ts/cli.js",
6
6
  "bin": {