TUI crashes when skills/list fails behind corporate proxy

Resolved 💬 2 comments Opened Apr 15, 2026 by jinyule Closed Apr 16, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

Bug description

When running Codex CLI behind a corporate proxy/firewall that intercepts HTTPS requests to chatgpt.com, the TUI crashes with:

Error: skills/list failed in TUI

Caused by:
    0: request to https://chatgpt.com/backend-api/plugins/featured?platform=codex failed
    1: error decoding response body
    2: expected value at line 1 column 1

The proxy redirects the request via 302 to an HTML warning page, which is then returned with a 200 status code. The reqwest client follows the redirect, receives HTML instead of JSON, and fails to parse it.

Root cause

In codex-rs/tui/src/app.rs, the AppCommandView::ListSkills handler propagates errors with ?:

AppCommandView::ListSkills { cwds, force_reload } => {
    let response = app_server
        .skills_list(...)
        .await?;  // <-- crashes TUI on error
    self.handle_skills_list_response(response);
    Ok(true)
}

This error bubbles up through the TUI event loop and causes a fatal exit. However, the startup code path for the same operation already handles this gracefully with match + warn.

Expected behavior

Plugin discovery failures (skills/list, featured plugins, etc.) should degrade gracefully — log a warning and continue operating. The main TUI functionality should not depend on plugin discovery succeeding.

Steps to reproduce

  1. Run Codex CLI behind a corporate proxy/firewall that intercepts requests to chatgpt.com
  2. The proxy returns HTML instead of JSON for chatgpt.com/backend-api/plugins/featured
  3. TUI crashes on startup or when skills are refreshed

Environment

  • OS: Windows 11
  • Network: Behind corporate proxy/firewall
  • Auth: ChatGPT auth mode

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 4 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #16914
  • #16543
  • #17860

Powered by Codex Action

etraut-openai contributor · 4 months ago

Thanks for the bug report. This will be fixed in the next release.