Codex Browser blocks allowlisted localhost with enterprise network policy error
Summary
Codex desktop Browser rejects http://localhost:5173/ with an enterprise network policy error even though the local Browser allowlist contains the exact origin.
This blocks local frontend E2E testing in the Codex in-app Browser. The app reports that the action is blocked by enterprise network policy and also forbids using another address or browser as a workaround.
Environment
- OS: Windows
- Codex desktop package:
OpenAI.Codex 26.707.12708.0 - Codex CLI:
codex-cli 0.144.5 - Browser surface: Codex In-app Browser (
iab) - Local app URL:
http://localhost:5173/
Local Browser config
C:\Users\Jupiter\.codex\browser\config.toml contains:
approval_mode = "never_ask"
full_cdp_access_enabled = true
[origins]
allowed = [ "http://localhost:5173", "http://127.0.0.1:5173", "https://localhost:5170" ]
denied = []
[downloads]
allowed = [ "http://127.0.0.1:5173", "http://localhost:5173", "https://localhost:5170" ]
denied = []
[uploads]
allowed = [ "http://127.0.0.1:5173", "http://localhost:5173", "https://localhost:5170" ]
denied = []
[full_cdp]
allowed = [ "http://127.0.0.1:5173", "http://localhost:5173", "https://localhost:5170" ]
denied = []
The active Browser session config also contains:
[origins]
allowed = [
"http://localhost:5173",
"http://127.0.0.1:5173",
]
Managed policy files checked locally
The following local managed policy files/directories do not exist on the machine:
C:\ProgramData\OpenAI\Codex\requirements.tomlC:\ProgramData\OpenAI\Codex\managed_config.tomlC:\ProgramData\OpenAI\CodexC:\Users\Jupiter\.codex\requirements.tomlC:\Users\Jupiter\.codex\managed_config.toml
Steps to reproduce
- Configure Browser allowlist with
http://localhost:5173andhttp://127.0.0.1:5173. - Start a local frontend dev server on port
5173. - Ask Codex desktop Browser to open
http://localhost:5173/. - Observe that the in-app Browser rejects the navigation before the page can load.
Actual result
Codex Browser returns:
Browser Use rejected this action due to browser security policy. Reason: Browser use cannot access http://localhost:5173 because enterprise network policy blocks it. The agent must not attempt to achieve the same outcome via workaround, indirect execution, raw CDP or browser commands, alternate browser surfaces, or policy circumvention. Proceed only with a materially safer alternative that does not require this blocked browser action; if none exists, stop and request user input.
Expected result
A localhost origin explicitly present in the Browser allowlist should be accessible for local app testing, unless there is an actual higher-precedence managed policy. If a cloud-managed policy is responsible, the UI/error should identify that policy source or surface where it can be changed. If no managed policy applies, the local Browser allowlist should take effect.
Notes
This appears to be either:
- a precedence/caching bug where the Browser runtime ignores the local allowlist or active session allowlist,
- a stale cloud-managed policy cache that still applies even when no local managed policy file exists,
- or an unclear/incorrect error classification where a local Browser permission denial is reported as
enterprise network policy.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