@openclaw/acpx 2026.5.20-beta.1 → 2026.5.20
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 {
|
|
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 };
|
package/dist/register.runtime.js
CHANGED
|
@@ -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-
|
|
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 {
|
|
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
|
|
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-
|
|
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
|
|
3
|
+
"version": "2026.5.20",
|
|
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.
|
|
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
|
|
29
|
+
"pluginApi": ">=2026.5.20"
|
|
30
30
|
},
|
|
31
31
|
"build": {
|
|
32
|
-
"openclawVersion": "2026.5.20
|
|
32
|
+
"openclawVersion": "2026.5.20",
|
|
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
|
|
62
|
+
"openclaw": ">=2026.5.20"
|
|
63
63
|
},
|
|
64
64
|
"peerDependenciesMeta": {
|
|
65
65
|
"openclaw": {
|