@openclaw/acpx 2026.5.20-beta.1 → 2026.5.20-beta.2

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.
@@ -110,6 +110,48 @@ function withAcpxLeaseEnvironment(params) {
110
110
  ].join(" ");
111
111
  }
112
112
  //#endregion
113
+ //#region extensions/acpx/src/command-line.ts
114
+ function quoteCommandPart(value) {
115
+ return JSON.stringify(value);
116
+ }
117
+ function splitCommandParts(value) {
118
+ const parts = [];
119
+ let current = "";
120
+ let quote = null;
121
+ let escaping = false;
122
+ for (const ch of value) {
123
+ if (escaping) {
124
+ current += ch;
125
+ escaping = false;
126
+ continue;
127
+ }
128
+ if (ch === "\\" && quote !== "'") {
129
+ escaping = true;
130
+ continue;
131
+ }
132
+ if (quote) {
133
+ if (ch === quote) quote = null;
134
+ else current += ch;
135
+ continue;
136
+ }
137
+ if (ch === "'" || ch === "\"") {
138
+ quote = ch;
139
+ continue;
140
+ }
141
+ if (/\s/.test(ch)) {
142
+ if (current) {
143
+ parts.push(current);
144
+ current = "";
145
+ }
146
+ continue;
147
+ }
148
+ current += ch;
149
+ }
150
+ if (escaping) current += "\\";
151
+ if (current) parts.push(current);
152
+ return parts;
153
+ }
154
+ //#endregion
113
155
  //#region extensions/acpx/src/process-reaper.ts
114
156
  const execFileAsync = promisify(execFile);
115
157
  const requireFromHere = createRequire(import.meta.url);
@@ -164,43 +206,6 @@ function commandsReferToSameRootCommand(liveCommand, storedCommand) {
164
206
  if (!storedCommand?.trim()) return true;
165
207
  return normalizePathLike(liveCommand).trim() === normalizePathLike(storedCommand).trim();
166
208
  }
167
- function splitCommandParts(value) {
168
- const parts = [];
169
- let current = "";
170
- let quote = null;
171
- let escaping = false;
172
- for (const ch of value) {
173
- if (escaping) {
174
- current += ch;
175
- escaping = false;
176
- continue;
177
- }
178
- if (ch === "\\" && quote !== "'") {
179
- escaping = true;
180
- continue;
181
- }
182
- if (quote) {
183
- if (ch === quote) quote = null;
184
- else current += ch;
185
- continue;
186
- }
187
- if (ch === "'" || ch === "\"") {
188
- quote = ch;
189
- continue;
190
- }
191
- if (/\s/.test(ch)) {
192
- if (current) {
193
- parts.push(current);
194
- current = "";
195
- }
196
- continue;
197
- }
198
- current += ch;
199
- }
200
- if (escaping) current += "\\";
201
- if (current) parts.push(current);
202
- return parts;
203
- }
204
209
  function commandOptionEquals(parts, option, expected) {
205
210
  if (!expected) return true;
206
211
  const index = parts.indexOf(option);
@@ -367,4 +372,4 @@ async function reapStaleOpenClawOwnedAcpxOrphans(params) {
367
372
  };
368
373
  }
369
374
  //#endregion
370
- export { OPENCLAW_ACPX_LEASE_ID_ENV as a, createAcpxProcessLeaseStore as c, OPENCLAW_ACPX_LEASE_ID_ARG as i, hashAcpxProcessCommand as l, isOpenClawLeaseAwareAcpxProcessCommand as n, OPENCLAW_GATEWAY_INSTANCE_ID_ARG as o, reapStaleOpenClawOwnedAcpxOrphans as r, createAcpxProcessLeaseId as s, cleanupOpenClawOwnedAcpxProcessTree as t, withAcpxLeaseEnvironment as u };
375
+ export { splitCommandParts as a, OPENCLAW_GATEWAY_INSTANCE_ID_ARG as c, hashAcpxProcessCommand as d, withAcpxLeaseEnvironment as f, quoteCommandPart as i, createAcpxProcessLeaseId as l, isOpenClawLeaseAwareAcpxProcessCommand as n, OPENCLAW_ACPX_LEASE_ID_ARG as o, reapStaleOpenClawOwnedAcpxOrphans as r, OPENCLAW_ACPX_LEASE_ID_ENV as s, cleanupOpenClawOwnedAcpxProcessTree as t, createAcpxProcessLeaseStore as u };
@@ -3,7 +3,7 @@ import { getAcpRuntimeBackend, unregisterAcpRuntimeBackend } from "openclaw/plug
3
3
  const ACPX_BACKEND_ID = "acpx";
