Windows Codex App: Browser Use fails to discover IAB backend despite node_repl and in-app browser working

Open 💬 1 comment Opened May 7, 2026 by LLLsy00126

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

26.429.8261.0

What subscription do you have?

ChatGPT Plus

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What issue are you seeing?

````markdown
Browser Use fails to connect to the Codex in-app browser backend on Windows.

The Browser Use plugin is installed, browser-client.mjs exists and imports correctly, node_repl.exe works in normal PowerShell, and node_repl/js can execute simple JavaScript. The in-app browser can also be opened manually.

However, Browser Use fails during IAB initialization:

await setupAtlasRuntime({ globals: globalThis, backend: "iab" });
````

The error is:

```text
Failed to connect to browser-use backend "iab".
No Codex IAB backends were discovered.
Discovery diagnostics: listedPipes=2/3, candidates=4/5, browsers=0, iabBrowsers=0, failures=["discovered/timeout","discovered/timeout","legacy-iab/timeout","legacy-chrome/timeout"], pipeListingError=none.

In one diagnostic run, visible Browser Use pipes included:

codex-browser-use-2241ee4f-6b6b-443d-a2a8-a832e8779a19
codex-browser-use-168dd6a5-1fce-45e4-b249-7412980694ff

The pipes are visible, but the Browser Use handshake does not complete. No IAB browser backend is detected.

This appears to be a Browser Use / IAB backend discovery, handshake, or session binding issue in the Windows Codex App.

````

What steps can reproduce the bug?

1. Install and log in to the Codex Windows App.

2. Enable the bundled Browser Use plugin.

3. Open a trusted workspace, for example:

```text
C:\Users\ww342\Documents\New project
````

4. Confirm that `node_repl.exe` exists:

```text
C:\Users\ww342\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\OpenAI\Codex\bin\node_repl.exe
  1. Run the following in normal PowerShell:
& "C:\Users\ww342\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\OpenAI\Codex\bin\node_repl.exe" --help

This works and prints the Node REPL help output.

  1. In Codex, verify that node_repl/js works:
console.log("node repl ok");

This works.

  1. Open the in-app browser manually. It opens successfully.
  1. Run the following Browser Use IAB diagnostic through node_repl/js:
const pluginRoot = "C:/Users/ww342/.codex/plugins/cache/openai-bundled/browser-use/0.1.0-alpha1";
const { setupAtlasRuntime } = await import(`${pluginRoot}/scripts/browser-client.mjs`);

const timeout = new Promise((_, reject) => {
  setTimeout(() => reject(new Error("IAB setup timeout after 15000ms")), 15000);
});

try {
  await Promise.race([
    setupAtlasRuntime({ globals: globalThis, backend: "iab" }),
    timeout
  ]);
  console.log("IAB setup ok");

  await agent.browser.nameSession("IAB diagnostic");
  const tabs = await agent.browser.tabs.list();
  console.log("tabs.list:", JSON.stringify(tabs));

  const tab = await agent.browser.tabs.new();
  await tab.goto("https://example.com");
  console.log("title:", await tab.title());
} catch (e) {
  console.log("IAB setup failed:");
  console.log(e && (e.stack || e.message || String(e)));
}
  1. The initialization fails with:
Failed to connect to browser-use backend "iab".
No Codex IAB backends were discovered.
Discovery diagnostics: listedPipes=2/3, candidates=4/5, browsers=0, iabBrowsers=0, failures=["discovered/timeout","discovered/timeout","legacy-iab/timeout","legacy-chrome/timeout"], pipeListingError=none.

Additional sandbox tests:

[windows]
sandbox = "elevated"

Result:

  • node_repl/js works.
  • Browser Use IAB discovery fails.
[windows]
sandbox = "unelevated"

Result:

  • node_repl/js times out and the kernel resets.
[windows]
sandbox = "elevated"
sandbox_private_desktop = false

Result:

  • node_repl/js also times out.

The most stable local configuration is:

[windows]
sandbox = "elevated"

but Browser Use still cannot discover the IAB backend.

What steps can reproduce the bug?

````markdown

  1. Install and log in to the Codex Windows App.
  1. Enable the bundled Browser Use plugin.
  1. Open a trusted workspace, for example:
C:\Users\ww342\Documents\New project
  1. Confirm that node_repl.exe exists at:
C:\Users\ww342\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\OpenAI\Codex\bin\node_repl.exe
  1. Run the following in normal PowerShell:
& "C:\Users\ww342\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\OpenAI\Codex\bin\node_repl.exe" --help

This works and prints the Node REPL help output.

  1. In Codex, verify that node_repl/js works:
console.log("node repl ok");

This also works.

  1. Open the Codex in-app browser manually. The in-app browser opens successfully.
  1. Run the following Browser Use IAB diagnostic through node_repl/js:
const pluginRoot = "C:/Users/ww342/.codex/plugins/cache/openai-bundled/browser-use/0.1.0-alpha1";
const { setupAtlasRuntime } = await import(`${pluginRoot}/scripts/browser-client.mjs`);

const timeout = new Promise((_, reject) => {
  setTimeout(() => reject(new Error("IAB setup timeout after 15000ms")), 15000);
});

try {
  await Promise.race([
    setupAtlasRuntime({ globals: globalThis, backend: "iab" }),
    timeout
  ]);
  console.log("IAB setup ok");

  await agent.browser.nameSession("IAB diagnostic");
  const tabs = await agent.browser.tabs.list();
  console.log("tabs.list:", JSON.stringify(tabs));

  const tab = await agent.browser.tabs.new();
  await tab.goto("https://example.com");
  console.log("title:", await tab.title());
} catch (e) {
  console.log("IAB setup failed:");
  console.log(e && (e.stack || e.message || String(e)));
}
  1. The initialization fails with:
Failed to connect to browser-use backend "iab".
No Codex IAB backends were discovered.
Discovery diagnostics: listedPipes=2/3, candidates=4/5, browsers=0, iabBrowsers=0, failures=["discovered/timeout","discovered/timeout","legacy-iab/timeout","legacy-chrome/timeout"], pipeListingError=none.

Additional sandbox tests:

[windows]
sandbox = "elevated"

Result:

  • node_repl/js works.
  • Browser Use IAB discovery fails.
[windows]
sandbox = "unelevated"

Result:

  • node_repl/js times out and the kernel resets.
[windows]
sandbox = "elevated"
sandbox_private_desktop = false

Result:

  • node_repl/js also times out.

The most stable local configuration is:

[windows]
sandbox = "elevated"

but Browser Use still cannot discover the IAB backend.

````

What is the expected behavior?

Browser Use should be able to discover and connect to the active Codex in-app browser backend on Windows.

The following initialization should succeed:

await setupAtlasRuntime({ globals: globalThis, backend: "iab" });

After initialization, Browser Use should expose the agent.browser.tabs.* API, create or select an in-app browser tab, navigate to https://example.com, and return the page title.

Expected diagnostic result:

IAB setup ok
title: Example Domain

Expected functional behavior:

const tab = await agent.browser.tabs.new();
await tab.goto("https://example.com");
console.log(await tab.title());

Expected output:

Example Domain

In normal use, @Browser / Browser Use should be able to open, inspect, and control the Codex in-app browser without falling back to webpage source reading or reporting that no IAB backend was discovered.

Additional information

Browser Use plugin version: 0.1.0-alpha1

Browser Use plugin path:

C:\Users\ww342\.codex\plugins\cache\openai-bundled\browser-use\0.1.0-alpha1

Node REPL path:

C:\Users\ww342\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Local\OpenAI\Codex\bin\node_repl.exe

What has been ruled out:

  • The Browser Use plugin root exists.
  • scripts/browser-client.mjs exists.
  • browser-client.mjs imports quickly.
  • node_repl.exe --help works in normal PowerShell.
  • node_repl/js can execute console.log("node repl ok").
  • The in-app browser can be opened manually.
  • Normal webpage reading works.
  • Network access is available.
  • HTTP/HTTPS proxy configuration is working.
  • NO_PROXY includes localhost,127.0.0.1,::1.

Current most stable local configuration:

[windows]
sandbox = "elevated"

Other sandbox configurations were tested:

[windows]
sandbox = "unelevated"

This caused node_repl/js to time out and reset the kernel.

[windows]
sandbox = "elevated"
sandbox_private_desktop = false

This also caused node_repl/js to time out.

Observed Browser Use failure:

Browser Use pipes are visible, but the IAB backend does not complete the Browser Use handshake. The diagnostic reports browsers=0 and iabBrowsers=0, with discovered/timeout and legacy-iab/timeout failures.

This issue appears to be related to Browser Use / IAB backend discovery, IPC, or session binding inside the Windows Codex App.

View original on GitHub ↗

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