#โš ๏ธ Model login expired on the gateway for openai-codex

1 messages ยท Page 1 of 1 (latest)

stuck vessel
#

The error "โš ๏ธ Model login expired on the gateway for openai-codex. Re-auth with openclaw models auth login --provider openai-codex, then try again." appears. After following the prompt to execute the "openclaw models auth login --provider openai-codex" command and restarting the Gateway, the same error message still occurs when sending a message.
OpenClaw Version: 2026.5.12

orchid duneBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> โœ… Mark Solution

quiet frostBOT
# stuck vessel The error "โš ๏ธ Model login expired on the gateway for openai-codex. Re-auth with ...

For 2026.5.12, that re-auth command should refresh the OpenAI Codex OAuth profile, so if the gateway still says expired Iโ€™d check whether it is using a different/old profile.

Please run these on the gateway host:

openclaw models status --probe --probe-provider openai-codex
openclaw models auth order get --provider openai-codex

What to look for:

  • If the probe shows expired / invalid_expires, run:
openclaw models auth login --provider openai-codex --set-default
openclaw gateway restart
openclaw models status --probe --probe-provider openai-codex
quiet frostBOT
# stuck vessel The error "โš ๏ธ Model login expired on the gateway for openai-codex. Re-auth with ...
  • If the probe shows excluded_by_auth_order, or auth order get shows an override pointing at an older profile, clear it:
openclaw models auth order clear --provider openai-codex
openclaw gateway restart

Docs for the relevant commands:
https://docs.openclaw.ai/cli/models
https://docs.openclaw.ai/concepts/oauth
https://docs.openclaw.ai/gateway/authentication

If it still repeats after that, please paste the redacted output of:

openclaw models status --probe --probe-provider openai-codex
openclaw status --all
quiet frostBOT
stuck vessel
#
Auth probes
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Model                โ”‚ Profile                                                  โ”‚ Status                                                  โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ openai-codex/gpt-5.4 โ”‚ openai-codex:default (oauth)                             โ”‚ unknown ยท -                                             โ”‚
โ”‚                      โ”‚                                                          โ”‚ โ†ณ Excluded by auth.order for this provider.             โ”‚
โ”‚ openai-codex/gpt-5.4 โ”‚ openai-codex:rumsgr@gmail.com (rumsgr@gmail.com) (oauth) โ”‚ ok ยท 9.6s                                               โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

้€™ๆ˜ฏๅŸท่กŒ"openclaw models status --probe --probe-provider openai-codex"ๅพ—ๅˆฐ็š„ๅ›ž่ฆ†ใ€‚

quiet frostBOT
# stuck vessel ``` Auth probes โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€...

้€™ๅ€‹็ตๆžœไปฃ่กจ๏ผšopenai-codex:rumsgr@gmail.com ้€™ๅ€‹ profile ๆ˜ฏๆญฃๅธธ็š„๏ผŒopenai-codex:default ่ขซ็›ฎๅ‰็š„ auth.order ๆŽ’้™ค๏ผŒๆ‰€ไปฅ CLI ็ซฏ็š„ OpenAI Codex OAuth ๆœฌ่บซ็œ‹่ตทไพ†ๅทฒ็ถ“ OKใ€‚

็พๅœจๆฏ”่ผƒๅƒๆ˜ฏใ€Œ้€™ๅ€‹ Discord thread/session ้‚„้ปๅœจ่ˆŠ็š„ openai-codex:default profileใ€ใ€‚OpenClaw ๆœƒๆŠŠ auth profile per-session pin ่ตทไพ†๏ผŒๆ‰€ไปฅ้‡ๆ–ฐ็™ปๅ…ฅๅพŒ่ˆŠ session ๅฏ่ƒฝ้‚„ๅœจ็”จ่ˆŠ profileใ€‚

่ซ‹ๅœจ้€™ๅ€‹ Discord thread ่ฃก่ฉฆ๏ผš

/model openai-codex/gpt-5.4@openai-codex:rumsgr@gmail.com

็„ถๅพŒๅ†็™ผไธ€ๅ‰‡ๆ™ฎ้€š่จŠๆฏๆธฌ่ฉฆใ€‚

ๅฆ‚ๆžœไฝ ไธๆƒณๆŒ‡ๅฎš profile๏ผŒไนŸๅฏไปฅๆธ…ๆމ session pin๏ผš

/model openai-codex/gpt-5.4
quiet frostBOT
# stuck vessel ``` Auth probes โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€...

ๆˆ–้–‹ๆ–ฐ session๏ผš

/reset

ๅ†ๆธฌไธ€ๆฌกใ€‚

ๅฆ‚ๆžœ้‚„ๆ˜ฏๅŒๆจฃ้Œฏ่ชค๏ผŒ่ซ‹่ฒผ้€™ๅ€‹ thread ่ฃก็š„๏ผš

