From 1cfea37a539abf275f7bf3368f061c29b16f7b98 Mon Sep 17 00:00:00 2001 From: Michael Bolin Date: Sun, 26 Oct 2025 16:45:52 -0700 Subject: [PATCH] feat: update NewConversationParams to take an optional model_provider --- codex-rs/app-server-protocol/src/protocol.rs | 4 ++++ codex-rs/app-server/src/codex_message_processor.rs | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/codex-rs/app-server-protocol/src/protocol.rs b/codex-rs/app-server-protocol/src/protocol.rs index 879297bd79..4d17a788c8 100644 --- a/codex-rs/app-server-protocol/src/protocol.rs +++ b/codex-rs/app-server-protocol/src/protocol.rs @@ -252,6 +252,10 @@ pub struct NewConversationParams { #[serde(skip_serializing_if = "Option::is_none")] pub model: Option, + /// Override the model provider to use for this session. + #[serde(skip_serializing_if = "Option::is_none")] + pub model_provider: Option, + /// Configuration profile from config.toml to specify default options. #[serde(skip_serializing_if = "Option::is_none")] pub profile: Option, diff --git a/codex-rs/app-server/src/codex_message_processor.rs b/codex-rs/app-server/src/codex_message_processor.rs index fd6e868e7d..e5afc2338d 100644 --- a/codex-rs/app-server/src/codex_message_processor.rs +++ b/codex-rs/app-server/src/codex_message_processor.rs @@ -1533,6 +1533,7 @@ async fn derive_config_from_params( ) -> std::io::Result { let NewConversationParams { model, + model_provider, profile, cwd, approval_policy, @@ -1548,7 +1549,7 @@ async fn derive_config_from_params( cwd: cwd.map(PathBuf::from), approval_policy, sandbox_mode, - model_provider: None, + model_provider, codex_linux_sandbox_exe, base_instructions, include_apply_patch_tool,