@openclaw/codex 2026.8.1-beta.2 → 2026.8.1-beta.3
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/api.js +147 -0
- package/dist/app-server-policy-bg5QPSVP.js +25 -0
- package/dist/{attempt-client-cleanup-DMLXUfa8.js → attempt-client-cleanup-URjUlCHg.js} +1 -1
- package/dist/{binding-connection-I5Bo-AsX.js → binding-connection-DAvZwp96.js} +15 -3
- package/dist/{bounded-turn-qgZmzy_4.js → bounded-turn-4BjrZEwW.js} +22 -16
- package/dist/{capabilities-CybGI1oz.js → capabilities-CH3K57v4.js} +1 -1
- package/dist/cli-metadata.js +1 -1
- package/dist/{command-formatters-B1AEz8ZA.js → command-formatters-D0nZ3qtd.js} +2 -2
- package/dist/{command-handlers-Db8pu_ds.js → command-handlers-DC86lgT4.js} +39 -22
- package/dist/command-rpc-xUIIonsO.js +90 -0
- package/dist/{compact-LspQaGfl.js → compact-COqgBRny.js} +35 -29
- package/dist/{session-binding-DPxIvMgE.js → config-CpNeo5AE.js} +28 -888
- package/dist/context-compaction-activity-BOeJf7yo.js +58 -0
- package/dist/doctor-contract-api.js +15 -14
- package/dist/{dynamic-tools-BVdyWkUD.js → dynamic-tools-fJZhl4CE.js} +1284 -651
- package/dist/{effective-mcp-catalog-DIIhAtOZ.js → effective-mcp-catalog-4YKn51aG.js} +2 -2
- package/dist/elicitation-input-DMkeki8d.js +71 -0
- package/dist/{event-projector-usage-e5huIQWu.js → event-projector-usage-CLwNEJqW.js} +16 -16
- package/dist/harness-DoKQcF8n.js +258 -0
- package/dist/harness.js +2 -226
- package/dist/index.js +171 -48
- package/dist/{isolated-completion-C58NbL40.js → isolated-completion-DPMtlH9r.js} +3 -3
- package/dist/managed-binary-By4FZC6i.js +212 -0
- package/dist/media-understanding-provider.js +2 -2
- package/dist/model-catalog-CmGoqVKB.js +48 -0
- package/dist/{models-BFlpn1Ex.js → models-CZw1wClT.js} +2 -2
- package/dist/{native-subagent-monitor-DyTGmTUx.js → native-subagent-monitor-GGq3RnOo.js} +185 -71
- package/dist/node-exec-server.runtime-Bsu1LdFZ.js +192 -0
- package/dist/{plugin-app-cache-key-C3H2CVp6.js → plugin-app-cache-key-DMNQ8Zi8.js} +15 -3
- package/dist/plugin-approval-roundtrip-C75Yiiwc.js +95 -0
- package/dist/{plugin-marketplace-discovery-CzrGJdCR.js → plugin-marketplace-discovery-CSWDkMrP.js} +40 -26
- package/dist/{plugin-metadata-cache-CNJPj4_b.js → plugin-metadata-cache-BXH5NF-4.js} +8 -5
- package/dist/{protocol-validators-B4F7L8Rf.js → protocol-validators-VAVyEnDp.js} +55 -2
- package/dist/{rate-limits-DZXmOL8-.js → rate-limits-BI1dMHDG.js} +1 -1
- package/dist/{request-BRl5_UfX.js → request-DSK0W6YI.js} +2 -2
- package/dist/{run-attempt-P8BdxC1I.js → run-attempt-BV3HzuCf.js} +1098 -666
- package/dist/{runtime-artifact-BVSPdd6g.js → runtime-artifact-BvyT1uyd.js} +4 -7
- package/dist/{sandbox-guard-Cmwc9eIk.js → sandbox-guard-C1qEeZ5C.js} +25 -19
- package/dist/session-binding-BTrLf9Qm.js +874 -0
- package/dist/{session-catalog-xwNi_SDM.js → session-catalog-ezP_UcRM.js} +1541 -1296
- package/dist/session-catalog-home-id-BNwAJ9D7.js +18 -0
- package/dist/{session-cli-7hgXZDV7.js → session-cli-B1hKvfkI.js} +20 -7
- package/dist/{session-retirement-DoMMJFKm.js → session-retirement-CE4iMiLh.js} +3 -3
- package/dist/{session-upstream-marker-CrIFX06J.js → session-upstream-marker-D_2npHlA.js} +1 -1
- package/dist/{settled-turn-finalizer-BRWBO4MO.js → settled-turn-finalizer-Dx1onIqg.js} +23 -19
- package/dist/{shared-client-kIBbGjk4.js → shared-client-Dw-rzii0.js} +755 -273
- package/dist/{side-question-9HAL26l9.js → side-question-DbXkJZzg.js} +52 -30
- package/dist/{thread-lifecycle-Bu1BTDXr.js → thread-lifecycle-DKdrnTMX.js} +310 -92
- package/dist/{thread-ownership-6kOQHlyC.js → thread-ownership-i2NBwDUL.js} +2 -2
- package/dist/{thread-resume-CPrJNQVM.js → thread-resume-CdJk2Ehf.js} +3 -3
- package/dist/{transcript-mirror-B9gGgnJS.js → transcript-mirror-BU0_LKAL.js} +46 -28
- package/dist/{transport-stdio-DIImwDVS.js → transport-stdio-DhoGy33Z.js} +2 -2
- package/dist/{upstream-prompt-provenance-ClRBije0.js → upstream-prompt-provenance-CFmsKwr9.js} +12 -14
- package/dist/{upstream-session-fork-CE-_LdnP.js → upstream-session-fork-BDVJCLAD.js} +12 -6
- package/dist/{usage-CHlV0e-o.js → usage-9dKJCgcy.js} +3 -3
- package/dist/{web-search-provider.runtime-DRw2Vl42.js → web-search-provider.runtime-DCdx4DGu.js} +3 -3
- package/openclaw.plugin.json +31 -1
- package/package.json +6 -5
- package/dist/app-server-policy-zcBDc1JU.js +0 -49
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-
|
|
1
|
+
import { n as resolveCodexAppServerSpawnEnv } from "./transport-stdio-DhoGy33Z.js";
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { createHash } from "node:crypto";
|
|
5
5
|
import { constants } from "node:fs";
|
|
6
6
|
import { resolveWindowsExecutablePath, resolveWindowsSpawnProgram } from "openclaw/plugin-sdk/windows-spawn";
|
|
7
|
+
import { isPathInside } from "openclaw/plugin-sdk/file-access-runtime";
|
|
7
8
|
//#region extensions/codex/src/app-server/runtime-artifact.ts
|
|
8
9
|
/** Exact local runtime artifact identity for verified Codex setup turns. */
|
|
9
10
|
const ARTIFACT_ID_PREFIX = "codex-app-server:v1:";
|
|
@@ -123,10 +124,6 @@ async function listPackageFiles(params) {
|
|
|
123
124
|
await visit(params.rootPath, 0);
|
|
124
125
|
return files;
|
|
125
126
|
}
|
|
126
|
-
function pathIsWithin(rootPath, candidatePath) {
|
|
127
|
-
const relative = path.relative(rootPath, candidatePath);
|
|
128
|
-
return relative === "" || !path.isAbsolute(relative) && !relative.startsWith(`..${path.sep}`) && relative !== "..";
|
|
129
|
-
}
|
|
130
127
|
function assertSafeNodeOptions(env) {
|
|
131
128
|
for (const [rawKey, value] of Object.entries(env)) {
|
|
132
129
|
if (rawKey.toUpperCase() !== "NODE_OPTIONS" || !value?.trim()) continue;
|
|
@@ -223,7 +220,7 @@ async function hashSelectedArtifactFiles(descriptor, signal) {
|
|
|
223
220
|
} catch (error) {
|
|
224
221
|
if (!isMissingPathError(error)) throw error;
|
|
225
222
|
}
|
|
226
|
-
const externalFiles = [...new Set(allFiles)].filter((filePath) => !packageRoot || !
|
|
223
|
+
const externalFiles = [...new Set(allFiles)].filter((filePath) => !packageRoot || !isPathInside(packageRoot, filePath)).toSorted(compareArtifactNames);
|
|
227
224
|
const budget = {
|
|
228
225
|
fileCount: 0,
|
|
229
226
|
totalBytes: 0n
|
|
@@ -337,7 +334,7 @@ async function resolvePackageRoot(nativePath) {
|
|
|
337
334
|
try {
|
|
338
335
|
if (!(await fs.lstat(metadataPath)).isFile()) return;
|
|
339
336
|
const root = await fs.realpath(candidate);
|
|
340
|
-
return
|
|
337
|
+
return isPathInside(root, nativePath) ? root : void 0;
|
|
341
338
|
} catch {
|
|
342
339
|
return;
|
|
343
340
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { p as isCodexRemoteExecPlacementSandbox } from "./config-CpNeo5AE.js";
|
|
2
|
+
import { resolveAgentConfig, tryResolveDefaultAgentId } from "openclaw/plugin-sdk/agent-scope-runtime";
|
|
3
3
|
import { getSessionEntry } from "openclaw/plugin-sdk/session-store-runtime";
|
|
4
|
+
import { normalizeAgentId, parseAgentSessionKey } from "openclaw/plugin-sdk/routing";
|
|
4
5
|
import { resolveSandboxRuntimeStatus } from "openclaw/plugin-sdk/sandbox";
|
|
5
6
|
//#region extensions/codex/src/app-server/native-execution-policy.ts
|
|
6
7
|
/** Projects node execution ownership into the runtime tool factory options. */
|
|
@@ -21,23 +22,26 @@ function resolveCodexNativeExecutionPolicy(params) {
|
|
|
21
22
|
sessionKey,
|
|
22
23
|
agentId: params.agentId
|
|
23
24
|
});
|
|
24
|
-
const canReadSessionEntry = params.readRuntimeSessionEntry && shouldReadRuntimeSessionEntry({
|
|
25
|
+
const canReadSessionEntry = Boolean(agentId) && params.readRuntimeSessionEntry && shouldReadRuntimeSessionEntry({
|
|
25
26
|
config,
|
|
26
27
|
sessionKey,
|
|
27
|
-
agentId
|
|
28
|
+
agentId
|
|
28
29
|
});
|
|
29
|
-
const sessionEntry = params.sessionEntry ?? (canReadSessionEntry && sessionKey ? readRuntimeSessionEntryBestEffort({
|
|
30
|
+
const sessionEntry = params.sessionEntry ?? (canReadSessionEntry && sessionKey && agentId ? readRuntimeSessionEntryBestEffort({
|
|
30
31
|
sessionKey,
|
|
31
32
|
agentId
|
|
32
33
|
}) : void 0);
|
|
33
|
-
const
|
|
34
|
+
const sandboxAgentId = parseAgentSessionKey(sessionKey)?.agentId ?? agentId;
|
|
35
|
+
const sandboxAvailable = params.sandboxAvailable ?? (sessionKey && sandboxAgentId ? resolveSandboxRuntimeStatus({
|
|
34
36
|
cfg: config,
|
|
35
|
-
sessionKey
|
|
37
|
+
sessionKey,
|
|
38
|
+
agentId: sandboxAgentId,
|
|
39
|
+
classificationAgentId: sandboxAgentId
|
|
36
40
|
}).sandboxed : false);
|
|
37
|
-
const agentExec = resolvePolicyAgentExec({
|
|
41
|
+
const agentExec = agentId ? resolvePolicyAgentExec({
|
|
38
42
|
config,
|
|
39
43
|
agentId
|
|
40
|
-
});
|
|
44
|
+
}) : void 0;
|
|
41
45
|
const globalExec = config.tools?.exec;
|
|
42
46
|
const requestedExecHost = normalizeExecTarget(params.execOverrides?.host) ?? normalizeExecTarget(sessionEntry?.execHost) ?? normalizeExecTarget(agentExec?.host) ?? normalizeExecTarget(globalExec?.host) ?? "auto";
|
|
43
47
|
const effectiveExecHost = resolveEffectiveExecHost({
|
|
@@ -72,13 +76,10 @@ function resolvePolicyAgentId(params) {
|
|
|
72
76
|
if (explicitAgentId) return explicitAgentId;
|
|
73
77
|
const sessionAgentId = parseAgentIdFromSessionKey(params.sessionKey);
|
|
74
78
|
if (sessionAgentId) return sessionAgentId;
|
|
75
|
-
return
|
|
79
|
+
return tryResolveDefaultAgentId(params.config);
|
|
76
80
|
}
|
|
77
81
|
function resolvePolicyAgentExec(params) {
|
|
78
|
-
return
|
|
79
|
-
}
|
|
80
|
-
function listAgentEntries(config) {
|
|
81
|
-
return (config.agents?.list ?? []).filter((entry) => entry !== null && typeof entry === "object");
|
|
82
|
+
return resolveAgentConfig(params.config, params.agentId)?.tools?.exec;
|
|
82
83
|
}
|
|
83
84
|
function parseAgentIdFromSessionKey(sessionKey) {
|
|
84
85
|
const raw = sessionKey?.trim();
|
|
@@ -99,10 +100,7 @@ function shouldReadRuntimeSessionEntry(params) {
|
|
|
99
100
|
return sessionAgentId === explicitAgentId;
|
|
100
101
|
}
|
|
101
102
|
function isDefaultAgentSessionKeyForAgent(params) {
|
|
102
|
-
return normalizeAgentId(params.agentId) ===
|
|
103
|
-
}
|
|
104
|
-
function resolveDefaultPolicyAgentId(agents) {
|
|
105
|
-
return normalizeAgentId((agents.find((entry) => entry?.default) ?? agents[0])?.id);
|
|
103
|
+
return normalizeAgentId(params.agentId) === tryResolveDefaultAgentId(params.config);
|
|
106
104
|
}
|
|
107
105
|
function normalizeAgentIdOrDefault(value) {
|
|
108
106
|
const normalized = normalizeAgentId(value);
|
|
@@ -129,6 +127,10 @@ function readRuntimeSessionEntryBestEffort(params) {
|
|
|
129
127
|
}
|
|
130
128
|
//#endregion
|
|
131
129
|
//#region extensions/codex/src/app-server/sandbox-guard.ts
|
|
130
|
+
/**
|
|
131
|
+
* Blocks direct Codex app-server requests that would bypass OpenClaw sandbox or
|
|
132
|
+
* node-exec routing guarantees.
|
|
133
|
+
*/
|
|
132
134
|
const DIRECT_METHOD_POLICIES = /* @__PURE__ */ new Map([
|
|
133
135
|
["account/rateLimits/read", "allowed-control-plane"],
|
|
134
136
|
["account/read", "allowed-control-plane"],
|
|
@@ -230,9 +232,13 @@ function resolveCodexNativeSandboxBlock(params) {
|
|
|
230
232
|
const sessionKey = params.sessionKey?.trim() || params.sessionId?.trim();
|
|
231
233
|
if (!sessionKey) return;
|
|
232
234
|
if (isCodexRemoteExecPlacementSandbox(params.sandbox) || params.sandbox?.enabled === true) return formatCodexNativeSandboxBlock({ surface: params.surface });
|
|
235
|
+
const sandboxAgentId = parseAgentSessionKey(sessionKey)?.agentId ?? params.agentId ?? tryResolveDefaultAgentId(params.config ?? {});
|
|
236
|
+
if (!sandboxAgentId) return;
|
|
233
237
|
if (!resolveSandboxRuntimeStatus({
|
|
234
238
|
cfg: params.config,
|
|
235
|
-
sessionKey
|
|
239
|
+
sessionKey,
|
|
240
|
+
agentId: sandboxAgentId,
|
|
241
|
+
classificationAgentId: sandboxAgentId
|
|
236
242
|
}).sandboxed) return;
|
|
237
243
|
return formatCodexNativeSandboxBlock({ surface: params.surface });
|
|
238
244
|
}
|