Android ChatGPT Codex pairing stuck after account selection, desktop session not recognized

Open 💬 2 comments Opened May 17, 2026 by Go2-M
💡 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)?

0.130.0

What subscription do you have?

plus

What platform is your computer?

Wibdows11/ Android16

What issue are you seeing?

Title:
Android ChatGPT Codex pairing stuck after account selection, desktop session not recognized

Body:

Environment:

  • Android ChatGPT app with Codex menu enabled
  • Desktop Codex app connected to same GitHub repo
  • Same OpenAI account intended on both devices

Problem:
When attempting to connect Android ChatGPT Codex to Desktop Codex, the mobile app displayed an account selection screen with two account choices.

After selecting the account currently used by ChatGPT/Codex, the app became stuck on:

"Please follow the instructions in the desktop app"

The desktop Codex app never recognized the pairing request.

What steps can reproduce the bug?

Additional symptoms:

  • Restarting both devices/apps did not help
  • Desktop Codex conversation related to this issue became unrecoverable/unresumable afterward
  • No visible UI exists to reset or redo the pairing/account selection
  • Mobile app appears permanently stuck in pairing state

What was already tried:

  • Restart desktop Codex
  • Restart Android ChatGPT app
  • Logout/login attempts
  • Browser/OpenAI session cleanup

What is the expected behavior?

Suspected issue:
Possible broken pairing token / relay session binding after initial account selection.
There may also be no recovery flow for incorrect initial account selection.

Request:
Please provide:

  • A way to reset mobile/Desktop Codex pairing
  • A way to re-run account selection
  • Better recovery UI for failed pairing states

Additional information

_No response_

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 3 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #23049
  • #22733
  • #22715
  • #23112
  • #23078

Powered by Codex Action

motilin · 1 month ago

I reproduced a closely related failure on 2026-07-17, using the ChatGPT Android app with a direct Linux Codex CLI host rather than the Windows desktop app in the original report. I collected synchronized Android activity and Codex remote-control state during the attempt.

Environment

  • ChatGPT Android 1.2026.188
  • Android 16
  • Official standalone Codex 0.144.5 on Linux
  • Same ChatGPT account on the phone and host
  • Fresh manual pairing code, entered and accepted before expiry

Observed sequence (UTC)

  1. 08:23:31: Codex issued a fresh pairing artifact; the daemon reported connected, and the environment had zero bound clients.
  2. The Android app accepted the manual code and opened OpenAI authorization.
  3. 08:25:29: Android delivered the authorization callback to ChatGPT's Auth0 RedirectActivity, which forwarded to AuthenticationActivity; ChatGPT MainActivity then resumed.
  4. The app returned to the pairing scanner instead of showing the Linux host.
  5. 08:29:13, while the artifact was still valid, authenticated Codex queries returned:
  • remoteControl/pairing/status: claimed=false
  • remoteControl/client/list: zero clients
  • no RPC or HTTP error on these decisive post-callback requests

There was one transient client-list HTTP 503 shortly after the callback, but a later successful query still returned an empty list, so the result does not depend on that transient error.

Failure boundary

This reproduction rules out an expired or mistyped code, an offline host daemon, a lost Android deep link, an account mismatch, or an existing bound-client conflict. The failure appears to occur after ChatGPT Android handles the authorization callback but before the remote-control claim/binding service commits the pairing.

Expected behavior: after successful authorization, the artifact should become claimed and the Android device should appear in the environment client list. If direct Linux CLI hosts are intentionally unsupported, the app should show an explicit unsupported-platform result rather than silently returning to the scanner.

I submitted the full private diagnostic packet to OpenAI Support. This public comment intentionally excludes account, environment, server, installation, pairing, and request identifiers, as well as pairing codes and authentication data.