[Windows][WSL] All threads fail with invalid transport in mcp_servers.codex_app after update to 26.820.x — WSL app-server stuck at 0.150.0-alpha.8

Resolved 💬 6 comments Opened Aug 25, 2026 by noxhoej Closed Aug 25, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using (From “About Codex” dialog)?

ChatGPT (formerly Codex) desktop for Windows. About dialog: Version 26.820.60940, Released 25 Aug 2026 ("Powered by Codex & OWL") MSIX package at the time the attached logs were captured: OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0

What subscription do you have?

Enterprise

What platform is your computer?

Windows 11 x64 with WSL2 (Ubuntu). Agent environment set to WSL (runCodexInWindowsSubsystemForLinux = true, integratedTerminalShell = "wsl").

What issue are you seeing?

After the desktop app updated (2026-08-25), every thread fails in WSL mode — both resuming existing chats and starting brand-new ones. The UI shows:

ChatGPT can't load config.toml, so this thread can't resume. Fix config.toml: invalid transport in mcp_servers.codex_app. After saving the file, reopen the thread.

<img width="1654" height="370" alt="Image" src="https://github.com/user-attachments/assets/d3b07f8e-3372-4510-ae6d-19a70f78779c" />

However, my config.toml contains no mcp_servers.codex_app entry (verified with recursive grep across all config layers on both the Windows and WSL side). The entry appears to be injected by the app itself with each thread/start / thread/resume request.

Windows-native mode works fine. Only WSL mode is broken, which points to a version/pairing mismatch between the updated app and the WSL-side app-server.

