Add codex debug models to show model catalog (#18625)

This commit is contained in:
Andrey Mishchenko
2026-04-20 05:42:22 +00:00
committed by GitHub
parent 87fc21ff60
commit ab65fbbdd6
7 changed files with 140 additions and 11 deletions
+24 -11
View File
@@ -217,6 +217,26 @@ pub(crate) struct ThreadManagerState {
ops_log: Option<SharedCapturedOps>,
}
pub fn build_models_manager(
config: &Config,
auth_manager: Arc<AuthManager>,
collaboration_modes_config: CollaborationModesConfig,
) -> Arc<ModelsManager> {
let openai_models_provider = config
.model_providers
.get(OPENAI_PROVIDER_ID)
.cloned()
.unwrap_or_else(|| ModelProviderInfo::create_openai_provider(/*base_url*/ None));
Arc::new(ModelsManager::new_with_provider(
config.codex_home.to_path_buf(),
auth_manager,
config.model_catalog.clone(),
collaboration_modes_config,
openai_models_provider,
))
}
impl ThreadManager {
pub fn new(
config: &Config,
@@ -228,11 +248,6 @@ impl ThreadManager {
) -> Self {
let codex_home = config.codex_home.clone();
let restriction_product = session_source.restriction_product();
let openai_models_provider = config
.model_providers
.get(OPENAI_PROVIDER_ID)
.cloned()
.unwrap_or_else(|| ModelProviderInfo::create_openai_provider(/*base_url*/ None));
let (thread_created_tx, _) = broadcast::channel(THREAD_CREATED_CHANNEL_CAPACITY);
let plugins_manager = Arc::new(PluginsManager::new_with_restriction_product(
codex_home.to_path_buf(),
@@ -240,7 +255,7 @@ impl ThreadManager {
));
let mcp_manager = Arc::new(McpManager::new(Arc::clone(&plugins_manager)));
let skills_manager = Arc::new(SkillsManager::new_with_restriction_product(
codex_home.clone(),
codex_home,
config.bundled_skills_enabled(),
restriction_product,
));
@@ -249,13 +264,11 @@ impl ThreadManager {
state: Arc::new(ThreadManagerState {
threads: Arc::new(RwLock::new(HashMap::new())),
thread_created_tx,
models_manager: Arc::new(ModelsManager::new_with_provider(
codex_home.to_path_buf(),
models_manager: build_models_manager(
config,
auth_manager.clone(),
config.model_catalog.clone(),
collaboration_modes_config,
openai_models_provider,
)),
),
environment_manager,
skills_manager,
plugins_manager,