@openclaw/codex 2026.9.1-beta.1 → 2026.9.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/dist/api.js +5 -6
- package/dist/{attempt-client-cleanup-bfsmcQ6m.js → attempt-client-cleanup-DYHcRQAa.js} +31 -45
- package/dist/attempt-context-DmQUNWwT.js +634 -0
- package/dist/{auth-binding-B4FfbcCg.js → auth-binding-Ds_QVm-X.js} +18 -3
- package/dist/{binding-connection-BMvPX73o.js → binding-connection-E6uDsPlx.js} +2 -2
- package/dist/{bounded-turn-B7iBUcuP.js → bounded-turn-wzJrwKKe.js} +15 -20
- package/dist/{capabilities-BRMh0aIq.js → capabilities-dIjNVCYH.js} +1 -1
- package/dist/cli-metadata.js +1 -1
- package/dist/{command-formatters-DEsIufkt.js → command-formatters-CLHhEB1Q.js} +5 -4
- package/dist/{command-handlers-D_-1_qRp.js → command-handlers-CTGb2csu.js} +124 -101
- package/dist/{compact-BglNFZrQ.js → compact-_t0HQrUS.js} +38 -29
- package/dist/{config-giW8X0QA.js → config-BhmfC1s6.js} +294 -282
- package/dist/{context-compaction-activity-BOeJf7yo.js → context-compaction-activity-CMla5FPJ.js} +4 -1
- package/dist/{conversation-binding-data-CW2GuupV.js → conversation-binding-data-BiodpIzq.js} +2 -1
- package/dist/doctor-contract-api.js +143 -12
- package/dist/{dynamic-tools-Dnlfa--w.js → dynamic-tools-BU9tmlYm.js} +599 -655
- package/dist/{effective-mcp-catalog-CTeGrnfO.js → effective-mcp-catalog-DzYBW4h1.js} +2 -2
- package/dist/{event-projector-assistant-message-C5-Ds8mA.js → event-projector-assistant-message-DHRFXKbS.js} +4 -4
- package/dist/{event-projector-usage-Bk1I90Bg.js → event-projector-usage-C5mcrGjp.js} +15 -148
- package/dist/{harness-Csz0F-DK.js → harness-DXVZ5II5.js} +42 -52
- package/dist/harness.js +1 -1
- package/dist/index.js +458 -404
- package/dist/{isolated-completion-Cv6FqygM.js → isolated-completion-kg9kv4iH.js} +4 -4
- package/dist/launch-args-RXQwn8zV.js +90 -0
- package/dist/{managed-binary-DFYK4DWq.js → managed-binary-4-Vjz5GH.js} +14 -9
- package/dist/media-understanding-provider.js +1 -1
- package/dist/model-catalog-CUM68Hkl.js +101 -0
- package/dist/{models-TS3HBU-q.js → models-sYnEc0gd.js} +25 -28
- package/dist/{native-subagent-monitor-4Mfq2HDs.js → native-subagent-monitor-CnH147jH.js} +55 -115
- package/dist/{node-exec-server.runtime-BpWqJO1V.js → node-exec-server.runtime-CstNHCmC.js} +9 -6
- package/dist/{plugin-approval-roundtrip-bUm777tR.js → plugin-approval-roundtrip-CNe-Xrjx.js} +30 -3
- package/dist/{plugin-marketplace-discovery-B9DvaAG-.js → plugin-marketplace-discovery-CfFlKqDl.js} +15 -14
- package/dist/{plugin-metadata-cache-CTCT3w5L.js → plugin-metadata-cache-BFrPhb2c.js} +6 -6
- package/dist/provider-capabilities-DW5p4k9w.js +101 -0
- package/dist/{rate-limits-C5_D8Gmb.js → rate-limits-CawQJfUS.js} +3 -2
- package/dist/{sandbox-guard-kuWTn9C5.js → request-DYAI5FQE.js} +195 -2
- package/dist/{run-attempt-DYc0QCBF.js → run-attempt-D1hJO4fX.js} +828 -2100
- package/dist/{runtime-artifact-BvyT1uyd.js → runtime-artifact-C3jVimFn.js} +21 -14
- package/dist/{session-binding-Bcynfd-_.js → session-binding-BHuTCRZQ.js} +198 -127
- package/dist/{session-catalog-DaLKVtpH.js → session-catalog-yyvTWFOw.js} +564 -408
- package/dist/{session-cli-DMc4oS2w.js → session-cli-CmFEXMAM.js} +1 -1
- package/dist/session-history-C5J1AKzG.js +87 -0
- package/dist/session-initialization-BeWzjGiR.js +74 -0
- package/dist/{session-permission-policy-BrNH1bjy.js → session-permission-policy-DeWVTCMj.js} +2 -2
- package/dist/session-retirement-BujDjXVF.js +97 -0
- package/dist/{session-upstream-marker-BIkusb95.js → session-upstream-marker-C351-5Qw.js} +19 -4
- package/dist/settled-turn-context-D3SNWtUn.js +268 -0
- package/dist/settled-turn-finalizer-BVJx4yoc.js +104 -0
- package/dist/{shared-client-DKz23hHY.js → shared-client-DxcfF9KX.js} +3480 -679
- package/dist/{side-question-DjA_jsNe.js → side-question-BTZAII4l.js} +108 -70
- package/dist/{thread-lifecycle-L7oEkTlq.js → thread-lifecycle-DAcEJ_Om.js} +2188 -1915
- package/dist/{thread-ownership-DZeuKH1j.js → thread-ownership-zGokd8i1.js} +25 -14
- package/dist/thread-policy-g4KbJPzp.js +54 -0
- package/dist/{plugin-app-cache-key-C1CAdfcP.js → thread-resume-C7pyVKeW.js} +59 -7
- package/dist/{transcript-mirror-DsCMWBca.js → transcript-mirror-DTUxFWa_.js} +79 -17
- package/dist/transport-stdio-CyPldczm.js +726 -0
- package/dist/{upstream-prompt-provenance-CFmsKwr9.js → upstream-prompt-provenance-LphB8slG.js} +8 -4
- package/dist/upstream-session-fork-CYlBIGVt.js +966 -0
- package/dist/{usage-ROIaW3wo.js → usage-Bj-rrzkR.js} +3 -3
- package/dist/{web-search-provider.runtime-ClaNPV7N.js → web-search-provider.runtime-D2FWSK4w.js} +3 -3
- package/openclaw.plugin.json +1 -30
- package/package.json +6 -6
- package/dist/command-rpc-CCeCkf_v.js +0 -90
- package/dist/incognito-session-ET_ufDH-.js +0 -2
- package/dist/model-catalog-i9rNBthX.js +0 -48
- package/dist/protocol-validators-VeJxxJ0U.js +0 -2421
- package/dist/request-DXXGHko0.js +0 -157
- package/dist/session-catalog-home-id-BNwAJ9D7.js +0 -18
- package/dist/session-retirement-CcNC3YSY.js +0 -36
- package/dist/settled-turn-finalizer-Dc3ApjU4.js +0 -328
- package/dist/thread-resume-BE9qNEW0.js +0 -30
- package/dist/transport-stdio-DhoGy33Z.js +0 -99
- package/dist/upstream-session-fork-DlaHxSLC.js +0 -326
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { i as resolveCodexAppServerRuntimeOptions } from "./config-
|
|
2
|
-
import {
|
|
3
|
-
import { t as
|
|
1
|
+
import { i as resolveCodexAppServerRuntimeOptions } from "./config-BhmfC1s6.js";
|
|
2
|
+
import { n as readCodexAppServerUsage } from "./request-DYAI5FQE.js";
|
|
3
|
+
import { t as buildCodexAppServerUsageSnapshot } from "./rate-limits-CawQJfUS.js";
|
|
4
4
|
import { CODEX_APP_SERVER_AUTH_MARKER } from "openclaw/plugin-sdk/agent-runtime";
|
|
5
5
|
//#region extensions/codex/src/app-server/usage.ts
|
|
6
6
|
/** Handles the synthetic usage credential for a Codex-backed OpenAI route. */
|
package/dist/{web-search-provider.runtime-ClaNPV7N.js → web-search-provider.runtime-D2FWSK4w.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { t as runBoundedCodexAppServerTurn } from "./bounded-turn-
|
|
1
|
+
import { $t as isJsonObject } from "./shared-client-DxcfF9KX.js";
|
|
2
|
+
import { x as buildCodexNativeWebSearchThreadConfig } from "./thread-lifecycle-DAcEJ_Om.js";
|
|
3
|
+
import { t as runBoundedCodexAppServerTurn } from "./bounded-turn-wzJrwKKe.js";
|
|
4
4
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
import { readStringParam, resolveSearchTimeoutSeconds, wrapWebContent } from "openclaw/plugin-sdk/provider-web-search";
|
|
6
6
|
//#region extensions/codex/src/web-search-provider.runtime.ts
|
package/openclaw.plugin.json
CHANGED
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"configRepair": true,
|
|
22
22
|
"stateMigrations": true
|
|
23
23
|
},
|
|
24
|
+
"doctorHealthChecks": true,
|
|
24
25
|
"sessionRouteStateOwners": [
|
|
25
26
|
{
|
|
26
27
|
"id": "codex",
|
|
@@ -331,21 +332,6 @@
|
|
|
331
332
|
"minimum": 1,
|
|
332
333
|
"default": 60000
|
|
333
334
|
},
|
|
334
|
-
"turnCompletionIdleTimeoutMs": {
|
|
335
|
-
"type": "number",
|
|
336
|
-
"minimum": 1,
|
|
337
|
-
"default": 60000
|
|
338
|
-
},
|
|
339
|
-
"turnAssistantCompletionIdleTimeoutMs": {
|
|
340
|
-
"type": "number",
|
|
341
|
-
"minimum": 1,
|
|
342
|
-
"default": 10000
|
|
343
|
-
},
|
|
344
|
-
"postToolRawAssistantCompletionIdleTimeoutMs": {
|
|
345
|
-
"type": "number",
|
|
346
|
-
"minimum": 1,
|
|
347
|
-
"default": 300000
|
|
348
|
-
},
|
|
349
335
|
"approvalPolicy": {
|
|
350
336
|
"type": "string",
|
|
351
337
|
"enum": ["never", "on-request", "on-failure", "untrusted"]
|
|
@@ -663,21 +649,6 @@
|
|
|
663
649
|
"help": "Maximum time to wait for Codex app-server control-plane requests.",
|
|
664
650
|
"advanced": true
|
|
665
651
|
},
|
|
666
|
-
"appServer.turnCompletionIdleTimeoutMs": {
|
|
667
|
-
"label": "Turn Completion Idle Timeout",
|
|
668
|
-
"help": "Maximum quiet time after Codex accepts a turn or after a turn-scoped app-server request before OpenClaw interrupts the turn while waiting for turn/completed.",
|
|
669
|
-
"advanced": true
|
|
670
|
-
},
|
|
671
|
-
"appServer.turnAssistantCompletionIdleTimeoutMs": {
|
|
672
|
-
"label": "Assistant Completion Idle Timeout",
|
|
673
|
-
"help": "Short quiet-time guard after Codex reports a completed assistant message before OpenClaw releases the turn.",
|
|
674
|
-
"advanced": true
|
|
675
|
-
},
|
|
676
|
-
"appServer.postToolRawAssistantCompletionIdleTimeoutMs": {
|
|
677
|
-
"label": "Post-Tool Continuation Idle Timeout",
|
|
678
|
-
"help": "Completion-idle and progress guard after a tool handoff, native tool completion, or post-tool raw assistant progress while waiting for turn/completed. Defaults to 300000 ms when unset.",
|
|
679
|
-
"advanced": true
|
|
680
|
-
},
|
|
681
652
|
"appServer.approvalPolicy": {
|
|
682
653
|
"label": "Approval Policy",
|
|
683
654
|
"help": "Codex native approval policy sent to thread start, resume, and turns.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/codex",
|
|
3
|
-
"version": "2026.9.1
|
|
3
|
+
"version": "2026.9.1",
|
|
4
4
|
"description": "OpenClaw Codex app-server harness and native session supervision plugin.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
},
|
|
9
9
|
"type": "module",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@openai/codex": "0.
|
|
11
|
+
"@openai/codex": "0.152.1",
|
|
12
12
|
"semver": "7.8.5",
|
|
13
13
|
"smol-toml": "1.8.0",
|
|
14
|
-
"typebox": "1.3.
|
|
14
|
+
"typebox": "1.3.17",
|
|
15
15
|
"ws": "8.21.3",
|
|
16
16
|
"zod": "4.4.3"
|
|
17
17
|
},
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
]
|
|
37
37
|
},
|
|
38
38
|
"compat": {
|
|
39
|
-
"pluginApi": ">=2026.9.1
|
|
39
|
+
"pluginApi": ">=2026.9.1"
|
|
40
40
|
},
|
|
41
41
|
"build": {
|
|
42
|
-
"openclawVersion": "2026.9.1
|
|
42
|
+
"openclawVersion": "2026.9.1"
|
|
43
43
|
},
|
|
44
44
|
"release": {
|
|
45
45
|
"publishToClawHub": true,
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"README.md"
|
|
60
60
|
],
|
|
61
61
|
"peerDependencies": {
|
|
62
|
-
"openclaw": ">=2026.9.1
|
|
62
|
+
"openclaw": ">=2026.9.1"
|
|
63
63
|
},
|
|
64
64
|
"peerDependenciesMeta": {
|
|
65
65
|
"openclaw": {
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { i as resolveCodexAppServerRuntimeOptions, s as resolveCodexSupervisionAppServerRuntimeOptions } from "./config-giW8X0QA.js";
|
|
2
|
-
import { n as listCodexAppServerModels } from "./models-TS3HBU-q.js";
|
|
3
|
-
import { n as describeControlFailure, t as CODEX_CONTROL_METHODS } from "./capabilities-BRMh0aIq.js";
|
|
4
|
-
import { i as withCodexAppServerJsonClient, r as requestCodexAppServerJson } from "./request-DXXGHko0.js";
|
|
5
|
-
//#region extensions/codex/src/command-rpc.ts
|
|
6
|
-
function requestOptions(pluginConfig, limit, config, agentDir) {
|
|
7
|
-
const runtime = resolveCodexAppServerRuntimeOptions({ pluginConfig });
|
|
8
|
-
return {
|
|
9
|
-
limit,
|
|
10
|
-
timeoutMs: runtime.requestTimeoutMs,
|
|
11
|
-
startOptions: runtime.start,
|
|
12
|
-
config,
|
|
13
|
-
agentDir
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
async function codexControlRequest(pluginConfig, method, requestParams, options = {}) {
|
|
17
|
-
const runtime = options.startOptions ? resolveCodexSupervisionAppServerRuntimeOptions({ pluginConfig }) : resolveCodexAppServerRuntimeOptions({ pluginConfig });
|
|
18
|
-
const controlRequestOptions = {
|
|
19
|
-
timeoutMs: options.timeoutMs ?? runtime.requestTimeoutMs,
|
|
20
|
-
startOptions: options.startOptions ?? runtime.start,
|
|
21
|
-
config: options.config,
|
|
22
|
-
sessionKey: options.sessionKey,
|
|
23
|
-
sessionId: options.sessionId,
|
|
24
|
-
authProfileId: options.authProfileId,
|
|
25
|
-
agentDir: options.agentDir,
|
|
26
|
-
isolated: options.isolated
|
|
27
|
-
};
|
|
28
|
-
if (options.onResponse) return await withCodexAppServerJsonClient(controlRequestOptions, async (request, client) => {
|
|
29
|
-
const response = await request({
|
|
30
|
-
method,
|
|
31
|
-
requestParams
|
|
32
|
-
});
|
|
33
|
-
await options.onResponse(response, client);
|
|
34
|
-
return response;
|
|
35
|
-
});
|
|
36
|
-
return await requestCodexAppServerJson({
|
|
37
|
-
method,
|
|
38
|
-
requestParams,
|
|
39
|
-
...controlRequestOptions
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
async function safeCodexControlRequest(pluginConfig, method, requestParams, options = {}) {
|
|
43
|
-
return await safeValue(async () => await codexControlRequest(pluginConfig, method, requestParams, options));
|
|
44
|
-
}
|
|
45
|
-
async function safeCodexModelList(pluginConfig, limit, config, agentDir) {
|
|
46
|
-
return await safeValue(async () => await listCodexAppServerModels(requestOptions(pluginConfig, limit, config, agentDir)));
|
|
47
|
-
}
|
|
48
|
-
async function readCodexStatusProbes(pluginConfig, config, agentDir) {
|
|
49
|
-
const [models, account, limits, mcps, skills] = await Promise.all([
|
|
50
|
-
safeCodexModelList(pluginConfig, 20, config, agentDir),
|
|
51
|
-
safeCodexControlRequest(pluginConfig, CODEX_CONTROL_METHODS.account, { refreshToken: false }, {
|
|
52
|
-
config,
|
|
53
|
-
agentDir
|
|
54
|
-
}),
|
|
55
|
-
safeCodexControlRequest(pluginConfig, CODEX_CONTROL_METHODS.rateLimits, void 0, {
|
|
56
|
-
config,
|
|
57
|
-
agentDir
|
|
58
|
-
}),
|
|
59
|
-
safeCodexControlRequest(pluginConfig, CODEX_CONTROL_METHODS.listMcpServers, { limit: 100 }, {
|
|
60
|
-
config,
|
|
61
|
-
agentDir
|
|
62
|
-
}),
|
|
63
|
-
safeCodexControlRequest(pluginConfig, CODEX_CONTROL_METHODS.listSkills, {}, {
|
|
64
|
-
config,
|
|
65
|
-
agentDir
|
|
66
|
-
})
|
|
67
|
-
]);
|
|
68
|
-
return {
|
|
69
|
-
models,
|
|
70
|
-
account,
|
|
71
|
-
limits,
|
|
72
|
-
mcps,
|
|
73
|
-
skills
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
async function safeValue(read) {
|
|
77
|
-
try {
|
|
78
|
-
return {
|
|
79
|
-
ok: true,
|
|
80
|
-
value: await read()
|
|
81
|
-
};
|
|
82
|
-
} catch (error) {
|
|
83
|
-
return {
|
|
84
|
-
ok: false,
|
|
85
|
-
error: describeControlFailure(error)
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
//#endregion
|
|
90
|
-
export { safeCodexControlRequest as i, readCodexStatusProbes as n, requestOptions as r, codexControlRequest as t };
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { r as buildCodexRuntimeModelParams } from "./harness-Csz0F-DK.js";
|
|
2
|
-
import { h as readCodexPluginConfig } from "./config-giW8X0QA.js";
|
|
3
|
-
import { t as listAllCodexAppServerModels } from "./models-TS3HBU-q.js";
|
|
4
|
-
import { r as requestOptions } from "./command-rpc-CCeCkf_v.js";
|
|
5
|
-
//#region extensions/codex/src/app-server/model-catalog.ts
|
|
6
|
-
const OPENAI_CODEX_BASE_URL = "https://chatgpt.com/backend-api/codex";
|
|
7
|
-
const DEFAULT_MODEL_DISCOVERY_TIMEOUT_MS = 2500;
|
|
8
|
-
const INPUT_TYPES = /* @__PURE__ */ new Set([
|
|
9
|
-
"text",
|
|
10
|
-
"image",
|
|
11
|
-
"audio",
|
|
12
|
-
"video",
|
|
13
|
-
"document"
|
|
14
|
-
]);
|
|
15
|
-
function isModelInputType(value) {
|
|
16
|
-
return INPUT_TYPES.has(value);
|
|
17
|
-
}
|
|
18
|
-
function codexAppServerModelsToCatalogEntries(models) {
|
|
19
|
-
return models.map((model, providerOrder) => {
|
|
20
|
-
const input = model.inputModalities.filter(isModelInputType);
|
|
21
|
-
const runtimeParams = buildCodexRuntimeModelParams(model.id, model.model);
|
|
22
|
-
return {
|
|
23
|
-
provider: "openai",
|
|
24
|
-
id: model.id,
|
|
25
|
-
name: model.displayName ?? model.id,
|
|
26
|
-
providerOrder,
|
|
27
|
-
api: "openai-chatgpt-responses",
|
|
28
|
-
baseUrl: OPENAI_CODEX_BASE_URL,
|
|
29
|
-
reasoning: model.supportedReasoningEfforts.length > 0,
|
|
30
|
-
...input.length > 0 ? { input } : {},
|
|
31
|
-
...runtimeParams ? { params: runtimeParams } : {},
|
|
32
|
-
compat: {
|
|
33
|
-
supportsReasoningEffort: model.supportedReasoningEfforts.length > 0,
|
|
34
|
-
supportedReasoningEfforts: model.supportedReasoningEfforts
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
async function loadCodexAppServerModelCatalog(params, pluginConfig) {
|
|
40
|
-
const discovery = readCodexPluginConfig(pluginConfig).discovery;
|
|
41
|
-
if (discovery?.enabled === false) return [];
|
|
42
|
-
return codexAppServerModelsToCatalogEntries((await listAllCodexAppServerModels({
|
|
43
|
-
...requestOptions(pluginConfig, 100, params.config, params.agentDir),
|
|
44
|
-
timeoutMs: discovery?.timeoutMs ?? DEFAULT_MODEL_DISCOVERY_TIMEOUT_MS
|
|
45
|
-
})).models);
|
|
46
|
-
}
|
|
47
|
-
//#endregion
|
|
48
|
-
export { loadCodexAppServerModelCatalog };
|