@openclaw/codex 2026.7.2-beta.4 → 2026.7.2-beta.5

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.
Files changed (41) hide show
  1. package/dist/{app-server-policy-BO3jYBkv.js → app-server-policy-BmDgseo_.js} +1 -1
  2. package/dist/attempt-client-cleanup-Ia52yRWc.js +127 -0
  3. package/dist/{attempt-notifications-DdmnBMUp.js → attempt-notifications-CMR2_fmR.js} +1 -1
  4. package/dist/{bounded-turn-CaQL96kg.js → bounded-turn-FEbUXoYT.js} +36 -13
  5. package/dist/{capabilities-CLICvTxf.js → capabilities-BHRSI6Cn.js} +1 -1
  6. package/dist/cli-metadata.js +1 -1
  7. package/dist/{command-formatters-DgADqnHa.js → command-formatters-ico4ZFnk.js} +2 -2
  8. package/dist/{command-handlers-l_lVPNlB.js → command-handlers-CRmnwI2N.js} +1232 -1221
  9. package/dist/{compact-CC5KhBzX.js → compact-dEN49UH6.js} +7 -7
  10. package/dist/{computer-use-Ip1-QGa-.js → computer-use-BjGylO-E.js} +16 -6
  11. package/dist/{conversation-control-sNPsbTCP.js → conversation-control-DE7d9DOj.js} +6 -6
  12. package/dist/doctor-contract-api.js +24 -86
  13. package/dist/{dynamic-tools-CQI3UwqY.js → dynamic-tools-LIt9ojep.js} +50 -46
  14. package/dist/{event-projector-usage-D6tE7_qD.js → event-projector-usage-tvgb1NCX.js} +2 -2
  15. package/dist/harness.js +14 -13
  16. package/dist/index.js +208 -267
  17. package/dist/media-understanding-provider.js +6 -1
  18. package/dist/{models-BNeMlHgg.js → models-BA01NEez.js} +2 -2
  19. package/dist/{notification-correlation-BGLixv5_.js → notification-correlation-Bj_Ak_jI.js} +3 -3
  20. package/dist/{plugin-app-cache-key-CvzvmBRz.js → plugin-app-cache-key-DSXX-rXO.js} +5 -5
  21. package/dist/{transcript-mirror-2p7kl6e4.js → protocol-validators-Dm4eXZmt.js} +2 -550
  22. package/dist/{rate-limits-D0IJT-a6.js → rate-limits-S_PXs0ul.js} +1 -1
  23. package/dist/realtime-voice-api-BPcA1uN9.js +494 -0
  24. package/dist/realtime-voice-api.js +2 -0
  25. package/dist/{request-BTccUTD3.js → request-CXpPennK.js} +1 -1
  26. package/dist/{run-attempt--858NXDl.js → run-attempt-C5GTPJOE.js} +417 -237
  27. package/dist/{session-binding-ZSMX1omP.js → session-binding-DlVQ-Pxs.js} +952 -890
  28. package/dist/{session-catalog-DsKaezgR.js → session-catalog-CP2oCcEb.js} +32 -23
  29. package/dist/{session-cli-CYJTfRLG.js → session-cli-CqZ0Fp2a.js} +2 -2
  30. package/dist/{session-upstream-marker-D7XlI9us.js → session-upstream-marker-QE-m5QFG.js} +1 -1
  31. package/dist/{settled-turn-finalizer-DHltNgtF.js → settled-turn-finalizer-CA_2QXIE.js} +2 -2
  32. package/dist/{shared-client-wmgNFNYp.js → shared-client-BVKE40c-.js} +1863 -1707
  33. package/dist/{side-question-BfFZCsJ-.js → side-question-CO12sHxo.js} +11 -9
  34. package/dist/{thread-lifecycle-cqrOlJkq.js → thread-lifecycle-DRg_FdzC.js} +12 -132
  35. package/dist/transcript-mirror-uKA-A4tB.js +550 -0
  36. package/dist/{upstream-session-fork-vPjwkT1i.js → upstream-session-fork-_Vrz4WJr.js} +3 -3
  37. package/dist/{usage-DM_I3mPT.js → usage-UpVbdX5G.js} +3 -3
  38. package/dist/{web-search-provider.runtime-Bx6HAc_k.js → web-search-provider.runtime-CaQMYDbp.js} +3 -3
  39. package/package.json +4 -5
  40. package/npm-shrinkwrap.json +0 -202
  41. package/dist/{auth-binding-C1czuHPA.js → auth-binding-B4FfbcCg.js} +1 -1
