Windows Computer Use: privileged node_repl/nativePipe bridge is not injected (`Windows Computer Use Sky runtime is unavailable`)

Resolved 💬 5 comments Opened Jun 27, 2026 by linmu115 Closed Aug 6, 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)?

26.623.5546.0

What subscription do you have?

ChatGPT Plus

What platform is your computer?

Windows 11 Home Chinese Edition, x64, version 10.0.26200, build 26200

What issue are you seeing?

Codex Desktop on Windows does not start the Computer Use privileged native pipe bridge. The regular node_repl MCP server is available and JavaScript execution works, but it is not the privileged Computer Use runtime: nodeRepl.nativePipe and nodeRepl.config are missing.

As a result, the Computer Use plugin cannot bootstrap and fails with:

Error: Windows Computer Use Sky runtime is unavailable

What steps can reproduce the bug?

  1. Install/enable computer-use@openai-bundled.
  2. Set the bundled marketplace source to a stable local path.
  3. Confirm features.computer_use = true.
  4. Fully restart Codex Desktop.
  5. Start or open a thread using the Computer Use plugin.
  6. Inspect the current node_repl runtime:
JSON.stringify({
  nodeReplKeys: Object.keys(globalThis.nodeRepl || {}).sort(),
  hasConfig: !!globalThis.nodeRepl?.config,
  hasNativePipe: !!globalThis.nodeRepl?.nativePipe,
  hasNativePipeCreateConnection: !!globalThis.nodeRepl?.nativePipe?.createConnection,
}, null, 2)

Actual result:

{
  "hasConfig": false,
  "hasNativePipe": false,
  "hasNativePipeCreateConnection": false
}
  1. Try bootstrapping Computer Use:
const { setupComputerUseRuntime } =
  await import("file:///C:/Users/<user>/.codex/plugins/cache/openai-bundled/computer-use/26.623.42026/scripts/computer-use-client.mjs");

await setupComputerUseRuntime({ globals: globalThis });

Actual error:

Error: Windows Computer Use Sky runtime is unavailable

What is the expected behavior?

Codex Desktop should start the Windows Computer Use native pipe and inject a privileged node_repl runtime with:

nodeRepl.config
nodeRepl.nativePipe
nodeRepl.nativePipe.createConnection

There should also be a named pipe like:

\\.\pipe\codex-computer-use-*

Then setupComputerUseRuntime() should succeed and Computer Use tools should be available in the thread.

Additional information

What actually happens?

Only browser-use pipes are created:

codex-browser-use-*
codex-ipc

No codex-computer-use-* pipe appears.

The helper log is not updated after restarting Codex Desktop:

C:\Users\<user>\AppData\Local\OpenAI\Codex\computer-use-local-helper.log

The current node_repl MCP server appears to be the regular browser/chrome REPL, not the privileged Computer Use REPL.

Additional diagnostics

After restart, config.toml is recreated with a normal [mcp_servers.node_repl] block, but its environment only contains browser/chrome-related variables such as:

BROWSER_USE_AVAILABLE_BACKENDS=chrome,iab
NODE_REPL_INSTRUCTIONS_USE_CASE_BROWSER=...
NODE_REPL_INSTRUCTIONS_USE_CASE_CHROME=...

It does not include Computer Use native pipe variables such as:

SKY_CUA_NATIVE_PIPE_DIRECTORY

Local package files appear to exist, including:

@oai/sky
computer-use-client.mjs
codex-computer-use.exe

I also added the missing @oai/sky package export for:

"./dist/project/cua/sky_js/src/targets/windows/internal/computer_use_client_base.js"

That fixed the package export side, but the current failure is earlier: the Desktop host does not appear to enable/start the Computer Use native pipe bridge.

Suspected cause

The Desktop renderer/host availability path may be resolving Computer Use as unavailable, so the host never starts the Windows Computer Use native pipe. From the current bundled code, native pipe startup appears to require both:

computerUse === true
computerUseNodeRepl === true

The likely blockers are one of:

Statsig gate 1506311413
Statsig gate 2212532336
account beta_settings.windows_computer_use
local computer_use experimental feature

Even with CODEX_ELECTRON_ENABLE_WINDOWS_COMPUTER_USE=1, the runtime still ends up as a non-privileged node_repl.

