Linear connector OAuth reauthentication loops after successful authorization
What version of Codex CLI is running?
codex-cli 0.146.1
What subscription do you have?
ChatGPT sign-in; the exact subscription is not exposed by codex login status.
Which model were you using?
gpt-5.6-sol
What platform is your computer?
Darwin 25.5.0 arm64 arm (macOS 26.5.2)
What terminal emulator and version are you using?
iTerm2 3.6.11, no multiplexer.
Codex doctor report
The full redacted report was uploaded through /feedback with thread ID 019fd561-adb7-7153-b48f-4563ec97b2d0.
Relevant checks:
{
"codexVersion": "0.146.1",
"auth.credentials": {
"status": "ok",
"summary": "auth is configured",
"stored ChatGPT tokens": "true",
"stored auth mode": "chatgpt"
},
"installation": {
"status": "ok",
"summary": "installation looks consistent"
},
"runtime.provenance": {
"status": "ok",
"platform": "macos-aarch64",
"version": "0.146.1"
}
}
The doctor network checks were run from a network-restricted diagnostic sandbox, so those reachability results are not evidence for this connector failure.
What issue are you seeing?
The bundled Linear connector enters an OAuth reauthentication loop even though authentication is reported as accepted.
A read-only linear_get_issue call for AID-106 remains pending and then returns:
Authentication for Linear was requested and accepted. Retry this tool call now.
The tool result has isError=true, auth_reason=reauthentication_required, and identifies the bundled Linear connector. Retrying the same call after the accepted authentication produces the identical result. The accepted authorization therefore does not persist, and following the retry instruction creates an infinite loop.
What steps can reproduce the bug?
- Update Codex CLI to
0.146.1. - Disconnect and reconnect the bundled Linear app, completing OAuth successfully.
- Restart Codex.
- Invoke the bundled Linear connector's read-only
get_issueaction with issue identifierAID-106. - Complete the authentication request when prompted.
- Retry the same tool call as instructed.
Observed twice on 2026-08-06:
- First call remained pending for about 100 seconds, then returned
reauthentication_requiredwhile saying authentication was accepted. - The single retry remained pending again and returned the same authentication error.
Diagnostics and session logs: thread 019fd561-adb7-7153-b48f-4563ec97b2d0.
What is the expected behavior?
After OAuth is accepted, the retry should use the persisted authorization and return the requested Linear issue.
Additional information
This was tested only with a read-only action. No Linear mutations were attempted. Searches for open and closed issues using the exact error and related Linear/OAuth terms found no duplicate before filing.
4 Comments
I had the same issue this past week. It was disrupting my workflow.
I resolved this on my end. I had to find the authorisation buried within Linear's "Settings" > "Administration" > "Applications" > "Codex", purge it, then re-create it by installing the Connector from the OpenAI side.
This is still not being handled properly from OpenAI's side since they removed Apps , as far as I can tell. So despite being resolvable, this is still a bug for those who previously added Linear as a connected app.
This should probably get the MCP label too, for the MCP connector tied to the authorisation.
Reproducing this on 2026-08-20 with the Codex Cloud ↔ Linear agent flow (not just CLI tool calls).
Observed behavior:
@Codexmentions.@Codexagain immediately returnsLink your ChatGPT Codex account to continue/To use Codex, link your ChatGPT account, creating the same authentication loop.Environment for this reproduction: ChatGPT/Codex web flow in Chrome on Android; Linear web/mobile UI. No private repository names, tokens, or credentials are included here.
I also saw the workaround reported above (Linear Settings → Administration → Applications → Codex, remove that workspace authorization, then reinstall the connector from the OpenAI side). I have not applied that destructive reset yet, so this comment is reporting the reproducible loop rather than claiming the workaround is universal.
The important distinction in this reproduction is that the workspace agent installation succeeds and the agent receives the mention; the failure is persistence/recognition of the user-level ChatGPT ↔ Codex ↔ Linear authorization after the callback.
Additional reproduction after a clean reinstall of the Codex Linear app:
To use Codex, link your ChatGPT account. Then tag @Codex again...andLink your ChatGPT Codex account to continue.So a full revoke + reinstall from the OpenAI side did not clear the account-link loop in this case. This appears to be a persisted identity/link-state issue beyond the workspace app installation itself.