Codex remote shows Auto review as permissions (matching the Windows app) then switches to Custom (config.toml) after hitting send on the chat
Resolved 💬 3 comments Opened May 30, 2026 by kendonB Closed Aug 4, 2026
💡 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 (From “About Codex” dialog)?
26.527.30818
What subscription do you have?
Pro
What platform is your computer?
Win 11 x64
What issue are you seeing?
Codex remote shows Auto review as permissions (matching the Windows app) then switches to Custom (config.toml) after hitting send on the chat
What steps can reproduce the bug?
New project in the Windows App (WSL mode), new chat in the Windows App with Auto Review. Open the Android app, new chat (shows auto review), hit send, shows Custom (config.toml).
What is the expected behavior?
Stays on Auto review
Additional information
_No response_
3 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Codex Mobile Remote Config Bug Report
Upstream target: https://github.com/openai/codex/issues/25186
Date: 2026-06-01
Summary
On Windows Codex Desktop, mobile remote-control thread creation can ignore the user's resolved
config.tomldefaults and instead appear to use default Codex settings. The Desktop app itself does readconfig.tomlon the ordinary composer path, so this looks specific to the mobile/remote-control or delegated thread creation path.Observed user-facing symptoms:
config.tomlmodel/reasoning/permission settings.Environment
OpenAI.Codex_26.527.3686.0_x64__2p2nqsd0c76g0.openai-codex-electronversion26.527.31326, build number3390.codex.exe app-server --analytics-default-enabled.Code-Level Evidence
The normal Desktop composer path reads resolved config before starting a thread:
webview/assets/composer-Beu4UAMC.jscallsread-config-for-host, normalizes the result, and passes it intostart-conversation.webview/assets/use-model-settings-DhE-8qP1.jsreads model settings viaread-config-for-host.webview/assets/use-permissions-mode-DHT7uJLN.jsreads config and host requirements before deriving permissions.The mobile setup flow does not use those hooks:
webview/assets/codex-mobile-setup-flow-BJylBH5W.jshandles remote-control enrollment and toggleslocal_remote_control_enabled.config.tomlor use the normal composer model/permissions path.The delegated/mobile-adjacent thread creation helper contains an explicit fallback that can override config-derived values:
This appears in
webview/assets/app-server-dynamic-tools-ChwcT_7g.js. If the mobile/remote-control path sends a partial model/reasoning selection, or if this helper is used for mobile-created work, it can synthesize an explicitcollaborationModewith hardcoded defaults instead of letting the resolvedconfig.tomlvalues win.Expected Behavior
For mobile-created remote-control threads, Desktop should use the same effective start parameters as the normal Desktop composer:
read-config-for-host.collaborationModeunset or populate it from resolved config, not hardcoded defaults.Actual Behavior
Mobile-created threads appear to use default model/reasoning/permission behavior even when the host
config.tomlhas non-default values. The installed app bundle contains a likely source of this behavior: hardcoded fallback values ofgpt-5.5andmediumin the thread creation helper.UI Note
The remote-control settings/status area also has a discoverability issue: a status indicator looks like a button, but pressing it does not perform an action. Either the indicator should be styled as passive status, or it should navigate to the relevant remote-control connection/settings surface.
Suggested Fix
Change the mobile/remote-control thread creation path to share the Desktop composer start-params builder, or at minimum avoid synthesizing hardcoded default
collaborationModevalues. Missing mobile model/reasoning selections should mean "inherit resolved host config", not "force defaults".fixed