@openclaw/acpx 2026.7.2-beta.3 → 2026.7.2-beta.4
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/doctor-contract-api.js +1 -1
- package/dist/index.js +41 -23
- package/dist/{process-lease-DiKkFj6F.js → process-lease-CU1cFI4I.js} +4 -14
- package/dist/{process-reaper-CoGRyMJ_.js → process-reaper-BIOtp_Ek.js} +1 -1
- package/dist/{register.runtime-BrVpU-xc.js → register.runtime-Dajn8myc.js} +1 -1
- package/dist/register.runtime.js +1 -1
- package/dist/{runtime-CMARmJuS.js → runtime-CN4JQkdV.js} +2 -2
- package/dist/{service-D6LQXIcJ.js → service-DOsKw_R1.js} +4 -5
- package/npm-shrinkwrap.json +123 -151
- package/package.json +24 -8
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as
|
|
1
|
+
import { c as openAcpxProcessLeaseStateStore, d as ACPX_GATEWAY_INSTANCE_NAMESPACE, f as ACPX_LEGACY_GATEWAY_INSTANCE_FILE, m as normalizeAcpxGatewayInstanceRecord, o as normalizeAcpxProcessLease, p as ACPX_LEGACY_PROCESS_LEASE_FILE, s as normalizeAcpxProcessLeaseFile, u as ACPX_GATEWAY_INSTANCE_KEY } from "./process-lease-CU1cFI4I.js";
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { archiveLegacyStateSource } from "openclaw/plugin-sdk/runtime-doctor";
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as createAcpxRuntimeService } from "./register.runtime-
|
|
1
|
+
import { t as createAcpxRuntimeService } from "./register.runtime-Dajn8myc.js";
|
|
2
2
|
import "./config-schema-lrk5nlcV.js";
|
|
3
3
|
import { tryDispatchAcpReplyHook } from "openclaw/plugin-sdk/acp-runtime-backend";
|
|
4
4
|
import { finiteSecondsToTimerSafeMilliseconds } from "openclaw/plugin-sdk/number-runtime";
|
|
@@ -391,7 +391,7 @@ const LOCAL_HOST_ID$1 = "gateway";
|
|
|
391
391
|
const DEFAULT_PAGE_LIMIT = 20;
|
|
392
392
|
const MAX_PAGE_LIMIT$1 = 100;
|
|
393
393
|
const MAX_SEARCH_LENGTH = 500;
|
|
394
|
-
const MAX_CURSOR_LENGTH
|
|
394
|
+
const MAX_CURSOR_LENGTH = 128;
|
|
395
395
|
const MAX_TRANSCRIPT_ITEM_BYTES = 512 * 1024;
|
|
396
396
|
const MAX_TRANSCRIPT_PAGE_BYTES = 20 * 1024 * 1024;
|
|
397
397
|
const SESSION_ID_PATTERN$1 = /^(?!-)[A-Za-z0-9._:-]{1,256}$/u;
|
|
@@ -408,18 +408,35 @@ function boundedLimit(value, fallback = DEFAULT_PAGE_LIMIT) {
|
|
|
408
408
|
function encodeCursor(offset) {
|
|
409
409
|
return Buffer.from(JSON.stringify({ offset }), "utf8").toString("base64url");
|
|
410
410
|
}
|
|
411
|
+
function optionalRawCursor(value) {
|
|
412
|
+
if (value === void 0) return;
|
|
413
|
+
if (typeof value !== "string" || value.length === 0 || value.length > MAX_CURSOR_LENGTH) throw new Error("cursor is invalid");
|
|
414
|
+
return value;
|
|
415
|
+
}
|
|
411
416
|
function decodeCursor(value) {
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
if (!cursor) throw new Error("cursor is invalid");
|
|
417
|
+
const cursor = optionalRawCursor(value);
|
|
418
|
+
if (cursor === void 0) return 0;
|
|
415
419
|
try {
|
|
416
|
-
const
|
|
417
|
-
if (
|
|
418
|
-
|
|
420
|
+
const bytes = Buffer.from(cursor, "base64url");
|
|
421
|
+
if (bytes.toString("base64url") !== cursor) throw new Error("non-canonical base64url");
|
|
422
|
+
const parsed = JSON.parse(bytes.toString("utf8"));
|
|
423
|
+
if (!isRecord(parsed) || !Number.isSafeInteger(parsed.offset) || Number(parsed.offset) < 0) throw new Error("invalid offset");
|
|
424
|
+
const offset = Number(parsed.offset);
|
|
425
|
+
if (encodeCursor(offset) !== cursor) throw new Error("non-canonical cursor payload");
|
|
426
|
+
return offset;
|
|
419
427
|
} catch (error) {
|
|
420
428
|
throw new Error("cursor is invalid", { cause: error });
|
|
421
429
|
}
|
|
422
430
|
}
|
|
431
|
+
function isExactPiSessionCursor(value) {
|
|
432
|
+
if (typeof value !== "string") return false;
|
|
433
|
+
try {
|
|
434
|
+
decodeCursor(value);
|
|
435
|
+
return true;
|
|
436
|
+
} catch {
|
|
437
|
+
return false;
|
|
438
|
+
}
|
|
439
|
+
}
|
|
423
440
|
function truncateUtf8(text, maxBytes) {
|
|
424
441
|
if (Buffer.byteLength(text, "utf8") <= maxBytes) return text;
|
|
425
442
|
let low = 0;
|
|
@@ -486,8 +503,7 @@ function parseListParams(value) {
|
|
|
486
503
|
if (unknown) throw new Error(`unknown Pi session list parameter: ${unknown}`);
|
|
487
504
|
const searchTerm = optionalPiString(value.searchTerm, MAX_SEARCH_LENGTH);
|
|
488
505
|
if (value.searchTerm !== void 0 && !searchTerm) throw new Error("searchTerm is invalid");
|
|
489
|
-
const cursor =
|
|
490
|
-
if (value.cursor !== void 0 && !cursor) throw new Error("cursor is invalid");
|
|
506
|
+
const cursor = optionalRawCursor(value.cursor);
|
|
491
507
|
return {
|
|
492
508
|
limit: boundedLimit(value.limit),
|
|
493
509
|
...searchTerm ? { searchTerm } : {},
|
|
@@ -504,8 +520,7 @@ function parseReadParams(value) {
|
|
|
504
520
|
if (unknown) throw new Error(`unknown Pi session read parameter: ${unknown}`);
|
|
505
521
|
const threadId = optionalPiString(value.threadId, 256);
|
|
506
522
|
if (!threadId || !SESSION_ID_PATTERN$1.test(threadId)) throw new Error("threadId is invalid");
|
|
507
|
-
const cursor =
|
|
508
|
-
if (value.cursor !== void 0 && !cursor) throw new Error("cursor is invalid");
|
|
523
|
+
const cursor = optionalRawCursor(value.cursor);
|
|
509
524
|
return {
|
|
510
525
|
threadId,
|
|
511
526
|
limit: boundedLimit(value.limit),
|
|
@@ -693,7 +708,6 @@ const CAPABILITY = "pi-sessions";
|
|
|
693
708
|
const LOCAL_HOST_ID = "gateway";
|
|
694
709
|
const MAX_PAGE_LIMIT = 100;
|
|
695
710
|
const MAX_HOSTS = 100;
|
|
696
|
-
const MAX_CURSOR_LENGTH = 128;
|
|
697
711
|
const NODE_TIMEOUT_MS = 2e4;
|
|
698
712
|
const SESSION_ID_PATTERN = /^(?!-)[A-Za-z0-9._:-]{1,256}$/u;
|
|
699
713
|
const TRANSCRIPT_ITEM_TYPES = /* @__PURE__ */ new Set([
|
|
@@ -715,7 +729,7 @@ function isOptionalNumber(value) {
|
|
|
715
729
|
return value === void 0 || typeof value === "number";
|
|
716
730
|
}
|
|
717
731
|
function isNodeSession(value) {
|
|
718
|
-
return isRecord(value) && typeof value.threadId === "string" && SESSION_ID_PATTERN.test(value.threadId) && typeof value.status === "string" && value.status.length > 0 && typeof value.archived === "boolean" && typeof value.canContinue === "boolean" && typeof value.canArchive === "boolean" && isOptionalString(value.name) && isOptionalString(value.cwd) && isOptionalString(value.source) && isOptionalString(value.modelProvider) && isOptionalString(value.cliVersion) && isOptionalString(value.gitBranch) && isOptionalString(value.
|
|
732
|
+
return isRecord(value) && typeof value.threadId === "string" && SESSION_ID_PATTERN.test(value.threadId) && typeof value.status === "string" && value.status.length > 0 && typeof value.archived === "boolean" && typeof value.canContinue === "boolean" && typeof value.canArchive === "boolean" && isOptionalString(value.name) && isOptionalString(value.cwd) && isOptionalString(value.source) && isOptionalString(value.modelProvider) && isOptionalString(value.cliVersion) && isOptionalString(value.gitBranch) && isOptionalString(value.sessionKey) && isOptionalNumber(value.createdAt) && isOptionalNumber(value.updatedAt) && isOptionalNumber(value.recencyAt);
|
|
719
733
|
}
|
|
720
734
|
function isNodeTranscriptItem(value) {
|
|
721
735
|
return isRecord(value) && typeof value.type === "string" && TRANSCRIPT_ITEM_TYPES.has(value.type) && isOptionalString(value.id) && isOptionalString(value.text) && isOptionalString(value.timestamp) && isOptionalString(value.model) && (value.truncated === void 0 || typeof value.truncated === "boolean");
|
|
@@ -831,13 +845,15 @@ async function listPiNodeHost(runtime, query, node) {
|
|
|
831
845
|
}
|
|
832
846
|
};
|
|
833
847
|
try {
|
|
848
|
+
const cursor = query.cursors?.[hostId];
|
|
849
|
+
if (cursor !== void 0 && !isExactPiSessionCursor(cursor)) throw new Error("cursor is invalid");
|
|
834
850
|
const page = parseNodeSessionPage(unwrapNodePayload(await runtime.nodes.invoke({
|
|
835
851
|
nodeId: node.nodeId,
|
|
836
852
|
command: PI_SESSIONS_LIST_COMMAND,
|
|
837
853
|
params: {
|
|
838
854
|
...query.limitPerHost ? { limit: query.limitPerHost } : {},
|
|
839
855
|
...query.search ? { searchTerm: query.search } : {},
|
|
840
|
-
...
|
|
856
|
+
...cursor !== void 0 ? { cursor } : {}
|
|
841
857
|
},
|
|
842
858
|
timeoutMs: NODE_TIMEOUT_MS,
|
|
843
859
|
scopes: ["operator.write"]
|
|
@@ -862,22 +878,22 @@ function parseNodeSessionPage(value) {
|
|
|
862
878
|
if (!isRecord(value) || !Array.isArray(value.sessions) || value.sessions.length > MAX_PAGE_LIMIT) throw new Error("Pi node returned an invalid session page");
|
|
863
879
|
if (!value.sessions.every(isNodeSession)) throw new Error("Pi node returned an invalid session page");
|
|
864
880
|
const sessions = value.sessions;
|
|
865
|
-
const nextCursor =
|
|
866
|
-
if (
|
|
881
|
+
const nextCursor = value.nextCursor;
|
|
882
|
+
if (nextCursor !== void 0 && !isExactPiSessionCursor(nextCursor)) throw new Error("Pi node returned an invalid cursor");
|
|
867
883
|
return {
|
|
868
884
|
sessions,
|
|
869
|
-
...nextCursor ? { nextCursor } : {}
|
|
885
|
+
...nextCursor !== void 0 ? { nextCursor } : {}
|
|
870
886
|
};
|
|
871
887
|
}
|
|
872
888
|
function parseNodeTranscriptPage(value, threadId) {
|
|
873
889
|
if (!isRecord(value) || value.threadId !== threadId || !Array.isArray(value.items) || value.items.length > MAX_PAGE_LIMIT || !value.items.every(isNodeTranscriptItem)) throw new Error("Pi node returned an invalid transcript page");
|
|
874
|
-
const nextCursor =
|
|
875
|
-
if (
|
|
890
|
+
const nextCursor = value.nextCursor;
|
|
891
|
+
if (nextCursor !== void 0 && !isExactPiSessionCursor(nextCursor)) throw new Error("Pi node returned an invalid cursor");
|
|
876
892
|
return {
|
|
877
893
|
hostId: LOCAL_HOST_ID,
|
|
878
894
|
threadId,
|
|
879
895
|
items: value.items,
|
|
880
|
-
...nextCursor ? { nextCursor } : {}
|
|
896
|
+
...nextCursor !== void 0 ? { nextCursor } : {}
|
|
881
897
|
};
|
|
882
898
|
}
|
|
883
899
|
async function listPiHosts(runtime, query) {
|
|
@@ -987,10 +1003,12 @@ async function openPiTerminal(params) {
|
|
|
987
1003
|
};
|
|
988
1004
|
}
|
|
989
1005
|
async function readPiTranscript(runtime, request) {
|
|
1006
|
+
const cursor = request.cursor;
|
|
1007
|
+
if (cursor !== void 0 && !isExactPiSessionCursor(cursor)) throw new Error("cursor is invalid");
|
|
990
1008
|
if (request.hostId === LOCAL_HOST_ID) return await readLocalPiTranscriptPage({
|
|
991
1009
|
threadId: request.threadId,
|
|
992
1010
|
...request.limit ? { limit: request.limit } : {},
|
|
993
|
-
...
|
|
1011
|
+
...cursor !== void 0 ? { cursor } : {}
|
|
994
1012
|
});
|
|
995
1013
|
if (!request.hostId.startsWith("node:")) throw new Error("hostId is invalid");
|
|
996
1014
|
const nodeId = request.hostId.slice(5);
|
|
@@ -1003,7 +1021,7 @@ async function readPiTranscript(runtime, request) {
|
|
|
1003
1021
|
params: {
|
|
1004
1022
|
threadId: request.threadId,
|
|
1005
1023
|
...request.limit ? { limit: request.limit } : {},
|
|
1006
|
-
...
|
|
1024
|
+
...cursor !== void 0 ? { cursor } : {}
|
|
1007
1025
|
},
|
|
1008
1026
|
timeoutMs: NODE_TIMEOUT_MS,
|
|
1009
1027
|
scopes: ["operator.write"]
|
|
@@ -22,11 +22,7 @@ function normalizeAcpxGatewayInstanceRecord(value) {
|
|
|
22
22
|
* Persistent lease store for ACPX wrapper processes. Leases let OpenClaw attach
|
|
23
23
|
* gateway/session identity to spawned ACP processes and clean them up later.
|
|
24
24
|
*/
|
|
25
|
-
/**
|
|
26
|
-
const OPENCLAW_ACPX_LEASE_ID_ENV = "OPENCLAW_ACPX_LEASE_ID";
|
|
27
|
-
/** Environment variable carrying the owning gateway instance id. */
|
|
28
|
-
const OPENCLAW_GATEWAY_INSTANCE_ID_ENV = "OPENCLAW_GATEWAY_INSTANCE_ID";
|
|
29
|
-
/** CLI argument carrying the ACPX process lease id for platforms without env wrapping. */
|
|
25
|
+
/** CLI argument carrying the ACPX process lease id. */
|
|
30
26
|
const OPENCLAW_ACPX_LEASE_ID_ARG = "--openclaw-acpx-lease-id";
|
|
31
27
|
/** CLI argument carrying the owning gateway instance id. */
|
|
32
28
|
const OPENCLAW_GATEWAY_INSTANCE_ID_ARG = "--openclaw-gateway-instance-id";
|
|
@@ -127,15 +123,9 @@ function appendAcpxLeaseArgs(params) {
|
|
|
127
123
|
quoteEnvValue(params.gatewayInstanceId)
|
|
128
124
|
].join(" ");
|
|
129
125
|
}
|
|
130
|
-
/** Add ACPX lease identity to a command through
|
|
126
|
+
/** Add ACPX lease identity to a command through portable wrapper arguments. */
|
|
131
127
|
function withAcpxLeaseEnvironment(params) {
|
|
132
|
-
|
|
133
|
-
return [
|
|
134
|
-
"env",
|
|
135
|
-
`${OPENCLAW_ACPX_LEASE_ID_ENV}=${quoteEnvValue(params.leaseId)}`,
|
|
136
|
-
`${OPENCLAW_GATEWAY_INSTANCE_ID_ENV}=${quoteEnvValue(params.gatewayInstanceId)}`,
|
|
137
|
-
appendAcpxLeaseArgs(params)
|
|
138
|
-
].join(" ");
|
|
128
|
+
return appendAcpxLeaseArgs(params);
|
|
139
129
|
}
|
|
140
130
|
//#endregion
|
|
141
|
-
export {
|
|
131
|
+
export { hashAcpxProcessCommand as a, openAcpxProcessLeaseStateStore as c, ACPX_GATEWAY_INSTANCE_NAMESPACE as d, ACPX_LEGACY_GATEWAY_INSTANCE_FILE as f, createAcpxProcessLeaseStore as i, withAcpxLeaseEnvironment as l, normalizeAcpxGatewayInstanceRecord as m, OPENCLAW_GATEWAY_INSTANCE_ID_ARG as n, normalizeAcpxProcessLease as o, ACPX_LEGACY_PROCESS_LEASE_FILE as p, createAcpxProcessLeaseId as r, normalizeAcpxProcessLeaseFile as s, OPENCLAW_ACPX_LEASE_ID_ARG as t, ACPX_GATEWAY_INSTANCE_KEY as u };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as AcpxPluginConfigSchema } from "./config-schema-lrk5nlcV.js";
|
|
2
|
-
import "./process-lease-
|
|
2
|
+
import "./process-lease-CU1cFI4I.js";
|
|
3
3
|
import { createRequire } from "node:module";
|
|
4
4
|
import { formatPluginConfigIssue } from "openclaw/plugin-sdk/extension-shared";
|
|
5
5
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
@@ -200,7 +200,7 @@ function createLazyAcpRuntimeProxy(resolveRuntime) {
|
|
|
200
200
|
* immediately, then imports the heavier service only when a session needs it.
|
|
201
201
|
*/
|
|
202
202
|
const ACPX_BACKEND_ID = "acpx";
|
|
203
|
-
const loadServiceModule = createLazyRuntimeModule(() => import("./service-
|
|
203
|
+
const loadServiceModule = createLazyRuntimeModule(() => import("./service-DOsKw_R1.js"));
|
|
204
204
|
async function startRealService(state) {
|
|
205
205
|
if (state.realRuntime) return state.realRuntime;
|
|
206
206
|
if (!state.ctx) throw new Error("ACPX runtime service is not started");
|
package/dist/register.runtime.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as createAcpxRuntimeService } from "./register.runtime-
|
|
1
|
+
import { t as createAcpxRuntimeService } from "./register.runtime-Dajn8myc.js";
|
|
2
2
|
export { createAcpxRuntimeService };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { a as hashAcpxProcessCommand, l as withAcpxLeaseEnvironment, r as createAcpxProcessLeaseId } from "./process-lease-CU1cFI4I.js";
|
|
2
2
|
import { AcpRuntimeError } from "./runtime-api.js";
|
|
3
|
-
import { c as splitCommandParts, f as OPENCLAW_CODEX_CONFIG_ARG, n as isOpenClawLeaseAwareAcpxProcessCommand, t as cleanupOpenClawOwnedAcpxProcessTree, u as CODEX_ACP_PACKAGE } from "./process-reaper-
|
|
3
|
+
import { c as splitCommandParts, f as OPENCLAW_CODEX_CONFIG_ARG, n as isOpenClawLeaseAwareAcpxProcessCommand, t as cleanupOpenClawOwnedAcpxProcessTree, u as CODEX_ACP_PACKAGE } from "./process-reaper-BIOtp_Ek.js";
|
|
4
4
|
import { parseStrictPositiveInteger } from "openclaw/plugin-sdk/number-runtime";
|
|
5
5
|
import { normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
6
|
import { sliceUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { n as createLazyAcpRuntimeProxy } from "./register.runtime-
|
|
1
|
+
import { n as createLazyAcpRuntimeProxy } from "./register.runtime-Dajn8myc.js";
|
|
2
2
|
import "./config-schema-lrk5nlcV.js";
|
|
3
|
-
import {
|
|
3
|
+
import { c as openAcpxProcessLeaseStateStore, d as ACPX_GATEWAY_INSTANCE_NAMESPACE, i as createAcpxProcessLeaseStore, m as normalizeAcpxGatewayInstanceRecord, n as OPENCLAW_GATEWAY_INSTANCE_ID_ARG, t as OPENCLAW_ACPX_LEASE_ID_ARG, u as ACPX_GATEWAY_INSTANCE_KEY } from "./process-lease-CU1cFI4I.js";
|
|
4
4
|
import { registerAcpRuntimeBackend, unregisterAcpRuntimeBackend } from "./runtime-api.js";
|
|
5
|
-
import { a as resolveAcpxPluginRoot, c as splitCommandParts, d as LEGACY_CODEX_ACP_PACKAGE, f as OPENCLAW_CODEX_CONFIG_ARG, i as resolveAcpxPluginConfig, l as CODEX_ACP_BIN, o as toAcpMcpServers, r as reapStaleOpenClawOwnedAcpxOrphans, s as quoteCommandPart, t as cleanupOpenClawOwnedAcpxProcessTree, u as CODEX_ACP_PACKAGE } from "./process-reaper-
|
|
5
|
+
import { a as resolveAcpxPluginRoot, c as splitCommandParts, d as LEGACY_CODEX_ACP_PACKAGE, f as OPENCLAW_CODEX_CONFIG_ARG, i as resolveAcpxPluginConfig, l as CODEX_ACP_BIN, o as toAcpMcpServers, r as reapStaleOpenClawOwnedAcpxOrphans, s as quoteCommandPart, t as cleanupOpenClawOwnedAcpxProcessTree, u as CODEX_ACP_PACKAGE } from "./process-reaper-BIOtp_Ek.js";
|
|
6
6
|
import { createRequire } from "node:module";
|
|
7
7
|
import { finiteSecondsToTimerSafeMilliseconds } from "openclaw/plugin-sdk/number-runtime";
|
|
8
8
|
import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
|
|
@@ -431,7 +431,6 @@ function resolveStderrLogPath(args) {
|
|
|
431
431
|
return undefined;
|
|
432
432
|
}
|
|
433
433
|
const leaseId =
|
|
434
|
-
process.env[${JSON.stringify(OPENCLAW_ACPX_LEASE_ID_ENV)}] ||
|
|
435
434
|
readOpenClawWrapperArg(args, ${quoteCommandPart(OPENCLAW_ACPX_LEASE_ID_ARG)}) ||
|
|
436
435
|
"pid-" + process.pid;
|
|
437
436
|
const fileName = stderrLogFileNamePrefix + "." + safeDiagnosticFilePart(leaseId) + ".log";
|
|
@@ -1027,7 +1026,7 @@ async function prepareAcpxCodexAuthConfig(params) {
|
|
|
1027
1026
|
const ENABLE_STARTUP_PROBE_ENV = "OPENCLAW_ACPX_RUNTIME_STARTUP_PROBE";
|
|
1028
1027
|
const SKIP_RUNTIME_PROBE_ENV = "OPENCLAW_SKIP_ACPX_RUNTIME_PROBE";
|
|
1029
1028
|
const ACPX_BACKEND_ID = "acpx";
|
|
1030
|
-
const loadRuntimeModule = createLazyRuntimeModule(() => import("./runtime-
|
|
1029
|
+
const loadRuntimeModule = createLazyRuntimeModule(() => import("./runtime-CN4JQkdV.js"));
|
|
1031
1030
|
/** Convert ACPX timeout seconds into timer-safe milliseconds. */
|
|
1032
1031
|
function resolveAcpxTimerTimeoutMs(timeoutSeconds) {
|
|
1033
1032
|
if (timeoutSeconds === void 0) return;
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/acpx",
|
|
3
|
-
"version": "2026.7.2-beta.
|
|
3
|
+
"version": "2026.7.2-beta.4",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@openclaw/acpx",
|
|
9
|
-
"version": "2026.7.2-beta.
|
|
9
|
+
"version": "2026.7.2-beta.4",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@agentclientprotocol/claude-agent-acp": "0.
|
|
12
|
-
"@agentclientprotocol/codex-acp": "1.1.
|
|
13
|
-
"acpx": "0.
|
|
11
|
+
"@agentclientprotocol/claude-agent-acp": "0.59.0",
|
|
12
|
+
"@agentclientprotocol/codex-acp": "1.1.4",
|
|
13
|
+
"acpx": "0.12.0",
|
|
14
14
|
"smol-toml": "1.7.0",
|
|
15
15
|
"zod": "4.4.3"
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"node_modules/@agentclientprotocol/claude-agent-acp": {
|
|
19
|
-
"version": "0.
|
|
20
|
-
"resolved": "https://registry.npmjs.org/@agentclientprotocol/claude-agent-acp/-/claude-agent-acp-0.
|
|
21
|
-
"integrity": "sha512-
|
|
19
|
+
"version": "0.59.0",
|
|
20
|
+
"resolved": "https://registry.npmjs.org/@agentclientprotocol/claude-agent-acp/-/claude-agent-acp-0.59.0.tgz",
|
|
21
|
+
"integrity": "sha512-GejLH5qxsI5IoSDfhyOVDEsRNxqi6y0Rcj5FstVeOwMACSht/bUXII0HILbzOQNoA5qlyZle3FRvf+CAjD7Rpg==",
|
|
22
22
|
"license": "Apache-2.0",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@agentclientprotocol/sdk": "1.1
|
|
25
|
-
"@anthropic-ai/claude-agent-sdk": "0.3.
|
|
24
|
+
"@agentclientprotocol/sdk": "1.2.1",
|
|
25
|
+
"@anthropic-ai/claude-agent-sdk": "0.3.207",
|
|
26
26
|
"zod": "^3.25.0 || ^4.0.0"
|
|
27
27
|
},
|
|
28
28
|
"bin": {
|
|
@@ -33,13 +33,13 @@
|
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
"node_modules/@agentclientprotocol/codex-acp": {
|
|
36
|
-
"version": "1.1.
|
|
37
|
-
"resolved": "https://registry.npmjs.org/@agentclientprotocol/codex-acp/-/codex-acp-1.1.
|
|
38
|
-
"integrity": "sha512-
|
|
36
|
+
"version": "1.1.4",
|
|
37
|
+
"resolved": "https://registry.npmjs.org/@agentclientprotocol/codex-acp/-/codex-acp-1.1.4.tgz",
|
|
38
|
+
"integrity": "sha512-DzusIpGwlQwMWuHgJhU8FWMsyQvzjenB93IEzQATkdbNulo5Rd9GKOz8+B+/C9iWWxmyXgtgmjzaL+iRFyDryQ==",
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@agentclientprotocol/sdk": "^1.2.1",
|
|
42
|
-
"@openai/codex": "^0.144.
|
|
42
|
+
"@openai/codex": "^0.144.4",
|
|
43
43
|
"diff": "^9.0.0",
|
|
44
44
|
"open": "^11.0.0",
|
|
45
45
|
"vscode-jsonrpc": "^9.0.1",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"codex-acp": "dist/index.js"
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
|
-
"node_modules/@agentclientprotocol/
|
|
52
|
+
"node_modules/@agentclientprotocol/sdk": {
|
|
53
53
|
"version": "1.2.1",
|
|
54
54
|
"resolved": "https://registry.npmjs.org/@agentclientprotocol/sdk/-/sdk-1.2.1.tgz",
|
|
55
55
|
"integrity": "sha512-jwYUdOQR7tc+Zfch53VL4JJyUNK/46q03uUTYb+PjECsmnNl94XFXOfYLJ8RBpMNidXd1rpOAVgb0vqD98xImA==",
|
|
@@ -58,32 +58,23 @@
|
|
|
58
58
|
"zod": "^3.25.0 || ^4.0.0"
|
|
59
59
|
}
|
|
60
60
|
},
|
|
61
|
-
"node_modules/@agentclientprotocol/sdk": {
|
|
62
|
-
"version": "1.1.0",
|
|
63
|
-
"resolved": "https://registry.npmjs.org/@agentclientprotocol/sdk/-/sdk-1.1.0.tgz",
|
|
64
|
-
"integrity": "sha512-NT2KqphUJ3w6EksUL51ZhJgIYgq/ZLGcBPkyMKgRSO5PMVwe9DnKKX+Htnvk6KHh6dUuh34UHK4gKp+4te1Mdg==",
|
|
65
|
-
"license": "Apache-2.0",
|
|
66
|
-
"peerDependencies": {
|
|
67
|
-
"zod": "^3.25.0 || ^4.0.0"
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
61
|
"node_modules/@anthropic-ai/claude-agent-sdk": {
|
|
71
|
-
"version": "0.3.
|
|
72
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk/-/claude-agent-sdk-0.3.
|
|
73
|
-
"integrity": "sha512-
|
|
62
|
+
"version": "0.3.207",
|
|
63
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk/-/claude-agent-sdk-0.3.207.tgz",
|
|
64
|
+
"integrity": "sha512-y0PkQRmQBi96MHiN5Xzfq+GaddxCZCqI/cXEQBLYBLXGa4i1nDSlulQqkMBj2RorrrSGQJ6Wdw+uhu6OfHNPzA==",
|
|
74
65
|
"license": "SEE LICENSE IN README.md",
|
|
75
66
|
"engines": {
|
|
76
67
|
"node": ">=18.0.0"
|
|
77
68
|
},
|
|
78
69
|
"optionalDependencies": {
|
|
79
|
-
"@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.
|
|
80
|
-
"@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.
|
|
81
|
-
"@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.
|
|
82
|
-
"@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.
|
|
83
|
-
"@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.
|
|
84
|
-
"@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.
|
|
85
|
-
"@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.
|
|
86
|
-
"@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.
|
|
70
|
+
"@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.207",
|
|
71
|
+
"@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.207",
|
|
72
|
+
"@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.207",
|
|
73
|
+
"@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.207",
|
|
74
|
+
"@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.207",
|
|
75
|
+
"@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.207",
|
|
76
|
+
"@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.207",
|
|
77
|
+
"@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.207"
|
|
87
78
|
},
|
|
88
79
|
"peerDependencies": {
|
|
89
80
|
"@anthropic-ai/sdk": ">=0.93.0",
|
|
@@ -92,9 +83,9 @@
|
|
|
92
83
|
}
|
|
93
84
|
},
|
|
94
85
|
"node_modules/@anthropic-ai/claude-agent-sdk-darwin-arm64": {
|
|
95
|
-
"version": "0.3.
|
|
96
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-darwin-arm64/-/claude-agent-sdk-darwin-arm64-0.3.
|
|
97
|
-
"integrity": "sha512-
|
|
86
|
+
"version": "0.3.207",
|
|
87
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-darwin-arm64/-/claude-agent-sdk-darwin-arm64-0.3.207.tgz",
|
|
88
|
+
"integrity": "sha512-08xSo1FDx8h0aLhL5tvcRxa2SMmcUV3aDWeZiEJVTclyiDAs61BgTjAxCg+SZcu1CndjJO8cfO0yM5dhamxz3g==",
|
|
98
89
|
"cpu": [
|
|
99
90
|
"arm64"
|
|
100
91
|
],
|
|
@@ -105,9 +96,9 @@
|
|
|
105
96
|
]
|
|
106
97
|
},
|
|
107
98
|
"node_modules/@anthropic-ai/claude-agent-sdk-darwin-x64": {
|
|
108
|
-
"version": "0.3.
|
|
109
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-darwin-x64/-/claude-agent-sdk-darwin-x64-0.3.
|
|
110
|
-
"integrity": "sha512-
|
|
99
|
+
"version": "0.3.207",
|
|
100
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-darwin-x64/-/claude-agent-sdk-darwin-x64-0.3.207.tgz",
|
|
101
|
+
"integrity": "sha512-1o7K4EYqyCixZ/oeOZSh7AzSy6TM86xoOuf4VuORjPSS31hBnoqY0NGZd27+2VDs9LGtsdksmsTqcNGx9xd1hA==",
|
|
111
102
|
"cpu": [
|
|
112
103
|
"x64"
|
|
113
104
|
],
|
|
@@ -118,9 +109,9 @@
|
|
|
118
109
|
]
|
|
119
110
|
},
|
|
120
111
|
"node_modules/@anthropic-ai/claude-agent-sdk-linux-arm64": {
|
|
121
|
-
"version": "0.3.
|
|
122
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-arm64/-/claude-agent-sdk-linux-arm64-0.3.
|
|
123
|
-
"integrity": "sha512-
|
|
112
|
+
"version": "0.3.207",
|
|
113
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-arm64/-/claude-agent-sdk-linux-arm64-0.3.207.tgz",
|
|
114
|
+
"integrity": "sha512-X4uezYOifDiNTTmmugfRCdg3nNamrr1LFRY9hg30vWYTShL+bbN+nfC3KaFfSYCl4GTtsEEUbYdOTC2F3bBpcA==",
|
|
124
115
|
"cpu": [
|
|
125
116
|
"arm64"
|
|
126
117
|
],
|
|
@@ -131,9 +122,9 @@
|
|
|
131
122
|
]
|
|
132
123
|
},
|
|
133
124
|
"node_modules/@anthropic-ai/claude-agent-sdk-linux-arm64-musl": {
|
|
134
|
-
"version": "0.3.
|
|
135
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-arm64-musl/-/claude-agent-sdk-linux-arm64-musl-0.3.
|
|
136
|
-
"integrity": "sha512-
|
|
125
|
+
"version": "0.3.207",
|
|
126
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-arm64-musl/-/claude-agent-sdk-linux-arm64-musl-0.3.207.tgz",
|
|
127
|
+
"integrity": "sha512-oPj+g2DslhH4Y9nCTs7al4t9wZv78FZwLFQwOCg99BXuz1o0ZOpKmxyvR7J9eBR+GPszeMMS8gYplQTiZC9o2w==",
|
|
137
128
|
"cpu": [
|
|
138
129
|
"arm64"
|
|
139
130
|
],
|
|
@@ -144,9 +135,9 @@
|
|
|
144
135
|
]
|
|
145
136
|
},
|
|
146
137
|
"node_modules/@anthropic-ai/claude-agent-sdk-linux-x64": {
|
|
147
|
-
"version": "0.3.
|
|
148
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-x64/-/claude-agent-sdk-linux-x64-0.3.
|
|
149
|
-
"integrity": "sha512-
|
|
138
|
+
"version": "0.3.207",
|
|
139
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-x64/-/claude-agent-sdk-linux-x64-0.3.207.tgz",
|
|
140
|
+
"integrity": "sha512-Kg6BPH8Ee0ny/oEUWJmvT1jCRBne4jVpRSOMsJcYp1Fav1rMEgpU219oJJs+LWwx4ifuuLtNWedqJNnVw7mnKg==",
|
|
150
141
|
"cpu": [
|
|
151
142
|
"x64"
|
|
152
143
|
],
|
|
@@ -157,9 +148,9 @@
|
|
|
157
148
|
]
|
|
158
149
|
},
|
|
159
150
|
"node_modules/@anthropic-ai/claude-agent-sdk-linux-x64-musl": {
|
|
160
|
-
"version": "0.3.
|
|
161
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-x64-musl/-/claude-agent-sdk-linux-x64-musl-0.3.
|
|
162
|
-
"integrity": "sha512-
|
|
151
|
+
"version": "0.3.207",
|
|
152
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-linux-x64-musl/-/claude-agent-sdk-linux-x64-musl-0.3.207.tgz",
|
|
153
|
+
"integrity": "sha512-uRv+D5oG/7EYr41FAJ9IPo2pZYBe2ZMaA6nSHCeizsgPxCSMtl5bNppmU21+jZJvo4hivObEgkGFERAhdGqygg==",
|
|
163
154
|
"cpu": [
|
|
164
155
|
"x64"
|
|
165
156
|
],
|
|
@@ -170,9 +161,9 @@
|
|
|
170
161
|
]
|
|
171
162
|
},
|
|
172
163
|
"node_modules/@anthropic-ai/claude-agent-sdk-win32-arm64": {
|
|
173
|
-
"version": "0.3.
|
|
174
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-win32-arm64/-/claude-agent-sdk-win32-arm64-0.3.
|
|
175
|
-
"integrity": "sha512-
|
|
164
|
+
"version": "0.3.207",
|
|
165
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-win32-arm64/-/claude-agent-sdk-win32-arm64-0.3.207.tgz",
|
|
166
|
+
"integrity": "sha512-9fWpUzfkXlPAg2tf8JpQe7w9avFaomAUbfAwyAmykQgSIf66LwaJjvI5hNqhNqczRKyfsXPn3ei2S5HKlmFP+Q==",
|
|
176
167
|
"cpu": [
|
|
177
168
|
"arm64"
|
|
178
169
|
],
|
|
@@ -183,9 +174,9 @@
|
|
|
183
174
|
]
|
|
184
175
|
},
|
|
185
176
|
"node_modules/@anthropic-ai/claude-agent-sdk-win32-x64": {
|
|
186
|
-
"version": "0.3.
|
|
187
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-win32-x64/-/claude-agent-sdk-win32-x64-0.3.
|
|
188
|
-
"integrity": "sha512-
|
|
177
|
+
"version": "0.3.207",
|
|
178
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-agent-sdk-win32-x64/-/claude-agent-sdk-win32-x64-0.3.207.tgz",
|
|
179
|
+
"integrity": "sha512-YPjVT0q6aXEM2MgN4CI6/9fqiTXwETji+4NoPOzCYuqAkhXZqp30Jsk7/NHqYGNNSfURKrsuAoliKB0rsbpbjg==",
|
|
189
180
|
"cpu": [
|
|
190
181
|
"x64"
|
|
191
182
|
],
|
|
@@ -196,9 +187,9 @@
|
|
|
196
187
|
]
|
|
197
188
|
},
|
|
198
189
|
"node_modules/@anthropic-ai/sdk": {
|
|
199
|
-
"version": "0.
|
|
200
|
-
"resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.
|
|
201
|
-
"integrity": "sha512-
|
|
190
|
+
"version": "0.112.3",
|
|
191
|
+
"resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.112.3.tgz",
|
|
192
|
+
"integrity": "sha512-wjcozJlitVIuBEw9cj/xBuRznwkhcLmXmNzlFoeHbh4AvrDG3HGZrdvEOTTmobcbhjGkfOpKbmDTCQ4s9LQvCg==",
|
|
202
193
|
"license": "MIT",
|
|
203
194
|
"dependencies": {
|
|
204
195
|
"json-schema-to-ts": "^3.1.1",
|
|
@@ -226,9 +217,9 @@
|
|
|
226
217
|
}
|
|
227
218
|
},
|
|
228
219
|
"node_modules/@clack/core": {
|
|
229
|
-
"version": "1.4.
|
|
230
|
-
"resolved": "https://registry.npmjs.org/@clack/core/-/core-1.4.
|
|
231
|
-
"integrity": "sha512
|
|
220
|
+
"version": "1.4.3",
|
|
221
|
+
"resolved": "https://registry.npmjs.org/@clack/core/-/core-1.4.3.tgz",
|
|
222
|
+
"integrity": "sha512-/kr3UWNtdJfxZtPgDqUOmG2pvwlmcLGheex5yiZKdwbzZJxhV+HMNR9QNmyY5cGwTNV6LrR7Jtp+KjhUAP1qBQ==",
|
|
232
223
|
"license": "MIT",
|
|
233
224
|
"dependencies": {
|
|
234
225
|
"fast-wrap-ansi": "^0.2.0",
|
|
@@ -239,12 +230,12 @@
|
|
|
239
230
|
}
|
|
240
231
|
},
|
|
241
232
|
"node_modules/@clack/prompts": {
|
|
242
|
-
"version": "1.
|
|
243
|
-
"resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-1.
|
|
244
|
-
"integrity": "sha512-
|
|
233
|
+
"version": "1.7.0",
|
|
234
|
+
"resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-1.7.0.tgz",
|
|
235
|
+
"integrity": "sha512-y7/yvZ2TPAnR9+jnc00klvNNLkJiXFFrQA/hlLCcxA9a2A4zQIOimyFQ9XfwYKiGD1fb5GY8vbKIIgO8d5Tb2A==",
|
|
245
236
|
"license": "MIT",
|
|
246
237
|
"dependencies": {
|
|
247
|
-
"@clack/core": "1.4.
|
|
238
|
+
"@clack/core": "1.4.3",
|
|
248
239
|
"fast-string-width": "^3.0.2",
|
|
249
240
|
"fast-wrap-ansi": "^0.2.0",
|
|
250
241
|
"sisteransi": "^1.0.5"
|
|
@@ -722,9 +713,9 @@
|
|
|
722
713
|
}
|
|
723
714
|
},
|
|
724
715
|
"node_modules/@openai/codex": {
|
|
725
|
-
"version": "0.144.
|
|
726
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
727
|
-
"integrity": "sha512-
|
|
716
|
+
"version": "0.144.6",
|
|
717
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6.tgz",
|
|
718
|
+
"integrity": "sha512-wk+2CWiBNXiJLBoN2D08N9RceWkSBnlgk5g2K1a4CXrP/C0gdlHyRUG7RFzm9y41DCK/7tvCct233JVxyFmznw==",
|
|
728
719
|
"license": "Apache-2.0",
|
|
729
720
|
"bin": {
|
|
730
721
|
"codex": "bin/codex.js"
|
|
@@ -733,19 +724,19 @@
|
|
|
733
724
|
"node": ">=16"
|
|
734
725
|
},
|
|
735
726
|
"optionalDependencies": {
|
|
736
|
-
"@openai/codex-darwin-arm64": "npm:@openai/codex@0.144.
|
|
737
|
-
"@openai/codex-darwin-x64": "npm:@openai/codex@0.144.
|
|
738
|
-
"@openai/codex-linux-arm64": "npm:@openai/codex@0.144.
|
|
739
|
-
"@openai/codex-linux-x64": "npm:@openai/codex@0.144.
|
|
740
|
-
"@openai/codex-win32-arm64": "npm:@openai/codex@0.144.
|
|
741
|
-
"@openai/codex-win32-x64": "npm:@openai/codex@0.144.
|
|
727
|
+
"@openai/codex-darwin-arm64": "npm:@openai/codex@0.144.6-darwin-arm64",
|
|
728
|
+
"@openai/codex-darwin-x64": "npm:@openai/codex@0.144.6-darwin-x64",
|
|
729
|
+
"@openai/codex-linux-arm64": "npm:@openai/codex@0.144.6-linux-arm64",
|
|
730
|
+
"@openai/codex-linux-x64": "npm:@openai/codex@0.144.6-linux-x64",
|
|
731
|
+
"@openai/codex-win32-arm64": "npm:@openai/codex@0.144.6-win32-arm64",
|
|
732
|
+
"@openai/codex-win32-x64": "npm:@openai/codex@0.144.6-win32-x64"
|
|
742
733
|
}
|
|
743
734
|
},
|
|
744
735
|
"node_modules/@openai/codex-darwin-arm64": {
|
|
745
736
|
"name": "@openai/codex",
|
|
746
|
-
"version": "0.144.
|
|
747
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
748
|
-
"integrity": "sha512-
|
|
737
|
+
"version": "0.144.6-darwin-arm64",
|
|
738
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-darwin-arm64.tgz",
|
|
739
|
+
"integrity": "sha512-6zgvh70MzBNSeT17HEhSOrmmGGZGAKzSC7x6JAq+edkJkdPYA9P0I1tG7aJ49GlBkBxuC+MKBH1qm6+2Cghcww==",
|
|
749
740
|
"cpu": [
|
|
750
741
|
"arm64"
|
|
751
742
|
],
|
|
@@ -760,9 +751,9 @@
|
|
|
760
751
|
},
|
|
761
752
|
"node_modules/@openai/codex-darwin-x64": {
|
|
762
753
|
"name": "@openai/codex",
|
|
763
|
-
"version": "0.144.
|
|
764
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
765
|
-
"integrity": "sha512-
|
|
754
|
+
"version": "0.144.6-darwin-x64",
|
|
755
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-darwin-x64.tgz",
|
|
756
|
+
"integrity": "sha512-THRyPG0zSU6M8NQAge1LHEHsJDnoH4BpKsfJHB/qe3Fm+Wf6zqAmWJFlOKzBm27m0K2Hq3za4Ac2I5p5i4yp/A==",
|
|
766
757
|
"cpu": [
|
|
767
758
|
"x64"
|
|
768
759
|
],
|
|
@@ -777,9 +768,9 @@
|
|
|
777
768
|
},
|
|
778
769
|
"node_modules/@openai/codex-linux-arm64": {
|
|
779
770
|
"name": "@openai/codex",
|
|
780
|
-
"version": "0.144.
|
|
781
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
782
|
-
"integrity": "sha512-
|
|
771
|
+
"version": "0.144.6-linux-arm64",
|
|
772
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-linux-arm64.tgz",
|
|
773
|
+
"integrity": "sha512-PGiLXMN+2IQRkf7tOLi64dMInjU1pRLbz0Rwfj/yt2Y97SZQqAjFQoi2wmswmqtqMDnfwCPTC1DRXVQkvU6T6Q==",
|
|
783
774
|
"cpu": [
|
|
784
775
|
"arm64"
|
|
785
776
|
],
|
|
@@ -794,9 +785,9 @@
|
|
|
794
785
|
},
|
|
795
786
|
"node_modules/@openai/codex-linux-x64": {
|
|
796
787
|
"name": "@openai/codex",
|
|
797
|
-
"version": "0.144.
|
|
798
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
799
|
-
"integrity": "sha512-
|
|
788
|
+
"version": "0.144.6-linux-x64",
|
|
789
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-linux-x64.tgz",
|
|
790
|
+
"integrity": "sha512-4E7EnzCg0OnBxCyYnwJ+qnZwWHYe0YScr5ucKWbngE9u4+0XrpWELqq2Kn9jl5GZK8MDjU7PrJwFIwusHOHjuw==",
|
|
800
791
|
"cpu": [
|
|
801
792
|
"x64"
|
|
802
793
|
],
|
|
@@ -811,9 +802,9 @@
|
|
|
811
802
|
},
|
|
812
803
|
"node_modules/@openai/codex-win32-arm64": {
|
|
813
804
|
"name": "@openai/codex",
|
|
814
|
-
"version": "0.144.
|
|
815
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
816
|
-
"integrity": "sha512-
|
|
805
|
+
"version": "0.144.6-win32-arm64",
|
|
806
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-win32-arm64.tgz",
|
|
807
|
+
"integrity": "sha512-SpMjXJLW43JzMP0K62mVcYfmFcpk0BK4AOgYmWSfyZHs3iRtHMd0UYw7605n/9lwkT2EqbwQLT2omZFeKJFzwA==",
|
|
817
808
|
"cpu": [
|
|
818
809
|
"arm64"
|
|
819
810
|
],
|
|
@@ -828,9 +819,9 @@
|
|
|
828
819
|
},
|
|
829
820
|
"node_modules/@openai/codex-win32-x64": {
|
|
830
821
|
"name": "@openai/codex",
|
|
831
|
-
"version": "0.144.
|
|
832
|
-
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.
|
|
833
|
-
"integrity": "sha512-
|
|
822
|
+
"version": "0.144.6-win32-x64",
|
|
823
|
+
"resolved": "https://registry.npmjs.org/@openai/codex/-/codex-0.144.6-win32-x64.tgz",
|
|
824
|
+
"integrity": "sha512-dN39VnjEthKz5io1RNWwZDtErdSn07nW3pGUgvlA6DMxgm/nuGaIAZO/sG/Hgxq/x5j9HteAENfrFgVkpZ0lFg==",
|
|
834
825
|
"cpu": [
|
|
835
826
|
"x64"
|
|
836
827
|
],
|
|
@@ -863,15 +854,15 @@
|
|
|
863
854
|
}
|
|
864
855
|
},
|
|
865
856
|
"node_modules/acpx": {
|
|
866
|
-
"version": "0.
|
|
867
|
-
"resolved": "https://registry.npmjs.org/acpx/-/acpx-0.
|
|
868
|
-
"integrity": "sha512-
|
|
857
|
+
"version": "0.12.0",
|
|
858
|
+
"resolved": "https://registry.npmjs.org/acpx/-/acpx-0.12.0.tgz",
|
|
859
|
+
"integrity": "sha512-APYpN04XFWrCGuSBvM4HTKWWFH8uSIuzc+qI7aCGeVdP9o4euZeBosFEkmNUHvBOop0XBemg6d8RsNvzXN3Mgw==",
|
|
869
860
|
"license": "MIT",
|
|
870
861
|
"dependencies": {
|
|
871
|
-
"@agentclientprotocol/sdk": "^
|
|
862
|
+
"@agentclientprotocol/sdk": "^1.1.0",
|
|
872
863
|
"commander": "^15.0.0",
|
|
873
864
|
"skillflag": "^0.2.0",
|
|
874
|
-
"tsx": "^4.
|
|
865
|
+
"tsx": "^4.23.0",
|
|
875
866
|
"zod": "^4.4.3"
|
|
876
867
|
},
|
|
877
868
|
"bin": {
|
|
@@ -881,15 +872,6 @@
|
|
|
881
872
|
"node": ">=22.13.0"
|
|
882
873
|
}
|
|
883
874
|
},
|
|
884
|
-
"node_modules/acpx/node_modules/@agentclientprotocol/sdk": {
|
|
885
|
-
"version": "0.28.1",
|
|
886
|
-
"resolved": "https://registry.npmjs.org/@agentclientprotocol/sdk/-/sdk-0.28.1.tgz",
|
|
887
|
-
"integrity": "sha512-Z2Frs6YtPhnZZ+XwFXyQkRDXY0fn8FjCalEs0W4yUhQnY4TztmNq0/RnfzWdFN3vqT3h0jTz5klzYbZHGxCDyQ==",
|
|
888
|
-
"license": "Apache-2.0",
|
|
889
|
-
"peerDependencies": {
|
|
890
|
-
"zod": "^3.25.0 || ^4.0.0"
|
|
891
|
-
}
|
|
892
|
-
},
|
|
893
875
|
"node_modules/ajv": {
|
|
894
876
|
"version": "8.20.0",
|
|
895
877
|
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
|
|
@@ -952,9 +934,9 @@
|
|
|
952
934
|
}
|
|
953
935
|
},
|
|
954
936
|
"node_modules/bare-fs": {
|
|
955
|
-
"version": "4.7.
|
|
956
|
-
"resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.7.
|
|
957
|
-
"integrity": "sha512-
|
|
937
|
+
"version": "4.7.4",
|
|
938
|
+
"resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.7.4.tgz",
|
|
939
|
+
"integrity": "sha512-y1kC+ffIx/tPLdTE693uNjHfzTfr+ravR5tvWlMXe25nELbkqV400S71qHDwbkAQ1FVEZobB1NFRzFbCCcyBCQ==",
|
|
958
940
|
"license": "Apache-2.0",
|
|
959
941
|
"dependencies": {
|
|
960
942
|
"bare-events": "^2.5.4",
|
|
@@ -975,23 +957,11 @@
|
|
|
975
957
|
}
|
|
976
958
|
}
|
|
977
959
|
},
|
|
978
|
-
"node_modules/bare-os": {
|
|
979
|
-
"version": "3.9.3",
|
|
980
|
-
"resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.9.3.tgz",
|
|
981
|
-
"integrity": "sha512-fF4Q7QsyKVF5Rj0qvI8BgUNjqzC2JvQlpTaPLjVJVxYVUX5Zr9un+y3w1HmA4nNKdFmRBT8z/WmrjvXzXVerKQ==",
|
|
982
|
-
"license": "Apache-2.0",
|
|
983
|
-
"engines": {
|
|
984
|
-
"bare": ">=1.14.0"
|
|
985
|
-
}
|
|
986
|
-
},
|
|
987
960
|
"node_modules/bare-path": {
|
|
988
|
-
"version": "3.
|
|
989
|
-
"resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.
|
|
990
|
-
"integrity": "sha512-
|
|
991
|
-
"license": "Apache-2.0"
|
|
992
|
-
"dependencies": {
|
|
993
|
-
"bare-os": "^3.0.1"
|
|
994
|
-
}
|
|
961
|
+
"version": "3.1.1",
|
|
962
|
+
"resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.1.1.tgz",
|
|
963
|
+
"integrity": "sha512-JprUlveX3QjApC1cTpsUOiscADftCGVWkzitbHsRqv84hzYwYHw2mbluddsq5TvI8mH/8Ov1f4BiMAdcB0oYnQ==",
|
|
964
|
+
"license": "Apache-2.0"
|
|
995
965
|
},
|
|
996
966
|
"node_modules/bare-stream": {
|
|
997
967
|
"version": "2.13.3",
|
|
@@ -1463,11 +1433,12 @@
|
|
|
1463
1433
|
}
|
|
1464
1434
|
},
|
|
1465
1435
|
"node_modules/express-rate-limit": {
|
|
1466
|
-
"version": "8.
|
|
1467
|
-
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.
|
|
1468
|
-
"integrity": "sha512-
|
|
1436
|
+
"version": "8.6.0",
|
|
1437
|
+
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.6.0.tgz",
|
|
1438
|
+
"integrity": "sha512-XKJXDsASUOo0LLtFwW5hCcQGH0N4WQc/Rn8/Pvoia+TJFOkkFPvrtW9lZOeeNcxQJspvOIERMwiRLsVFlhHEkA==",
|
|
1469
1439
|
"license": "MIT",
|
|
1470
1440
|
"dependencies": {
|
|
1441
|
+
"debug": "^4.4.3",
|
|
1471
1442
|
"ip-address": "^10.2.0"
|
|
1472
1443
|
},
|
|
1473
1444
|
"engines": {
|
|
@@ -1514,9 +1485,9 @@
|
|
|
1514
1485
|
}
|
|
1515
1486
|
},
|
|
1516
1487
|
"node_modules/fast-uri": {
|
|
1517
|
-
"version": "3.1.
|
|
1518
|
-
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.
|
|
1519
|
-
"integrity": "sha512-
|
|
1488
|
+
"version": "3.1.4",
|
|
1489
|
+
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.4.tgz",
|
|
1490
|
+
"integrity": "sha512-8JnbkQ4juDyvYs4mgFGQqg4yCYtFDtUtmp2QIQq11ZZe5CFQ5wcqm1rqDgAh/QdMySuBnPzMUiJUNZG5N/AiQw==",
|
|
1520
1491
|
"funding": [
|
|
1521
1492
|
{
|
|
1522
1493
|
"type": "github",
|
|
@@ -1674,9 +1645,9 @@
|
|
|
1674
1645
|
}
|
|
1675
1646
|
},
|
|
1676
1647
|
"node_modules/hono": {
|
|
1677
|
-
"version": "4.12.
|
|
1678
|
-
"resolved": "https://registry.npmjs.org/hono/-/hono-4.12.
|
|
1679
|
-
"integrity": "sha512-
|
|
1648
|
+
"version": "4.12.31",
|
|
1649
|
+
"resolved": "https://registry.npmjs.org/hono/-/hono-4.12.31.tgz",
|
|
1650
|
+
"integrity": "sha512-zJIHFrl6bq3RDd2YusFNCDlM8qUprxKswyi/OPzPyzKDdyBXDqWx8bZlZ7R+saTdSTatUmb3O7K4SspGPaEOQg==",
|
|
1680
1651
|
"license": "MIT",
|
|
1681
1652
|
"engines": {
|
|
1682
1653
|
"node": ">=16.9.0"
|
|
@@ -1703,9 +1674,9 @@
|
|
|
1703
1674
|
}
|
|
1704
1675
|
},
|
|
1705
1676
|
"node_modules/iconv-lite": {
|
|
1706
|
-
"version": "0.7.
|
|
1707
|
-
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.
|
|
1708
|
-
"integrity": "sha512-
|
|
1677
|
+
"version": "0.7.3",
|
|
1678
|
+
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz",
|
|
1679
|
+
"integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==",
|
|
1709
1680
|
"license": "MIT",
|
|
1710
1681
|
"dependencies": {
|
|
1711
1682
|
"safer-buffer": ">= 2.1.2 < 3.0.0"
|
|
@@ -1999,9 +1970,9 @@
|
|
|
1999
1970
|
}
|
|
2000
1971
|
},
|
|
2001
1972
|
"node_modules/path-to-regexp": {
|
|
2002
|
-
"version": "8.4.
|
|
2003
|
-
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.
|
|
2004
|
-
"integrity": "sha512-
|
|
1973
|
+
"version": "8.4.2",
|
|
1974
|
+
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
|
|
1975
|
+
"integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
|
|
2005
1976
|
"license": "MIT",
|
|
2006
1977
|
"funding": {
|
|
2007
1978
|
"type": "opencollective",
|
|
@@ -2043,12 +2014,13 @@
|
|
|
2043
2014
|
}
|
|
2044
2015
|
},
|
|
2045
2016
|
"node_modules/qs": {
|
|
2046
|
-
"version": "6.15.
|
|
2047
|
-
"resolved": "https://registry.npmjs.org/qs/-/qs-6.15.
|
|
2048
|
-
"integrity": "sha512-
|
|
2017
|
+
"version": "6.15.3",
|
|
2018
|
+
"resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz",
|
|
2019
|
+
"integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==",
|
|
2049
2020
|
"license": "BSD-3-Clause",
|
|
2050
2021
|
"dependencies": {
|
|
2051
|
-
"
|
|
2022
|
+
"es-define-property": "^1.0.1",
|
|
2023
|
+
"side-channel": "^1.1.1"
|
|
2052
2024
|
},
|
|
2053
2025
|
"engines": {
|
|
2054
2026
|
"node": ">=0.6"
|
|
@@ -2383,9 +2355,9 @@
|
|
|
2383
2355
|
"license": "MIT"
|
|
2384
2356
|
},
|
|
2385
2357
|
"node_modules/tsx": {
|
|
2386
|
-
"version": "4.
|
|
2387
|
-
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.
|
|
2388
|
-
"integrity": "sha512-
|
|
2358
|
+
"version": "4.23.1",
|
|
2359
|
+
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.23.1.tgz",
|
|
2360
|
+
"integrity": "sha512-GQHnkIfxyx1wYCOS/wonik5MVRZU9hi1TEZmzGZSCJB1y9YgoZ8H6itNE/u4suE+yLmOzuE4E5S4TZ/ZX2wcWQ==",
|
|
2389
2361
|
"license": "MIT",
|
|
2390
2362
|
"dependencies": {
|
|
2391
2363
|
"esbuild": "~0.28.0"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/acpx",
|
|
3
|
-
"version": "2026.7.2-beta.
|
|
3
|
+
"version": "2026.7.2-beta.4",
|
|
4
4
|
"description": "OpenClaw ACP runtime backend with plugin-owned session and transport management.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
},
|
|
9
9
|
"type": "module",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@agentclientprotocol/claude-agent-acp": "0.
|
|
12
|
-
"@agentclientprotocol/codex-acp": "1.1.
|
|
13
|
-
"acpx": "0.
|
|
11
|
+
"@agentclientprotocol/claude-agent-acp": "0.59.0",
|
|
12
|
+
"@agentclientprotocol/codex-acp": "1.1.4",
|
|
13
|
+
"acpx": "0.12.0",
|
|
14
14
|
"smol-toml": "1.7.0",
|
|
15
15
|
"zod": "4.4.3"
|
|
16
16
|
},
|
|
@@ -24,13 +24,29 @@
|
|
|
24
24
|
"install": {
|
|
25
25
|
"npmSpec": "@openclaw/acpx",
|
|
26
26
|
"defaultChoice": "npm",
|
|
27
|
-
"minHostVersion": ">=2026.4.25"
|
|
27
|
+
"minHostVersion": ">=2026.4.25",
|
|
28
|
+
"requiredPlatformPackages": [
|
|
29
|
+
"@anthropic-ai/claude-agent-sdk-linux-x64",
|
|
30
|
+
"@anthropic-ai/claude-agent-sdk-linux-arm64",
|
|
31
|
+
"@anthropic-ai/claude-agent-sdk-linux-x64-musl",
|
|
32
|
+
"@anthropic-ai/claude-agent-sdk-linux-arm64-musl",
|
|
33
|
+
"@anthropic-ai/claude-agent-sdk-darwin-x64",
|
|
34
|
+
"@anthropic-ai/claude-agent-sdk-darwin-arm64",
|
|
35
|
+
"@anthropic-ai/claude-agent-sdk-win32-x64",
|
|
36
|
+
"@anthropic-ai/claude-agent-sdk-win32-arm64",
|
|
37
|
+
"@openai/codex-linux-x64",
|
|
38
|
+
"@openai/codex-linux-arm64",
|
|
39
|
+
"@openai/codex-darwin-x64",
|
|
40
|
+
"@openai/codex-darwin-arm64",
|
|
41
|
+
"@openai/codex-win32-x64",
|
|
42
|
+
"@openai/codex-win32-arm64"
|
|
43
|
+
]
|
|
28
44
|
},
|
|
29
45
|
"compat": {
|
|
30
|
-
"pluginApi": ">=2026.7.2-beta.
|
|
46
|
+
"pluginApi": ">=2026.7.2-beta.4"
|
|
31
47
|
},
|
|
32
48
|
"build": {
|
|
33
|
-
"openclawVersion": "2026.7.2-beta.
|
|
49
|
+
"openclawVersion": "2026.7.2-beta.4",
|
|
34
50
|
"staticAssets": [
|
|
35
51
|
{
|
|
36
52
|
"source": "./src/runtime-internals/mcp-proxy.mjs",
|
|
@@ -59,7 +75,7 @@
|
|
|
59
75
|
"skills/**"
|
|
60
76
|
],
|
|
61
77
|
"peerDependencies": {
|
|
62
|
-
"openclaw": ">=2026.7.2-beta.
|
|
78
|
+
"openclaw": ">=2026.7.2-beta.4"
|
|
63
79
|
},
|
|
64
80
|
"peerDependenciesMeta": {
|
|
65
81
|
"openclaw": {
|