@openclaw/codex 2026.7.1-beta.6 → 2026.7.2-beta.1

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 (46) hide show
  1. package/README.md +27 -3
  2. package/dist/app-server-policy-DVcxdse_.js +49 -0
  3. package/dist/{attempt-notifications-BGsEIIDI.js → attempt-notifications-DEv9h7iC.js} +1 -1
  4. package/dist/auth-binding-C1czuHPA.js +62 -0
  5. package/dist/capabilities-42Dfn2TV.js +33 -0
  6. package/dist/cli-metadata.js +20 -0
  7. package/dist/{app-server-policy-C968Kgin.js → command-formatters-D6ZlGNmb.js} +8 -51
  8. package/dist/{command-handlers-Dv-pzAmg.js → command-handlers-Cpl9fUWv.js} +163 -60
  9. package/dist/{compact-4mVBriKT.js → compact-FnJmiPNA.js} +40 -10
  10. package/dist/computer-use-DVzr8OP1.js +685 -0
  11. package/dist/{config-CYEDnLJ2.js → config-c48K5HP9.js} +200 -29
  12. package/dist/conversation-control-DtQ-E7mr.js +288 -0
  13. package/dist/doctor-contract-api.js +120 -81
  14. package/dist/{provider-capabilities-CDnHbmUZ.js → dynamic-tools-BMLoaTeG.js} +5246 -5140
  15. package/dist/harness.js +55 -15
  16. package/dist/index.js +1435 -265
  17. package/dist/{media-understanding-provider-BHOu9-Gg.js → media-understanding-provider-D580L0P8.js} +28 -10
  18. package/dist/media-understanding-provider.js +1 -1
  19. package/dist/{models-DDmO1zwd.js → models-DuKzZA6G.js} +1 -1
  20. package/dist/notification-correlation-DfaCm0mx.js +67 -0
  21. package/dist/plugin-app-cache-key-BKNjHMEs.js +315 -0
  22. package/dist/{protocol-2POPqAY4.js → protocol-BMifTfdW.js} +3 -1
  23. package/dist/provider-catalog.js +66 -27
  24. package/dist/provider.js +306 -1
  25. package/dist/{provider-zjPfx5Fs.js → rate-limits-Dhp04Rqo.js} +4 -261
  26. package/dist/request-DborTWgw.js +111 -0
  27. package/dist/{run-attempt-FUyOjGCV.js → run-attempt-VPVJoYDP.js} +7897 -7136
  28. package/dist/runtime-artifact-C2ITXdhM.js +488 -0
  29. package/dist/{sandbox-guard-DA2TQfZW.js → sandbox-guard-D1Wky__S.js} +10 -1
  30. package/dist/{session-binding-C1ZXdP-x.js → session-binding-BMfX1OX-.js} +247 -88
  31. package/dist/session-catalog-7H112Tr_.js +2396 -0
  32. package/dist/session-cli-B28RhCyp.js +175 -0
  33. package/dist/{shared-client-4ICy3U6d.js → shared-client-D4mFI9al.js} +1997 -1297
  34. package/dist/{side-question-N4OaDer2.js → side-question-CgJBz52s.js} +135 -67
  35. package/dist/{thread-lifecycle-qWE88Dn2.js → thread-lifecycle-BgLXzjvV.js} +747 -317
  36. package/dist/transcript-mirror-DhLwFIL4.js +485 -0
  37. package/dist/transport-stdio-DXgGZ7Ib.js +88 -0
  38. package/dist/{web-search-provider.runtime-BSlriav6.js → web-search-provider.runtime-Bs-eTn5U.js} +3 -3
  39. package/npm-shrinkwrap.json +56 -30
  40. package/openclaw.plugin.json +168 -10
  41. package/package.json +8 -6
  42. package/dist/command-rpc-eLM_mtC7.js +0 -784
  43. package/dist/computer-use-Bmaz333N.js +0 -377
  44. package/dist/notification-correlation-Bo7KB3ks.js +0 -35
  45. package/dist/plugin-app-cache-key-BrhVdeEf.js +0 -98
  46. package/dist/request-BcJyl8KL.js +0 -36
