Repository navigation
[Windows] Browser Use lists correct Chrome tabs but cannot request permission / verify saved browser permissions #48573
Description
Summary
Browser Use on Windows can discover the correct Chrome profile and list its existing ChatGPT tab, but attempting to access/read the tab fails before page content is returned:
Browser Use could not complete this action because a browser security check was unavailable. Reason: Browser Use could not request permission. Browser use cannot access https://chatgpt.com because saved browser permissions could not be verified.
This appears related to #42466 and #41334, but the observed reason is saved browser permissions could not be verified, rather than a confirmed administrator policy denial.
Environment
- Windows desktop app package: OpenAI.Codex 26.924.2738.0
- Bundled official Chrome/browser plugin: 26.924.22138
- Browser: Google Chrome with official ChatGPT extension 1.26.901.11451
- Reproduced September 27, 2026 (Korea time)
Reproduction
- Open Chrome using the user's intended profile and open https://chatgpt.com.
- Initialize the official browser-client via the provided Node tool.
- Select the confirmed Chrome profile and list user tabs.
- The existing ChatGPT tab is returned correctly.
- Attempt to claim/read that tab through the documented browser API.
- The permission-verification error above is returned; no page content is available.
Checks completed
- An initially selected different Chrome connection returned zero tabs. That profile-selection mistake was corrected, but the permission failure persists on the confirmed profile.
- Official extension diagnostic: installed and enabled.
- Official native-host diagnostic: correct=true; registered manifest, host name and expected extension origins match.
- The cached browser-client and app-bundled browser-client have matching SHA256 hashes.
- User-reported restart attempts did not resolve access.
- Switching away from and back to the affected Codex conversation, then retrying the same Chrome profile/tab, did not resolve access.
- An earlier in-app browser navigation to ChatGPT also returned the same saved-permissions verification error.
Correlated log evidence (not a proven cause)
Desktop logs for the affected conversation, around 2026-09-26 23:28–23:31 UTC, repeatedly contain:
No ChatGPT browser route is available for browser session [redacted]
We have not established that this routing error causes the Chrome permission-verification failure. No claim is made that profile mismatch was the root cause of the remaining failure.
Expected behavior
Complete the saved-permission check and present a normal, actionable approval prompt if needed. If verification cannot run, identify the failing component and provide a supported recovery path.
Please distinguish an actual permission denial from an unavailable permission check. Is there a known Windows fix for this build, or a supported way to repair conversation/browser routing and reload saved permissions without broadening access or deleting history?
No browser security controls were bypassed. No cookies, credentials, private business data, raw logs, local usernames, or conversation identifiers are included in this report.
Activity
github-actions commentedon Sep 26, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
AdamSpore commentedon Sep 27, 2026
Sharing a verified macOS cause of this same saved-permissions error, diagnosed with Codex. I have not reproduced or verified this fix on Windows, but it may give maintainers another concrete path to check.
Environment: macOS desktop app 26.924.22138, bundled browser plugin 26.924.22138, Chrome extension 1.26.901.11451.
Symptoms: Chrome tabs could be listed, but actual page access failed with “saved browser permissions could not be verified.” The built-in browser also failed. It persisted across new chats and separate projects. Reinstalling the extension, restarting, changing permission settings, and rebuilding the plugin cache did not resolve it.
Finding:
~/.codexand~/.codex/browserwere ordinary directories, but~/.codex/browser/sessionswas a symbolic link to an old automation directory. The global browser config was valid and readable. Issue #35310 supplied the diagnostic lead. The installed native reader containsCodex TOML directory must not be a symlink, and the installed permission-checking code maps saved-state read failures to this generic error. We did not capture the suppressed underlying exception from the live process, so the internal failure mechanism is inferred from that code and the controlled test below.Controlled before/after test:
https://example.comthrough Chrome failed with the exact saved-permissions error.A read-only check for this particular layout is:
This is a fix for the symlink case we tested, not a claim that every instance of this error has the same cause. There was no need to delete the Codex home directory or weaken permissions.
It would help if the error exposed the rejected directory and underlying reader reason. Tests covering a symlinked
browser/sessionsdirectory independently of a symlinkedCODEX_HOMEmay catch this variant.routerpipe-byte commentedon Sep 27, 2026
Adding a Windows confirmation of a related junction/symlink case.
Environment:
26.924.2738.026.924.221380.158.0-alpha.2.1Symptoms: Both Chrome and the built-in browser connected successfully and could create/read
about:blank, but navigation tohttps://example.com/failed withsaved browser permissions could not be verified. A full desktop-app restart and a new local, projectless chat did not resolve it.Finding and outcome: My
.codexhome was a Windows directory junction pointing to another drive. Ordinary reads of the target directory and browser configuration succeeded. The issue was resolved after addressing the.codexjunction/symlink setup.This adds a Windows case involving the Codex home directory itself, alongside the macOS
browser/sessionssymlink case reported above and the related investigation in #35310.The diagnostic trace identified persistent browser-permission snapshot refresh as the failing layer, but the original host-side exception was wrapped and was not captured. The junction-related resolution is confirmed for my setup; the precise native rejection mechanism, and whether other Windows reports share this cause, remain unverified.
It would help if Browser Use surfaced the underlying configuration read/refresh error and the rejected path, and if tests covered Windows junctions/reparse points in the browser-permission directory chain.
soju1982game1-cpu commentedon Sep 27, 2026
Update (2026-09-28 KST): After the user reconfigured browser control and opened a fresh ChatGPT tab, the official Chrome connection still listed the intended profile and returned that tab. Claiming/reading the tab through the documented browser API failed before any page content was returned, with the same
Browser Use could not request permission/saved browser permissions could not be verifiederror. This reconfirms that extension communication and tab discovery work while the saved-permission check remains unavailable. No security controls were bypassed, and no private site URLs, credentials, or session data were accessed or included. We have not established the root cause.byronbuzz commentedon Sep 28, 2026
Adding another Windows built-in browser reproduction.
Environment observed during reproduction
OpenAI.Codex 26.924.2738.026.924.22138Observed behavior
Recovery attempts that did not resolve it
Read-only filesystem observation relevant to the comments above
The default user-profile
.codexdirectory is a Windows directory junction targeting another drive. Thebrowserandbrowser/sessionschildren themselves are ordinary directories. No junctions, permission files, approval policies or browser history were changed. This matches a reported configuration here, but we have not performed a controlled before/after repair, so it is not a confirmed root cause for this reproduction.Correlated desktop logs
Logs report
No ChatGPT browser route is available for browser session [redacted]. Other entries associate a saved conversation identifier with aclient-new-thread:[redacted]browser owner/route. That association persisted after the recovery attempts. We have not established whether it causes the saved-permission failure or is a separate routing symptom.This prevents automated review/testing of local application candidates even though manual browsing and tab discovery work. Could maintainers provide a supported recovery path for junction-backed Codex homes, preserving all saved allow/deny decisions, and expose the underlying permission-read failure instead of this generic message?
No security controls were bypassed. Local paths, usernames, drive targets, conversation/tab identifiers, private project details, credentials and raw logs are omitted.
jorgeparedes93 commentedon Sep 29, 2026
Adding another Windows reproduction on the same release, with a junction-backed Codex home and a separately broken Chrome native-host path. The user explicitly requested this report. No private site URLs, local usernames, project details, credentials, browser contents, conversation identifiers, or raw logs are included.
Environment
OpenAI.Codex 26.924.2738.0.26.924.22138, build11645.26.924.22138.0.158.0-alpha.2.1.1.26.901.11451, installed and enabled in the selected profile.Built-in browser: observed failure
The user can open a public website manually. The documented browser API successfully lists that existing tab and its title/URL. Reading accessibility state or requesting the state plus a screenshot fails with:
The origin appears as allowed in the settings UI, in the general configuration, and in the saved browser origin allowlist. A full user-performed app restart followed by fresh browser initialization did not resolve it. No screenshot/page content was returned.
Read-only filesystem checks confirm that
%USERPROFILE%\.codexis a Windows directory junction to a real directory on another drive. The target'sbrowserdirectory is an ordinary directory and itsconfig.tomlcan be read normally. The permission store has not been moved, edited, or reset. This matches the layout reported in #48573 (comment) and #35310, but we have not performed a controlled repair and cannot claim the junction is the proven cause here.Separate Chrome connection problem
Selecting Chrome returns
Browser is not available: chrome, including while Chrome is running. The extension is installed/enabled, and the HKCU native-host registration and manifest exist. However, the manifest points to a nonexistent absolute executable:The user reinstalled the Chrome extension. They also clicked Reinstall extension in the desktop app's Google Chrome settings, which opened the already-installed official extension's store page. A subsequent check still found the native-host executable absent. Plugin loading diagnostics also report
missing or invalid plugin.jsonforchrome@openai-bundled.One diagnostic caveat: the bundled Node checker initially reported a missing registry key while subprocess execution was restricted. A direct PowerShell registry read confirmed that the key exists. We discarded that missing-key conclusion; the nonexistent executable is the confirmed observation.
Requested recovery guidance
Could maintainers provide a supported way to use an existing junction-backed Codex home via its real directory, preserving all saved permissions and data, and a supported recovery path for the missing bundled Chrome host when the UI's reinstall action only opens the extension store? Please expose the underlying permission-snapshot error so these failures can be distinguished.
Related: #49247 has the same desktop package and both visible errors. #22114 describes missing/incomplete Chrome plugin caches, but file-lock corruption has not been established on this installation.
No safety checks were disabled, no browser permission entries were broadened, and no native-host files or registrations were manually replaced.
jorgeparedes93 commentedon Sep 30, 2026
Follow-up to my earlier Windows diagnostic: I found and repaired a separate bundled-marketplace configuration problem, but browser recovery is NOT yet confirmed.
Desktop package: 26.924.2738.0. Bundled plugins: 26.924.22138.
After explicitly setting CODEX_HOME to the existing physical data directory and restarting, both the process and user environment reflect that directory. Chrome selection still returns
Browser is not available: chrome.New evidence:
marketplace 'openai-bundled' is already added from a different source; remove it before adding this source.marketplaces.openai-bundled.sourceretained the old extended-length path through the default home junction. Desktop now requests the physical path to its own generated.tmp/bundled-marketplaces/openai-bundleddirectory.latestjunction targeted an absent prior generation.plugin add chrome@openai-bundled --jsonsucceeded using Desktop's local generated marketplace. The restored manifest, browser client/service, and native executable match the local source by SHA-256.Remaining issue: the registered Native Messaging manifest still points to the old
latestpath, which the plugin installer removed. Chrome remains unavailable while waiting for Desktop to reconcile its native-host registration. The official extension checker confirms the extension is installed and enabled. I have not manually installed the native host, changed its manifest/registry, patched binaries, changed browser permissions, or bypassed browser security controls.This source-registration conflict matches #26366 and may explain why repeated extension reinstall attempts could not repair this installation. It is additional evidence about provisioning, not proof of the cause of the original saved-permissions error. Please consider migrating/canonicalizing the Desktop-owned marketplace source when CODEX_HOME changes and validating the native-host target after plugin repair.
elsfamily-bit commentedon Sep 30, 2026
Windows reproduction confirmed.
Environment
26.924.2738.00.158.0Observed behavior
https://example.com.https://script.google.comis detected correctly and Codex can identify the tab URL/title.saved browser permissions could not be verifiedThe issue persists after restarting Codex and is not resolved by using another/new Codex chat.
codex doctorreports healthy local state/auth databases and working WebSocket connectivity. No script execution or page modification occurs before the Browser Use permission check fails.This appears to be another Windows reproduction of the permission-verification failure described in this issue.
byronbuzz commentedon Sep 30, 2026
Confirmed Workaround
26.924.2738.0, bundled browser plugin26.924.22138.~\.codex\plugins\cache\openai-bundled\chrome\latestso it points to the current26.924.22138plugin directory.scripts\installManifest.mjsusing the current CUAnode.exe/node_repl.exeand plugin app-servercodex.exe. This regeneratesextension-host-config.jsonand the native-messaging host registration.chrome-native-hosts-v2.jsonfiles with one current schema-v2 entry, using the current browser client/service, extension host, CUA Node runtime, Codex home, AppXresourcespath, and currentbrowser-client.mjsSHA-256..codexjunction/symlink did not need to be removed.M0inUddin commentedon Oct 1, 2026
Adding a Windows reproduction that is still present on release
26.928.31416. This report covers repeated failures while testing and recording a local web app on October 1, 2026. I reviewed the recent Codex chats and checked the installed versions and directory layout.Environment
26300.OpenAI.Codex 26.928.3736.0.26.928.31416, build12553, release channelprod. The app's update check reportsup_to_date.26.928.31416. The Browser runtime used in the affected chats is from that version.codex-cli 0.159.2.154.0.8037.58, Edge154.0.4258.48. The main reproduction below uses the built-in browser and does not require either external browser.Observed behavior
The documented Browser runtime initializes, selects the in-app browser, and can list tabs/create a tab. Attempting to navigate to
http://localhost:8080fails with:A separate request to
https://example.comreturns the same saved-permissions error. Repeating both requests still fails. This is therefore not limited to the local web app.The failure occurred across several chats, including a fresh chat created specifically to retry the recording. It blocks UI testing and demo recording. The local frontend, API and workers had separately been started and checked; completed application-generated videos existed, but Codex could not record the UI.
Recovery attempts
The reinstall and repeated restart attempts are user-reported. The affected chats document fresh-chat, runtime reinitialization, post-restart and public-site retries. None restored browser access.
An earlier chat also reported an unavailable Edge connection bridge. Standalone Playwright could launch Edge and Chrome on a blank page, but this did not establish that Codex Browser permissions were repaired.
Read-only diagnostic findings
The default
%USERPROFILE%\.codexis a Windows directory junction to a physical directory on another drive. The physical Codex home,browser, andbrowser/sessionsare ordinary directories. This matches the directory layout discussed above, but we have not performed a controlled before/after repair and cannot attribute the failure to the junction.The affected chats also captured desktop logs containing
No ChatGPT browser route is available for browser session [redacted]. Browser owner/host entries retained aclient-new-thread:[redacted]identifier while the app route referenced a saved chat. This persisted after a restart. The relationship between this routing observation and permission verification remains unproven.I read the reports of symlink/junction repairs, stale native-host registration, and the Edge workaround that retained the junction. Those suggest several possible causes; that workaround has not been applied or verified on this installation.
Could maintainers provide a supported recovery procedure for this newer release that preserves saved permissions and chat data, and expose the underlying permission-read or routing exception?
This report omits local usernames, drive targets, chat/tab IDs, credentials, private app content and raw logs. No browser security checks were bypassed during this investigation.
M0inUddin commentedon Oct 1, 2026
Follow-up to my earlier report: built-in browser access is now verified working after repairing the Codex home/marketplace paths and the incomplete Chrome plugin installation, then restarting the desktop app.
Environment remains Windows 11 Pro x64, desktop release
26.928.31416, build12553, Store package26.928.3736.0, and bundled CLI0.159.2.Additional findings
CODEX_HOMEwas unset. The default%USERPROFILE%\.codexwas a directory junction to an existing physical directory on another drive.marketplace openai-bundled is reserved and cannot be added from this source, followed bybundled_plugins_reconcile_failed. Normal plugin listing still showed the bundled plugins, so listing alone did not establish that desktop reconciliation was healthy.26.928.31416was listed as installed/enabled, but its cache lacked.codex-plugin/plugin.json, the browser client/service, installation script, and Windows host executable. Those files existed in the desktop-generated bundled marketplace source.1.26.901.11451was installed and enabled. Its native-messaging registry key existed, but the referenced manifest file was missing.26.818.61809entry with several nonexistent executable/runtime/resource paths.Repair performed
plugin add chrome@openai-bundled --jsonagainst the existing desktop-generated marketplace. This restored the missing files. SHA-256 checks confirmed that the restored manifest, browser client/service, installation script, and host executable matched the bundled source.CODEX_HOMEto the existing physical Codex data directory.marketplaces.openai-bundled.sourceinconfig.tomlto the canonical physical path for that same generated marketplace. The stored Windows path includes the\\?\prefix. A parsed configuration comparison confirmed that no other setting changed.A diagnostic child process using the physical home first cleared the reserved-source rejection but reported a conflict with the old saved marketplace source. After correcting the source,
plugin marketplace addsucceeded withalreadyAdded: true.The original home junction was retained. No data was relocated or deleted, browser permission decisions were not edited, and no native-host installer script or registry rewrite was run manually.
Verified after restart
CODEX_HOME.bundled_plugins_reconcile_completed.correct: true, and its executable exists.26.928.31416host entry using the physical home and existing client/host paths. The old entry remains; it was not manually purged.https://example.com, clicked “Learn more,” and read the destination at IANA. The previous saved-permissions error did not occur.Chrome was closed during verification, so live Chrome extension control is not yet verified. The local application servers were also stopped, so localhost UI testing has not been repeated.
This is a successful recovery for this installation using several related repairs; it does not isolate which change fixed the built-in permission check. It supports investigating junction/physical-path consistency and bundled plugin provisioning together. The app should expose the underlying permission-read error and validate native-host targets and plugin-cache completeness during reconciliation.
Local usernames, actual drive targets, chat/tab identifiers, credentials, private app content, and raw logs are omitted.
ts-951663 commentedon Oct 8, 2026
Additional reproduction on Windows 10 Pro 22H2 (build 19045.6466), Codex Desktop package 26.1002.7124.0, official bundled Chrome/browser components 26.1002.52244.
Verified behavior
cua.getState()successfully lists connected Chrome profiles and existing tabs.cua.getTab(...)fails before returning page content.cua.createBrowserTab(browserId, "https://example.com")fails with the same permission-verification error. This is not limited to the authenticated business site.Exact error for the public-site test:
Checks and recovery attempts
[windows] sandbox = "unelevated".helper_unknown_error: setup refresh had errors. Its log showed an ACL update fornode_repl.exefailing with Windows sharing violationos error 32. Browser inventory now succeeds, while page permission verification still fails; these should not be treated as one proven root cause.cua_repl, but no matching detailed explanation of the current saved-browser-permission failure was found in the logs inspected. No causal conclusion is claimed.Expected: verify saved permission or present an actionable approval prompt. Please provide a supported recovery path and clarify which component is unavailable, rather than only advising a retry later.
No security checks were bypassed. No raw logs, cookies, tokens, personal profile names, private app URLs/IDs, or conversation IDs are attached. Submitted on behalf of the affected user with their explicit authorization.