@openclaw/codex 2026.10.5-beta.4 → 2026.10.10-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.
- package/README.md +10 -3
- package/dist/.setup/{account-usage-runtime-CoVpNIlD.mjs → account-usage-runtime-DDCDkvtl.mjs} +15 -9
- package/dist/.setup/{app-server-policy-D_zv8J7V.mjs → app-server-policy-Cog6mm2i.mjs} +1 -1
- package/dist/.setup/{apply-BXDMd05l.mjs → apply-BVSXYkTV.mjs} +11 -11
- package/dist/.setup/{attempt-client-cleanup-zNuNTKVr.mjs → attempt-client-cleanup-6OcbMH46.mjs} +14 -8
- package/dist/.setup/attempt-terminal-sZutF0WY.mjs +1 -0
- package/dist/.setup/{attempt-workspace-context-CcwP3DA3.mjs → attempt-workspace-context-GYPLawX6.mjs} +2 -2
- package/dist/.setup/{auth-binding-BaxlhaNx.mjs → auth-binding-830RLAJW.mjs} +2 -2
- package/dist/.setup/{auth-cache-key-f8ODJ_OX.mjs → auth-cache-key-CVcYw8HD.mjs} +92 -80
- package/dist/.setup/{auth-profile-CgHQ8Vot.mjs → auth-profile-auwzSwwy.mjs} +14 -8
- package/dist/.setup/{auth-profile-health-oHizqgye.mjs → auth-profile-health-BVPZU9I8.mjs} +15 -8
- package/dist/.setup/{auth-profile-selection-hr8ocLtz.mjs → auth-profile-selection-Bp5PDk3W.mjs} +24 -7
- package/dist/.setup/{binding-connection-B7HAAZSI.mjs → binding-connection-GTgUj9pi.mjs} +2 -2
- package/dist/.setup/{binding-connection.runtime-DAXn7iFl.mjs → binding-connection.runtime-RcWR3vQu.mjs} +4 -3
- package/dist/.setup/{bounded-turn-isolation-BfDAo-qZ.mjs → bounded-turn-isolation-D8CDrAVX.mjs} +3 -3
- package/dist/.setup/{bounded-turn-DfIJtRlv.mjs → bounded-turn-mN_ekXYW.mjs} +18 -22
- package/dist/.setup/{build-state-Ds14X10-.mjs → build-state-VcujMRqP.mjs} +1 -1
- package/dist/.setup/{capabilities-DbOzOglY.mjs → capabilities-DAS-JX1z.mjs} +1 -1
- package/dist/.setup/{client-D93nbdB8.mjs → client-BS8X7HmG.mjs} +47 -317
- package/dist/.setup/{client-catalog-response-CuVLp4I0.mjs → client-catalog-response-jM38o5w1.mjs} +2 -2
- package/dist/.setup/client-initialize-CjgZcX61.mjs +165 -0
- package/dist/.setup/{command-dispatch-DxdH5a9-.mjs → command-dispatch-DzXbHqCn.mjs} +3 -3
- package/dist/.setup/{command-formatters-xW9KpoSZ.mjs → command-formatters-B_7-QZ1c.mjs} +2 -2
- package/dist/.setup/{command-handlers-fiYvYYq0.mjs → command-handlers-tfb5Uq-O.mjs} +539 -406
- package/dist/.setup/command-rpc-SXqLQukR.mjs +296 -0
- package/dist/.setup/compact-M-JxLcbZ.mjs +823 -0
- package/dist/.setup/{computer-use-DL2v3Kxq.mjs → computer-use-FqQ-Flbl.mjs} +21 -68
- package/dist/.setup/{config-C1YVVLEA.mjs → config-BfrAlTMT.mjs} +3 -3
- package/dist/.setup/{config-options-DDzeNQ8m.mjs → config-options-DMFZkd3X.mjs} +1 -1
- package/dist/.setup/{config-runtime-DWzK-k0n.mjs → config-runtime-BZRizyuG.mjs} +2 -2
- package/dist/.setup/{context-engine-projection-ps-yn_ci.mjs → context-engine-projection-PIeLSnR-.mjs} +16 -30
- package/dist/.setup/{conversation-binding-BieJZRRV.mjs → conversation-binding-C7MZy-Cx.mjs} +228 -116
- package/dist/.setup/{conversation-binding-data-UgLuTSQT.mjs → conversation-binding-data-khgW0n-o.mjs} +4 -2
- package/dist/.setup/{conversation-control-GXM3unE4.mjs → conversation-control-B2EpVZEb.mjs} +53 -23
- package/dist/.setup/{cyber-failover-D4dgNfFf.mjs → cyber-failover-CqEZoQsj.mjs} +1 -1
- package/dist/.setup/{cyber-failover-notice-ljgGGL0s.mjs → cyber-failover-notice-poL3Advd.mjs} +1 -1
- package/dist/.setup/{doctor-start-options-JjTAl-q_.mjs → doctor-start-options-8uIBXIzR.mjs} +8 -5
- package/dist/.setup/{dynamic-tool-build-DcaPmBlE.mjs → dynamic-tool-build-BjFAIG-f.mjs} +208 -218
- package/dist/.setup/{dynamic-tools-CnQFnNKH.mjs → dynamic-tools-XqWsVjcC.mjs} +344 -118
- package/dist/.setup/{effective-mcp-catalog-B5HKFZNK.mjs → effective-mcp-catalog-C3ta5hHc.mjs} +11 -9
- package/dist/.setup/{ephemeral-turn-De3qb8EQ.mjs → ephemeral-turn-1ZF17fUR.mjs} +5 -4
- package/dist/.setup/{event-projector-assistant-message-CLMKN4x-.mjs → event-projector-assistant-message-ChOAY7rW.mjs} +16 -11
- package/dist/.setup/{event-projector-usage-BpKfdoTm.mjs → event-projector-usage-CBY0Hkga.mjs} +2 -2
- package/dist/.setup/{event-projector-values-CLvG1Hil.mjs → event-projector-values-yf4us9Pf.mjs} +1 -1
- package/dist/.setup/experimental-features-uGnVDtp-.mjs +19 -0
- package/dist/.setup/inference-context-mv_dBpAL.mjs +209 -0
- package/dist/.setup/{inference-dispatch-CO6tTs4q.mjs → inference-dispatch-C2zVSnrr.mjs} +2 -2
- package/dist/.setup/{inference-metadata-DCvcG_N_.mjs → inference-metadata-CYFWLHVk.mjs} +3 -1
- package/dist/.setup/{inference-proxy-BDWV0djM.mjs → inference-proxy-yd3hr2dr.mjs} +8 -8
- package/dist/.setup/installed-probe-lVC1X5ve.mjs +185 -0
- package/dist/.setup/{isolated-completion-BPJdvk5F.mjs → isolated-completion-P-r8NRE4.mjs} +7 -7
- package/dist/.setup/managed-binary-DbKvGXKl.mjs +395 -0
- package/dist/.setup/{mcp-app-session-preparation-Dz2GOwyE.mjs → mcp-app-session-preparation-fnsnCovu.mjs} +18 -14
- package/dist/.setup/{model-catalog-ZNwltCKl.mjs → model-catalog-Y_esgRPY.mjs} +28 -17
- package/dist/.setup/{models-BHpbAuz8.mjs → models-BWLEUo2E.mjs} +3 -3
- package/dist/.setup/{native-auth-esN5MdIv.mjs → native-auth-DpZIaY8N.mjs} +7 -4
- package/dist/.setup/native-execution-policy-D09tLP-u.mjs +152 -0
- package/dist/.setup/{native-hook-relay-wq7jrNLk.mjs → native-hook-relay-C7aaLJaP.mjs} +45 -10
- package/dist/.setup/{native-mcp-app-DX3nyTtc.mjs → native-mcp-app-CsWj-v_x.mjs} +5 -5
- package/dist/.setup/{native-skill-isolation-DSBeF-Yy.mjs → native-skill-isolation-CMimsKYy.mjs} +7 -7
- package/dist/.setup/{native-subagent-monitor-DOLEIf9r.mjs → native-subagent-monitor-CFE7b4oC.mjs} +485 -239
- package/dist/.setup/{native-subagent-pending-assignments-DmVhedNs.mjs → native-subagent-pending-assignments-CTinVtjo.mjs} +1 -1
- package/dist/.setup/{native-task-assignments-DimsQ9Qa.mjs → native-task-assignments-YJopbaVO.mjs} +9 -5
- package/dist/.setup/{node-cli-sessions-CzKg2nGq.mjs → node-cli-sessions-BuJnBnEq.mjs} +7 -4
- package/dist/.setup/{node-exec-server.runtime-BWkULhBM.mjs → node-exec-server.runtime-CP7RC1Nd.mjs} +3 -3
- package/dist/.setup/{plan-41-YOBMq.mjs → plan-B4cHgqNv.mjs} +7 -20
- package/dist/.setup/{plugin-activation-D7WkJMvU.mjs → plugin-activation-CXPWe-hl.mjs} +4 -4
- package/dist/.setup/{plugin-app-cache-key-Bg9DbDI6.mjs → plugin-app-cache-key-DRb-niJc.mjs} +17 -55
- package/dist/.setup/{plugin-approval-roundtrip-CD88q3yx.mjs → plugin-approval-roundtrip-DIZHLbAM.mjs} +1 -1
- package/dist/.setup/{plugin-inventory-CYgdo14P.mjs → plugin-inventory-DE9wcaeH.mjs} +2 -2
- package/dist/.setup/{plugin-metadata-cache-Bi8TAPwX.mjs → plugin-metadata-cache-BqC-a6Fb.mjs} +2 -15
- package/dist/.setup/{project-doc-thread-config-BVcvnps8.mjs → project-doc-thread-config-B0UI3f1D.mjs} +6 -6
- package/dist/.setup/protocol-CaPAVwe9.mjs +12 -0
- package/dist/.setup/{provider-capabilities-Dn2WwH4P.mjs → provider-capabilities-DjcKunHS.mjs} +1 -1
- package/dist/.setup/{provider-LWKll6dV.mjs → provider-wj_LFJH3.mjs} +4 -4
- package/dist/.setup/{rate-limits-CI8pTPqL.mjs → rate-limits-BpfURnuy.mjs} +1 -1
- package/dist/.setup/{request-Bo0kKABI.mjs → request-ePeNJrOd.mjs} +132 -136
- package/dist/.setup/{responses-oauth-twnuTaAa.mjs → responses-oauth-CCV7aVYF.mjs} +6 -6
- package/dist/.setup/{rpc-error-C98SHchT.mjs → rpc-error-DemqqaxE.mjs} +7 -3
- package/dist/.setup/{run-attempt-ClU8MxhZ.mjs → run-attempt-BcWArowv.mjs} +595 -426
- package/dist/.setup/{run-attempt-lifecycle-KN4oh-7O.mjs → run-attempt-lifecycle-DN-ATDp9.mjs} +1 -1
- package/dist/.setup/{runtime-artifact-C13pR7tD.mjs → runtime-artifact-CmLWeyJB.mjs} +3 -3
- package/dist/.setup/{runtime-artifact-connection-jS5DeCok.mjs → runtime-artifact-connection-DpWlZ02e.mjs} +3 -3
- package/dist/.setup/{sandbox-guard-DIImwCy1.mjs → sandbox-guard-DneAfNye.mjs} +70 -30
- package/dist/.setup/{session-binding-JEHNMPsr.mjs → session-binding-BgsWcbdY.mjs} +25 -23
- package/dist/.setup/{session-binding-record-DU_0biMD.mjs → session-binding-record-C_THntMe.mjs} +27 -12
- package/dist/.setup/{session-binding-record-codec-BpH8u_G9.mjs → session-binding-record-codec-DvmOI7g_.mjs} +1 -0
- package/dist/.setup/{session-binding-sidecars-DD-enC8w.mjs → session-binding-sidecars-BNSS6WL4.mjs} +55 -63
- package/dist/.setup/session-cancellation-DLBSJO5n.mjs +43 -0
- package/dist/.setup/{session-catalog-adoption-Ca3OYGYM.mjs → session-catalog-adoption-ppsLlVLB.mjs} +24 -38
- package/dist/.setup/{session-catalog-archive-Bv6gV7x9.mjs → session-catalog-archive-CqLRHJ6z.mjs} +11 -13
- package/dist/.setup/{session-catalog-events-kR2Ot6nX.mjs → session-catalog-events-DK0opVp3.mjs} +5 -5
- package/dist/.setup/{session-catalog-index-CrnfVEnT.mjs → session-catalog-index-BfzfdtH7.mjs} +96 -271
- package/dist/.setup/{session-catalog-index-order-CTfoefow.mjs → session-catalog-index-order-0Zqng2u8.mjs} +1 -1
- package/dist/.setup/{session-catalog-limits-BynIoOYm.mjs → session-catalog-limits-Dc6E0BZz.mjs} +1 -1
- package/dist/.setup/{session-catalog-list-request-D4MYNgDB.mjs → session-catalog-list-request-CAjoWjaH.mjs} +3 -4
- package/dist/.setup/{session-catalog-native-projection-CWqCU1I_.mjs → session-catalog-native-projection-G3lSDYYG.mjs} +5 -5
- package/dist/.setup/{session-catalog-node-adoption-BdP9Zjqo.mjs → session-catalog-node-adoption-e9v8mGgx.mjs} +5 -5
- package/dist/.setup/{session-catalog-node-continue-CNJibO4_.mjs → session-catalog-node-continue-H7nrzcUD.mjs} +5 -5
- package/dist/.setup/{session-catalog-node-lookup-BH_DBGa9.mjs → session-catalog-node-lookup-BrZfDkA8.mjs} +2 -2
- package/dist/.setup/{session-catalog-parsing-DkeoVn60.mjs → session-catalog-parsing-V6jyFg9g.mjs} +2 -2
- package/dist/.setup/{session-catalog-projection-BzHiV818.mjs → session-catalog-projection-BjWE414G.mjs} +8 -7
- package/dist/.setup/{session-catalog-provenance-CmsOE5mh.mjs → session-catalog-provenance-Dg9s12z-.mjs} +50 -30
- package/dist/.setup/{session-catalog-source-DGuRdGvM.mjs → session-catalog-source-DqyuNxCe.mjs} +2 -6
- package/dist/.setup/{session-cli-GwU0izn-.mjs → session-cli-CBGKiqdv.mjs} +1 -1
- package/dist/.setup/{session-history-BO6i_pfk.mjs → session-history-7W0cgTXF.mjs} +11 -9
- package/dist/.setup/{session-history-import-CaO8s6ta.mjs → session-history-import-BwPKwcNi.mjs} +4 -4
- package/dist/.setup/{session-initialization-Bi_2DKhc.mjs → session-initialization-Dn3vveGv.mjs} +2 -2
- package/dist/.setup/{session-retirement-B3U5hpGJ.mjs → session-retirement-Ci_JvOfH.mjs} +8 -8
- package/dist/.setup/{session-history.worker-DJQfek5p.mjs → settled-turn-evidence--tRW6fSm.mjs} +2 -18
- package/dist/.setup/{settled-turn-finalizer-CYCVpTv2.mjs → settled-turn-finalizer-D3-KXsbP.mjs} +8 -8
- package/dist/.setup/{shared-client-BCx1wbyA.mjs → shared-client-CE_uY0A1.mjs} +380 -557
- package/dist/.setup/side-question-OM18H9WJ.mjs +998 -0
- package/dist/.setup/{source-DipMO9hL.mjs → source-uGKgKWm8.mjs} +5 -5
- package/dist/.setup/{thread-archive-guard-LKdwQKyr.mjs → thread-archive-guard-BWjSsA92.mjs} +1 -1
- package/dist/.setup/{thread-lifecycle-run-C_aYiYqk.mjs → thread-lifecycle-run-mLueY6pH.mjs} +172 -75
- package/dist/.setup/{thread-model-selection-DcVebr8N.mjs → thread-model-selection-DxposL4X.mjs} +9 -9
- package/dist/.setup/{thread-ownership-BoUd0i6L.mjs → thread-ownership-t6Y9fLQS.mjs} +7 -7
- package/dist/.setup/{thread-policy-B3wBRNph.mjs → thread-policy-Cy301Or8.mjs} +6 -6
- package/dist/.setup/{thread-requests-BgzJwJtS.mjs → thread-requests-BjawdIVV.mjs} +14 -14
- package/dist/.setup/{thread-resume-D-3bsr1j.mjs → thread-resume-BUbsUfgF.mjs} +6 -6
- package/dist/.setup/{transcript-history-projection-DfKcoZCB.mjs → transcript-history-projection-i-FVpyha.mjs} +1 -1
- package/dist/.setup/{transcript-mirror-Bee2o6jj.mjs → transcript-mirror-CEQJZlF3.mjs} +6 -9
- package/dist/.setup/{transport-stdio-CRWTkKOn.mjs → transport-stdio-Bq160Dhv.mjs} +63 -64
- package/dist/.setup/{transport-websocket-DIyPfkHo.mjs → transport-websocket-0YqiI_MH.mjs} +1 -1
- package/dist/.setup/{turn-router-DBVMToGo.mjs → turn-router-Dbw17k3K.mjs} +2 -2
- package/dist/.setup/{upstream-session-fork-p5fwKi7w.mjs → upstream-session-fork-_LYkh0nZ.mjs} +46 -219
- package/dist/.setup/{usage-limit-error-BQX8RHAd.mjs → usage-limit-error-DcOSH3J4.mjs} +4 -4
- package/dist/.setup/{usage-C2Kq7oej.mjs → usage-w_93wnnR.mjs} +4 -4
- package/dist/.setup/{web-search-item-CvokaZOo.mjs → web-search-item-DHVuNSqk.mjs} +1 -1
- package/dist/.setup/{web-search-provider.runtime-D89djc7e.mjs → web-search-provider.runtime-DMHxve5v.mjs} +3 -3
- package/dist/.setup/{workspace-write-sandbox-probe-BDWO2Qkh.mjs → workspace-write-sandbox-probe-DJxOXcF3.mjs} +2 -2
- package/dist/api.js +7 -28
- package/dist/catalog-page.worker.js +1 -1
- package/dist/cli-metadata.js +1 -1
- package/dist/client-version-api.js +25 -0
- package/dist/doctor-contract-api.js +5 -5
- package/dist/harness.js +59 -36
- package/dist/index.js +259 -295
- package/dist/media-understanding-provider.js +2 -2
- package/dist/migration-provider-api.js +1 -2
- package/dist/native-session-binding-api.js +1 -2
- package/dist/provider-discovery.js +1 -1
- package/dist/session-history-worker-entrypoint.js +12 -0
- package/dist/session-history-worker-runtime.js +7 -18
- package/dist/session-history.worker.js +18 -2
- package/openclaw.plugin.json +1 -1
- package/package.json +6 -6
- package/dist/.setup/attempt-terminal-jO5IMj9K.mjs +0 -2
- package/dist/.setup/command-rpc-HIvsy3wS.mjs +0 -247
- package/dist/.setup/compact-ClZ7Ar7L.mjs +0 -808
- package/dist/.setup/inference-context-DNlGwzwy.mjs +0 -91
- package/dist/.setup/managed-binary-BtIjV7yN.mjs +0 -175
- package/dist/.setup/native-execution-policy-MXEe7PB3.mjs +0 -75
- package/dist/.setup/protocol-CANUwXJ3.mjs +0 -17
- package/dist/.setup/side-question-Bz2UQW0l.mjs +0 -826
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
|
|
2
2
|
import { asOptionalRecord, readStringField } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
3
3
|
import { createHash } from "node:crypto";
|
|
4
4
|
import { isDeepStrictEqual } from "node:util";
|
package/dist/.setup/{native-task-assignments-DimsQ9Qa.mjs → native-task-assignments-YJopbaVO.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as readCodexNativeSubagentHistoryOwner, h as codexNativeSubagentHistoryConnectionFingerprint, r as readNativePendingAssignments, u as readCodexNativeSubagentRunId } from "./native-subagent-pending-assignments-
|
|
1
|
+
import { _ as readCodexNativeSubagentHistoryOwner, h as codexNativeSubagentHistoryConnectionFingerprint, r as readNativePendingAssignments, u as readCodexNativeSubagentRunId } from "./native-subagent-pending-assignments-CTinVtjo.mjs";
|
|
2
2
|
import { i as CODEX_APP_SERVER_BINDING_NAMESPACE, r as CODEX_APP_SERVER_BINDING_MAX_ENTRIES } from "./session-binding-meta-Lkm5Lpf4.mjs";
|
|
3
3
|
import { isDeepStrictEqual } from "node:util";
|
|
4
4
|
import { z } from "zod";
|
|
@@ -56,7 +56,7 @@ async function inspect(params) {
|
|
|
56
56
|
if (extractErrorCode(error) === "ENOENT") return [];
|
|
57
57
|
throw error;
|
|
58
58
|
}
|
|
59
|
-
const { bindingStoreKey, readStoredCodexAppServerBinding } = await import("./session-binding-record-
|
|
59
|
+
const { bindingStoreKey, readStoredCodexAppServerBinding } = await import("./session-binding-record-C_THntMe.mjs").then((n) => n._);
|
|
60
60
|
const { executeSqliteQuerySync, getNodeSqliteKysely, openNodeSqliteDatabase, prepareSqliteReadOnlyLocation, tableExists } = await import("openclaw/plugin-sdk/sqlite-runtime");
|
|
61
61
|
const snapshot = await prepareSqliteReadOnlyLocation(source, { preserveSourceArtifacts: true });
|
|
62
62
|
try {
|
|
@@ -126,7 +126,7 @@ function prepareAssignment(task, stored, params, { getSessionEntry, resolveStore
|
|
|
126
126
|
}
|
|
127
127
|
async function settleHistoricalDelivery(task, key, observedBinding, params, sessionStore) {
|
|
128
128
|
const { executeSqliteQuerySync, getNodeSqliteKysely, openNodeSqliteDatabase, resolveExistingSqliteFileUri, runSqliteImmediateTransactionSync } = await import("openclaw/plugin-sdk/sqlite-runtime");
|
|
129
|
-
const { readStoredCodexAppServerBinding } = await import("./session-binding-record-
|
|
129
|
+
const { readStoredCodexAppServerBinding } = await import("./session-binding-record-C_THntMe.mjs").then((n) => n._);
|
|
130
130
|
const db = openNodeSqliteDatabase(resolveExistingSqliteFileUri(databasePath(params)));
|
|
131
131
|
try {
|
|
132
132
|
const sql = getNodeSqliteKysely(db);
|
|
@@ -170,8 +170,12 @@ const codexNativeTaskAssignmentMigration = {
|
|
|
170
170
|
changes: [],
|
|
171
171
|
warnings
|
|
172
172
|
};
|
|
173
|
-
const { bindingStoreKey, readStoredCodexAppServerBinding } = await import("./session-binding-record-
|
|
174
|
-
const
|
|
173
|
+
const { bindingStoreKey, readStoredCodexAppServerBinding } = await import("./session-binding-record-C_THntMe.mjs").then((n) => n._);
|
|
174
|
+
const { getSessionEntry, resolveStorePath } = await import("openclaw/plugin-sdk/session-store-runtime");
|
|
175
|
+
const sessionStore = {
|
|
176
|
+
getSessionEntry,
|
|
177
|
+
resolveStorePath
|
|
178
|
+
};
|
|
175
179
|
let imported = 0;
|
|
176
180
|
let settled = 0;
|
|
177
181
|
const store = params.context.openPluginStateKeyedStore({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { A as unwrapNodeInvokePayload, x as readBoundedOptionalString } from "./session-catalog-parsing-
|
|
1
|
+
import { A as unwrapNodeInvokePayload, x as readBoundedOptionalString } from "./session-catalog-parsing-V6jyFg9g.mjs";
|
|
2
2
|
import { r as resolveCodexAppServerUserHomeDir } from "./auth-start-options-BPIPeEX8.mjs";
|
|
3
|
-
import { o as formatCodexDisplayText } from "./command-formatters-
|
|
3
|
+
import { o as formatCodexDisplayText } from "./command-formatters-B_7-QZ1c.mjs";
|
|
4
4
|
import { t as codexCatalogHomeId } from "./session-catalog-home-id-vlih0B_g.mjs";
|
|
5
5
|
import { asNonArrayRecord, isRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
6
|
import { timestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
|
|
@@ -196,8 +196,11 @@ async function resumeCodexCliSessionOnNode(params) {
|
|
|
196
196
|
let catalogAgentId;
|
|
197
197
|
let catalogHomeId;
|
|
198
198
|
if (params.sessionKey) {
|
|
199
|
-
const
|
|
200
|
-
const
|
|
199
|
+
const storePath = params.storePath ?? params.runtime.agent.session.resolveStorePath(void 0, { agentId: params.agentId });
|
|
200
|
+
const { adoptionSessionKeyRest, CODEX_NODE_SESSION_KEY_PREFIX, readNodeSessionMarker } = await import("./session-catalog-node-adoption-e9v8mGgx.mjs");
|
|
201
|
+
const entry = await params.runtime.agent.session.getSessionEntryAsync({
|
|
202
|
+
agentId: params.agentId,
|
|
203
|
+
storePath,
|
|
201
204
|
sessionKey: params.sessionKey,
|
|
202
205
|
readConsistency: "latest"
|
|
203
206
|
});
|
package/dist/.setup/{node-exec-server.runtime-BWkULhBM.mjs → node-exec-server.runtime-CP7RC1Nd.mjs}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { o as closeCodexAppServerTransportAndWait, t as createStdioTransport } from "./transport-stdio-
|
|
1
|
+
import { a as isManagedCodexDesktopCommand, f as resolveManagedCodexNativeCommand, u as resolveManagedCodexAppServerStartOptions } from "./managed-binary-DbKvGXKl.mjs";
|
|
2
|
+
import { o as closeCodexAppServerTransportAndWait, t as createStdioTransport } from "./transport-stdio-Bq160Dhv.mjs";
|
|
3
3
|
import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
4
|
import { stripVTControlCharacters } from "node:util";
|
|
5
5
|
import { killProcessTree } from "openclaw/plugin-sdk/process-runtime";
|
|
@@ -144,7 +144,7 @@ async function runCodexNodeExecServer(params) {
|
|
|
144
144
|
"stdio"
|
|
145
145
|
],
|
|
146
146
|
headers: {}
|
|
147
|
-
});
|
|
147
|
+
}, { preferInstalled: false });
|
|
148
148
|
const native = resolveManagedCodexNativeCommand(resolved.command);
|
|
149
149
|
if (!native || isManagedCodexDesktopCommand(resolved.command)) throw new Error("Codex node exec-server requires the pinned managed package binary.");
|
|
150
150
|
const baseEnv = sanitizeEnvVars(process.env, {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { t as isOnlyMigrationKind } from "./scope-DOC1Xjc8.mjs";
|
|
2
|
-
import { u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-
|
|
3
|
-
import "./config-
|
|
4
|
-
import {
|
|
2
|
+
import { u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-DE9wcaeH.mjs";
|
|
3
|
+
import "./config-BfrAlTMT.mjs";
|
|
4
|
+
import { t as readCodexExperimentalFeature } from "./experimental-features-uGnVDtp-.mjs";
|
|
5
|
+
import { i as hasCodexSource, n as defaultCodexHome, o as readJsonObject, r as discoverCodexSource, s as sanitizeName, t as codexPluginMigrationSubscriptionWarning } from "./source-uGKgKWm8.mjs";
|
|
5
6
|
import { asBoolean, asOptionalRecord, isRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
7
|
import { createHash } from "node:crypto";
|
|
7
8
|
import { runCommandBuffered } from "openclaw/plugin-sdk/process-runtime";
|
|
@@ -97,8 +98,8 @@ async function readCodexCliCredentialsAsync(options) {
|
|
|
97
98
|
options.signal?.throwIfAborted();
|
|
98
99
|
if (!options.allowKeychainPrompt) return;
|
|
99
100
|
const home = await fs.realpath(options.codexHome).catch(() => path.resolve(options.codexHome));
|
|
100
|
-
const { CodexAppServerClient } = await import("./client-
|
|
101
|
-
const { resolveManagedCodexPackageEntrypoint, resolveManagedCodexNativeCommand } = await import("./managed-binary-
|
|
101
|
+
const { CodexAppServerClient } = await import("./client-BS8X7HmG.mjs").then((n) => n.n);
|
|
102
|
+
const { resolveManagedCodexPackageEntrypoint, resolveManagedCodexNativeCommand } = await import("./managed-binary-DbKvGXKl.mjs").then((n) => n.o);
|
|
102
103
|
const launcher = resolveManagedCodexPackageEntrypoint(path.dirname(fileURLToPath(import.meta.url)));
|
|
103
104
|
const command = launcher ? resolveManagedCodexNativeCommand(launcher) : void 0;
|
|
104
105
|
if (!command) return;
|
|
@@ -148,21 +149,7 @@ async function readNativeCredential(client, home, options, signal) {
|
|
|
148
149
|
let record;
|
|
149
150
|
if (mode === "file") record = await readAuthFile(home);
|
|
150
151
|
else if ((mode === "keyring" || mode === "auto") && process.platform === "darwin") {
|
|
151
|
-
|
|
152
|
-
let encrypted;
|
|
153
|
-
do {
|
|
154
|
-
const features = await client.request("experimentalFeature/list", {
|
|
155
|
-
limit: 100,
|
|
156
|
-
cursor
|
|
157
|
-
}, { signal });
|
|
158
|
-
const storage = features.data.find((feature) => feature.name === "secret_auth_storage");
|
|
159
|
-
if (storage) {
|
|
160
|
-
encrypted = storage.enabled;
|
|
161
|
-
break;
|
|
162
|
-
}
|
|
163
|
-
cursor = features.nextCursor ?? void 0;
|
|
164
|
-
} while (cursor);
|
|
165
|
-
if (encrypted !== false) return;
|
|
152
|
+
if (await readCodexExperimentalFeature((params) => client.request("experimentalFeature/list", params, { signal }), "secret_auth_storage") !== false) return;
|
|
166
153
|
record = await readDirectKeyring(home, signal);
|
|
167
154
|
}
|
|
168
155
|
signal.throwIfAborted();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { r as CodexAppServerRpcError } from "./rpc-error-
|
|
2
|
-
import { i as listCodexPluginMetadata, n as findCodexMarketplacePluginSummary, o as pluginReadParams, r as isOpenAiCuratedMarketplaceName, t as createCodexAppInventoryRequest, u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-
|
|
3
|
-
import "./config-
|
|
1
|
+
import { r as CodexAppServerRpcError } from "./rpc-error-DemqqaxE.mjs";
|
|
2
|
+
import { i as listCodexPluginMetadata, n as findCodexMarketplacePluginSummary, o as pluginReadParams, r as isOpenAiCuratedMarketplaceName, t as createCodexAppInventoryRequest, u as CODEX_PLUGINS_MARKETPLACE_NAME } from "./plugin-inventory-DE9wcaeH.mjs";
|
|
3
|
+
import "./config-BfrAlTMT.mjs";
|
|
4
4
|
import { coerceErrorMessage } from "openclaw/plugin-sdk/error-runtime";
|
|
5
5
|
//#region extensions/codex/src/app-server/plugin-activation.ts
|
|
6
6
|
/** Activates legacy curated plugins without granting install authority to other marketplaces. */
|
|
@@ -78,7 +78,7 @@ async function refreshCodexPluginRuntimeState(params) {
|
|
|
78
78
|
}
|
|
79
79
|
/** Refreshes hosted app tools without reloading unrelated active threads. */
|
|
80
80
|
async function refreshCodexAppRuntimeState(params) {
|
|
81
|
-
params.appCache.invalidate(params.appCacheKey, "Codex plugin app inventory refresh requested"
|
|
81
|
+
params.appCache.invalidate(params.appCacheKey, "Codex plugin app inventory refresh requested");
|
|
82
82
|
if (params.deferAppInventoryRefresh) return;
|
|
83
83
|
await params.appCache.refreshNow({
|
|
84
84
|
key: params.appCacheKey,
|
|
@@ -30,7 +30,6 @@ var CodexAppInventoryCache = class {
|
|
|
30
30
|
constructor(options = {}) {
|
|
31
31
|
this.entries = /* @__PURE__ */ new Map();
|
|
32
32
|
this.inFlight = /* @__PURE__ */ new Map();
|
|
33
|
-
this.refreshTokens = /* @__PURE__ */ new Map();
|
|
34
33
|
this.diagnostics = /* @__PURE__ */ new Map();
|
|
35
34
|
this.revision = 0;
|
|
36
35
|
this.ttlMs = options.ttlMs ?? CODEX_APP_INVENTORY_CACHE_TTL_MS;
|
|
@@ -42,7 +41,7 @@ var CodexAppInventoryCache = class {
|
|
|
42
41
|
const refreshScheduled = (state === "missing" ? !params.suppressRefresh : state === "stale" || Boolean(params.forceRefetch)) && this.scheduleRefresh(params);
|
|
43
42
|
let snapshot;
|
|
44
43
|
if (entry) {
|
|
45
|
-
const { invalidated: _invalidated,
|
|
44
|
+
const { invalidated: _invalidated, ...rest } = entry;
|
|
46
45
|
snapshot = rest;
|
|
47
46
|
}
|
|
48
47
|
const diagnostic = entry ? entry.lastError : this.diagnostics.get(params.key);
|
|
@@ -55,25 +54,15 @@ var CodexAppInventoryCache = class {
|
|
|
55
54
|
...diagnostic ? { diagnostic } : {}
|
|
56
55
|
};
|
|
57
56
|
}
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
* the app ids the invalidation concerns so a covering targeted refresh can
|
|
61
|
-
* clear it; without one, only a complete refresh revalidates the entry.
|
|
62
|
-
*/
|
|
63
|
-
invalidate(key, reason, nowMs = Date.now(), invalidatedAppIds) {
|
|
57
|
+
/** Marks a key stale until its next successful refresh. */
|
|
58
|
+
invalidate(key, reason, nowMs = Date.now()) {
|
|
64
59
|
this.revision += 1;
|
|
65
|
-
this.refreshTokens.delete(key);
|
|
66
|
-
this.inFlight.delete(key);
|
|
67
60
|
const diagnostic = {
|
|
68
61
|
message: reason,
|
|
69
62
|
atMs: nowMs
|
|
70
63
|
};
|
|
71
64
|
const entry = this.entries.get(key);
|
|
72
65
|
if (entry) {
|
|
73
|
-
const scope = invalidatedAppIds?.filter(Boolean).map(codexAppIdentityKey) ?? [];
|
|
74
|
-
if (!entry.invalidated) entry.invalidatedAppIds = scope.length ? [...scope].toSorted() : void 0;
|
|
75
|
-
else if (entry.invalidatedAppIds && scope.length) entry.invalidatedAppIds = Array.from(/* @__PURE__ */ new Set([...entry.invalidatedAppIds, ...scope])).toSorted();
|
|
76
|
-
else entry.invalidatedAppIds = void 0;
|
|
77
66
|
entry.invalidated = true;
|
|
78
67
|
entry.lastError = diagnostic;
|
|
79
68
|
entry.revision = this.revision;
|
|
@@ -83,7 +72,6 @@ var CodexAppInventoryCache = class {
|
|
|
83
72
|
clear() {
|
|
84
73
|
this.entries.clear();
|
|
85
74
|
this.inFlight.clear();
|
|
86
|
-
this.refreshTokens.clear();
|
|
87
75
|
this.diagnostics.clear();
|
|
88
76
|
this.revision = 0;
|
|
89
77
|
}
|
|
@@ -95,10 +83,8 @@ var CodexAppInventoryCache = class {
|
|
|
95
83
|
async refreshNow(params) {
|
|
96
84
|
const existing = this.inFlight.get(params.key);
|
|
97
85
|
if (existing && !params.forceRefetch && doesInFlightRefreshCover(existing, params)) return existing.promise;
|
|
98
|
-
const refreshToken = Symbol("app-inventory-refresh");
|
|
99
|
-
this.refreshTokens.set(params.key, refreshToken);
|
|
100
86
|
const previousRefresh = params.forceRefetch ? void 0 : existing?.promise;
|
|
101
|
-
const promise = this.refreshUncoalesced(params,
|
|
87
|
+
const promise = this.refreshUncoalesced(params, previousRefresh);
|
|
102
88
|
const currentRefresh = {
|
|
103
89
|
promise,
|
|
104
90
|
targetAppIds: targetAppIdSet(params.targetAppIds)
|
|
@@ -110,7 +96,7 @@ var CodexAppInventoryCache = class {
|
|
|
110
96
|
if (this.inFlight.get(params.key) === currentRefresh) this.inFlight.delete(params.key);
|
|
111
97
|
}
|
|
112
98
|
}
|
|
113
|
-
async refreshUncoalesced(params,
|
|
99
|
+
async refreshUncoalesced(params, previousRefresh) {
|
|
114
100
|
const nowMs = resolveDateTimestampMs(params.nowMs);
|
|
115
101
|
try {
|
|
116
102
|
let previousRefreshSucceeded = false;
|
|
@@ -133,28 +119,20 @@ var CodexAppInventoryCache = class {
|
|
|
133
119
|
expiresAtMs,
|
|
134
120
|
revision: this.revision
|
|
135
121
|
};
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
...published,
|
|
142
|
-
...remaining,
|
|
143
|
-
...remaining.invalidated && existingEntry?.lastError ? { lastError: existingEntry.lastError } : {}
|
|
144
|
-
});
|
|
145
|
-
this.diagnostics.delete(params.key);
|
|
146
|
-
}
|
|
122
|
+
this.entries.set(params.key, {
|
|
123
|
+
...resolvePublishedInventorySnapshot(this.entries.get(params.key), snapshot, nowMs),
|
|
124
|
+
invalidated: false
|
|
125
|
+
});
|
|
126
|
+
this.diagnostics.delete(params.key);
|
|
147
127
|
return snapshot;
|
|
148
128
|
} catch (error) {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
if (entry) entry.lastError = diagnostic;
|
|
157
|
-
}
|
|
129
|
+
const diagnostic = {
|
|
130
|
+
message: sanitizeErrorMessage(error instanceof Error ? error.message : String(error)),
|
|
131
|
+
atMs: nowMs
|
|
132
|
+
};
|
|
133
|
+
this.diagnostics.set(params.key, diagnostic);
|
|
134
|
+
const entry = this.entries.get(params.key);
|
|
135
|
+
if (entry) entry.lastError = diagnostic;
|
|
158
136
|
embeddedAgentLog.warn("codex app inventory refresh failed", {
|
|
159
137
|
forceRefetch: params.forceRefetch === true,
|
|
160
138
|
keyFingerprint: fingerprintInventoryCacheKey(params.key),
|
|
@@ -196,22 +174,6 @@ function mergeRefreshedRows(existingRows, refreshedRows, refreshedTargetIds) {
|
|
|
196
174
|
return refreshed ? [refreshed] : [];
|
|
197
175
|
}), ...refreshedRows.filter((row) => !existingIds.has(codexAppIdentityKey(row.id)))];
|
|
198
176
|
}
|
|
199
|
-
/**
|
|
200
|
-
* A refresh retires exactly the invalidation scope it re-read: a complete
|
|
201
|
-
* refresh clears everything; a targeted one subtracts its target ids so
|
|
202
|
-
* separate covering refreshes accumulate until no scope remains. Unscoped
|
|
203
|
-
* invalidations require a complete refresh.
|
|
204
|
-
*/
|
|
205
|
-
function resolveRemainingInvalidationScope(existing, snapshot) {
|
|
206
|
-
if (!existing?.invalidated || !snapshot.targetAppIds?.length) return { invalidated: false };
|
|
207
|
-
if (!existing.invalidatedAppIds) return { invalidated: true };
|
|
208
|
-
const refreshedTargetIds = new Set(snapshot.targetAppIds);
|
|
209
|
-
const remaining = existing.invalidatedAppIds.filter((appId) => !refreshedTargetIds.has(appId));
|
|
210
|
-
return remaining.length > 0 ? {
|
|
211
|
-
invalidated: true,
|
|
212
|
-
invalidatedAppIds: remaining
|
|
213
|
-
} : { invalidated: false };
|
|
214
|
-
}
|
|
215
177
|
function targetAppIdSet(appIds) {
|
|
216
178
|
return new Set(appIds?.filter(Boolean).map(codexAppIdentityKey) ?? []);
|
|
217
179
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ut as resolveCodexGatewayTimeoutWithGraceMs } from "./shared-client-CE_uY0A1.mjs";
|
|
2
2
|
import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
|
|
3
3
|
import { isApprovalNotFoundError, toErrorObject } from "openclaw/plugin-sdk/error-runtime";
|
|
4
4
|
import { racePromiseWithAbortSignal } from "openclaw/plugin-sdk/time-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as findCodexAppById } from "./plugin-app-cache-key-
|
|
2
|
-
import "./config-
|
|
1
|
+
import { c as findCodexAppById } from "./plugin-app-cache-key-DRb-niJc.mjs";
|
|
2
|
+
import "./config-BfrAlTMT.mjs";
|
|
3
3
|
import { embeddedAgentLog } from "openclaw/plugin-sdk/agent-harness-runtime";
|
|
4
4
|
//#region extensions/codex/src/app-server/config-contracts.ts
|
|
5
5
|
const CODEX_PLUGINS_MARKETPLACE_NAME = "openai-curated";
|
package/dist/.setup/{plugin-metadata-cache-Bi8TAPwX.mjs → plugin-metadata-cache-BqC-a6Fb.mjs}
RENAMED
|
@@ -5,8 +5,6 @@ var CodexPluginMetadataCache = class {
|
|
|
5
5
|
this.nowMs = nowMs;
|
|
6
6
|
this.entries = /* @__PURE__ */ new Map();
|
|
7
7
|
this.inFlight = /* @__PURE__ */ new Map();
|
|
8
|
-
this.generations = /* @__PURE__ */ new Map();
|
|
9
|
-
this.clearGeneration = 0;
|
|
10
8
|
}
|
|
11
9
|
read(appCacheKey, queryKind, requestParams, catalogScope) {
|
|
12
10
|
const entryKey = buildMetadataCacheEntryKey(appCacheKey, queryKind, requestParams, catalogScope);
|
|
@@ -24,18 +22,11 @@ var CodexPluginMetadataCache = class {
|
|
|
24
22
|
const cached = this.read(params.appCacheKey, params.queryKind, params.requestParams, params.catalogScope);
|
|
25
23
|
if (cached) return cached;
|
|
26
24
|
const pending = this.inFlight.get(entryKey);
|
|
27
|
-
if (pending)
|
|
28
|
-
return await pending.promise;
|
|
29
|
-
} catch {
|
|
30
|
-
if (this.inFlight.get(entryKey) === pending) this.inFlight.delete(entryKey);
|
|
31
|
-
return await this.load(params);
|
|
32
|
-
}
|
|
33
|
-
const generation = this.generations.get(params.appCacheKey) ?? 0;
|
|
34
|
-
const clearGeneration = this.clearGeneration;
|
|
25
|
+
if (pending) return await pending.promise;
|
|
35
26
|
const promise = (async () => {
|
|
36
27
|
const method = params.queryKind === "installed" ? "plugin/installed" : "plugin/list";
|
|
37
28
|
const response = await params.request(method, params.requestParams);
|
|
38
|
-
if (
|
|
29
|
+
if (response.marketplaceLoadErrors.length === 0 && (params.cacheable?.(response) ?? true)) this.entries.set(entryKey, {
|
|
39
30
|
appCacheKey: params.appCacheKey,
|
|
40
31
|
response,
|
|
41
32
|
expiresAtMs: this.nowMs() + CODEX_PLUGIN_METADATA_CACHE_TTL_MS
|
|
@@ -53,13 +44,9 @@ var CodexPluginMetadataCache = class {
|
|
|
53
44
|
}
|
|
54
45
|
}
|
|
55
46
|
invalidate(appCacheKey) {
|
|
56
|
-
this.generations.set(appCacheKey, (this.generations.get(appCacheKey) ?? 0) + 1);
|
|
57
47
|
for (const cache of [this.entries, this.inFlight]) for (const [entryKey, entry] of cache) if (entry.appCacheKey === appCacheKey) cache.delete(entryKey);
|
|
58
48
|
}
|
|
59
|
-
/** Clears snapshots and prevents late in-flight loads from repopulating them. */
|
|
60
49
|
clear() {
|
|
61
|
-
this.clearGeneration += 1;
|
|
62
|
-
this.generations.clear();
|
|
63
50
|
this.entries.clear();
|
|
64
51
|
this.inFlight.clear();
|
|
65
52
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
|
|
2
2
|
import { l as fingerprintCodexPolicy } from "./config-security-clxAZYWX.mjs";
|
|
3
3
|
import { f as resolveCodexPluginsPolicy } from "./config-parsing-DsWSCPHO.mjs";
|
|
4
|
-
import { u as CODEX_SESSION_OVERRIDABLE_LAYER_TYPES } from "./config-options-
|
|
5
|
-
import { a as defaultCodexAppInventoryCache, i as CodexAppInventoryCache, o as serializeCodexAppInventoryError, s as codexAppIdentityKey } from "./plugin-app-cache-key-
|
|
6
|
-
import { l as toCodexPluginOwnedAccountApp, s as readCodexPluginInventory, t as createCodexAppInventoryRequest } from "./plugin-inventory-
|
|
7
|
-
import "./config-
|
|
8
|
-
import { t as ensureCodexPluginActivation } from "./plugin-activation-
|
|
4
|
+
import { u as CODEX_SESSION_OVERRIDABLE_LAYER_TYPES } from "./config-options-DMFZkd3X.mjs";
|
|
5
|
+
import { a as defaultCodexAppInventoryCache, i as CodexAppInventoryCache, o as serializeCodexAppInventoryError, s as codexAppIdentityKey } from "./plugin-app-cache-key-DRb-niJc.mjs";
|
|
6
|
+
import { l as toCodexPluginOwnedAccountApp, s as readCodexPluginInventory, t as createCodexAppInventoryRequest } from "./plugin-inventory-DE9wcaeH.mjs";
|
|
7
|
+
import "./config-BfrAlTMT.mjs";
|
|
8
|
+
import { t as ensureCodexPluginActivation } from "./plugin-activation-CXPWe-hl.mjs";
|
|
9
9
|
import { embeddedAgentLog } from "openclaw/plugin-sdk/agent-harness-runtime";
|
|
10
10
|
//#region extensions/codex/src/app-server/plugin-app-approval-overrides.ts
|
|
11
11
|
/** Projects ask approvals into the native session layer without changing saved settings. */
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
2
|
+
//#region extensions/codex/src/app-server/protocol.ts
|
|
3
|
+
/** Namespace Codex keeps directly model-visible without exposing it to Code Mode guests. */
|
|
4
|
+
const CODEX_OPENCLAW_DIRECT_DYNAMIC_TOOL_NAMESPACE = "openclaw_direct";
|
|
5
|
+
function flattenCodexDynamicToolFunctions(tools) {
|
|
6
|
+
return (tools ?? []).flatMap((tool) => tool.type === "namespace" ? tool.tools : [tool]);
|
|
7
|
+
}
|
|
8
|
+
function isJsonObject(value) {
|
|
9
|
+
return isRecord(value);
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { flattenCodexDynamicToolFunctions as n, isJsonObject as r, CODEX_OPENCLAW_DIRECT_DYNAMIC_TOOL_NAMESPACE as t };
|
package/dist/.setup/{provider-capabilities-Dn2WwH4P.mjs → provider-capabilities-DjcKunHS.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { f as releaseLeasedSharedCodexAppServerClient } from "./shared-client-CE_uY0A1.mjs";
|
|
2
2
|
//#region extensions/codex/src/app-server/provider-capabilities.ts
|
|
3
3
|
function resolveOverriddenProviderWebSearchSupport(modelProviderOverride) {
|
|
4
4
|
const provider = modelProviderOverride?.trim().toLowerCase();
|
|
@@ -11,7 +11,7 @@ function buildCodexMigrationProvider(params = {}) {
|
|
|
11
11
|
].join(" "),
|
|
12
12
|
supportedItemKinds: ["memory", "auth"],
|
|
13
13
|
async detect(ctx) {
|
|
14
|
-
const { discoverCodexSource, hasCodexSource } = await import("./source-
|
|
14
|
+
const { discoverCodexSource, hasCodexSource } = await import("./source-uGKgKWm8.mjs").then((n) => n.a);
|
|
15
15
|
const memoryOnly = isOnlyMigrationKind(ctx, "memory");
|
|
16
16
|
const authOnly = isOnlyMigrationKind(ctx, "auth");
|
|
17
17
|
const source = await discoverCodexSource({
|
|
@@ -29,16 +29,16 @@ function buildCodexMigrationProvider(params = {}) {
|
|
|
29
29
|
};
|
|
30
30
|
},
|
|
31
31
|
async plan(ctx) {
|
|
32
|
-
const { buildCodexMigrationPlan } = await import("./plan-
|
|
32
|
+
const { buildCodexMigrationPlan } = await import("./plan-B4cHgqNv.mjs");
|
|
33
33
|
return buildCodexMigrationPlan(ctx);
|
|
34
34
|
},
|
|
35
35
|
deferredApply: { retrySafe: true },
|
|
36
36
|
prepareApply(ctx) {
|
|
37
37
|
if (isOnlyMigrationKind(ctx, "memory") || isOnlyMigrationKind(ctx, "auth")) return;
|
|
38
|
-
return import("./apply-
|
|
38
|
+
return import("./apply-BVSXYkTV.mjs").then(({ prepareTargetCodexAppServer }) => prepareTargetCodexAppServer(ctx));
|
|
39
39
|
},
|
|
40
40
|
async apply(ctx, plan) {
|
|
41
|
-
const { applyCodexMigrationPlan } = await import("./apply-
|
|
41
|
+
const { applyCodexMigrationPlan } = await import("./apply-BVSXYkTV.mjs");
|
|
42
42
|
return await applyCodexMigrationPlan({
|
|
43
43
|
ctx,
|
|
44
44
|
plan,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { r as isJsonObject } from "./protocol-CaPAVwe9.mjs";
|
|
2
2
|
import { normalizeOptionalString, parseStrictFiniteNumber } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { MAX_DATE_TIMESTAMP_MS, resolveExpiresAtMsFromEpochSeconds } from "openclaw/plugin-sdk/number-runtime";
|