@@ -1,28 +1,30 @@
1
- import { J as CODEX_INTERACTIVE_CUSTOM_THREAD_SOURCES, Q as isJsonObject, R as CodexAppServerRpcError, Y as CODEX_INTERACTIVE_THREAD_SOURCE_KINDS, a as getLeasedSharedCodexAppServerClient, c as releaseLeasedSharedCodexAppServerClient, m as withTimeout, q as resolveCodexAppServerClientInstanceId } from "./shared-client-wmgNFNYp.js";
2
- import { D as resolveCodexSupervisionAppServerRuntimeOptions, c as reclaimCurrentCodexSessionGeneration, l as sessionBindingIdentity, x as resolveCodexAppServerRuntimeOptions } from "./session-binding-ZSMX1omP.js";
3
- import { m as assertCodexThreadForkParams, r as importCodexThreadHistoryToTranscript } from "./transcript-mirror-2p7kl6e4.js";
4
- import { n as listCodexAppServerModels } from "./models-BNeMlHgg.js";
5
- import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-CvzvmBRz.js";
6
- import { n as describeControlFailure, t as CODEX_CONTROL_METHODS } from "./capabilities-CLICvTxf.js";
7
- import { r as formatCodexDisplayText } from "./command-formatters-DgADqnHa.js";
1
+ import { E as resolveCodexAppServerClientInstanceId, L as CODEX_INTERACTIVE_CUSTOM_THREAD_SOURCES, R as CODEX_INTERACTIVE_THREAD_SOURCE_KINDS, V as isJsonObject, _ as CodexAppServerRpcError, a as getLeasedSharedCodexAppServerClient, h as withTimeout, l as releaseLeasedSharedCodexAppServerClient } from "./shared-client-BVKE40c-.js";
2
+ import { c as reclaimCurrentCodexSessionGeneration, g as resolveCodexSupervisionAppServerRuntimeOptions, l as sessionBindingIdentity, p as resolveCodexAppServerRuntimeOptions } from "./session-binding-DlVQ-Pxs.js";
3
+ import { t as assertCodexThreadForkParams } from "./protocol-validators-Dm4eXZmt.js";
4
+ import { n as listCodexAppServerModels } from "./models-BA01NEez.js";
5
+ import { t as buildCodexAppServerConnectionFingerprint } from "./plugin-app-cache-key-DSXX-rXO.js";
6
+ import { r as importCodexThreadHistoryToTranscript } from "./transcript-mirror-uKA-A4tB.js";
7
+ import { n as describeControlFailure, t as CODEX_CONTROL_METHODS } from "./capabilities-BHRSI6Cn.js";
8
+ import { r as formatCodexDisplayText } from "./command-formatters-ico4ZFnk.js";
8
9
  import { n as createCodexCliNodeConversationBindingData } from "./conversation-binding-data-BHRpYbX3.js";
9
- import { n as requestCodexAppServerClientJson, r as requestCodexAppServerJson } from "./request-BTccUTD3.js";
10
- import { i as createImportedCodexSession, n as codexUpstreamBaseline, r as codexUpstreamContinueResult, t as codexLastTerminalTurnId } from "./session-upstream-marker-D7XlI9us.js";
10
+ import { n as requestCodexAppServerClientJson, r as requestCodexAppServerJson } from "./request-CXpPennK.js";
11
+ import { i as createImportedCodexSession, n as codexUpstreamBaseline, r as codexUpstreamContinueResult, t as codexLastTerminalTurnId } from "./session-upstream-marker-QE-m5QFG.js";
11
12
  import fs from "node:fs/promises";
12
13
  import path from "node:path";
