[macOS][Chrome extension][regression] Browser controls no longer working

Open 💬 6 comments Opened Aug 21, 2026 by bryndonhumphrey
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the ChatGPT/Codex app are you using?

ChatGPT desktop 26.818.31338 (build 6892), bundled Chrome plugin/native host 26.818.31338.

What platform are you using?

macOS 26.6.2 (build 25G83), arm64.

What issue are you seeing?

The official ChatGPT Chrome extension can read the active tab's URL, title, and visible text, but a side-panel session cannot initialize interactive Chrome control. Clicking, typing, navigation, opening result cards, following redirects, and observing newly opened tabs are unavailable. The session reports a capability state equivalent to: the native host did not provide a browser-client path / the host is out of date.

Static diagnostics do not indicate a missing or disabled installation:

  • Google Chrome 151.0.7922.170 is running.
  • ChatGPT Chrome extension 1.2.27268.51612_0 is installed, registered, and enabled in the selected profile.
  • Bundled check-native-host-manifest.js --browser chrome --json passes with correct: true and problem: null.
  • The chrome/latest symlink resolves to plugin version 26.818.31338.
  • The current schema-v2 runtime entry reports app/CLI/native-host version 26.818.31338, protocol 2, and valid paths for both:
  • chrome/latest/scripts/browser-client.mjs
  • chrome/latest/scripts/browser-service.mjs
  • The current runtime entry has a same-day lastSeenAt timestamp.
  • Active-tab text extraction succeeds in the affected thread.

This looks like runtime capability discovery/native-host handshake failure: the active side-panel thread is not receiving or accepting the current registry entry's browser-control paths even though the text-context channel works.

Steps to reproduce

  1. Launch ChatGPT desktop 26.818.31338 and Chrome.
  2. Confirm the official ChatGPT extension is enabled.
  3. Open an ordinary authenticated site in Chrome.
  4. Open the ChatGPT extension side panel.
  5. Ask the side-panel thread to read the selected tab; URL, title, and visible text are returned.
  6. Ask it to click a link, navigate, open a result card, or observe a new tab.
  7. Interactive control is unavailable and the thread reports that the native host did not provide the browser-client path / is out of date.

The failure occurs before any website-specific action. It is not caused by a CAPTCHA, sign-in prompt, or site permission.

Expected behavior

A fresh side-panel thread should initialize interactive Chrome control when Chrome, the official extension, and the matching native host are installed and connected. If the handshake fails, the UI should expose the selected runtime entry and exact rejected/missing capability instead of recommending reinstall/update when packaged versions and paths already match.

Diagnostic details

Bundled read-only checks:

  • chrome-is-running.js --browser chrome --check: pass
  • installed-browsers.js --json: pass
  • check-extension-installed.js --browser chrome --json: pass
  • check-native-host-manifest.js --browser chrome --json: pass

The v2 registry retains one older runtime entry (26.623.141536, last seen 2026-07-07) in addition to the current 26.818.31338 entry. It is unclear whether entry selection or registry hydration contributes.

Suggested investigation areas:

  1. Schema-v2 runtime entry selection when historical entries remain.
  2. Cache/race behavior between native-host registration, side-panel startup, and per-thread capability snapshots.
  3. Why the thread reports a missing browser-client path when the current registry entry contains a valid one.
  4. Whether text-context and interactive-control channels initialize independently.
  5. Add a supported diagnostic exposing the exact handshake/capability failure.

Impact

Authenticated Chrome workflows are blocked even though page reading works. The observed workflow required opening search results, capturing post-redirect destination URLs, restoring the original search, inspecting new tabs, and advancing pagination. No form fields were entered and no external action was submitted.

No account data, cookies, credentials, local usernames, query parameters, or page contents are included here.

Related issue

Closely matches #39531, but that report is Windows-specific. This is a macOS reproduction where the extension, manifest, current native-host version, and current schema-v2 browser-client paths all validate successfully.

Support case number

Support case #: 13795795

View original on GitHub ↗

6 Comments

github-actions[bot] contributor · 6 days ago

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

  • #39800
  • #39836
  • #39531
  • #39673

Powered by Codex Action

akkikumar72 · 2 days ago

Facing the same issue for the past 3/4 days. Did we get any fix for it?

bryndonhumphrey · 2 days ago

@akkikumar72 haven't heard anything yet and the issue is still happening for me.
Just opened this bug report in the openai discord
https://discord.com/channels/974519864045756446/1541835402350956614

bryndonhumphrey · 2 days ago

@johnl-oai saw your name on a closed codex+chrome bug, which was reported in discord.
Is there anything we can do to prioritize getting this feature fixed? It is massively helpful.
I use it all the time in a codex+chrome+google sheets driven job hunting workflow.
I'd be _devastated_ if this functionality never comes back.
https://github.com/bryndonhumphrey/codex-job-search-workflow/blob/main/README.md

akkikumar72 · 2 days ago

I can confirm that this appears to be a recent regression. I had been using the Codex Chrome integration regularly without issues, but interactive browser control suddenly stopped working around three to four days ago. Reading page content still works, while actions such as clicking, typing, and navigation are no longer available.

sandipb · 13 hours ago

I faced the same problem and root caused it to a clash with a separate skill I installed - agent-browser. Its description is overriding the routing of the agent to that skill for any browser interaction.

If I use this explicit instruction in the chrome extension session, it works.

Use browser:control-in-app-browser. Chrome is explicitly selected—not the in-app Browser. Follow the skill’s explicit Chrome flow.

It is possible that the problem is not the agent-browser skill but the inbuilt "browser:control-in-app-browser" skill itself.