Browser / Chrome / Computer Use plugins enabled but unusable: node_repl JS tool not exposed
Browser / Chrome / Computer plugins installed but not usable because node_repl JS tool is not exposed
Summary
In Codex Desktop on Windows, the bundled Browser, Chrome, and Computer Use plugins appear to be installed and enabled, but none of them can actually be used by the assistant. All three plugin skill docs require the node_repl JavaScript execution tool, usually exposed as mcp__node_repl__js, but that tool is not available in the conversation.
The likely root cause is that features.js_repl is set to false in C:\Users\abdul\.codex\config.toml, even though the mcp_servers.node_repl server is configured and the relevant plugin bundles are enabled.
Also, the Codex Chrome extension shows as disconnected in Chrome. This remains true even after deleting/reinstalling Codex itself and reinstalling the Codex Chrome extension.
Environment
- OS: Windows
- Codex Desktop app/plugin version observed in plugin manifests:
26.616.81150 - Browser plugin:
browser@openai-bundled, version26.616.81150 - Chrome plugin:
chrome@openai-bundled, version26.616.81150 - Computer Use plugin:
computer-use@openai-bundled, version26.616.81150 - Chrome native host entry exists in
C:\Users\abdul\.codex\chrome-native-hosts-v2.json - Chrome processes are running
What I tried
- Asked Codex to use
@Computer,@Chrome, and@Browser. - Tool discovery for:
node_repl jsmcp__node_repl__jsjsnode_repl js JavaScript execution- Chrome / Browser / Computer plugin control queries
- Tried to follow each plugin's own bootstrap instructions.
- Deleted/reinstalled Codex and reinstalled the Codex Chrome extension, but the extension still shows disconnected.
Actual result
No JavaScript bridge tool is exposed to the assistant. Tool discovery returns unrelated Codex app/thread tools, not mcp__node_repl__js or an equivalent JS execution tool.
Because of that:
- Browser plugin cannot run its required bootstrap:
setupBrowserRuntime(...) with agent.browsers.get("iab")
- Chrome plugin cannot run its required bootstrap:
setupBrowserRuntime(...) with agent.browsers.get("extension")
- Computer Use plugin cannot run its required bootstrap:
setupComputerUseRuntime(...)
- Codex Chrome extension remains disconnected even after reinstalling both Codex and the extension
So all three plugins fail before any real demo action, navigation, screenshot, or app listing can happen.
Config evidence
From C:\Users\abdul\.codex\config.toml:
[plugins."browser@openai-bundled"]
enabled = true
[plugins."computer-use@openai-bundled"]
enabled = true
[plugins."chrome@openai-bundled"]
enabled = true
[features]
js_repl = false
[mcp_servers.node_repl]
args = []
command = 'C:\Users\abdul\AppData\Local\OpenAI\Codex\runtimes\cua_node\1b23c930bdf84ed6\bin\node_repl.exe'
startup_timeout_sec = 120
[mcp_servers.node_repl.env]
BROWSER_USE_AVAILABLE_BACKENDS = "chrome,iab"
SKY_CUA_NATIVE_PIPE = "1"
File presence checks
These files exist:
C:\Users\abdul\AppData\Local\OpenAI\Codex\runtimes\cua_node\1b23c930bdf84ed6\bin\node_repl.exeC:\Users\abdul\.codex\plugins\cache\openai-bundled\browser\26.616.81150\scripts\browser-client.mjsC:\Users\abdul\.codex\plugins\cache\openai-bundled\chrome\26.616.81150\scripts\browser-client.mjsC:\Users\abdul\.codex\plugins\cache\openai-bundled\computer-use\26.616.81150\scripts\computer-use-client.mjs
The plugins are installed; the failure appears to be that the required JS REPL tool is not surfaced to the model/runtime.
Potentially relevant oddity
Only the Chrome plugin has a latest junction under:
C:\Users\abdul\.codex\plugins\cache\openai-bundled\chrome\latest
Browser and Computer Use only have the versioned directory:
C:\Users\abdul\.codex\plugins\cache\openai-bundled\browser\26.616.81150
C:\Users\abdul\.codex\plugins\cache\openai-bundled\computer-use\26.616.81150
This may be unrelated because the config and skill paths point at versioned directories successfully, but it is worth mentioning.
Expected result
When these plugins are enabled, Codex should expose the node_repl JS tool, likely as mcp__node_repl__js, so the plugin bootstrap snippets can run.
At minimum, one of these should work:
tool_search("node_repl js")
tool_search("mcp__node_repl__js")
tool_search("js")
Expected demo checks:
- Browser: open a harmless page in the in-app browser and read the title
- Chrome: list or claim an existing Chrome tab via the extension backend
- Computer Use: call
sky.list_apps()and return installed/running app metadata
Question for maintainers
Should features.js_repl = false disable the node_repl MCP server even when [mcp_servers.node_repl] is configured and the bundled plugins are enabled?
If yes, should installing/enabling Browser, Chrome, or Computer Use automatically set features.js_repl = true, or should the UI show a warning that these plugins cannot function until JS REPL is enabled?
If no, this looks like a bug where node_repl is configured on disk but not exposed as a callable MCP tool during a Codex conversation.
Also, what is the recommended recovery path when the Codex Chrome extension continues to show disconnected after reinstalling both Codex Desktop and the extension?
6 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
I am seeing the same issue on Windows Codex Desktop.
Feedback ID: 019f0240-11b0-7922-b18a-a99d61013412
Summary:
Computer Use plugin is installed and enabled, but the privileged Computer Use node_repl/nativePipe runtime is not injected into agent sessions.
Manual node_repl MCP can expose node_repl/js, but it is not privileged:
{
"hasNodeRepl": true,
"hasConfig": false,
"hasNativePipe": false,
"nodeReplEnvKeys": [],
"nodeReplNodeModuleDirs": null,
"skyNativePipeDirectory": null
}
computer-use-client.mjs fails with:
Windows Computer Use Sky runtime is unavailable
Codex Desktop: OpenAI.Codex 26.616.10790.0
Computer Use plugin: 26.616.51431
Windows sandbox is set to unelevated.
Codex Desktop on Windows: Chrome plugin present but
node_repl jsmissing after restartThis is a sanitized field report from a Windows Codex Desktop debugging session. It may help other users who see Chrome / Browser / Computer Use plugins installed, but
mcp__node_repl__jsornode_repl jsis not exposed after restarting Codex Desktop or Chrome.Environment
chrome.exe --profile-directory="Default"CODEX_HOME, not%USERPROFILE%\.codexhehggadaopoacecdllhhajmbjkdcmajgcom.openai.codexextensionSymptoms
chrome:control-chromeandbrowser:control-in-app-browserskills existed.node_repl jsmcp__node_repl__jsreturned no usable JavaScript execution tool.
In one intermediate state,
node_repl.exewas running, but thejstool still was not registered in the active model session.Root Causes Found
There were two overlapping problems.
1. Split Codex home
The running Codex session had:
but earlier repair attempts had mostly updated:
As a result, changes appeared to work in one session or one path, but did not survive restart because the active Codex Desktop process was reading the other
config.tomland plugin cache.The active
CODEX_HOME\config.tomlalso did not contain the expectedmcp_servers.node_replblock.2. Bundled runtime relocation failed because WindowsApps files had encrypted attributes
Codex Desktop 26.623 expected a newer local runtime:
but the local runtime cache still contained an older one:
Codex logs showed errors like:
Manual copy attempts from the WindowsApps package also failed with:
The current Codex package resources under
C:\Program Files\WindowsApps\...had the WindowsEncryptedfile attribute. Normal copy operations tried to preserve or trigger that attribute and failed, so the new runtime never landed in%LOCALAPPDATA%\OpenAI\Codex\runtimes\cua_node.Fix That Worked
A. Confirm the active Codex home
Inside the active Codex session, check:
Do not assume
%USERPROFILE%\.codexis the active config directory.Important note: in the successful final state, Codex Desktop rewrote
features.js_replback tofalse, butmcp__node_repl__jswas still exposed and worked. In this case,features.js_repl = falsealone was not a reliable signal of failure. The better health check was whether tool discovery could actually findnode_repl js, and whethernode_repl.exewas running from the expected current runtime directory.B. Repair the active Codex home, not the inactive one
Run the bundled/plugin repair against the actual
CODEX_HOME.The active
config.tomlshould include the Chrome / Browser / Computer Use plugin entries, and the activechrome-native-hosts.json/chrome-native-hosts-v2.jsonshould point at current plugin paths.C. Use
sandbox = "unelevated"on WindowsIn the active
CODEX_HOME\config.toml:This matched a known workaround reported by other Windows users where
sandbox = "elevated"preventednode_repl/ Browser Runtime from becoming usable.D. Manually copy the new runtime without preserving encrypted attributes
Normal
Copy-Item,robocopy, andcmd copyfailed because of encrypted WindowsApps source files.The working approach was to copy files by reading bytes and writing new files, which did not preserve the encrypted attribute.
Conceptually:
This was used to copy:
to a new local runtime directory under:
and the current Codex helper binaries to:
After copying, verify:
E. Update stale runtime pointers
Update these files in the active Codex home and local Codex state so they no longer point to older app/runtime versions:
The stale entries pointed to older versions such as:
They were updated to the current app version and the manually copied runtime:
The active
config.tomlalso needed a matchingmcp_servers.node_replblock pointing at the new localnode_repl.exe,node.exe, andnode_modules.Validation That Confirmed the Fix
After restarting Codex Desktop:
node_repl jsreturnedmcp__node_repl__js.node_repl.exewas running from the new local runtime path.agent.browsers.get("extension")succeeded.browser.user.openTabs()returned already-open tabs from the real Chrome main profile.browser.user.claimTab(...).After restarting Chrome as well:
chrome.exe --profile-directory="Default".CODEX_HOMEplugin cache.This confirmed the fix survived both Codex Desktop restart and Chrome restart, and did not rely on a clean browser, temporary profile, or alternate Chrome account.
Final Classification
In this case the failure was not caused by:
The actual failure was:
CODEX_HOMEmismatch / split configurationcua_node/node_replruntime still being used after Codex Desktop updatedSuggested Product Fix
Codex Desktop on Windows could make this easier by:
CODEX_HOMEin diagnosticsconfig.toml,chrome-native-hosts.json, and local runtime cache disagreenode_replstartup/registration failures in the UIchrome-native-hosts-v2.jsonentries after app updatesI can reproduce this on the same Windows machine with a useful version boundary.
Version boundary on the same machine
019f3aa1-dca9-7b73-bfb4-b5e547dbd00226.623.101652mcp__node_repl/jsfunction calls that successfully ransetupComputerUseRuntime(...)andsky.list_apps().The failure started after the 26.707 update:
26.707.31428on 2026-07-1226.707.61608on 2026-07-1326.707.8168.0019f59a0-cd7a-7073-83e0-1b3465cadbdfCurrent state
codex mcp listreportsnode_replas enabled.node_repl.exe,node.exe, andcodex-computer-use.exeall exist.node_repl.exeprocesses are running as children of the Codex Desktop process.codex features listreportscomputer_useasstable true.mcp__node_repl__js(and no usable discovery tool that can expose it), so the plugin cannot bootstrap.js_repl = falseis not causal hereLocal rollout history shows
js_repl = falsewas already present by 2026-06-24, but Computer Use still worked on 2026-07-07 with plugin26.623.101652.The current CLI also reports:
I removed the stale
js_replconfig entry and revalidated the config; this did not change tool exposure.This looks like a regression in task-level MCP tool injection/discovery between the 26.623 and 26.707 desktop/plugin builds, rather than a missing executable, stale runtime pointer, or the removed
js_replfeature flag.Codex
/feedbackreference (submitted without logs):019f5a67-48f5-7560-b95e-f28e4a64c5fe.Still reproducing on a newer Windows Codex Desktop build.
Environment
26.707.8168.010.0.2620026.707.6160826.707.6160826.709.11516Current behavior
mcp__node_repl__jsexecution tool is not exposed in the task's tool registry.This confirms that the issue still exists on the newer
26.707app/plugin generation. The original report for this reproduction was closed as a duplicate: #32720. No website contents, authentication data, or private browser data are included.I published a reproducible diagnostic/acceptance lab for this exact symptom class:
https://github.com/2agathon/codex-control-runtime
Its main purpose is to distinguish four states that the UI currently makes easy to conflate:
mcp__node_repl__jsis actually exposed to the task;The repo includes a read-only Windows Doctor plus three strict, no-fallback acceptance prompts for Browser, Chrome, and Computer Use. A task must report the real tool/runtime chain; it cannot silently substitute Playwright, Chrome DevTools MCP, shell automation, screenshots, or another browser MCP.
This is an independent community lab, not an official fix. It may be useful for producing comparable evidence across app/plugin updates without repeating cache surgery.