package/dist/harness.js CHANGED
@@ -1,5 +1,6 @@
1
1
  //#region extensions/codex/harness.ts
2
2
  const DEFAULT_CODEX_HARNESS_PROVIDER_IDS = /* @__PURE__ */ new Set(["codex", "openai"]);
3
+ const SHARED_CODEX_APP_SERVER_CLIENT_DISPOSER = Symbol.for("openclaw.codexAppServerClientDisposer");
3
4
  const CODEX_APP_SERVER_CONTEXT_ENGINE_HOST_CAPABILITIES = [
4
5
  "bootstrap",
5
6
  "assemble-before-prompt",
@@ -9,30 +10,72 @@ const CODEX_APP_SERVER_CONTEXT_ENGINE_HOST_CAPABILITIES = [
9
10
  "runtime-llm-complete",
10
11
  "thread-bootstrap-projection"
11
12
  ];
13
+ async function disposeSharedCodexAppServerClients() {
14
+ const dispose = globalThis[SHARED_CODEX_APP_SERVER_CLIENT_DISPOSER];
15
+ await dispose?.();
16
+ }
12
17
  /**
13
18
  * Creates the Codex app-server harness used for attempts, side questions,
14
19
  * compaction, reset, and disposal.
15
20
  */
16
21
  function createCodexAppServerAgentHarness(options) {
22
+ const harnessRuntimeId = options?.id ?? "codex";
23
+ const normalizedHarnessRuntimeId = harnessRuntimeId.trim().toLowerCase();
17
24
  const providerIds = new Set([...options?.providerIds ?? DEFAULT_CODEX_HARNESS_PROVIDER_IDS].map((id) => id.trim().toLowerCase()));
18
25
  return {
19
- id: options?.id ?? "codex",
26
+ id: harnessRuntimeId,
20
27
  label: options?.label ?? "Codex agent harness",
28
+ delegatedExecutionPluginIds: ["voice-call"],
21
29
  contextEngineHostCapabilities: CODEX_APP_SERVER_CONTEXT_ENGINE_HOST_CAPABILITIES,
22
30
  deliveryDefaults: { sourceVisibleReplies: "message_tool" },
31
+ authBootstrap: "harness",
32
+ authBinding: { fingerprint: async (params) => {
33
+ const { fingerprintCodexAppServerAuthBinding } = await import("./auth-binding-C1czuHPA.js").then((n) => n.t);
34
+ return fingerprintCodexAppServerAuthBinding(params);
35
+ } },
36
+ runtimeArtifact: { validate: async (binding) => {
37
+ const { validateCodexAppServerRuntimeArtifact } = await import("./runtime-artifact-C2ITXdhM.js");
38
+ return validateCodexAppServerRuntimeArtifact(binding);
39
+ } },
23
40
  supports: (ctx) => {
24
41
  const provider = ctx.provider.trim().toLowerCase();
25
- if (providerIds.has(provider)) return {
26
- supported: true,
27
- priority: 100
28
- };
29
- return {
42
+ if (!providerIds.has(provider)) return {
30
43
  supported: false,
31
44
  reason: `provider is not one of: ${[...providerIds].toSorted().join(", ")}`
32
45
  };
46
+ if (ctx.modelProvider?.requestTransportOverrides === "present") return {
47
+ supported: false,
48
+ reason: "Codex cannot reproduce authored request transport overrides"
49
+ };
50
+ const preparedAuth = ctx.modelProvider?.preparedAuth;
51
+ const runtimePolicy = ctx.modelProvider?.runtimePolicy;
52
+ if (runtimePolicy) {
53
+ if (!runtimePolicy.compatibleIds.some((id) => id.trim().toLowerCase() === normalizedHarnessRuntimeId)) return {
54
+ supported: false,
55
+ reason: "Codex cannot reproduce the prepared provider route"
56
+ };
57
+ } else if (ctx.modelProvider && provider !== "codex") return {
58
+ supported: false,
59
+ reason: "provider route compatibility with Codex is not declared"
60
+ };
61
+ if (preparedAuth?.requirement === "subscription") {
62
+ if (!(preparedAuth.source === "profile" && (preparedAuth.mode === "oauth" || preparedAuth.mode === "token"))) return {
63
+ supported: false,
64
+ reason: "Codex subscription auth requires a prepared OAuth or token profile"
65
+ };
66
+ } else if (preparedAuth?.requirement === "api-key") {
67
+ if (!(preparedAuth.source !== "none" && preparedAuth.source !== "harness" && (preparedAuth.mode === "api-key" || preparedAuth.mode === "api_key"))) return {
68
+ supported: false,
69
+ reason: "Codex Platform auth requires a prepared API key"
70
+ };
71
+ }
72
+ return {
73
+ supported: true,
74
+ priority: 100
75
+ };
33
76
  },
34
77
  runAttempt: async (params) => {
35
- const { runCodexAppServerAttempt } = await import("./run-attempt-FUyOjGCV.js");
78
+ const { runCodexAppServerAttempt } = await import("./run-attempt-VPVJoYDP.js");
36
79
  return runCodexAppServerAttempt(params, {
37
80
  bindingStore: options.bindingStore,
38
81
  pluginConfig: options?.resolvePluginConfig?.() ?? options?.pluginConfig,
@@ -40,7 +83,7 @@ function createCodexAppServerAgentHarness(options) {
40
83
  });
41
84
  },
42
85
  runSideQuestion: async (params) => {
43
- const { runCodexAppServerSideQuestion } = await import("./side-question-N4OaDer2.js");
86
+ const { runCodexAppServerSideQuestion } = await import("./side-question-CgJBz52s.js");
44
87
  return runCodexAppServerSideQuestion(params, {
45
88
  bindingStore: options.bindingStore,
46
89
  pluginConfig: options?.resolvePluginConfig?.() ?? options?.pluginConfig,
@@ -48,14 +91,14 @@ function createCodexAppServerAgentHarness(options) {
48
91
  });
49
92
  },
50
93
  compact: async (params) => {
51
- const { maybeCompactCodexAppServerSession } = await import("./compact-4mVBriKT.js");
94
+ const { maybeCompactCodexAppServerSession } = await import("./compact-FnJmiPNA.js");
52
95
  return maybeCompactCodexAppServerSession(params, {
53
96
  bindingStore: options.bindingStore,
54
97
  pluginConfig: options?.resolvePluginConfig?.() ?? options?.pluginConfig
55
98
  });
56
99
  },
57
100
  compactAfterContextEngine: async (params) => {
58
- const { maybeCompactCodexAppServerSession } = await import("./compact-4mVBriKT.js");
101
+ const { maybeCompactCodexAppServerSession } = await import("./compact-FnJmiPNA.js");
59
102
  return maybeCompactCodexAppServerSession(params, {
60
103
  bindingStore: options.bindingStore,
61
104
  pluginConfig: options?.resolvePluginConfig?.() ?? options?.pluginConfig,
@@ -64,7 +107,7 @@ function createCodexAppServerAgentHarness(options) {
64
107
  },
65
108
  reset: async (params) => {
66
109
  if (params.sessionId) {
67
- const { reclaimCurrentCodexSessionGeneration, sessionBindingIdentity } = await import("./session-binding-C1ZXdP-x.js").then((n) => n.c);
110
+ const { reclaimCurrentCodexSessionGeneration, sessionBindingIdentity } = await import("./session-binding-BMfX1OX-.js").then((n) => n.l);
68
111
  const identity = sessionBindingIdentity({
69
112
  agentId: params.agentId,
70
113
  sessionId: params.sessionId,
@@ -81,10 +124,7 @@ function createCodexAppServerAgentHarness(options) {
81
124
  if (retired === "conflict") throw new Error(`Codex binding generation changed before session ${params.sessionId} could reset`);
82
125
  }
83
126
  },
84
- dispose: async () => {
85
- const { clearSharedCodexAppServerClientAndWait } = await import("./shared-client-4ICy3U6d.js").then((n) => n.c);
86
- await clearSharedCodexAppServerClientAndWait();
87
- }
127
+ dispose: disposeSharedCodexAppServerClients
88
128
  };
89
129
  }
90
130
  //#endregion