/realtime fails with 403 on Windows PowerShell: failed to connect realtime websocket

Resolved 💬 4 comments Opened Feb 28, 2026 by rlaehrb1 Closed Feb 28, 2026

Summary

/realtime fails immediately with:

stream disconnected before completion: failed to connect realtime websocket: HTTP error: 403 Forbidden

This happens even after re-authenticating with ChatGPT device auth.

Environment

  • OS: Windows (PowerShell)
  • Codex CLI: 0.106.0
  • Install method: npm install -g @openai/codex
  • Auth mode: ChatGPT login (codex login --device-auth)
  • Working directory example: C:\Users\27613\OneDrive\바탕 화면\codex (contains non-ASCII path segments)

Reproduction

  1. Run codex
  2. Re-login with codex login --device-auth
  3. In TUI, run /realtime
  4. Error appears immediately:
  • stream disconnected before completion: failed to connect realtime websocket: HTTP error: 403 Forbidden

Current feature flag state

From codex features list:

  • realtime_conversation: under development, enabled (true in config)
  • responses_websockets_v2: under development, enabled (true in config)
  • responses_websockets: disabled (false)

Expected behavior

/realtime should connect successfully (or provide a clear actionable message if account rollout/permission is missing).

Actual behavior

Realtime websocket handshake fails with HTTP 403 and conversation does not start.

Additional context

  • Re-login did not resolve the issue.
  • I am using Windows + PowerShell.
  • Could this be account/rollout gating for realtime_conversation / websocket v2?
  • If so, can CLI detect this case and show a clearer message than generic websocket 403?

Question to maintainers

Is this a known gating behavior, or should this work on 0.106.0 for all ChatGPT-authenticated users?

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