Codex Desktop macOS: Voice input, Realtime voice, Reasoning Effort, and Experimental Features missing — Statsig feature gates incorrectly disabled

Resolved 💬 1 comment Opened Apr 8, 2026 by UnidentifiedRaccoon Closed Apr 8, 2026

Description

I'm experiencing missing features in the Codex Desktop app on my Mac. Specifically:

  • Voice Input — Ctrl+M does nothing, no microphone button in the thread composer
  • Reasoning Effort selector — not available in model picker or anywhere else
  • Experimental Features section — completely absent from Settings → General (the "Realtime voice" toggle is not shown)
  • /realtime slash command — not available

These features ARE available on another device under the same account, which confirms this is not an account-level or subscription restriction.

Environment

  • Codex version: 26.325.31654 (build 1272)
  • macOS: Darwin 23.6.0 (Apple Silicon)
  • Subscription: ChatGPT Plus

What I've already tried (all unsuccessful):

  1. Full uninstall + reinstall (including ~/Library/Application Support/Codex, Caches, Preferences, Keychain entries for "Codex Safe Storage", HTTPStorages, Saved Application State)
  2. System reboot between uninstall and reinstall
  3. Proper installation into /Applications (was previously running via App Translocation from DMG — fixed this)
  4. Removing macOS quarantine flag (xattr -cr /Applications/Codex.app)
  5. Verified microphone permission is granted (auth_value=2 in TCC database)
  6. Multiple clean installs (4 attempts total)

Technical findings

Statsig feature flags

The app receives 51 feature gates from the Statsig service. 14 gates are set to false (disabled). On the other device where all features work, presumably more gates are enabled.

Disabled gate IDs: 571945504, 1230000863, 1547407102, 2239678350, 2302560359, 2357796820, 2392211390, 2761175068, 2761268526, 2777274066, 2929104770, 3066662636, 3189729426, 3902016271

App logs

  • experimentalFeature/list and experimentalFeature/enablement/set are called during startup, but the experimental features list appears to be empty in the UI.
  • Log warning: load_remote_control_unauthed: "Sign in to ChatGPT in Codex Desktop to load remote control environments" — appears even when signed in.
  • Patching the Statsig cache in Local Storage (leveldb) to flip false gates to true had no effect — the app re-fetches flags from the Statsig server on each launch and overwrites the cache.

Source code analysis

In the app's bundled JS (general-settings-BDzOb98k.js), the "Realtime voice" feature is defined under settings.general.experimentalFeatures.threadRealtime and should appear in Settings → General. The entire Experimental Features section is gated — if the feature list from the server is empty, the section is not rendered.

Expected behavior

Voice input (Ctrl+M), Realtime voice mode, Reasoning Effort selector, and Experimental Features should be available — as they are on another device with the same account.

Actual behavior

All of the above features are missing. The Statsig feature flag evaluation for this device returns 14 gates as disabled, which hides these features from the UI.

Request

Could you please investigate the Statsig rollout configuration? It appears the feature flag evaluation is incorrectly disabling features for this device that should be available based on my subscription plan.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