[App] Allow custom presets in the model picker power slider
What version of the Codex App are you using?
Codex App 26.707.51957
What platform is your computer?
macOS arm64
What feature would you like?
Allow users to define the presets shown in the Codex App's Advanced model picker / power slider.
The app already persists related desktop settings in ~/.codex/config.toml, for example:
[desktop]
enabled-reasoning-efforts = ["low", "medium", "high", "xhigh", "ultra", "max"]
show-ultra-in-model-picker-slider = true
It also supports global defaults such as:
model = "gpt-5.6-sol"
model_reasoning_effort = "high"
However, these settings do not let a user choose which model + reasoning combinations appear as slider stops. The current slider uses a fixed curated sequence.
I would like to configure my own ordered list, for example:
[desktop]
model-picker-presets = [
{ model = "gpt-5.6-terra", reasoning_effort = "high", label = "Terra High" },
{ model = "gpt-5.6-sol", reasoning_effort = "high", label = "Sol High" },
{ model = "gpt-5.6-sol", reasoning_effort = "xhigh", label = "Sol Extra High" },
{ model = "gpt-5.6-sol", reasoning_effort = "max", label = "Sol Max" },
{ model = "gpt-5.6-sol", reasoning_effort = "ultra", label = "Sol Ultra" },
]
The exact schema is only illustrative.
Why is this useful?
Different users have different recurring workflows and cost/latency preferences. A fixed slider sequence forces users to open the full picker repeatedly or accept presets they do not use.
Custom presets would make the shortcut genuinely useful while preserving the existing defaults for users who do not configure anything.
Expected behavior
- Keep the existing curated presets as the default.
- Allow users to override the ordered slider stops in
config.tomlor Settings. - Each preset should support at least
modelandreasoning_effort. - Optional labels would improve clarity.
- Invalid or unavailable presets should be ignored with a visible warning rather than breaking the picker.
- The selected preset should stay synchronized with the full model/reasoning controls.
Related issue
#31968 discusses the current slider's fixed sequence and its treatment of Max and Ultra, but it does not request user-defined presets.
3 Comments
Adding a complementary UX proposal to this request, based on the current Codex App selector rather than opening a duplicate issue.
Two-level picker
Above the existing detailed Model / Effort / Speed controls, add a Choose by task row of preset chips, for example:
The detailed controls should remain authoritative. Editing Model, Effort, or Speed manually should select a neutral Custom state without silently changing a saved preset.
Per-model effort controls
The compact selector should derive its choices from the model catalog /
model/listresponse instead of a fixed Sol-heavy sequence. In Codex App 26.721.81911, Sol, Terra, and Luna are available, but the compact power slider still omits Luna and most Terra combinations. Each model should expose its own supported effort bar and remember the most recently chosen effort for that model.Suggested preset fields and behavior
Alongside the issue's proposed
model,reasoning_effort, andlabel, it would be useful to support optionalservice_tier/ Speed and the current Ultra state. Saved presets should support rename, edit, reorder, and delete.Acceptance details:
This combines the fast task-oriented entry point used by tools such as Cursor/Zed with the per-model effort controls used by VS Code/Copilot, while preserving Codex's existing detailed selector.
Strong +1. Within the GPT-5.6 family alone, 3 models × 6 effort levels × 2 speeds creates 36 possible combinations. In practice, I use only 3–5 repeatedly, such as:
I want to configure these as named presets and select any of them with one click.
Each preset should bundle model, reasoning effort, and speed/service tier. The presets should appear directly in the picker, while the detailed controls remain available for occasional custom combinations.
also, I'd love to be able to set custom shortcuts for each like