Codex Desktop Windows: node_repl fails with "windows sandbox failed: spawn setup refresh", breaking Chrome plugin
Bug report: Codex Desktop on Windows cannot start node_repl sandbox, breaking Chrome plugin
Summary
Codex Desktop on Windows can no longer use the Chrome plugin or any node_repl-backed browser automation. The failure occurs before Chrome is used: even a minimal node_repl call exits immediately with:
node_repl kernel exited unexpectedly
node_repl diagnostics: {"kernel_status":"running","kernel_stderr_tail":"windows sandbox failed: spawn setup refresh","reason":"stdout_eof","stream_error":null}
This previously worked on the same machine.
Environment
- OS: Windows Desktop v10.0.26200.8457
- Codex Desktop package:
OpenAI.Codex_26.519.11010.0_x64__2p2nqsd0c76g0 - Codex app version shown by winget/MS Store:
26.519.11010.0 - Winget version:
v1.28.240 - Chrome plugin cache version regenerated after cleanup:
26.519.81530 - Chrome native host extension ID:
hehggadaopoacecdllhhajmbjkdcmajg
What fails
Any call to the node_repl MCP tool fails, including the minimal test:
nodeRepl.write("ok")
Observed result:
node_repl kernel exited unexpectedly
node_repl diagnostics: {"kernel_pid":9592,"kernel_status":"running","kernel_stderr_tail":"windows sandbox failed: spawn setup refresh","reason":"stdout_eof","stream_error":null}
Because node_repl fails, the Chrome plugin cannot connect to or automate Chrome.
Things already verified
Chrome/plugin side appears healthy after reset:
- Chrome plugin cache regenerated under:
C:\Users\Jorge\.codex\plugins\cache\openai-bundled\chrome
- Native host manifest exists:
C:\Users\Jorge\AppData\Local\OpenAI\extension\com.openai.codexextension.json
- Native messaging registry key exists:
HKCU\Software\Google\Chrome\NativeMessagingHosts\com.openai.codexextension
- Registry value points to:
C:\Users\Jorge\AppData\Local\OpenAI\extension\com.openai.codexextension.json
So the remaining issue is not the Chrome extension or native host registration; it is node_repl failing to start its Windows sandbox kernel.
Repair attempts performed
- Reinstalled the Chrome plugin from Codex UI.
- Removed/regenerated Chrome plugin cache:
C:\Users\Jorge\.codex\plugins\cache\openai-bundled\chrome
- Removed/regenerated native host manifest:
C:\Users\Jorge\AppData\Local\OpenAI\extension
- Removed/regenerated native messaging registry key:
HKCU\Software\Google\Chrome\NativeMessagingHosts\com.openai.codexextension
- Ran
winget upgradefor Codex:
result: no newer version available.
- Ran
winget repairfor Codex from Microsoft Store. - Re-registered the Codex AppX package with:
Add-AppxPackage -DisableDevelopmentMode -Register "C:\Program Files\WindowsApps\OpenAI.Codex_26.519.11010.0_x64__2p2nqsd0c76g0\AppxManifest.xml"
The AppX re-registration completed successfully, but node_repl still fails with the same sandbox error.
Relevant logs/results
Successful AppX repair log:
[2026-05-28 15:52:02] Running Add-AppxPackage repair.
[2026-05-28 15:52:02] Repair completed successfully.
[2026-05-28 15:52:02] Relaunching Codex.
[2026-05-28 15:52:02] Codex relaunch requested.
Repeated failing test after repair:
node_repl kernel exited unexpectedly
node_repl diagnostics: {"kernel_pid":9592,"kernel_status":"running","kernel_stderr_tail":"windows sandbox failed: spawn setup refresh","reason":"stdout_eof","stream_error":null}
Expected behavior
node_repl should start its kernel successfully, and the Chrome plugin should be able to list/control Chrome tabs as it did previously.
Actual behavior
node_repl fails before executing any JavaScript, with windows sandbox failed: spawn setup refresh.
Impact
This blocks all Chrome plugin workflows from Codex Desktop, including authenticated browser automation through the user's existing Chrome session.
Request
Please investigate the Windows sandbox startup path for node_repl in Codex Desktop 26.519.11010.0, especially the spawn setup refresh step. If there is a supported repair command, cache reset, feature flag, or diagnostic bundle needed, please provide the exact steps.
9 Comments
Adding a potentially related issue for triage: #24259.
That report is for Codex CLI on Windows 11 ARM64, while this one is Codex Desktop on Windows x64/MS Store. The surface area is different, but the failing component/error string looks related:
In #24259, sandboxed CLI commands intermittently fail with
windows sandbox: spawn setup refresh. In this issue,node_replfails consistently before executing even a minimal JS call, which then breaks the Chrome plugin because browser automation depends onnode_repl.So this may be the same Windows sandbox helper/startup failure family, but surfaced through Codex Desktop's
node_replpath rather than direct CLI shell execution.Also adding #24098 as an even closer related report.
That issue is still Codex CLI rather than Codex Desktop, but it is Windows x64 and has the same core failure string:
The especially useful clue from #24098 is that the elevated Windows sandbox fails while the unelevated Windows sandbox succeeds. In this Desktop issue,
node_replfails before any JS executes, so one possibility is that the Desktopnode_replstartup path is using the same elevated Windows sandbox path, or another sandbox mode that hits the samespawn setup refreshfailure.This may help narrow the bug: Chrome/native-host registration appears healthy here, and the failure happens at
node_replkernel startup, before Chrome automation is attempted.I’m seeing the same issue on Windows Codex Desktop.
Minimal node_repl test fails before any Browser Bridge code runs:
nodeRepl.write("ok")
Result:
node_repl kernel exited unexpectedly
node_repl diagnostics: {"kernel_pid":16332,"kernel_status":"running","kernel_stderr_tail":"windows sandbox failed: spawn setup refresh","reason":"stdout_eof","stream_error":null}
This also prevents Browser Bridge / Chrome tab control from working.
C:\Users\admin\.codex\config.toml :
[windows]
sandbox = "elevated"
change
sandbox = "unelevated"
Changing my Codex user config from:
[windows]
sandbox = "elevated"
to:
[windows]
sandbox = "unelevated"
fixed the node_repl startup crash for me. Minimal test nodeRepl.write("ok") now succeeds.
I’m seeing this too on Windows with Codex Desktop / bundled plugins
26.527.60818.node_replwas crashing with:windows sandbox failed: spawn setup refreshThat also broke Chrome plugin control for me. Switching:
to:
made
node_repland Chrome control work again.So this may be tied to the elevated Windows sandbox path. Would really appreciate a fix or guidance from the team, since
unelevatedfeels like a workaround rather than the right long-term state.Adding a related workaround for users whose main problem is Desktop stability/performance rather than needing browser automation immediately.
Environment where this helped:
OpenAI.Codex_26.527.7698.0_x64__2p2nqsd0c76g0node_repl.exeunder%LOCALAPPDATA%\OpenAI\Codex\bin\34ab3e1324cc55b5\node_repl.exeOn this machine,
node_replwas not only breaking browser/computer-use behavior; it also correlated with severe Desktop instability:node_repl.exeprocesses, each spawning a childcodex.exe app-server --listen stdio://Setting browser plugin config off was not enough by itself. After restart,
node_replstill spawned and an explicit[mcp_servers.node_repl] enabled = falseentry was removed/ignored.Workaround if browser/computer-use automation is not needed:
node_repl.exeand its direct childcodex.exe app-server --listen stdio://.node_repl.exebinaries, e.g.:After doing this, no new
node_repl.exeprocess was running, normal Codex chat/task execution continued, and Desktop became dramatically more stable/faster. Tradeoff: internal browser/computer-use automation is disabled until the binaries are restored or Codex updates them again.This is not a proper fix, but it may help people who are currently unable to use Codex Desktop at all due to the
node_replpath.Update: confirmed workaround on my machine.
Changing my Codex user config from:
to:
fixed the issue locally.
After applying the change:
nodeRepl.write("ok")succeeds.So this appears tied specifically to the elevated Windows sandbox path.
unelevatedis a working workaround for now, but I would still appreciate guidance from the team on whether this is the recommended temporary setting or whether a fix is planned for the elevated path.Thanks a lot to @IDK-CCC, @carypdarling-star, and @cyberpunx777 for confirming the same behavior and pointing to the
unelevatedworkaround. That helped resolve the blockage on my side.this is now fixed