Bug: /status unusable immediately after login until a filler message is sent
Summary
After logging into Codex CLI, slash commands (specifically /status) do nothing until you first send a regular chat message such as “hi”. This happens every time I relogin or resume after codex logout: the very first /status is ignored, but once I send any conversational text, /status begins working. Having to spam a meaningless message just to inspect my environment is both noisy and confusing.
Steps to reproduce
- Run
codexand completeSign in with ChatGPT(or log out/in to start a fresh session). - When the TUI prompt appears, immediately type
/statusand press Enter. - Observe that nothing happens (no status card, no error). Now type
hi(or any non-slash text) and press Enter. - Run
/statusagain.
Expected behavior
Slash commands like /status should be available the moment the session finishes authenticating. I should be able to confirm model, sandbox, account, and limits without polluting the conversation.
Actual behavior
The initial /status after login is ignored—only a plain text message unlocks slash commands. As soon as any filler message is sent, /status starts working normally for the rest of the session.
Impact
- Forces users to inject irrelevant chat turns (“hi”) before they can verify the session state, which clutters transcripts and wastes tokens.
- Makes resuming or validating automation flows harder because scripts cannot immediately call
/statusafter login. - Leads to confusion: users think
/statusis broken or that they are still unauthenticated.
Environment
codex-cli0.55.0- macOS 15 (Darwin 25.0.0 arm64)
- Auth: Sign in with ChatGPT (Plus)
Additional context
This reproduces 100% of the time for me after any fresh login or after deleting ~/.codex/auth.json. It feels like the command handler only gets registered after the first assistant turn instead of right after authentication.