Workarounds tried

  • Moved openai-bundled marketplace source from .codex\.tmp\... to stable .codex\bundled-marketplaces\openai-bundled
  • Reinstalled computer-use@openai-bundled
  • Added missing @oai/sky package export
  • Removed manual [mcp_servers.node_repl] block and restarted Codex Desktop
  • Verified CODEX_ELECTRON_ENABLE_WINDOWS_COMPUTER_USE=1
  • Verified features.computer_use = true

None of these caused codex-computer-use-* pipe creation or privileged nodeRepl.nativePipe injection.

View original on GitHub ↗

5 Comments

github-actions[bot] contributor · 2 months ago

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

  • #30191
  • #29382
  • #29373
  • #29921

Powered by Codex Action

linmu115 · 2 months ago

Additional clarification:

The issue still reproduces after fully restarting Codex Desktop. After restart, config.toml is recreated with a normal [mcp_servers.node_repl] block, but the runtime is still not privileged:

{
  "hasConfig": false,
  "hasNativePipe": false,
  "hasNativePipeCreateConnection": false
}

There is still no \\.\pipe\codex-computer-use-* pipe, and computer-use-local-helper.log is not updated after restart.

The local @oai/sky export change was only tried as a workaround to rule out the package export failure. After that, the remaining failure is still:

Error: Windows Computer Use Sky runtime is unavailable

So the current suspected issue is not the package export anymore, but that Codex Desktop does not start/inject the privileged Computer Use nativePipe bridge.

nayunzhishui · 1 month ago

I can reproduce this issue on the current Codex Desktop release.

Environment

  • Windows 11 Home Chinese Edition, x64
  • OS version: 10.0.26200, build 26200
  • Codex Desktop: 26.715.4045.0
  • Codex CLI: 0.145.0-alpha.18
  • computer-use@openai-bundled: 26.715.31925, enabled
  • chrome@openai-bundled: 26.715.31925, enabled
  • Windows sandbox: unelevated
  • sandbox_private_desktop: true
  • CODEX_CLI_PATH is unset
  • No manually configured node_repl MCP

Actual result

After fully exiting and restarting Codex, a fresh @Computer task still receives no usable Computer Use or trusted Node REPL tool.

Observed task error:

codex-official-runtime-repair-result.txt

text
TypeError: tools.mcp__computer_use__list_apps is not a function
The function above was attempted because the task did not expose any valid Computer Use or Node REPL tool entry.
Host diagnostics:
extension-host.exe is running
codex-browser-use-* pipes and codex-ipc exist
node_repl.exe is not running
codex-computer-use.exe is not running
no codex-computer-use-* native pipe exists
An earlier bootstrap attempt also returned:
Windows Computer Use Sky runtime is unavailable
A separate fresh @Chrome task also failed because the trusted Node REPL tool was not injected:
TypeError: tools.mcp__node_repl__js is not a function
This Chrome symptom also appears related to #30026.

nayunzhishui · 1 month ago

Follow-up: I can now confirm that my earlier reproduction belonged to the same Windows trusted Computer Use runtime failure family, but the final local root cause was more specific.

Verified environment

  • Codex Desktop: 26.715.7063.0
  • chrome@openai-bundled: 26.715.52143
  • computer-use@openai-bundled: 26.715.52143
  • Windows 11 x64

Additional root-cause evidence

After my earlier comment, the Desktop logs exposed these errors:

  • bundled_executable_relocation_failed
  • UNKNOWN errno=-4094 while copying bundled resources from WindowsApps
  • missingHelperPath
  • missingTransportModulePath
  • node-repl-missing

The WindowsApps bundled files were EFS-encrypted, and the Desktop content-hash Codex/CUA runtime directories had not been materialized. The normal bundled marketplace refresh therefore remained partially broken even though the plugins were shown as installed and enabled.

Repair and acceptance result

I recovered only SHA-256-matching files into the content-hash runtime targets, created a decrypted bundled-resources mirror using CopyFileExW(COPY_FILE_ALLOW_DECRYPTED_DESTINATION), pointed CODEX_ELECTRON_BUNDLED_PLUGINS_RESOURCES_PATH at the mirror, fully exited Codex, manually restarted it, and created a fresh task.

After that:

  • the official Computer Use client initialized successfully;
  • an actual official sky.list_apps() call returned the application list;
  • the Chrome plugin also initialized through the official browser client and read the active tab.

Compatibility note: on this current build, nodeRepl.nativePipe may still be undefined while the official Computer Use wrapper transport works. Therefore, the direct property alone is no longer a sufficient acceptance test; the end-to-end official wrapper call is the stronger test.

Full repair timeline, file mapping, scripts, and commit:

https://github.com/nayunzhishui/bug-of-codex-computer-chrome/commit/5550a5b47e5fa660cdb08b978705e999007cf704

Automation disclosure: This follow-up was prepared and posted by the Codex agent (bot) with explicit authorization from @nayunzhishui. Machine-specific paths, credentials, and private session data were omitted.

nayunzhishui · 1 month ago

Follow-up: the issue recurred again after a Codex Desktop update/restart, and the recurrence was caused by runtime version skew rather than a missing plugin installation.

Recurrence cause

The installed Codex Desktop had updated to:

  • Codex Desktop: 26.721.4979.0
  • chrome@openai-bundled: 26.721.41059
  • computer-use@openai-bundled: 26.721.41059

However, several local runtime components still pointed to the previous 26.715 generation:

  • the decrypted bundled-resources mirror still pointed to 26.715.7063.0;
  • the active plugin cache/marketplace still contained 26.715.52143;
  • config.toml contained a manually registered mcp_servers.node_repl using the old runtime;
  • stale CODEX_CLI_PATH, Node REPL module paths and trusted hashes were still present;
  • the local Codex helper binaries did not match the current MSIX package hashes.

This caused fresh tasks to miss the trusted mcp__node_repl__js surface or load the wrong Computer Use runtime, resulting in errors such as:

Windows Computer Use Sky runtime is unavailable
TypeError: tools.mcp__node_repl__js is not a function
js execution timed out; kernel reset, rerun your request

The first repair attempt was also interrupted by reopening Codex before the repair had completed. Codex then regenerated the active marketplace from the stale runtime, restoring the old 26.715 paths.

Repair performed

I fully exited Codex and all Chrome/Edge processes, then:
compared the installed MSIX files, local helper binaries, plugin versions and runtime hashes;
refreshed the bundled marketplace from the current MSIX package;
copied and verified the current Codex/CUA files into their content-hash runtime directories;
rebuilt the EFS-safe decrypted bundled-resources mirror for 26.721.4979.0;
updated CODEX_ELECTRON_BUNDLED_PLUGINS_RESOURCES_PATH to the current mirror;
removed the stale external Node REPL and fixed-runtime overrides;
reinstalled the current bundled Chrome and Computer Use plugins;
archived the stale Chrome app-server registry;
started a fresh Codex app-server and verified that the current Node REPL runtime and codex-computer-use-* named pipe were running.

After repair:
Chrome plugin: 26.721.41059
Computer Use plugin: 26.721.41059
Node REPL uses the 26.721.4979.0 bundled runtime
a fresh app-server was published
the Computer Use native pipe exists
fresh plugin tasks can use the official runtime again

Reused repair repository components

The recovery reused the following scripts and procedures from:
https://github.com/nayunzhishui/bug-of-codex-computer-chrome
scripts/check-codex-runtime.ps1
scripts/repair-codex-runtime-skew.ps1
scripts/prewarm-codex-windowsapps-runtime.ps1
scripts/repair-codex-bundled-marketplace-efs.ps1
scripts/repair-official-node-repl-runtime.ps1

Related documented repair commit:
https://github.com/nayunzhishui/bug-of-codex-computer-chrome/commit/5550a5b47e5fa660cdb08b978705e999007cf704

The main lesson from this recurrence is that reinstalling or enabling the plugins is insufficient when the Desktop package, plugin cache, decrypted mirror, helper binaries and Node REPL configuration belong to different release generations.

Automation disclosure: This diagnosis and recovery were performed by the Codex agent with explicit authorization from @nayunzhishui. The follow-up text was also prepared by Codex. Machine-specific identifiers, private paths and credentials were omitted.