[Linux] ChatGPT/Codex desktop reports token revoked after re-login; account lookup succeeds but requests have no access token
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What issue are you seeing?
The ChatGPT/Codex desktop GUI on my Arch Linux laptop remains unusable with a "token revoked" message after repeating the bundled Codex logout/login flow. All models I tried in the desktop app are affected.
The logs show that the app can report an authenticated ChatGPT account, but backend requests subsequently fail with HTTP 401. One sequence changes from hadToken=true to hasToken=false, nullReason=auth_token_missing, and then skipRetryReason=no_token_attached. Resetting the desktop GUI profile did not resolve the problem.
The phrase "token revoked" is the wording I reported from the GUI. The exact backend errors captured in the supplied logs include:
Unauthorized - Access token is missing
{"detail":"Unauthorized"}
Selected complete log lines from the September 10 session, with local file-path prefixes removed:
2026-09-10T16:00:22.085Z warning [electron-fetch-wrapper] desktop_fetch_auth_401 hadToken=true skipRetryReason=null target="GET https://chatgpt.com/backend-api/wham/tasks/list" tokenSource=cached willRetry=true
2026-09-10T16:00:22.401Z warning [AppServerConnection] app_server_connection.auth_status_result authMethod=chatgpt cacheWrite=null hasToken=false nullReason=auth_token_missing refreshToken=true tokenExpiryState=missing
2026-09-10T16:00:23.209Z warning [electron-fetch-wrapper] desktop_fetch_auth_401 hadToken=false skipRetryReason=no_token_attached target="GET https://chatgpt.com/backend-api/settings/user" tokenSource=cached willRetry=false
After launching with a fresh GUI profile, the output also contains both:
[electron-message-handler] [chatgpt-account-lookup] completed accountInfoHttpStatus=undefined accountsHttpStatus=undefined authenticatedAccountPresent=true authMethod=chatgpt failureType=undefined hasEverErrored=false rendererWebContentsId=1 rendererWindowAppearance=primary rendererWindowFocused=false rendererWindowId=1 rendererWindowVisible=true result=succeeded windowType=electron
[electron-fetch-wrapper] desktop_fetch_auth_401 hadToken=false skipRetryReason=no_token_attached target="GET https://chatgpt.com/backend-api/wham/tasks/list" tokenSource=cached willRetry=false
Other failing routes include /wham/usage and /beacons/home?product=codex.
What steps can reproduce the bug?
This is the sequence that continues to reproduce the failure on my affected installation. I have not established a minimal trigger on a clean machine.
-
Use the ChatGPT/Codex Linux desktop app with ChatGPT account authentication. Advanced Account Security is enabled on my account.
-
Repeat the bundled CLI logout/login flow:
/usr/lib/chatgpt/resources/codex logout and /usr/lib/chatgpt/resources/codex login -
Return to the desktop app and try to use a model. The GUI still reports the authentication failure. Trying other models does not resolve it.
-
Quit the desktop app and confirm no
/usr/lib/chatgpt/components remain running. Move~/.config/Codexinto a backup directory, then launchchatgptto create a fresh GUI profile. -
Try the desktop app again. It still fails, and the new output shows successful account lookup alongside backend 401 responses with no access token attached.
What is the expected behavior?
Re-authentication should restore a usable desktop session. Requests that require authentication should receive the current access token, or the app should give a clear, actionable re-authentication error. A fresh GUI profile should not appear authenticated while account-dependent requests fail because an access token is missing.
Additional information
- Observed on September 10, 2026.
- Platform: Arch Linux, x86_64, Hyprland/Wayland; shell: Fish.
- Desktop launcher:
chatgpt; installed application path:/usr/lib/chatgpt/. - The desktop log reports:
[AppServerConnection] Current reported app-server version: currentVersion=0.153.4 hostId=local. - The exact desktop GUI build number and kernel version were not captured in the retrieved diagnostic output.
0.153.4above is the reported app-server version, not a verified GUI build number. - Authentication method in the logs:
chatgpt. - The primary runtime check reports bundle
26.909.12148, targetlinux-x64, andalready-current. - Repeating the bundled logout/login flow, trying other models, restarting the GUI, and creating a fresh GUI profile did not resolve the issue. The old GUI profile was preserved as a backup.
- Plugin-manifest warnings also appear in the logs, including an overlength default prompt, but I have no evidence that they cause the authentication failure.
Potentially related reports: #40815 (missing access token despite account authentication on macOS) and #40611 (desktop authentication loop after enabling Advanced Account Security on macOS). This report adds the Linux observations and the fresh-GUI-profile result. I have not confirmed whether the root cause is the same or whether Advanced Account Security is causal.
Only selected diagnostic excerpts are included. Credentials, OAuth login URLs, account identifiers, and personal filesystem paths are omitted.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the bundled entry points /usr/lib/chatgpt/resources/codex and the chatgpt launcher, then trace the AppServerConnection and electron-fetch-wrapper log paths involved in account lookup and authenticated requests. Compare the Linux behavior with related issues #40815 and #40611. Done means re-authentication restores an access token for backend requests or produces a clear, actionable re-authentication error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, linux, rust
- Domain
- api, authentication, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100