@elizaos/plugin-computeruse 2.0.3-beta.6 → 2.0.3-beta.7

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.
@@ -9,6 +9,7 @@ import type { ScreenRegion, ScreenSize, WindowInfo } from "../types.js";
9
9
  export declare function findWindowsByQuery(query: string, windows?: WindowInfo[]): WindowInfo[];
10
10
  export declare function resolveWindowMatch(queryOrId: string, windows?: WindowInfo[]): WindowInfo | null;
11
11
  export declare function listWindows(): WindowInfo[];
12
+ export declare function parseDarwinWindowOutput(output: string): WindowInfo[];
12
13
  /**
13
14
  * The currently-focused / frontmost window (#9170 M12 — cua
14
15
  * `get_current_window_id`). Best-effort per-OS query; returns `null` when no
@@ -1 +1 @@
1
- {"version":3,"file":"windows-list.d.ts","sourceRoot":"","sources":["../../src/platform/windows-list.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA0BxE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,UAAU,EAAkB,GACpC,UAAU,EAAE,CAUd;AAoBD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,UAAU,EAAkB,GACpC,UAAU,GAAG,IAAI,CAEnB;AAmDD,wBAAgB,WAAW,IAAI,UAAU,EAAE,CAa1C;AA4FD;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,UAAU,GAAG,IAAI,CAuDnD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,CAQnE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAapC;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAiF/D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAqClD;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAEtD;AAoFD,wBAAgB,cAAc,CAAC,WAAW,SAAS,GAAG;IACpD,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAuDA;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,CAAC,CAAC,EAAE,MAAM,EACV,CAAC,CAAC,EAAE,MAAM,GACT;IACD,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CASA;AAID,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA0BrD;AAID,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA8BrD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAqCpD;AAID,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAuBlD;AAED,eAAO,MAAM,YAAY,oBAAc,CAAC;AACxC,eAAO,MAAM,YAAY,oBAAc,CAAC;AACxC,eAAO,MAAM,gBAAgB,qBAAe,CAAC;AAC7C,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,WAAW,mBAAa,CAAC;AACtC,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,cAAc,sBAAgB,CAAC;AAC5C,eAAO,MAAM,YAAY,oBAAc,CAAC;AAIxC;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,QAEmC,CAAC;AAEpF,wBAAgB,aAAa,IAAI,UAAU,CA+H1C"}
1
+ {"version":3,"file":"windows-list.d.ts","sourceRoot":"","sources":["../../src/platform/windows-list.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA0BxE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,UAAU,EAAkB,GACpC,UAAU,EAAE,CAUd;AAoBD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,UAAU,EAAkB,GACpC,UAAU,GAAG,IAAI,CAEnB;AA+DD,wBAAgB,WAAW,IAAI,UAAU,EAAE,CAa1C;AAoCD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAOpE;AAgHD;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,UAAU,GAAG,IAAI,CA0DnD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,CAQnE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAapC;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAiF/D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAqClD;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAEtD;AAoFD,wBAAgB,cAAc,CAAC,WAAW,SAAS,GAAG;IACpD,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAuDA;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,CAAC,CAAC,EAAE,MAAM,EACV,CAAC,CAAC,EAAE,MAAM,GACT;IACD,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CASA;AAID,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA0BrD;AAID,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA8BrD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAqCpD;AAID,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAuBlD;AAED,eAAO,MAAM,YAAY,oBAAc,CAAC;AACxC,eAAO,MAAM,YAAY,oBAAc,CAAC;AACxC,eAAO,MAAM,gBAAgB,qBAAe,CAAC;AAC7C,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,WAAW,mBAAa,CAAC;AACtC,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,eAAe,uBAAiB,CAAC;AAC9C,eAAO,MAAM,cAAc,sBAAgB,CAAC;AAC5C,eAAO,MAAM,YAAY,oBAAc,CAAC;AAIxC;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,QAEmC,CAAC;AAEpF,wBAAgB,aAAa,IAAI,UAAU,CA+H1C"}
@@ -8006,7 +8006,7 @@ var init_terminal = __esm(() => {
8006
8006
  });
8007
8007
 
8008
8008
  // src/platform/windows-list.ts
8009
- import { execSync as execSync5 } from "node:child_process";
8009
+ import { execFileSync as execFileSync7, execSync as execSync5 } from "node:child_process";
8010
8010
  function escapeAppleScriptString(value) {
8011
8011
  return value.replace(/\\/g, "\\\\").replace(/"/g, "\\\"");
8012
8012
  }
@@ -8051,36 +8051,41 @@ function runDarwinWindowScript(target, body) {
8051
8051
  const termList = terms.length > 0 ? `{${terms.map((term) => `"${escapeAppleScriptString(term)}"`).join(", ")}}` : "{}";
8052
8052
  const script = `
8053
8053
  tell application "System Events"
8054
+ set matchedProc to missing value
8054
8055
  repeat with proc in (every process whose visible is true)
8055
8056
  try
8056
8057
  set procName to name of proc
8057
- set matched to false
8058
8058
  repeat with term in ${termList}
8059
8059
  if procName contains term then
8060
- set matched to true
8060
+ set matchedProc to contents of proc
8061
8061
  exit repeat
8062
8062
  end if
8063
8063
  end repeat
8064
- if not matched then
8064
+ end try
8065
+ if matchedProc is not missing value then exit repeat
8066
+ end repeat
8067
+ if matchedProc is missing value then
8068
+ repeat with proc in (every process whose visible is true)
8069
+ try
8065
8070
  repeat with w in (every window of proc)
8066
- set winName to name of w
8067
8071
  repeat with term in ${termList}
8068
- if winName contains term then
8069
- set matched to true
8072
+ if (name of w) contains term then
8073
+ set matchedProc to contents of proc
8070
8074
  exit repeat
8071
8075
  end if
8072
8076
  end repeat
8073
- if matched then exit repeat
8077
+ if matchedProc is not missing value then exit repeat
8074
8078
  end repeat
8075
- end if
8076
- if matched then
8077
- ${body}
8078
- exit repeat
8079
- end if
8080
- end try
8081
- end repeat
8079
+ end try
8080
+ if matchedProc is not missing value then exit repeat
8081
+ end repeat
8082
+ end if
8083
+ if matchedProc is not missing value then
8084
+ set proc to matchedProc
8085
+ ${body}
8086
+ end if
8082
8087
  end tell`;
8083
- return runCommand("osascript", ["-e", script], 5000);
8088
+ return runCommand("osascript", ["-e", script], 15000);
8084
8089
  }
8085
8090
  function listWindows() {
8086
8091
  const os4 = currentPlatform();
@@ -8095,37 +8100,66 @@ function listWindows() {
8095
8100
  }
8096
8101
  return [];
8097
8102
  }
8098
- function listWindowsDarwin() {
8103
+ function parseDarwinWindowEntry(entry) {
8104
+ const [app, title] = entry.split("|||");
8105
+ const appName = app?.trim() ?? "";
8106
+ const winTitle = title?.trim() ?? "";
8107
+ if (!appName && !winTitle)
8108
+ return null;
8109
+ return {
8110
+ app: appName || "unknown",
8111
+ title: winTitle,
8112
+ id: winTitle || appName
8113
+ };
8114
+ }
8115
+ function parseDarwinWindowOutput(output) {
8116
+ return output.split("<<WIN>>").map((entry) => entry.trim()).filter(Boolean).map(parseDarwinWindowEntry).filter((win) => win !== null);
8117
+ }
8118
+ function listWindowsDarwinViaSwift() {
8119
+ if (!commandExists("swift"))
8120
+ return null;
8121
+ try {
8122
+ const output = execFileSync7("swift", ["-"], {
8123
+ input: DARWIN_WINDOW_LIST_SWIFT,
8124
+ encoding: "utf-8",
8125
+ timeout: 15000,
8126
+ stdio: ["pipe", "pipe", "ignore"]
8127
+ });
8128
+ return parseDarwinWindowOutput(output);
8129
+ } catch {
8130
+ return null;
8131
+ }
8132
+ }
8133
+ function listWindowsDarwinViaSystemEvents() {
8099
8134
  try {
8100
8135
  const script = `
8101
8136
  tell application "System Events"
8102
- set windowList to {}
8137
+ set outText to ""
8103
8138
  repeat with proc in (every process whose visible is true)
8104
8139
  try
8140
+ set procName to name of proc
8105
8141
  repeat with w in (every window of proc)
8106
- set end of windowList to (name of proc) & "|||" & (name of w) & "|||" & (id of w as text)
8142
+ try
8143
+ set outText to outText & procName & "|||" & (name of w) & "<<WIN>>"
8144
+ end try
8107
8145
  end repeat
8108
8146
  end try
8109
8147
  end repeat
8110
- return windowList as text
8148
+ return outText
8111
8149
  end tell`;
8112
8150
  const output = execSync5(`osascript -e '${script}'`, {
8113
8151
  encoding: "utf-8",
8114
- timeout: 1e4,
8152
+ timeout: 20000,
8115
8153
  stdio: ["ignore", "pipe", "ignore"]
8116
8154
  });
8117
- return output.split(", ").filter(Boolean).map((entry) => {
8118
- const parts = entry.split("|||");
8119
- return {
8120
- app: parts[0] ?? "unknown",
8121
- title: parts[1] ?? "unknown",
8122
- id: parts[2] ?? "0"
8123
- };
8124
- });
8155
+ return parseDarwinWindowOutput(output);
8125
8156
  } catch {
8126
8157
  return [];
8127
8158
  }
8128
8159
  }
8160
+ function listWindowsDarwin() {
8161
+ return listWindowsDarwinViaSwift() ?? listWindowsDarwinViaSystemEvents();
8162
+ }
8129
8163
  function listWindowsLinux() {
8130
8164
  try {
8131
8165
  if (commandExists("wmctrl")) {
@@ -8175,10 +8209,10 @@ function getActiveWindow() {
8175
8209
  set proc to first process whose frontmost is true
8176
8210
  set procName to name of proc
8177
8211
  try
8178
- set w to window 1 of proc
8179
- return procName & "|||" & (name of w) & "|||" & (id of w as text)
8212
+ set winName to name of window 1 of proc
8213
+ return procName & "|||" & winName & "|||" & winName
8180
8214
  on error
8181
- return procName & "|||" & "" & "|||" & "0"
8215
+ return procName & "|||" & "" & "|||" & procName
8182
8216
  end try
8183
8217
  end tell`;
8184
8218
  const out = execSync5(`osascript -e '${script}'`, {
@@ -8617,14 +8651,25 @@ function getScreenSize() {
8617
8651
  }
8618
8652
  return { width: 1920, height: 1080 };
8619
8653
  }
8620
- var WINDOWS_PRIMARY_SCREEN_SIZE_COMMAND;
8654
+ var DARWIN_WINDOW_LIST_SWIFT = `import CoreGraphics
8655
+ import Foundation
8656
+ let opts: CGWindowListOption = [.optionOnScreenOnly, .excludeDesktopElements]
8657
+ guard let list = CGWindowListCopyWindowInfo(opts, kCGNullWindowID) as? [[String: Any]] else { exit(0) }
8658
+ var out: [String] = []
8659
+ for w in list {
8660
+ if ((w[kCGWindowLayer as String] as? Int) ?? -1) != 0 { continue }
8661
+ let owner = (w[kCGWindowOwnerName as String] as? String) ?? ""
8662
+ let name = (w[kCGWindowName as String] as? String) ?? ""
8663
+ out.append(owner + "|||" + name)
8664
+ }
8665
+ print(out.joined(separator: "<<WIN>>"))`, WINDOWS_PRIMARY_SCREEN_SIZE_COMMAND;
8621
8666
  var init_windows_list = __esm(() => {
8622
8667
  init_helpers();
8623
8668
  WINDOWS_PRIMARY_SCREEN_SIZE_COMMAND = 'powershell -NoProfile -Command "Add-Type -AssemblyName System.Windows.Forms; ' + '[System.Windows.Forms.Screen]::PrimaryScreen.Bounds | ConvertTo-Json -Compress"';
8624
8669
  });
8625
8670
 
8626
8671
  // src/scene/a11y-provider.ts
8627
- import { execFileSync as execFileSync7 } from "node:child_process";
8672
+ import { execFileSync as execFileSync8 } from "node:child_process";
8628
8673
 
8629
8674
  class NullAccessibilityProvider {
8630
8675
  name = "null";
@@ -8707,7 +8752,7 @@ except Exception as e:
8707
8752
  print("[]")
8708
8753
  `;
8709
8754
  try {
8710
- const text = execFileSync7("python3", ["-c", py], {
8755
+ const text = execFileSync8("python3", ["-c", py], {
8711
8756
  timeout: 4000,
8712
8757
  encoding: "utf8",
8713
8758
  stdio: ["ignore", "pipe", "ignore"]
@@ -8736,7 +8781,7 @@ except Exception as e:
8736
8781
  }
8737
8782
  tryHyprland() {
8738
8783
  try {
8739
- const text = execFileSync7("hyprctl", ["clients", "-j"], {
8784
+ const text = execFileSync8("hyprctl", ["clients", "-j"], {
8740
8785
  timeout: 3000,
8741
8786
  encoding: "utf8",
8742
8787
  stdio: ["ignore", "pipe", "ignore"]
@@ -8748,7 +8793,7 @@ except Exception as e:
8748
8793
  }
8749
8794
  trySway() {
8750
8795
  try {
8751
- const text = execFileSync7("swaymsg", ["-t", "get_tree"], {
8796
+ const text = execFileSync8("swaymsg", ["-t", "get_tree"], {
8752
8797
  timeout: 3000,
8753
8798
  encoding: "utf8",
8754
8799
  stdio: ["ignore", "pipe", "ignore"]
@@ -8882,7 +8927,7 @@ class DarwinAccessibilityProvider {
8882
8927
  }
8883
8928
  JSON.stringify(out);
8884
8929
  `;
8885
- const text = execFileSync7("osascript", ["-l", "JavaScript", "-e", script], {
8930
+ const text = execFileSync8("osascript", ["-l", "JavaScript", "-e", script], {
8886
8931
  timeout: 8000,
8887
8932
  encoding: "utf8",
8888
8933
  stdio: ["ignore", "pipe", "ignore"]
@@ -8941,7 +8986,7 @@ while ($child -and $count -lt 50) {
8941
8986
  $out | ConvertTo-Json -Depth 4 -Compress
8942
8987
  `;
8943
8988
  try {
8944
- const text = execFileSync7("powershell", ["-NoProfile", "-Command", ps], {
8989
+ const text = execFileSync8("powershell", ["-NoProfile", "-Command", ps], {
8945
8990
  timeout: 1e4,
8946
8991
  encoding: "utf8",
8947
8992
  stdio: ["ignore", "pipe", "ignore"]
@@ -8975,7 +9020,7 @@ var init_a11y_provider = __esm(() => {
8975
9020
  });
8976
9021
 
8977
9022
  // src/platform/process-list.ts
8978
- import { execFileSync as execFileSync8, execSync as execSync6 } from "node:child_process";
9023
+ import { execFileSync as execFileSync9, execSync as execSync6 } from "node:child_process";
8979
9024
  import { readdirSync, readFileSync as readFileSync4 } from "node:fs";
8980
9025
  function listProcesses() {
8981
9026
  const os4 = currentPlatform();
@@ -9015,7 +9060,7 @@ function listLinux() {
9015
9060
  }
9016
9061
  function listDarwin() {
9017
9062
  try {
9018
- const text = execFileSync8("ps", ["-axco", "pid=,comm="], {
9063
+ const text = execFileSync9("ps", ["-axco", "pid=,comm="], {
9019
9064
  timeout: 4000,
9020
9065
  encoding: "utf8",
9021
9066
  stdio: ["ignore", "pipe", "ignore"]
@@ -9023,7 +9068,7 @@ function listDarwin() {
9023
9068
  return parsePsOutput(text);
9024
9069
  } catch {
9025
9070
  try {
9026
- const text = execFileSync8("ps", ["-axo", "pid=,comm="], {
9071
+ const text = execFileSync9("ps", ["-axo", "pid=,comm="], {
9027
9072
  timeout: 4000,
9028
9073
  encoding: "utf8",
9029
9074
  stdio: ["ignore", "pipe", "ignore"]
@@ -9087,7 +9132,7 @@ var init_process_list = __esm(() => {
9087
9132
  });
9088
9133
 
9089
9134
  // src/scene/apps.ts
9090
- import { execFileSync as execFileSync9 } from "node:child_process";
9135
+ import { execFileSync as execFileSync10 } from "node:child_process";
9091
9136
  function enumerateApps(deps = {}) {
9092
9137
  const processFn = deps.processes ?? listProcesses;
9093
9138
  const windowsFn = deps.windows ?? listWindows;
@@ -9181,7 +9226,7 @@ function joinAppsAndWindows(procs, windows, platform3) {
9181
9226
  function linuxPidMapFromWmctrl() {
9182
9227
  const out = new Map;
9183
9228
  try {
9184
- const text = execFileSync9("wmctrl", ["-l", "-p"], {
9229
+ const text = execFileSync10("wmctrl", ["-l", "-p"], {
9185
9230
  timeout: 3000,
9186
9231
  encoding: "utf8",
9187
9232
  stdio: ["ignore", "pipe", "ignore"]
@@ -11940,7 +11985,7 @@ var init_computer_use_routes = __esm(() => {
11940
11985
  });
11941
11986
 
11942
11987
  // src/routes/sandbox-routes.ts
11943
- import { execFileSync as execFileSync10, execSync as execSync7 } from "node:child_process";
11988
+ import { execFileSync as execFileSync11, execSync as execSync7 } from "node:child_process";
11944
11989
  import { readFileSync as readFileSync5, unlinkSync as unlinkSync5, writeFileSync as writeFileSync2 } from "node:fs";
11945
11990
  import { platform as platform3, tmpdir as tmpdir6 } from "node:os";
11946
11991
  import { join as join6 } from "node:path";
@@ -12549,7 +12594,7 @@ function resolveAudioFormat(input) {
12549
12594
  return { format: normalized };
12550
12595
  }
12551
12596
  function runCommand2(command, args, timeout) {
12552
- execFileSync10(command, args, {
12597
+ execFileSync11(command, args, {
12553
12598
  timeout,
12554
12599
  stdio: ["ignore", "pipe", "pipe"]
12555
12600
  });
@@ -13115,7 +13160,7 @@ var init_sandbox_routes = __esm(() => {
13115
13160
  });
13116
13161
 
13117
13162
  // src/services/desktop-control.ts
13118
- import { execFileSync as execFileSync11 } from "node:child_process";
13163
+ import { execFileSync as execFileSync12 } from "node:child_process";
13119
13164
  import { readFileSync as readFileSync6, unlinkSync as unlinkSync6 } from "node:fs";
13120
13165
  import { platform as platform4, tmpdir as tmpdir7 } from "node:os";
13121
13166
  import { join as join7 } from "node:path";
@@ -13132,7 +13177,7 @@ function isHeadfulGuiAvailable() {
13132
13177
  function commandExists3(command) {
13133
13178
  try {
13134
13179
  const which = platform4() === "win32" ? "where" : "which";
13135
- execFileSync11(which, [command], {
13180
+ execFileSync12(which, [command], {
13136
13181
  stdio: "ignore",
13137
13182
  timeout: 3000
13138
13183
  });
@@ -13190,7 +13235,7 @@ function captureDesktopScreenshot(region) {
13190
13235
  "$graphics.Dispose()",
13191
13236
  "$bitmap.Dispose()"
13192
13237
  ].join("; ");
13193
- execFileSync11("powershell", ["-Command", psCommand], {
13238
+ execFileSync12("powershell", ["-Command", psCommand], {
13194
13239
  timeout: 15000,
13195
13240
  stdio: ["ignore", "pipe", "pipe"]
13196
13241
  });
@@ -13226,7 +13271,7 @@ function listDesktopWindows() {
13226
13271
  end tell`;
13227
13272
  let output;
13228
13273
  try {
13229
- output = execFileSync11("osascript", ["-e", script], {
13274
+ output = execFileSync12("osascript", ["-e", script], {
13230
13275
  encoding: "utf-8",
13231
13276
  timeout: 5000,
13232
13277
  stdio: ["ignore", "pipe", "ignore"]
@@ -13246,7 +13291,7 @@ function listDesktopWindows() {
13246
13291
  }
13247
13292
  if (os5 === "linux") {
13248
13293
  if (commandExists3("wmctrl")) {
13249
- const output = execFileSync11("wmctrl", ["-l"], {
13294
+ const output = execFileSync12("wmctrl", ["-l"], {
13250
13295
  encoding: "utf-8",
13251
13296
  timeout: 5000
13252
13297
  });
@@ -13261,7 +13306,7 @@ function listDesktopWindows() {
13261
13306
  });
13262
13307
  }
13263
13308
  if (commandExists3("xdotool")) {
13264
- const output = execFileSync11("sh", ["-c", 'xdotool search --name "" getwindowname 2>/dev/null'], {
13309
+ const output = execFileSync12("sh", ["-c", 'xdotool search --name "" getwindowname 2>/dev/null'], {
13265
13310
  encoding: "utf-8",
13266
13311
  timeout: 5000
13267
13312
  });
@@ -13274,7 +13319,7 @@ function listDesktopWindows() {
13274
13319
  }
13275
13320
  }
13276
13321
  if (os5 === "win32") {
13277
- const output = execFileSync11("powershell", [
13322
+ const output = execFileSync12("powershell", [
13278
13323
  "-Command",
13279
13324
  "Get-Process | Where-Object {$_.MainWindowTitle} | Select-Object Id, MainWindowTitle | ConvertTo-Json"
13280
13325
  ], { encoding: "utf-8", timeout: 1e4 });
@@ -13615,7 +13660,7 @@ function detectWindowListCapability(os5) {
13615
13660
  return { available: false, tool: "unsupported platform" };
13616
13661
  }
13617
13662
  function runCommand3(command, args, timeout) {
13618
- execFileSync11(command, args, {
13663
+ execFileSync12(command, args, {
13619
13664
  timeout,
13620
13665
  stdio: ["ignore", "pipe", "pipe"]
13621
13666
  });
@@ -13640,7 +13685,7 @@ function canCaptureMacScreen() {
13640
13685
  }
13641
13686
  function canUseMacSystemEvents() {
13642
13687
  try {
13643
- execFileSync11("osascript", ["-e", 'tell application "System Events" to count of processes'], {
13688
+ execFileSync12("osascript", ["-e", 'tell application "System Events" to count of processes'], {
13644
13689
  encoding: "utf-8",
13645
13690
  timeout: 3000,
13646
13691
  stdio: ["ignore", "pipe", "ignore"]
@@ -13897,5 +13942,5 @@ registerAppRoutePluginLoader("@elizaos/plugin-computeruse", async () => {
13897
13942
  return computerUsePlugin2;
13898
13943
  });
13899
13944
 
13900
- //# debugId=35042180BEEE0C9064756E2164756E21
13945
+ //# debugId=BEDF5ED402D884BE64756E2164756E21
13901
13946
  //# sourceMappingURL=register-routes.js.map