13
14
  import { timestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
14
15
  import { resolvePreferredOpenClawTmpDir } from "openclaw/plugin-sdk/temp-path";
15
- import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
16
16
  import { createHash } from "node:crypto";
17
- import os from "node:os";
18
17
  import { listAgentIds, resolveAllowedModelRef, resolveDefaultAgentDir, resolveDefaultAgentId, resolveDefaultModelForAgent } from "openclaw/plugin-sdk/agent-runtime";
18
+ import os from "node:os";
19
19
  import { parseAgentSessionKey } from "openclaw/plugin-sdk/routing";
20
20
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
21
21
  import { materializeWindowsSpawnProgram, resolveWindowsSpawnProgram } from "openclaw/plugin-sdk/windows-spawn";
22
- import { spawn } from "node:child_process";
23
22
  import { resolveStorePath } from "openclaw/plugin-sdk/session-store-runtime";
23
+ import { spawn } from "node:child_process";
24
+ import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
24
25
  import { expectDefined } from "openclaw/plugin-sdk/expect-runtime";
25
26
  import process$1 from "node:process";
27
+ import { listSessionCatalogEntries } from "openclaw/plugin-sdk/session-catalog";
26
28
  import { sanitizeTerminalText } from "openclaw/plugin-sdk/text-chunking";
27
29
  import { decodeNodePtyResumeParams, resolveNodeHostExecutable, runNodePtyCommand } from "openclaw/plugin-sdk/node-host";
28
30
  //#region extensions/codex/src/node-cli-sessions.ts
@@ -965,9 +967,10 @@ function readNodeSessionMarker(entry) {
965
967
  }
966
968
  function listNodeAdoptedSessionEntries(params) {
967
969
  const adopted = /* @__PURE__ */ new Map();
968
- for (const agentId of listSupervisionAgentIds(params.config ?? {})) for (const { entry, sessionKey } of params.runtime.agent.session.listSessionEntries({
969
- agentId,
970
- readOnly: true
970
+ for (const { agentId, entry, sessionKey } of listSessionCatalogEntries({
971
+ config: params.config ?? {},
972
+ runtime: params.runtime,
973
+ sessionEntries: params.sessionEntries
971
974
  })) {
972
975
  const marker = readNodeSessionMarker(entry);
973
976
  const sessionId = entry.sessionId?.trim();
@@ -1788,7 +1791,8 @@ async function listGatewayHost(params) {
1788
1791
  const adoptedSessions = await listAdoptedSessionEntries({
1789
1792
  bindingStore: params.bindingStore,
1790
1793
  config: params.config,
1791
- runtime: params.runtime
1794
+ runtime: params.runtime,
1795
+ sessionEntries: params.sessionEntries
1792
1796
  });
1793
1797
  return {
1794
1798
  hostId: CODEX_LOCAL_SESSION_HOST_ID,
@@ -1821,13 +1825,14 @@ async function listCodexSessionCatalog(params) {
1821
1825
  config: params.config,
1822
1826
  control: params.control,
1823
1827
  query,
1824
- runtime: params.runtime
1828
+ runtime: params.runtime,
1829
+ sessionEntries: params.sessionEntries
1825
1830
  })] : [];
1826
1831
  for (const host of localHosts) if (params.onHost) host.then(params.onHost).catch(() => void 0);
1827
1832
  if (!(!requestedHostIds || query.hostIds?.some((hostId) => hostId.startsWith("node:")))) return { hosts: await Promise.all(localHosts) };
1828
1833
  let nodes;
1829
1834
  try {
1830
- nodes = (await params.runtime.nodes.list()).nodes.filter((node) => node.commands?.includes("codex.appServer.threads.list.v1") && (!requestedHostIds || requestedHostIds.has(`node:${node.nodeId}`))).slice(0, 100 - localHosts.length);
1835
+ nodes = (await (params.listNodes?.() ?? params.runtime.nodes.list())).nodes.filter((node) => node.commands?.includes("codex.appServer.threads.list.v1") && (!requestedHostIds || requestedHostIds.has(`node:${node.nodeId}`))).slice(0, 100 - localHosts.length);
1831
1836
  } catch (error) {
1832
1837
  const registryHost = {
1833
1838
  hostId: "node:registry",
@@ -1842,7 +1847,8 @@ async function listCodexSessionCatalog(params) {
1842
1847
  }
1843
1848
  const adoptedNodeSessions = listNodeAdoptedSessionEntries({
1844
1849
  config: params.config,
1845
- runtime: params.runtime
1850
+ runtime: params.runtime,
1851
+ sessionEntries: params.sessionEntries
1846
1852
  });
1847
1853
  const nodeHosts = nodes.toSorted(compareNodeLabels).map(async (node) => {
1848
1854
  const host = await listPairedNode({
@@ -1979,9 +1985,10 @@ function isAdoptionSessionKeyForThread(sessionKey, threadId) {
1979
1985
  }
1980
1986
  async function listAdoptedSessionEntries(params) {
1981
1987
  const adopted = /* @__PURE__ */ new Map();
1982
- for (const agentId of listSupervisionAgentIds(params.config ?? {})) for (const { entry, sessionKey } of params.runtime.agent.session.listSessionEntries({
1983
- agentId,
1984
- readOnly: true
1988
+ for (const { agentId, entry, sessionKey } of listSessionCatalogEntries({
1989
+ config: params.config ?? {},
1990
+ runtime: params.runtime,
1991
+ sessionEntries: params.sessionEntries
1985
1992
  })) {
1986
1993
  const sessionKeyRest = adoptionSessionKeyRest(sessionKey);
1987
1994
  if (!sessionKeyRest.startsWith(CODEX_SUPERVISION_SESSION_KEY_PREFIX) || entry.initializationPending === true || entry.agentHarnessId !== "codex" || entry.modelSelectionLocked !== true) continue;
@@ -2351,7 +2358,7 @@ function registerCodexSessionCatalog(params) {
2351
2358
  resolveCreateSession: ({ agentId }) => resolveCodexCatalogCreateSession(params.getRuntimeConfig() ?? params.api.config, agentId),
2352
2359
  list: async (query) => {
2353
2360
  const localTerminalAvailable = resolveLocalCodexTerminalExecutable() !== void 0;
2354
- const { onHost, ...gatewayQuery } = query;
2361
+ const { listNodes, onHost, sessionEntries, ...gatewayQuery } = query;
2355
2362
  const mapHost = (host) => toGenericCatalogHost(host, localTerminalAvailable);
2356
2363
  return (await listCodexSessionCatalog({
2357
2364
  bindingStore: params.bindingStore,
@@ -2359,6 +2366,8 @@ function registerCodexSessionCatalog(params) {
2359
2366
  runtime: params.api.runtime,
2360
2367
  control: params.control,
2361
2368
  query: gatewayQuery,
2369
+ listNodes,
2370
+ sessionEntries,
2362
2371
  ...onHost ? { onHost: (host) => onHost(mapHost(host)) } : {}
2363
2372
  })).hosts.map(mapHost);
2364
2373
  },
@@ -1,6 +1,6 @@
1
- import { a as CODEX_LOCAL_SESSION_HOST_ID } from "./session-catalog-DsKaezgR.js";
2
- import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
1
+ import { a as CODEX_LOCAL_SESSION_HOST_ID } from "./session-catalog-CP2oCcEb.js";
3
2
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
3
+ import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
4
4
  import { sanitizeTerminalText } from "openclaw/plugin-sdk/text-chunking";
5
5
  import { addGatewayClientOptions, callGatewayFromCli } from "openclaw/plugin-sdk/gateway-runtime";
6
6
  //#region extensions/codex/src/session-cli.ts
@@ -1,4 +1,4 @@
1
- import { r as importCodexThreadHistoryToTranscript } from "./transcript-mirror-2p7kl6e4.js";
1
+ import { r as importCodexThreadHistoryToTranscript } from "./transcript-mirror-uKA-A4tB.js";
2
2
  import { resolveStorePath } from "openclaw/plugin-sdk/session-store-runtime";
3
3
  //#region extensions/codex/src/app-server/session-history-import.ts
4
4
  /** Creates a session whose transcript is derived from one verified Codex thread snapshot. */
@@ -1,5 +1,5 @@
1
- import { c as fingerprintCodexMirrorSourceMessage, d as attachCodexMirrorIdentity, f as readMirrorIdentity, l as readCodexMirrorSourceFingerprint, p as readUpstreamUserText, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-2p7kl6e4.js";
2
- import { t as runBoundedCodexAppServerTurn } from "./bounded-turn-CaQL96kg.js";
1
+ import { c as fingerprintCodexMirrorSourceMessage, d as attachCodexMirrorIdentity, f as readMirrorIdentity, l as readCodexMirrorSourceFingerprint, p as readUpstreamUserText, t as codexTranscriptMirrorRuntime } from "./transcript-mirror-uKA-A4tB.js";
2
+ import { t as runBoundedCodexAppServerTurn } from "./bounded-turn-FEbUXoYT.js";
3
3
  import { n as createAssistantMessage } from "./event-projector-assistant-message-DTgnPPVF.js";
4
4
  import { Buffer } from "node:buffer";
5
5
  import { isSilentReplyText } from "openclaw/plugin-sdk/reply-runtime";