/model status

ๅฎƒๆœƒ้กฏ็คบ็›ฎๅ‰้€™ๅ€‹่Šๅคฉ session ๅฏฆ้š›้ธๅˆฐๅ“ชๅ€‹ agent / auth profileใ€‚็›ธ้—œ docs๏ผšhttps://docs.openclaw.ai/gateway/authentication https://docs.openclaw.ai/concepts/model-failover

#

้€™ๅ€‹็‹€ๆ…‹็œ‹่ตทไพ†ๆ˜ฏๅฅฝ็š„๏ผš็›ฎๅ‰ openai provider ๅทฒ็ถ“้€้Ž Codex runtime ไฝฟ็”จ openai-codex:rumsgr@gmail.com๏ผŒ่€Œไธ” token ้‚„ๆœ‰ 10dใ€‚

ไธ‹ไธ€ๆญฅๆˆ‘ๆœƒๆ”นๆธฌ็›ฎๅ‰ๅˆ—ๅ‡บไพ†็š„ model ref๏ผŒไธ่ฆๅ†็”จ่ˆŠ็š„ openai-codex/gpt-5.4๏ผš

/model openai/gpt-5.5

ๆˆ–๏ผš

/model openai/gpt-5.4-mini

็„ถๅพŒ็™ผไธ€ๅ‰‡ๆ™ฎ้€š่จŠๆฏๆธฌ่ฉฆใ€‚

ๅฆ‚ๆžœๅฎƒไป็„ถๅ ฑ Model login expired on the gateway for openai-codex๏ผŒ่ซ‹ๅ†่ฒผๅ…ฉๅ€‹ๆฑ่ฅฟ๏ผš

#
/model status

ไปฅๅŠ gateway host ไธŠ๏ผš

openclaw models auth order get --provider openai-codex
openclaw status --all

ๅ› ็‚บ็พๅœจ auth ๆœฌ่บซ็œ‹่ตทไพ† OK๏ผŒๅ‰ฉไธ‹ๆฏ”่ผƒๅƒๆ˜ฏ้€™ๅ€‹ thread/session ็š„่ˆŠ model/profile pin๏ผŒๆˆ– gateway ๆญฃๅœจ่ท‘็š„ agent/session ๆฒ’ๅƒๅˆฐ็›ฎๅ‰้€™ไปฝ ~/.openclaw/agents/main/agent/auth-profiles.jsonใ€‚

stuck vessel
#
openclaw models auth order get --provider openai-codex
openclaw status --all

I've finished running everything; what should I do now?

quiet frostBOT
# stuck vessel ``` openclaw models auth order get --provider openai-codex openclaw status --all...

Please paste the output from those two commands, especially:

  • the Order override: line from openclaw models auth order get --provider openai-codex
  • the model/auth section from openclaw status --all

openclaw status --all should redact tokens, but still skim it and remove anything private before posting.

In the meantime, also try one fresh test in this thread:

/model openai/gpt-5.5

then send a normal message like test.

If that works, the fix is done. If it still says login expired, the command outputs will tell us whether the gateway is using an old auth order, a different agent dir, or stale session state.

#

Good, that rules out the auth-order problem. The gatewayโ€™s per-agent order is correctly set to the working profile:

openai-codex:rumsgr@gmail.com

Now this is most likely stale session state in this Discord thread. Do this in the thread:

/reset
/model openai/gpt-5.5@openai-codex:rumsgr@gmail.com

Then send a normal test message.

If it still fails after that, please paste:

#
/model status

and the model/auth part of:

openclaw status --all

At this point the key question is whether the active Discord session is still pinned to an old model/profile, or whether the running gateway is reading a different agent/session state than the CLI command is showing.

stuck vessel
#

openclaw status --all did not find the model/auth section.
Executing "/model openai/gpt-5.5@openai-codex:rumsgr@gmail.com" resulted in the error: "The authentication profile 'openai-codex:rumsgr@gmail.com' is intended for openai-codex, not openai."

quiet frostBOT
# stuck vessel `openclaw status --all` did not find the model/auth section. Executing "/model o...

Youโ€™re right โ€” I gave you the wrong provider prefix for the explicit profile pin. Sorry, that error is clear: openai/gpt-5.5 is provider openai, but your OAuth profile belongs to openai-codex.

Use the openai-codex model ref when pinning that profile:

/model openai-codex/gpt-5.5@openai-codex:rumsgr@gmail.com

If that model id is not available on 2026.5.12, use the one your probe already checked:

/model openai-codex/gpt-5.4@openai-codex:rumsgr@gmail.com

Then send a normal test message.

Also, instead of openclaw status --all, use this for the auth/model section: