Ultra slider toggle is disabled for API-authenticated custom model providers

Open 💬 0 comments Opened Jul 26, 2026 by yiteng-guo

What version of the Codex App are you using (From “About Codex” dialog)?

26.721.41059

What subscription do you have?

API

What platform is your computer?

Darwin 25.5.0 arm64 arm

What issue are you seeing?

Description

The Settings → Configuration → Ultra in model picker slider toggle is disabled when Codex uses API authentication with Azure model provider.

<img width="772" height="73" alt="Image" src="https://github.com/user-attachments/assets/d90288f6-1861-487e-bf51-4b5f18f5d14a" />

My provider is an Azure-hosted endpoint serving an OpenAI model that supports the ultra reasoning effort. Therefore, Ultra availability should be determined from the model/provider capabilities rather than ChatGPT account eligibility.

Configuration

model_provider = "azure"
forced_login_method = "api"
model_reasoning_effort = "medium"

[model_providers.azure]
name = "Azure"
base_url = "<redacted OpenAI-compatible endpoint>"
env_key = "<redacted>"

[desktop]
enabled-reasoning-efforts = ["low", "medium", "high", "xhigh", "ultra"]

Separately, it's worth noting that if I edit the config file to add

[desktop]
show-ultra-in-model-picker-slider = true

After I restart the codex app, this config entry will be overwritten to false by codex.

Suspected cause

In the current desktop implementation, the row is shown based on hasModelSupportingUltraReasoningEffort, but the switch is disabled when the ChatGPT user-settings query returns no data. The preference appears to be persisted through the ChatGPT setting model_picker_persists_ultra_effort. API-only authentication does not provide ChatGPT user settings, so this seems to unintentionally couple a local model-picker preference to ChatGPT authentication.

What steps can reproduce the bug?

See above.

What is the expected behavior?

_No response_

Additional information

_No response_

View original on GitHub ↗