[Android] "Authorize this phone" loops forever after ChatGPT app reinstall — web auth completes, app never consumes the approval, host receives zero pairing claims

Open 💬 3 comments Opened Jul 31, 2026 by Zetarcos
💡 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)?

codex-cli 0.146.0 on MAC and 1.2026.209 (12) Android App

What subscription do you have?

Free

What platform is your computer?

MAC for codex running remote-control and Android for ChatGPT app

What issue are you seeing?

[Android] "Authorize this phone" loops forever after ChatGPT app reinstall — web auth completes, app never consumes the approval, host receives zero pairing claims

Environment

  • Phone: Android, ChatGPT app (installed fresh today, 2026-07-30, latest Play Store build)
  • Host: macOS 26.5.1 (Apple Silicon M4), Codex CLI 0.146.0 (standalone), codex remote-control daemon, auth_mode = chatgpt, single personal account (no workspace/SSO)
  • Host connectivity: remote-control websocket to wss://chatgpt.com/backend-api/wham/remote/control/server shows Connected throughout (server_id srv_e_6a6b..., registered as host name)

Summary

After uninstalling and reinstalling the ChatGPT Android app (done to fix the Remote entry missing from the sidebar), the device-authorization step loops indefinitely:

  1. ChatGPT app → Settings → Remote control → screen says "Allow this phone to access ChatGPT on your computer?" with an Authorize this phone button.
  2. Tapping it opens the browser → OpenAI sign-in → authorization dialog (shows the correct, matching account).
  3. Approving bounces back into the ChatGPT app — landing on the same "Authorize this phone" screen. No error is ever shown.
  4. Repeat forever. The pairing-code entry step is never reached; Settings → Remote control shows disconnected, no paired connections.

Before the reinstall, remote view was reachable on this phone via push notification, so the account/host/feature were provably working.

What the host logs prove

Across ~10 authorize attempts over ~2.5 hours, the host's app-server logs show remoteControl/pairing/start for each locally minted code and zero pairing-claim / device-connect events — the phone's approval never produces any backend interaction with the host. The remote-control websocket stayed Connected the whole time.

Ruled out (each verified, in order)

  • Stale mobile app: full uninstall + fresh install (this is what started the loop).
  • Server-side device/session state: chatgpt.com → Security → Log out of all devices, fresh sign-ins on both phone and host (codex login). Loop unchanged.
  • Host daemon state: codex remote-control stop/start cycles, all stray app-server processes killed, clean single daemon-managed server verified via ps + socket inspection. Loop unchanged.
  • Android App Links: the tt.chatgpt.com domain was found disabled in Open-by-default supported links (plausibly reinstall fallout) and was manually enabled. Loop unchanged — and the flow does return to the app, so the callback link itself works.
  • Stale app UI state: force-quit + reopen after authorize. Loop unchanged.
  • Phone reboot: done. Notably, the reboot restored the missing Remote entry in the app sidebar (the original symptom that prompted the reinstall) — but the authorize loop is unchanged, from both the sidebar Remote flow and the Settings → Remote control flow. The two symptoms evidently have different causes.
  • Clock skew: phone date/time on automatic.
  • Fresh pairing codes minted on the host for every attempt (all unused — flow never reaches code entry).

Separate host-side bug found while debugging (worth its own look)

When the remote-control daemon's socket is down, running any codex CLI command (including codex remote-control stop/pair) triggers the CLI's auto-boot fallback, which pkill -9s existing app-servers and boots a generic (non-daemon-managed) app-server on the control socket. Subsequent codex remote-control start then fails with:

Error: app server is running but is not managed by codex app-server daemon

…so the natural recovery commands re-break the daemon in a loop. Workaround found: kill all codex.*app-server processes, then run codex remote-control start immediately, before any other codex command. (CODEX_SSH_SKIP_APP_SERVER_BOOT=true also defuses the auto-boot.)

Expected

Approving the browser auth dialog should complete device authorization and advance the app to the pairing-code step (or paired state).

Actual

App returns to "Authorize this phone" with no error; backend never registers the device; host never sees a claim.

What steps can reproduce the bug?

After uninstalling and reinstalling the ChatGPT Android app (done to fix the Remote entry missing from the sidebar), the device-authorization step loops indefinitely:

  1. ChatGPT app → Settings → Remote control → screen says "Allow this phone to access ChatGPT on your computer?" with an Authorize this phone button.
  2. Tapping it opens the browser → OpenAI sign-in → authorization dialog (shows the correct, matching account).
  3. Approving bounces back into the ChatGPT app — landing on the same "Authorize this phone" screen. No error is ever shown.
  4. Repeat forever. The pairing-code entry step is never reached; Settings → Remote control shows disconnected, no paired connections.

What is the expected behavior?

pairing completes and shows the connected remote computer on the remote section of the ChatGPT app.

this was working but while trying to debug why the Remote selection on the ChatGPT app side bar was not showing we removed the connection and then could not recover and re-pair.

Additional information

_No response_

View original on GitHub ↗

3 Comments

github-actions[bot] contributor · 28 days ago

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

  • #35855

Powered by Codex Action

Zetarcos · 27 days ago
Potential duplicates detected. Please review them and close your issue if it is a duplicate. * Android Remote Control pairing fails with Windows Codex 26.721.41059 / ChatGPT Android 1.2026.202 (25) #35855 _Powered by Codex Action_

This is similar, possibly related, but the symptoms, systems and versions seem different.

Zetarcos · 27 days ago

Update: I was able to Pair my Windows machine Codex Desktop App 26.721.81911 jul 28 via QR code the the same phone/install/ver of the android app that failed with the Mac CLI version. This after failing multiple times using the Codex CLI app on my Mac via pairing code. Will re-attempt with Mac today.

Ok now after Pairing my windows machine successfully I re-attempted to pair the Mac and now it worked easily. I am now paired and not bitten by this bug so I can continue working.

One item to note. My Mac CLI app of codex never asked to enable MFA but the windows Desktop Codex did ask to enable MFA prior to the successful pairing.

Anyway I cannot repro the bug above any longer.

Side Note: The original bug I was trying debug when I lost the ability to Pair was an issue where the "Remote" side panel option was not appearing after pairing completed. There was a workaround that the notification panel showed remote connected and clicking that notification would bring up the Remote interface page but this was not robust. I used ChatGPT to try and debug the issue and it led me through so many repair attempts maybe the local/server state got into an undefined condidtion. I don't see a bug about missing Remote on the Github android app.