In-app browser: URL/title works but DOM inspection times out on real pages

Open 💬 0 comments Opened May 15, 2026 by netkeen76-byte

What happened?

Codex Desktop in-app browser can navigate to real webpages and read tab metadata, but Browser Use DOM inspection hangs/timeouts on real pages.

Observed behavior:

  • For https://www.baidu.com/:
  • tab.url() succeeds and returns https://www.baidu.com/
  • tab.title() succeeds and returns 百度一下,你就知道
  • tab.playwright.locator("body").innerText(...) times out
  • tab.playwright.domSnapshot() times out
  • For a WeChat article page:
  • tab.url() succeeds
  • tab.title() succeeds
  • #activity-name, #js_content, domSnapshot(), visible DOM, screenshot, and clipboard-based extraction time out
  • For about:blank:
  • tab.playwright.locator("body").count() succeeds and returns 1
  • body.innerText() succeeds with empty text

So the in-app browser page and metadata channel work, but DOM inspection for real webpages appears stuck.

Expected behavior

The in-app browser Browser Use backend should support DOM inspection for rendered pages, at least for simple public pages like https://www.baidu.com/.

Environment

  • OS: macOS on Apple Silicon
  • Codex Desktop App: current desktop app session
  • Codex CLI: 0.131.0-alpha.9
  • Browser plugin: openai-bundled/browser/0.1.0-alpha2
  • Chrome plugin also installed and working
  • In-app browser visible and able to navigate manually

Diagnostics already tried

  1. Restarted Codex Desktop.
  2. Installed matching npm CLI version: @openai/codex@0.131.0-alpha.9.
  3. Recreated the managed standalone path expected by app-server daemon.
  4. Started app-server daemon successfully.

Daemon status after fix:

{
  "status": "running",
  "cliVersion": "0.131.0-alpha.9",
  "appServerVersion": "0.131.0-alpha.9",
  "socketPath": "$HOME/.codex/app-server-control/app-server-control.sock"
}

Even after daemon is running, real-page DOM inspection still times out.

Minimal repro

  1. Open Codex Desktop.
  2. Open the in-app browser.
  3. Navigate to https://www.baidu.com/ manually or via Browser Use.
  4. Run Browser Use against the selected IAB tab:
const tab = await browser.tabs.selected();
await tab.url();      // succeeds
await tab.title();    // succeeds
const body = tab.playwright.locator("body");
await body.count();
await body.innerText({ timeoutMs: 15000 });

Actual: DOM calls time out / tool execution times out.

Notes

Chrome extension backend works on the same machine for the same WeChat article, so the issue seems specific to the Codex in-app browser Browser Use DOM bridge, not webpage availability.

View original on GitHub ↗