4
4
  let serviceModulePromise = null;
5
5
  function loadServiceModule() {
6
- serviceModulePromise ??= import("./service-BiP9XOLe.js");
6
+ serviceModulePromise ??= import("./service-CwnfaUP9.js");
7
7
  return serviceModulePromise;
8
8
  }
9
9
  async function startRealService(state) {
@@ -1,5 +1,5 @@
1
1
  import { AcpRuntimeError } from "./runtime-api.js";
2
- import { l as hashAcpxProcessCommand, n as isOpenClawLeaseAwareAcpxProcessCommand, s as createAcpxProcessLeaseId, t as cleanupOpenClawOwnedAcpxProcessTree, u as withAcpxLeaseEnvironment } from "./process-reaper-CGYYAJxF.js";
2
+ import { a as splitCommandParts, d as hashAcpxProcessCommand, f as withAcpxLeaseEnvironment, l as createAcpxProcessLeaseId, n as isOpenClawLeaseAwareAcpxProcessCommand, t as cleanupOpenClawOwnedAcpxProcessTree } from "./process-reaper-BfveBZT6.js";
3
3
  import { AsyncLocalStorage } from "node:async_hooks";
4
4
  import fs from "node:fs/promises";
5
5
  import path, { resolve } from "node:path";
@@ -184,43 +184,6 @@ function readAgentCommandFromRecord(record) {
184
184
  function readAgentPidFromRecord(record) {
185
185
  return readRecordAgentPid(record);
186
186
  }
187
- function splitCommandParts(value) {
188
- const parts = [];
189
- let current = "";
190
- let quote = null;
191
- let escaping = false;
192
- for (const ch of value) {
193
- if (escaping) {
194
- current += ch;
195
- escaping = false;
196
- continue;
197
- }
198
- if (ch === "\\" && quote !== "'") {
199
- escaping = true;
200
- continue;
201
- }
202
- if (quote) {
203
- if (ch === quote) quote = null;
204
- else current += ch;
205
- continue;
206
- }
207
- if (ch === "'" || ch === "\"") {
208
- quote = ch;
209
- continue;
210
- }
211
- if (/\s/.test(ch)) {
212
- if (current) {
213
- parts.push(current);
214
- current = "";
215
- }
216
- continue;
217
- }
218
- current += ch;
219
- }
220
- if (escaping) current += "\\";
221
- if (current) parts.push(current);
222
- return parts;
223
- }
224
187
  function basename(value) {
225
188
  return value.split(/[\\/]/).pop() ?? value;
226
189
  }
@@ -1,5 +1,5 @@
1
1
  import { registerAcpRuntimeBackend, unregisterAcpRuntimeBackend } from "./runtime-api.js";
2
- import { a as OPENCLAW_ACPX_LEASE_ID_ENV, c as createAcpxProcessLeaseStore, i as OPENCLAW_ACPX_LEASE_ID_ARG, o as OPENCLAW_GATEWAY_INSTANCE_ID_ARG, r as reapStaleOpenClawOwnedAcpxOrphans, t as cleanupOpenClawOwnedAcpxProcessTree } from "./process-reaper-CGYYAJxF.js";
2
+ import { a as splitCommandParts, c as OPENCLAW_GATEWAY_INSTANCE_ID_ARG, i as quoteCommandPart, o as OPENCLAW_ACPX_LEASE_ID_ARG, r as reapStaleOpenClawOwnedAcpxOrphans, s as OPENCLAW_ACPX_LEASE_ID_ENV, t as cleanupOpenClawOwnedAcpxProcessTree, u as createAcpxProcessLeaseStore } from "./process-reaper-BfveBZT6.js";
3
3
  import { createRequire } from "node:module";
4
4
  import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import fs from "node:fs/promises";
@@ -437,46 +437,6 @@ function readManifestDependencyVersion(packageName) {
437
437
  }
438
438
  const CODEX_ACP_PACKAGE_VERSION = readManifestDependencyVersion(CODEX_ACP_PACKAGE);
439
439
  const CLAUDE_ACP_PACKAGE_VERSION = readManifestDependencyVersion(CLAUDE_ACP_PACKAGE);
440
- function quoteCommandPart(value) {
441
- return JSON.stringify(value);
442
- }
443
- function splitCommandParts(value) {
444
- const parts = [];
445
- let current = "";
446
- let quote = null;
447
- let escaping = false;
448
- for (const ch of value) {
449
- if (escaping) {
450
- current += ch;
451
- escaping = false;
452
- continue;
453
- }
454
- if (ch === "\\" && quote !== "'") {
455
- escaping = true;
456
- continue;
457
- }
458
- if (quote) {
459
- if (ch === quote) quote = null;
460
- else current += ch;
461
- continue;
462
- }
463
- if (ch === "'" || ch === "\"") {
464
- quote = ch;
465
- continue;
466
- }
467
- if (/\s/.test(ch)) {
468
- if (current) {
469
- parts.push(current);
470
- current = "";
471
- }
472
- continue;
473
- }
474
- current += ch;
475
- }
476
- if (escaping) current += "\\";
477
- if (current) parts.push(current);
478
- return parts;
479
- }
480
440
  function basename(value) {
481
441
  return value.split(/[\\/]/).pop() ?? value;
482
442
  }
@@ -1053,7 +1013,7 @@ const SKIP_RUNTIME_PROBE_ENV = "OPENCLAW_SKIP_ACPX_RUNTIME_PROBE";
1053
1013
  const ACPX_BACKEND_ID = "acpx";
1054
1014
  let runtimeModulePromise = null;
1055
1015
  function loadRuntimeModule() {
1056
- runtimeModulePromise ??= import("./runtime-apnn_WSV.js");
1016
+ runtimeModulePromise ??= import("./runtime-0RO54Ii1.js");
1057
1017
  return runtimeModulePromise;
1058
1018
  }
1059
1019
  function createDeferredResult() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/acpx",
3
- "version": "2026.5.20-beta.1",
3
+ "version": "2026.5.20-beta.2",
4
4
  "description": "OpenClaw ACP runtime backend",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "type": "module",
10
10
  "dependencies": {
11
- "@agentclientprotocol/claude-agent-acp": "0.33.1",
11
+ "@agentclientprotocol/claude-agent-acp": "0.36.1",
12
12
  "@zed-industries/codex-acp": "0.14.0",
13
13
  "acpx": "0.8.0",
14
14
  "zod": "4.4.3"
@@ -26,10 +26,10 @@
26
26
  "minHostVersion": ">=2026.4.25"
27
27
  },
28
28
  "compat": {
29
- "pluginApi": ">=2026.5.20-beta.1"
29
+ "pluginApi": ">=2026.5.20-beta.2"
30
30
  },
31
31
  "build": {
32
- "openclawVersion": "2026.5.20-beta.1",
32
+ "openclawVersion": "2026.5.20-beta.2",
33
33
  "staticAssets": [
34
34
  {
35
35
  "source": "./src/runtime-internals/mcp-proxy.mjs",
@@ -59,7 +59,7 @@
59
59
  "skills/**"
60
60
  ],
61
61
  "peerDependencies": {
62
- "openclaw": ">=2026.5.20-beta.1"
62
+ "openclaw": ">=2026.5.20-beta.2"
63
63
  },
64
64
  "peerDependenciesMeta": {
65
65
  "openclaw": {