Skip to content

ChatGPT Android Remote creates usable but hidden threads with model_provider=openai instead of host config provider #31370

Open

Description

@SHAREN

What issue are you seeing?

When I create a new Codex thread from the official ChatGPT Android app using Codex Remote against my connected Windows Codex Desktop host, the thread is created and can run normally, but it does not appear in the Codex thread/project lists on desktop or mobile.

The thread is not deleted or failed. It exists locally, can be addressed by id, and the model responds. The problem is visibility/indexing after creation through the Android remote flow.

This repro uses the official ChatGPT Android app / Codex Remote flow, not a third-party remote client.

Environment

  • Host OS: Windows x64
  • Codex Desktop package: OpenAI.Codex_26.623.13972.0_x64__2p2nqsd0c76g0
  • Codex Desktop version: 26.623.13972.0
  • Codex CLI: codex-cli 0.132.0
  • Mobile client: official ChatGPT Android app
  • Auth mode: ChatGPT auth
  • User-level Codex config contains:
model = "gpt-5.5"
model_provider = "codex-lb"
model_reasoning_effort = "xhigh"

codex-lb is a custom OpenAI-compatible Responses provider configured in ~/.codex/config.toml on the host.

Steps to reproduce

  1. Pair ChatGPT Android with a Windows Codex Desktop host using Codex Remote.
  2. On the Android app, create a new Codex thread in a host project.
  3. Send a simple prompt, for example: reply exactly ok.
  4. Wait for the assistant response.
  5. Check the Codex Desktop/mobile thread list for the new thread.
  6. Inspect local Codex state for the thread id.

Example observed Android-created thread id:

019f37ee-0c2e-7632-b2e9-cf991cc81d73

Expected behavior

A thread created from ChatGPT Android Remote should be created/indexed the same way as a thread created directly on the connected host:

  • it should appear in the Codex Desktop/mobile thread/project lists;
  • it should use the connected host's effective config, including model_provider = "codex-lb";
  • it should get the same local metadata/index/catalog entries as a host-created thread.

This matches the documented Remote behavior that remote access uses the connected host's projects, threads, credentials, permissions, plugins, browser setup, and local tools.

Actual behavior

The Android-created thread is usable by id and receives a response, but it is hidden from the normal Codex thread/project list.

Local inspection showed a metadata mismatch between host-created threads and Android-created threads:

  • host-created threads use the configured provider, model_provider=codex-lb;
  • Android-created remote threads are created/recorded as model_provider=openai;
  • the Android-created thread also lacked the local thread visibility metadata/indexing expected by the desktop list path, such as the normal thread_source / session index/catalog state.

After locally normalizing the Android-created thread metadata to match the host defaults and adding the missing local visibility/index state, the same thread becomes visible in Codex Desktop. That suggests the underlying thread data is valid and the issue is in remote thread creation/indexing or provider/config resolution, not model execution.

Why this looks like a bug

The Android remote path appears to create a local thread through a different metadata/provider path than the host desktop path. It seems to fall back to the built-in openai provider instead of resolving the connected host's effective ~/.codex/config.toml provider.

This also makes the issue hard to diagnose from the UI: the task succeeds, but the resulting thread is hidden.

Related reports

This may be related to the broader class of Codex Remote / host-state visibility issues:

Workaround

A local watchdog can detect new Android-created threads and normalize their local metadata/provider/index entries to the host default provider. This makes the hidden thread visible, but it is only a workaround. The official remote-create path should create/index the thread correctly from the start.

Activity

  1. added
    bugSomething isn't working
    appIssues related to the Codex desktop app
    windows-osIssues related to Codex on Windows systems
    custom-modelIssues related to custom model providers (including local models)
    sessionIssues involving session (thread) management, resuming, forking, naming, archiving
    configIssues involving config.toml, config keys, config merging, or config updates
    on Jul 7, 2026
  2. ropepop commented on Aug 10, 2026

    @ropepop

    Same setup here: macOS Codex app with a custom provider. Desktop-created threads render fully (expandable reasoning summary + tool calls). Threads created from mobile remote behave as if the custom-provider config was not carried over — the model identity and middle-step rendering diverge from the desktop side, and the custom-provider thread content is not presented consistently in the remote UI.

    This matches the model_provider=openai override described here. Related: #26907 / #32553 (remote threads get reduced tool manifests), #37598 (remote renders only first prompt + thinking cell), lidge-jun/opencodex#45 (expandable reasoning trace for routed models).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingconfigIssues involving config.toml, config keys, config merging, or config updatescustom-modelIssues related to custom model providers (including local models)remotesessionIssues involving session (thread) management, resuming, forking, naming, archivingwindows-osIssues related to Codex on Windows systems

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions