diff --git a/codex-rs/tui/src/lib.rs b/codex-rs/tui/src/lib.rs index 4e41c47b53..0e12cc2b57 100644 --- a/codex-rs/tui/src/lib.rs +++ b/codex-rs/tui/src/lib.rs @@ -1018,7 +1018,6 @@ pub async fn run_main( Some(provider) } else { // No provider configured, prompt the user - tui::discard_terminal_input(); let selection = oss_selection::select_oss_provider().await?; let provider = selection.provider; if provider == "__CANCELLED__" { diff --git a/codex-rs/tui/src/oss_selection.rs b/codex-rs/tui/src/oss_selection.rs index cbb8e676f2..92fe8494f5 100644 --- a/codex-rs/tui/src/oss_selection.rs +++ b/codex-rs/tui/src/oss_selection.rs @@ -341,6 +341,7 @@ pub async fn select_oss_provider() -> io::Result { let mut widget = OssSelectionWidget::new(lmstudio_status, ollama_status)?; + crate::tui::discard_terminal_input(); enable_raw_mode()?; let mut stdout = io::stdout(); execute!(stdout, EnterAlternateScreen)?;