fix(codex): update managed runtime to 0.160.0 (#163560)

This commit is contained in:
Vincent Koc 2026-10-02 22:36:54 +07:00 • committed by GitHub
parent 35126bbe59
commit 1b8d4594fe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 47 additions and 48 deletions

View file

@ -334,7 +334,7 @@ or legacy MCP/tool restrictions prevent automatic replacement and cache refresh.
## Remote marketplaces
Remote marketplace support was introduced in Codex 0.146.1 and remains
available in OpenClaw's pinned Codex 0.159.1. OpenClaw passes the opaque remote
available in OpenClaw's pinned Codex 0.160.0. OpenClaw passes the opaque remote
plugin ID returned by Codex to `plugin/read` and `plugin/install`; a
human-readable plugin name is not a valid substitute.

View file

@ -13,7 +13,7 @@ How OpenClaw starts and reaches the Codex app-server, and every `appServer` fiel
## App-server transport
For ordinary harness turns, OpenClaw starts the managed Codex binary shipped
with the official plugin (currently `@openai/codex` `0.159.1`):
with the official plugin (currently `@openai/codex` `0.160.0`):
```bash
codex app-server --listen stdio://
@ -207,7 +207,7 @@ If the normal app-server runtime would be `danger-full-access`, enabling
permission profile instead. Codex-managed network enforcement is sandboxed
networking, so a full-access profile would not protect outbound traffic.
The plugin manages stable Codex app-server `0.159.1`. Explicit custom
The plugin manages stable Codex app-server `0.160.0`. Explicit custom
executables, remote app-servers, and macOS desktop binaries must report a
parseable semantic version of `0.149.0` or newer. Older, malformed, and
unversioned handshakes are rejected. Newer versions log a compatibility warning

View file

@ -91,7 +91,7 @@ The stable default is fail-closed: active OpenClaw sandboxing disables native
Codex execution surfaces that would otherwise run from the Codex app-server
host. Use `appServer.experimental.sandboxExecServer: true` only when you want
to try Codex's remote environment support with OpenClaw's sandbox backend.
This preview path uses the pinned Codex `0.159.1` app-server.
This preview path uses the pinned Codex `0.160.0` app-server.
```json5
{

View file

@ -92,9 +92,9 @@ response remains authoritative even if it contains no visible models; HTTP
`401` and `403` return an empty catalog rather than exposing fallback models.
<Note>
The current bundled harness is `@openai/codex` `0.159.1`. A `model/list`
The current bundled harness is `@openai/codex` `0.160.0`. A `model/list`
probe against that app-server in an isolated, unauthenticated Codex home returned
these visible bundled catalog entries on September 29, 2026:
these visible bundled catalog entries on October 2, 2026:
| Model id | Input modalities | Reasoning efforts | Default effort |
| --------------- | ---------------- | ------------------------------------ | -------------- |
@ -107,8 +107,7 @@ these visible bundled catalog entries on September 29, 2026:
| `gpt-5.6-luna` | text, image | low, medium, high, xhigh, max | medium |
| `gpt-5.5` | text, image | low, medium, high, xhigh | medium |
The same isolated probe with `0.158.0` did not list `gpt-6.1-sol`.
The new entry also advertises the `priority` service tier as Fast. This bundled
The `gpt-6.1-sol` entry also advertises the `priority` service tier as Fast. This bundled
snapshot does not establish account access: authenticated catalogs can differ,
and native discovery still requires a current account. Run `/codex models`
after starting or upgrading the gateway to inspect the actual public picker

View file

@ -537,8 +537,8 @@ same child result after the parent replies.
- The official `@openclaw/codex` plugin installed. Include `codex` in
`plugins.allow` if your config uses an allowlist.
- Managed Codex app-server `0.159.1`. The plugin ships and manages
`@openai/codex` `0.159.1` by default, so a `codex` command on `PATH` does not
- Managed Codex app-server `0.160.0`. The plugin ships and manages
`@openai/codex` `0.160.0` by default, so a `codex` command on `PATH` does not
affect normal startup. Explicit custom, remote, and macOS desktop-owned
app-servers must report a parseable semantic version of `0.149.0` or newer.
Newer versions continue with a compatibility warning and normal runtime

View file

@ -24,7 +24,7 @@ working.
- `plugins.entries.codex.enabled` is `true`.
- `plugins.entries.codex.config.codexPlugins.enabled` is `true`.
- Codex app-server reports `0.149.0` or newer. The official plugin ships
`@openai/codex` `0.159.1`; newer custom, remote, and macOS desktop-owned
`@openai/codex` `0.160.0`; newer custom, remote, and macOS desktop-owned
binaries continue with a compatibility warning and normal runtime validation.
- The target Codex app-server can see the expected marketplace, plugin, and
app inventory.

View file

@ -8,7 +8,7 @@
},
"type": "module",
"dependencies": {
"@openai/codex": "0.159.1",
"@openai/codex": "0.160.0",
"@openclaw/fs-safe": "0.23.0",
"semver": "7.8.5",
"smol-toml": "1.8.0",

View file

@ -1,5 +1,5 @@
/** Exact Codex app-server version shipped by the OpenClaw Codex bridge. */
export const CODEX_APP_SERVER_VERSION = "0.159.1";
export const CODEX_APP_SERVER_VERSION = "0.160.0";
/** Inclusive runtime compatibility floor for external app-server binaries. */
export const MIN_SUPPORTED_CODEX_APP_SERVER_VERSION = "0.149.0";
export const MANAGED_CODEX_APP_SERVER_PACKAGE = "@openai/codex";

View file

@ -101,7 +101,7 @@ function classifyOpenAiFailoverCode(code: string | undefined) {
const OPENAI_MODELS_ENDPOINT = "https://api.openai.com/v1/models";
// Keep synchronized with extensions/codex's exact @openai/codex dependency;
// the provider contract test fails when that managed-runtime pin changes.
const OPENAI_CODEX_CLIENT_VERSION = "0.159.1";
const OPENAI_CODEX_CLIENT_VERSION = "0.160.0";
const OPENAI_CODEX_MODELS_ENDPOINT = `${OPENAI_CODEX_RESPONSES_BASE_URL}/models?client_version=${OPENAI_CODEX_CLIENT_VERSION}`;
const OPENAI_MODELS_CACHE_TTL_MS = 60_000;
const OPENAI_CODEX_MODELS_CACHE_TTL_MS = 60_000;

View file

@ -610,7 +610,7 @@ export default {
).stdout.trim();
const current = await readProcess(row.pid);
expect(current?.startTimeTicks).toBe(row.startTimeTicks);
expect(version).toBe("codex-cli 0.159.1");
expect(version).toBe("codex-cli 0.160.0");
binaryIdentities.push({
pid: row.pid,
startTimeTicks: row.startTimeTicks,

62
pnpm-lock.yaml generated
View file

@ -169,7 +169,7 @@ overrides:
chevrotain>lodash-es: 4.18.1
'@chevrotain/cst-dts-gen>lodash-es': 4.18.1
'@chevrotain/gast>lodash-es': 4.18.1
'@agentclientprotocol/codex-acp@1.12.0>@openai/codex': 0.159.1
'@agentclientprotocol/codex-acp@1.12.0>@openai/codex': 0.160.0
'@codemirror/commands@6.11.1>@codemirror/view': 6.43.13
'@codemirror/view@6.43.13>@codemirror/state': 6.7.6
'@anthropic-ai/sdk': 0.127.0
@ -934,8 +934,8 @@ importers:
extensions/codex:
dependencies:
'@openai/codex':
specifier: 0.159.1
version: 0.159.1
specifier: 0.160.0
version: 0.160.0
'@openclaw/fs-safe':
specifier: 0.23.0
version: 0.23.0
@ -4578,43 +4578,43 @@ packages:
resolution: {integrity: sha512-3zcN5Q3yEmeyxXBzqB6fXPQFzYa2ROsGFSr69W0ArXIAGJqxl/aFECOVPD2kbkYPm0U/EHxFKgclK3UA9WQg5A==}
engines: {node: ^22.22.2 || ^24.15.0 || >=26.0.0}
'@openai/codex@0.159.1':
resolution: {integrity: sha512-tCAmvOk40hcmVDefwV4Jae/i5eAMrl7qUCRYUq1uYiQGZoIIVSCa/b3Fs+0uXG46p4jaG2DzqhG/RIunvnOa1g==}
'@openai/codex@0.160.0':
resolution: {integrity: sha512-kEtVGzjRAYAMOwJxN39bGcna7LT3IDQgq64NNJ/dDTfu4OzZaocJcyNb5/gGJ/IVF/Vj7oK7E2m3nmTan7lpjg==}
engines: {node: '>=16'}
hasBin: true
'@openai/codex@0.159.1-darwin-arm64':
resolution: {integrity: sha512-asbXtXQerzPO8CL3t/5++Whj00k+NkbE4ngT56pCwx2/5JJVCI0glEjCECGK8rA0v4zb94EAZonxAcfOd+/1MA==}
'@openai/codex@0.160.0-darwin-arm64':
resolution: {integrity: sha512-aefV6cqZA2REZgR//4McyXlp7zLcTti4CI2v3j9IVgNndPBv2kCeNEcz07qeelXcwOdSFPUKb6roA48vZmDgrQ==}
engines: {node: '>=16'}
cpu: [arm64]
os: [darwin]
'@openai/codex@0.159.1-darwin-x64':
resolution: {integrity: sha512-aCcslg6PejQSE/FhEFNk5JMQuiUYYTwWK2W/kAIZ18qSHFV0UHqqmSnHDSPOx1xClUGc9RhtAB6y9TO99hHk2Q==}
'@openai/codex@0.160.0-darwin-x64':
resolution: {integrity: sha512-ir7cdsPrb9VkqNqpTECoTiomv04xws/FQ968mHQzuL+2J5Da0Dkh2Qlxp7sguDDZJab4YpYmNjQvBVMXbTeQaQ==}
engines: {node: '>=16'}
cpu: [x64]
os: [darwin]
'@openai/codex@0.159.1-linux-arm64':
resolution: {integrity: sha512-SUuxUCTWkvmzrCPIpRHMlivwSsL2STeUv6Dqm/TkUwYFfaqAQqZ8uIq8+d3SnYJsXiz1bkoiIdy8CSuptfEBfQ==}
'@openai/codex@0.160.0-linux-arm64':
resolution: {integrity: sha512-VnVdsS06YlDsL8OwaJjQ3xdqdJNG4i+eBJBV3LytddknzSaF/urijLzVg3ptkwvoj8C7Gn7iWpVE+y8WEaPiCg==}
engines: {node: '>=16'}
cpu: [arm64]
os: [linux]
'@openai/codex@0.159.1-linux-x64':
resolution: {integrity: sha512-NmXTe4LDsShovyGYH5Q5AP2S5kRtY6wEWkAMGm28pYGQsjUd1MMSPBK7obnepYgaqX774jDF0w8jpDPmOLSx3w==}
'@openai/codex@0.160.0-linux-x64':
resolution: {integrity: sha512-KI/73OqGrHmR18s7ya7E1NqV6rT0y3lxr0s8S1qR2m6zU6QRF/HlR529jALLh5vjdUnsRT4Ahoxt0axb4kY99g==}
engines: {node: '>=16'}
cpu: [x64]
os: [linux]
'@openai/codex@0.159.1-win32-arm64':
resolution: {integrity: sha512-6CY7Vkp+2aSkRFIlLBsifbU/jf1s58k9C6FVsW2pk/EpQHT5fPpUWVZqVDxiIlp7EXnCz8eRdSmFNVNuILMfyQ==}
'@openai/codex@0.160.0-win32-arm64':
resolution: {integrity: sha512-tTvK9ZIGuj9WnYaYOAnfjJVSfPV7dKqWtDHqUPLf0Hadp6SgynTxx7S7iMXRieFeXVOI2XH76KxEHSOTOnz3zw==}
engines: {node: '>=16'}
cpu: [arm64]
os: [win32]
'@openai/codex@0.159.1-win32-x64':
resolution: {integrity: sha512-BUNLYw3oqwnpdV9pWKPccJ7WlbYG36SGPyGBzbnayvEl6D4RwucN7GOl+Qe05WRXI5is+kveieX1pg5uyBSIrg==}
'@openai/codex@0.160.0-win32-x64':
resolution: {integrity: sha512-/gCFcuOmGlQkgGivWCtY8BNEDixh70Pue0HZOk9S8bj2vUIE1GLD9zcNB/KqqDJmn0S+lIttauLpzQnw6HOCHA==}
engines: {node: '>=16'}
cpu: [x64]
os: [win32]
@ -10334,7 +10334,7 @@ snapshots:
'@agentclientprotocol/codex-acp@1.12.0':
dependencies:
'@agentclientprotocol/sdk': 1.4.0(zod@4.6.5)
'@openai/codex': 0.159.1
'@openai/codex': 0.160.0
diff: 9.0.0
open: 11.0.4
vscode-jsonrpc: 9.0.2
@ -12280,31 +12280,31 @@ snapshots:
'@npmcli/redact@5.0.0': {}
'@openai/codex@0.159.1':
'@openai/codex@0.160.0':
optionalDependencies:
'@openai/codex-darwin-arm64': '@openai/codex@0.159.1-darwin-arm64'
'@openai/codex-darwin-x64': '@openai/codex@0.159.1-darwin-x64'
'@openai/codex-linux-arm64': '@openai/codex@0.159.1-linux-arm64'
'@openai/codex-linux-x64': '@openai/codex@0.159.1-linux-x64'
'@openai/codex-win32-arm64': '@openai/codex@0.159.1-win32-arm64'
'@openai/codex-win32-x64': '@openai/codex@0.159.1-win32-x64'
'@openai/codex-darwin-arm64': '@openai/codex@0.160.0-darwin-arm64'
'@openai/codex-darwin-x64': '@openai/codex@0.160.0-darwin-x64'
'@openai/codex-linux-arm64': '@openai/codex@0.160.0-linux-arm64'
'@openai/codex-linux-x64': '@openai/codex@0.160.0-linux-x64'
'@openai/codex-win32-arm64': '@openai/codex@0.160.0-win32-arm64'
'@openai/codex-win32-x64': '@openai/codex@0.160.0-win32-x64'
'@openai/codex@0.159.1-darwin-arm64':
'@openai/codex@0.160.0-darwin-arm64':
optional: true
'@openai/codex@0.159.1-darwin-x64':
'@openai/codex@0.160.0-darwin-x64':
optional: true
'@openai/codex@0.159.1-linux-arm64':
'@openai/codex@0.160.0-linux-arm64':
optional: true
'@openai/codex@0.159.1-linux-x64':
'@openai/codex@0.160.0-linux-x64':
optional: true
'@openai/codex@0.159.1-win32-arm64':
'@openai/codex@0.160.0-win32-arm64':
optional: true
'@openai/codex@0.159.1-win32-x64':
'@openai/codex@0.160.0-win32-x64':
optional: true
'@openclaw/crabline@0.1.28':

View file

@ -38,7 +38,7 @@ overrides:
"chevrotain>lodash-es": 4.18.1
"@chevrotain/cst-dts-gen>lodash-es": 4.18.1
"@chevrotain/gast>lodash-es": 4.18.1
"@agentclientprotocol/codex-acp@1.12.0>@openai/codex": 0.159.1
"@agentclientprotocol/codex-acp@1.12.0>@openai/codex": 0.160.0
"@codemirror/commands@6.11.1>@codemirror/view": 6.43.13
"@codemirror/view@6.43.13>@codemirror/state": 6.7.6
"@anthropic-ai/sdk": 0.127.0

View file

@ -5,7 +5,7 @@ import {
runFakeCodexAppServer,
} from "../codex-app-server-fixture.mjs";
const version = "0.159.1";
const version = "0.160.0";
const requestLog =
process.env.OPENCLAW_CODEX_MEDIA_PATH_APP_SERVER_LOG ??
"/tmp/openclaw-codex-media-path-app-server.jsonl";