Desktop: @Browser mention does not bind the open IAB backend to the current task

Open 💬 2 comments Opened Jul 15, 2026 by koco-co
💡 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?

Codex Desktop: 26.707.72221 (build 5307)
Bundled Browser plugin: 26.707.72221
Bundled Codex CLI: 0.144.2

What subscription do you have?

Not included in this diagnostic.

What platform is your computer?

macOS 26.1.0, Apple Silicon

What issue are you seeing?

The Codex in-app browser is open and authenticated, and the Browser plugin is installed and enabled. However, using the real @Browser mention chip in the current root Desktop task does not register or bind an IAB backend for that task.

The task's Browser runtime reports:

await agent.browsers.list()
// []

await agent.browsers.get("iab")
// Browser is not available: iab

This remains true after:

  • opening the in-app browser and navigating to an authenticated X Article;
  • reopening the browser;
  • selecting the actual Browser plugin mention (@Browser) in the composer;
  • clicking the linked article from that Browser-tagged prompt;
  • reinitializing the bundled Browser client in the same task.

The native app has IAB socket endpoints open, but none matches the current task/session filter used by the bundled Browser client. Submitting the proper Browser-tagged prompt did not create a new matching endpoint.

This appears to be a Desktop task-to-IAB session binding or backend registration failure, rather than a missing plugin or a closed browser.

What steps can reproduce the bug?

  1. On Codex Desktop 26.707.72221 for macOS, install and enable browser@openai-bundled.
  2. Open the Codex in-app browser and sign in to a site such as X.
  3. Open an authenticated page, for example an X Article.
  4. In the same root Desktop task, select the real @Browser plugin mention chip and ask it to open the article URL.
  5. Initialize the bundled Browser client as documented by the Browser skill.
  6. Run:
await agent.browsers.list()
await agent.browsers.get("iab")
  1. Observe that the backend list is empty and get("iab") throws Browser is not available: iab.

What is the expected behavior?

After the user opens the built-in browser and explicitly tags @Browser in the current root Desktop task, Codex should bind or register that task's IAB backend.

await agent.browsers.list()

should include an iab backend, and:

await agent.browsers.get("iab")

should succeed.

If binding fails, the UI/runtime should report a specific session-registration error instead of returning an empty backend list.

Additional information

Diagnostics performed:

  • codex plugin list exited 0 and reported browser@openai-bundled installed and enabled.
  • Browser-related feature flags were enabled: in_app_browser, browser_use, browser_use_full_cdp_access, browser_use_external, and computer_use.
  • The app and Browser plugin versions match.
  • Native IAB sockets existed and were owned by the Codex desktop app, but no endpoint matched the current task/session.
  • Reinitializing the same bundled Browser client did not change discovery.
  • The current Browser client caches the first empty discovery result and exposes no public refresh method, which may compound recovery after a late backend registration.
  • No cookies, local storage, session contents, account identifiers, task IDs, socket UUIDs, or private page content were inspected or included.

Related reports:

  • #26470 covers the broader case where installed Browser/Chrome plugins expose no registered backend.
  • #32664 covers backend propagation differences across Desktop, CLI, and collaboration subagents.
  • #20678 covers earlier IAB/Node runtime connection and session ownership failures.

The narrower behavior here is that a root Desktop task still has no matching IAB backend after the browser is visibly open and the actual @Browser mention is submitted in that same task.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 1 month ago

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

  • #32664

Powered by Codex Action

muke1838-cloud · 29 days ago

Confirmed the same backend-registration symptom on a newer Codex Desktop build.

Environment

  • Codex Desktop: 26.721.41059 (build 5848)
  • Bundled Browser plugin: 26.721.41059
  • macOS 26.4 (build 25E246), Apple Silicon
  • Root Desktop task
  • In-app browser visibly open at https://chatgpt.com/ and authenticated

Fresh reproduction

  1. Open the in-app browser and navigate to ChatGPT.
  2. Initialize the bundled Browser client from the current root task.
  3. Run:

```js
await agent.browsers.list()
// []

await agent.browsers.get("iab")
// Browser is not available: iab
```

  1. Close/reopen the in-app browser and retry.
  2. Fully quit/relaunch Codex Desktop, reopen the in-app browser, and retry.

The result remains an empty backend list and Browser is not available: iab.

This confirms that the issue still reproduces in 26.721.41059 after a full application restart. The browser UI and authenticated page are present, but the current root task receives no matching IAB route. This blocks workflows that need the agent to interact with an authenticated site through the user-opened in-app browser.

I did not inspect or include cookies, account identifiers, task/session IDs, socket identifiers, or private page content.