Windows Desktop WSL mode hangs while repeatedly regenerating node_repl bridge, despite WSL CLI working

Open 💬 1 comment Opened Jun 10, 2026 by DusDHines

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

OpenAI.Codex_26.602.9276.0_x64__2p2nqsd0c76g0

What subscription do you have?

ChatGPT Enterprise

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What issue are you seeing?

Codex Desktop on Windows hangs indefinitely in WSL mode after submitting a simple prompt such as pwd or ls.

This is not a general WSL CLI/auth failure. Direct WSL CLI works:

wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex --version
codex-cli 0.139.0

wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex login status
Logged in using ChatGPT

wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex exec --skip-git-repo-check --sandbox read-only pwd
...
exec /bin/bash -lc pwd ... succeeded

However, Codex Desktop WSL mode launches its own WSL app-server:

wsl.exe -d Ubuntu --cd "/mnt/c/Program Files/WindowsApps/OpenAI.Codex_26.602.9276.0_x64__2p2nqsd0c76g0/app/resources" -- /usr/bin/bash -lc "... CODEX_SQLITE_HOME=\"$HOME/.codex/sqlite\" exec /mnt/c/Users/<user>/.codex/bin/wsl/81645c5d269e0fb2/codex app-server --analytics-default-enabled"

During the hang, that WSL app-server repeatedly spawns Windows node_repl.exe children inside WSL:

codex /mnt/c/Users/<user>/.codex/bin/wsl/81645c5d269e0fb2/codex app-server --analytics-default-enabled
node_repl.exe /init /mnt/c/Users/<user>/AppData/Local/OpenAI/Codex/bin/34ab3e1324cc55b5/node_repl.exe ...
node_repl.exe /init /mnt/c/Users/<user>/AppData/Local/OpenAI/Codex/bin/34ab3e1324cc55b5/node_repl.exe ...

Codex Desktop also regenerates the following config block on launch, even after it has been removed and even when browser/chrome/computer/security plugins are disabled:

[mcp_servers.node_repl]
args = []
command = "/mnt/c/Users/<user>/AppData/Local/OpenAI/Codex/bin/34ab3e1324cc55b5/node_repl.exe"
startup_timeout_sec = 120

[mcp_servers.node_repl.env]
NODE_REPL_NATIVE_PIPE_CONNECT_TIMEOUT_MS = "1000"
NODE_REPL_NODE_MODULE_DIRS = ""
NODE_REPL_NODE_PATH = 'C:\Users\<user>\AppData\Local\OpenAI\Codex\bin\5b9024f90663758b\node.exe'
NODE_REPL_TRUSTED_CODE_PATHS = 'C:\Users\<user>\.codex'
CODEX_HOME = 'C:\Users\<user>\.codex'
BROWSER_USE_AVAILABLE_BACKENDS = "chrome"
CODEX_CLI_PATH = 'C:\Users\<user>\AppData\Local\OpenAI\Codex\bin\fb2111b91430cb17\codex.exe'

Attempted mitigations did not resolve the Desktop hang:

  • Removed [mcp_servers.node_repl] and [mcp_servers.node_repl.env] from config.toml.
  • Set [features] js_repl = false.
  • Disabled browser/chrome/computer-use/security-guidance plugin keys in config.toml.
  • Killed live node_repl.exe and child codex.exe app-server --listen stdio:// processes.
  • Renamed %LOCALAPPDATA%\OpenAI\Codex\bin\...\node_repl.exe.
  • Ran a launch guard that continuously killed node_repl.exe, renamed any recreated node_repl.exe, and stripped regenerated node_repl MCP config while Codex Desktop was starting.

Even with the launch guard active, Codex Desktop WSL mode still hung after prompt submission.

Earlier in the same remediation, we also hit a separate cached-plugin issue consistent with existing reports around ngs-analysis manifests:

ignoring interface.defaultPrompt[0]: prompt must be at most 128 characters
path="C:\Users\<user>\.codex\.tmp\plugins\plugins\ngs-analysis\.codex-plugin/plugin.json"

That plugin-cache issue was mitigated by continuously repairing regenerated plugin manifests/YAML. After that, the remaining blocker is the Desktop WSL app-server/node_repl bridge described above.

What steps can reproduce the bug?

  1. Install and authenticate Codex Desktop on Windows.
  2. Enable WSL mode in Codex Desktop settings using Ubuntu WSL2.
  3. Ensure WSL-side CLI is working independently:

``powershell
wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex --version
wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex login status
wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex exec --skip-git-repo-check --sandbox read-only pwd
``

  1. Start Codex Desktop in WSL mode.
  2. Open a brand-new chat.
  3. Send a simple prompt such as:

``text
pwd
``

  1. Observe that the Desktop UI remains stuck "thinking" indefinitely.
  2. Inspect processes while the UI is hung. The Desktop-launched WSL app-server is running and has spawned Windows node_repl.exe children inside WSL. config.toml has also been modified to re-add [mcp_servers.node_repl].

Observed WSL app-server/session process shape:

codex app-server --analytics-default-enabled
node_repl.exe /init /mnt/c/Users/<user>/AppData/Local/OpenAI/Codex/bin/.../node_repl.exe
node_repl.exe /init /mnt/c/Users/<user>/AppData/Local/OpenAI/Codex/bin/.../node_repl.exe

Direct WSL CLI session id from a successful control test:

019eaecb-e09b-7c21-8706-2bbdbb6c26b8

No Desktop session id was visible because the Desktop thread never completed startup/response.

What is the expected behavior?

Codex Desktop WSL mode should either:

  • start the WSL app-server and complete a basic prompt such as pwd, or
  • fail fast with an actionable error if the Windows node_repl.exe bridge is required but cannot be started/used from WSL.

If node_repl is optional because js_repl = false and browser/computer-use plugins are disabled, Desktop should not block the entire WSL chat waiting on that bridge.

Desktop should also avoid silently regenerating [mcp_servers.node_repl] after the user/admin removes it, or it should clearly document which Desktop component owns that config block.

Additional information

Additional runtime details observed:

Windows embedded codex.exe: codex-cli 0.137.0-alpha.4
Desktop-generated WSL app-server path: ~/.codex/bin/wsl/81645c5d269e0fb2/codex app-server --analytics-default-enabled
User-installed WSL CLI: codex-cli 0.139.0

Related issues found before filing:

  • openai/codex#21761: Windows Desktop restart/WSL/node_repl/plugin-chain mitigation discussion.
  • openai/codex#20417 / openai/codex#20579: WSL/Desktop Browser Use and node_repl/js tool injection issues.
  • openai/codex#21765 / openai/codex#21066 / openai/codex#26536: Windows Desktop node_repl/browser/computer-use issues.
  • openai/codex#26440: cached plugin manifest/app-server crash layer involving ngs-analysis.

This issue appears distinct because:

  • Direct WSL CLI works and is authenticated.
  • Desktop WSL still hangs.
  • Desktop repeatedly regenerates and launches a Windows node_repl.exe bridge inside WSL.
  • Killing/renaming node_repl.exe and stripping the regenerated MCP config during Desktop launch still does not allow Desktop WSL mode to complete a basic prompt.

Workaround used for the affected user:

wsl.exe -d Ubuntu -e /home/<user>/.local/bin/codex

The direct WSL CLI is usable; Codex Desktop WSL mode is not.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