Evidence from desktop logs (attached)

  1. The app spawns the WSL app-server from the legacy provisioning path, and it reports an old version:
  • stdio_transport_spawned ... coreRuntimeInUse=false executablePath=C:\Users\<user>\.codex\bin\wsl\bf0dd1e87d338bce\codex spawnCommand=wsl.exe
  • Current reported app-server version: currentVersion=0.150.0-alpha.8
  1. That backend does not recognize the feature the new UI enables:
  • codex_app_server::request_processors::config_processor: ignoring invalid experimental feature enablement keys: apps_mcp_path_override
  • (the renderer's enabled features include apps_mcp_path_override, enable_mcp_apps, apps, ...)
  1. Every thread request then fails during config load:
  • Request failed ... method=thread/start ... error={"code":-32600,"message":"failed to load configuration: invalid transport\nin mcp_servers.codex_app\n"} failureReason=invalid_config
  • Same for thread/resume on existing conversations.
  1. The installed package appears to be missing part of the legacy WSL payload:
  • bundled_executable_relocation_failed destinationPath=C:\Users\<user>\.codex\bin\wsl\codex-resources\bwrap errorCode=ENOENT — the source file C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0\app\resources\codex-resources\bwrap does not exist (stat_source fails).
  1. The new runtime system does list a current Linux artifact, but it is not used for the WSL app-server:
  • Codex runtime config selected artifact=codex-primary-runtime ... bundleVersion "26.819.11345" with platforms including linux-x86_64 — yet coreRuntimeInUse=false and the stale 0.150.0-alpha.8 binary is spawned instead.

What I already tried (no effect unless noted)

  • Fully quit app + wsl --shutdown, deleted the C:\Users\<user>\.codex\bin\wsl cache → re-provisioned the same bf0dd1e87d338bce / 0.150.0-alpha.8 binary.
  • Settings → Apps → ChatGPT → Advanced options → Repair (completed successfully after Terminate + wsl --shutdown) → error persists, same backend version.
  • Website installer → reports "The latest version is installed" (same build).
  • Set enabled = false under [plugins."codex-app-tools@openai-bundled"] in config.toml → no effect.
  • Switched agent environment to Windows-native → everything works; switching back to WSL mode → error returns immediately.

Expected behavior

In WSL mode, the app should provision/spawn a WSL app-server that matches the app version (or use the linux-x86_64 artifact from codex-primary-runtime), so that the injected mcp_servers.codex_app configuration parses. If the backend is older, the app should degrade gracefully instead of failing every thread/start/thread/resume.

Possibly related

  • #30378 (apps_mcp_path_override rejected by app-server, VS Code + WSL)
  • #29396 (invalid transport in mcp_servers.codex_apps config parse error class)

Attachments

  • Desktop log from initial failure (2026-08-25 21:35)
  • Desktop log after cache wipe, same failure (2026-08-25 21:56)
  • config.toml

codex-desktop-fb1cceb1-f589-4cae-9335-7eb1f559aad6-23452-t0-i1-213523-0.log

codex-desktop-40fd35a2-7872-4664-aa55-519c9180b809-37868-t0-i1-215614-0.log

config.toml.txt

What steps can reproduce the bug?

Preconditions:

  • Windows 11 x64 with WSL2 (Ubuntu)
  • ChatGPT (Codex) desktop 26.820.60940 / package 26.820.7780.0
  • Settings: Agent environment = Windows Subsystem for Linux, integrated terminal = WSL

Steps:

  1. Launch the app.
  2. Start a brand-new chat in any project (or open any pre-existing thread).
  3. Send any prompt (e.g. "hello").

Actual: Every thread immediately fails with the banner
"ChatGPT can't load config.toml, so this thread can't resume. Fix config.toml: invalid transport in mcp_servers.codex_app."
No prompt is ever processed. Reproduces 100% of the time, on new and old threads alike,
e.g. local thread id 01a02e8a-946b-7651-9c9c-3f8f938a7c89 (see attached logs at 21:35:42 and 21:56:30).

Expected: The thread starts and the prompt is processed.

Note: Switching Agent environment to Windows-native makes everything work;
switching back to WSL reproduces the error immediately. config.toml contains no
mcp_servers.codex_app entry (verified by recursive grep on both Windows and WSL side) —
the entry appears to be injected by the app at thread/start.

What is the expected behavior?

In WSL mode, the app should provision/spawn a WSL app-server that matches the app version (or use the linux-x86_64 artifact from codex-primary-runtime), so that the injected mcp_servers.codex_app configuration parses. If the backend is older, the app should degrade gracefully instead of failing every thread/start/thread/resume.

Additional information

_No response_

View original on GitHub ↗

6 Comments

github-actions[bot] contributor · 2 days ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #40715

Powered by Codex Action

kknowz · 2 days ago

I can independently reproduce this exact issue on Windows + WSL with ChatGPT/Codex Desktop 26.820.60940.

My observations match this report closely:

  • Windows-native agent environment works normally.
  • WSL agent environment fails for both new threads and resumed threads with:

failed to load configuration: invalid transport in mcp_servers.codex_app

  • There is no mcp_servers.codex_app entry in either my Windows user config or WSL user/project config.
  • Standalone Codex CLI inside WSL works normally (codex-cli 0.149.1).
  • codex mcp list works normally in WSL, including from the affected project's directory; project MCPs load successfully.
  • Desktop logs show the bundled app-server reporting 0.150.0-alpha.8 and successfully completing the initialize handshake before thread start fails.
  • Desktop logs also show: ignoring invalid experimental feature enablement keys: apps_mcp_path_override.
  • Disabling apps, plugins, and enable_mcp_apps did not help.
  • Windows Settings → Apps → ChatGPT/Codex → Reset did not help.
  • I also verified that the problem is specific to Desktop + WSL: switching the Desktop agent environment back to Windows makes it work immediately.

This strongly looks like a Desktop-injected/runtime-generated codex_app MCP config incompatibility rather than a user config.toml error.

One additional detail from my logs: the app-server initialize handshake succeeds (transportKind=stdio) and only thread/start / thread/resume fail with the invalid transport error, which may help narrow this to thread-start config merging/injection rather than WSL app-server startup itself.

NoobMaster233 · 1 day ago

这么严重的bug,都过去12个小时了,还不修??就这??

lucyundead · 1 day ago

Independent confirmation on WSL2 openSUSE-Tumbleweed (so this is not Ubuntu-specific).

Environment:

  • Windows x64
  • MSIX package: OpenAI.Codex_26.820.7780.0_x64
  • Desktop-managed WSL Codex: 0.150.0-alpha.8 at C:\Users\<user>\.codex\bin\wsl\bf0dd1e87d338bce\codex
  • Separately installed WSL Codex CLI: 0.149.1 under ~/.codex/packages/standalone/

Reproduction is 100% consistent:

  1. Set the desktop Agent Environment to WSL (runCodexInWindowsSubsystemForLinux = true) and restart.
  2. Both existing threads and brand-new threads fail with:

invalid transport in mcp_servers.codex_app

  1. Set the Agent Environment back to Windows native and restart.
  2. Existing and new threads work normally.

Additional isolation:

  • Neither the Windows user config nor the WSL standalone config contains mcp_servers.codex_app or a transport entry.
  • Updating the standalone WSL CLI to 0.149.1 has no effect because the desktop app uses its separately managed 0.150.0-alpha.8 WSL binary.
  • The desktop app injects mcp_servers.codex_app dynamically with a -c argument; the live Windows-native process shows a Windows transport definition using cmd.exe, a .cmd launcher, and a C:\Program Files\WindowsApps\...\codex-app-tools cwd.
  • Minimal MCP inline-table overrides parse correctly when the managed WSL binary is invoked directly, which further points to the desktop WSL thread-start/config translation path rather than the user's TOML or the standalone CLI.

The only reliable workaround here is Windows-native Agent Environment plus explicit wsl.exe -d openSUSE-Tumbleweed -- ... commands. A desktop fix would restore the previously working WSL agent workflow.

taobaibais · 1 day ago

I can confirm the same regression on Windows 11 + WSL2 with Codex Desktop 26.820.x. Both creating new chats and resuming existing chats fail with invalid transport in mcp_servers.codex_app, while my user config.toml has no mcp_servers.codex_app entry. WSL is my required development environment, so switching the agent to Windows-native is not a viable workaround for me. This is a complete work blocker.

taobaibais · 1 day ago

Given that this regression completely blocks a supported development workflow for paying users, OpenAI should also consider compensation for affected accounts. At minimum, users impacted by the WSL outage should receive additional/banked usage resets (or equivalent credits) for the period in which Codex Desktop was unusable in their required environment. We are paying for access to this service, and a release regression that prevents all new/resumed WSL chats from working should not consume users' paid usage window without remedy.