diff --git a/codex-rs/Cargo.lock b/codex-rs/Cargo.lock index d5bab66c6..c59b8d9c4 100644 --- a/codex-rs/Cargo.lock +++ b/codex-rs/Cargo.lock @@ -1407,6 +1407,7 @@ dependencies = [ "codex-backend-client", "codex-chatgpt", "codex-cloud-requirements", + "codex-config", "codex-core", "codex-exec-server", "codex-features", @@ -2201,6 +2202,7 @@ version = "0.0.0" dependencies = [ "cc", "clap", + "codex-config", "codex-core", "codex-protocol", "codex-sandboxing", @@ -2304,6 +2306,7 @@ version = "0.0.0" dependencies = [ "anyhow", "codex-arg0", + "codex-config", "codex-core", "codex-exec-server", "codex-features", @@ -2694,6 +2697,7 @@ dependencies = [ "codex-chatgpt", "codex-cli", "codex-cloud-requirements", + "codex-config", "codex-core", "codex-features", "codex-feedback", diff --git a/codex-rs/app-server/Cargo.toml b/codex-rs/app-server/Cargo.toml index 3d58bbe14..b0525685c 100644 --- a/codex-rs/app-server/Cargo.toml +++ b/codex-rs/app-server/Cargo.toml @@ -32,6 +32,7 @@ axum = { workspace = true, default-features = false, features = [ codex-analytics = { workspace = true } codex-arg0 = { workspace = true } codex-cloud-requirements = { workspace = true } +codex-config = { workspace = true } codex-core = { workspace = true } codex-exec-server = { workspace = true } codex-features = { workspace = true } diff --git a/codex-rs/app-server/src/codex_message_processor.rs b/codex-rs/app-server/src/codex_message_processor.rs index f833e5234..2b9aa12ab 100644 --- a/codex-rs/app-server/src/codex_message_processor.rs +++ b/codex-rs/app-server/src/codex_message_processor.rs @@ -181,6 +181,7 @@ use codex_arg0::Arg0DispatchPaths; use codex_backend_client::Client as BackendClient; use codex_chatgpt::connectors; use codex_cloud_requirements::cloud_requirements_loader; +use codex_config::types::McpServerTransportConfig; use codex_core::CodexThread; use codex_core::Cursor as RolloutCursor; use codex_core::ForkSnapshot; @@ -196,7 +197,6 @@ use codex_core::config::ConfigOverrides; use codex_core::config::NetworkProxyAuditMetadata; use codex_core::config::edit::ConfigEdit; use codex_core::config::edit::ConfigEditsBuilder; -use codex_core::config::types::McpServerTransportConfig; use codex_core::config_loader::CloudRequirementsLoadError; use codex_core::config_loader::CloudRequirementsLoadErrorCode; use codex_core::config_loader::CloudRequirementsLoader; diff --git a/codex-rs/app-server/src/codex_message_processor/plugin_mcp_oauth.rs b/codex-rs/app-server/src/codex_message_processor/plugin_mcp_oauth.rs index eec359835..58f4a5e8d 100644 --- a/codex-rs/app-server/src/codex_message_processor/plugin_mcp_oauth.rs +++ b/codex-rs/app-server/src/codex_message_processor/plugin_mcp_oauth.rs @@ -3,8 +3,8 @@ use std::sync::Arc; use codex_app_server_protocol::McpServerOauthLoginCompletedNotification; use codex_app_server_protocol::ServerNotification; +use codex_config::types::McpServerConfig; use codex_core::config::Config; -use codex_core::config::types::McpServerConfig; use codex_mcp::mcp::auth::McpOAuthLoginSupport; use codex_mcp::mcp::auth::oauth_login_support; use codex_mcp::mcp::auth::resolve_oauth_scopes; diff --git a/codex-rs/app-server/tests/suite/v2/analytics.rs b/codex-rs/app-server/tests/suite/v2/analytics.rs index d4884d133..8e8e328a8 100644 --- a/codex-rs/app-server/tests/suite/v2/analytics.rs +++ b/codex-rs/app-server/tests/suite/v2/analytics.rs @@ -2,9 +2,9 @@ use anyhow::Result; use app_test_support::ChatGptAuthFixture; use app_test_support::DEFAULT_CLIENT_NAME; use app_test_support::write_chatgpt_auth; +use codex_config::types::OtelExporterKind; +use codex_config::types::OtelHttpProtocol; use codex_core::config::ConfigBuilder; -use codex_core::config::types::OtelExporterKind; -use codex_core::config::types::OtelHttpProtocol; use codex_login::AuthCredentialsStoreMode; use pretty_assertions::assert_eq; use serde_json::Value; diff --git a/codex-rs/cli/src/mcp_cmd.rs b/codex-rs/cli/src/mcp_cmd.rs index ca8998433..144316b50 100644 --- a/codex-rs/cli/src/mcp_cmd.rs +++ b/codex-rs/cli/src/mcp_cmd.rs @@ -6,12 +6,12 @@ use anyhow::Result; use anyhow::anyhow; use anyhow::bail; use clap::ArgGroup; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerTransportConfig; use codex_core::config::Config; use codex_core::config::edit::ConfigEditsBuilder; use codex_core::config::find_codex_home; use codex_core::config::load_global_mcp_servers; -use codex_core::config::types::McpServerConfig; -use codex_core::config::types::McpServerTransportConfig; use codex_core::mcp::McpManager; use codex_core::plugins::PluginsManager; use codex_mcp::mcp::auth::McpOAuthLoginSupport; diff --git a/codex-rs/cli/tests/mcp_add_remove.rs b/codex-rs/cli/tests/mcp_add_remove.rs index bc3fedc2a..15afaf082 100644 --- a/codex-rs/cli/tests/mcp_add_remove.rs +++ b/codex-rs/cli/tests/mcp_add_remove.rs @@ -1,8 +1,8 @@ use std::path::Path; use anyhow::Result; +use codex_config::types::McpServerTransportConfig; use codex_core::config::load_global_mcp_servers; -use codex_core::config::types::McpServerTransportConfig; use predicates::str::contains; use pretty_assertions::assert_eq; use tempfile::TempDir; diff --git a/codex-rs/cli/tests/mcp_list.rs b/codex-rs/cli/tests/mcp_list.rs index cb78644b1..d41a3cc62 100644 --- a/codex-rs/cli/tests/mcp_list.rs +++ b/codex-rs/cli/tests/mcp_list.rs @@ -1,9 +1,9 @@ use std::path::Path; use anyhow::Result; +use codex_config::types::McpServerTransportConfig; use codex_core::config::edit::ConfigEditsBuilder; use codex_core::config::load_global_mcp_servers; -use codex_core::config::types::McpServerTransportConfig; use predicates::prelude::PredicateBooleanExt; use predicates::str::contains; use pretty_assertions::assert_eq; diff --git a/codex-rs/core/config.schema.json b/codex-rs/core/config.schema.json index 99a38edf4..a8f3229b5 100644 --- a/codex-rs/core/config.schema.json +++ b/codex-rs/core/config.schema.json @@ -2396,7 +2396,7 @@ "$ref": "#/definitions/Notice" } ], - "description": "Collection of in-product notices (different from notifications) See [`crate::config::types::Notices`] for more details" + "description": "Collection of in-product notices (different from notifications) See [`codex_config::types::Notice`] for more details" }, "notify": { "default": null, @@ -2627,4 +2627,4 @@ }, "title": "ConfigToml", "type": "object" -} +} \ No newline at end of file diff --git a/codex-rs/core/src/client_common.rs b/codex-rs/core/src/client_common.rs index ccc2f6297..8a6c42bb9 100644 --- a/codex-rs/core/src/client_common.rs +++ b/codex-rs/core/src/client_common.rs @@ -1,6 +1,6 @@ -use crate::config::types::Personality; use crate::error::Result; pub use codex_api::common::ResponseEvent; +use codex_config::types::Personality; use codex_protocol::models::BaseInstructions; use codex_protocol::models::FunctionCallOutputBody; use codex_protocol::models::ResponseItem; diff --git a/codex-rs/core/src/codex.rs b/codex-rs/core/src/codex.rs index 47c6cf860..92d75390d 100644 --- a/codex-rs/core/src/codex.rs +++ b/codex-rs/core/src/codex.rs @@ -181,8 +181,6 @@ use crate::config::ConstraintResult; use crate::config::GhostSnapshotConfig; use crate::config::StartedNetworkProxy; use crate::config::resolve_web_search_mode_for_turn; -use crate::config::types::McpServerConfig; -use crate::config::types::ShellEnvironmentPolicy; use crate::context_manager::ContextManager; use crate::context_manager::TotalTokenUsageBreakdown; use crate::environment_context::EnvironmentContext; @@ -191,6 +189,8 @@ use crate::error::Result as CodexResult; #[cfg(test)] use crate::exec::StreamOutput; use codex_config::CONFIG_TOML_FILE; +use codex_config::types::McpServerConfig; +use codex_config::types::ShellEnvironmentPolicy; mod rollout_reconstruction; #[cfg(test)] diff --git a/codex-rs/core/src/codex_tests.rs b/codex-rs/core/src/codex_tests.rs index 24c24eb93..8f1bba647 100644 --- a/codex-rs/core/src/codex_tests.rs +++ b/codex-rs/core/src/codex_tests.rs @@ -604,7 +604,7 @@ async fn reload_user_config_layer_updates_effective_apps_config() { .and_then(|table| table.get("apps")) .cloned() .expect("apps table"); - let apps = crate::config::types::AppsConfigToml::deserialize(apps_toml) + let apps = codex_config::types::AppsConfigToml::deserialize(apps_toml) .expect("deserialize apps config"); let app = apps .apps @@ -3091,7 +3091,7 @@ async fn user_turn_updates_approvals_reviewer() { }], cwd: config.cwd.to_path_buf(), approval_policy: config.permissions.approval_policy.value(), - approvals_reviewer: Some(crate::config::types::ApprovalsReviewer::GuardianSubagent), + approvals_reviewer: Some(codex_config::types::ApprovalsReviewer::GuardianSubagent), sandbox_policy: config.permissions.sandbox_policy.get().clone(), model: turn_context.model_info.slug.clone(), effort: config.model_reasoning_effort, @@ -3107,7 +3107,7 @@ async fn user_turn_updates_approvals_reviewer() { let state = session.state.lock().await; assert_eq!( state.session_configuration.approvals_reviewer, - crate::config::types::ApprovalsReviewer::GuardianSubagent + codex_config::types::ApprovalsReviewer::GuardianSubagent ); } diff --git a/codex-rs/core/src/config/config_tests.rs b/codex-rs/core/src/config/config_tests.rs index 80e369f69..02f958256 100644 --- a/codex-rs/core/src/config/config_tests.rs +++ b/codex-rs/core/src/config/config_tests.rs @@ -1,23 +1,23 @@ use crate::config::edit::ConfigEdit; use crate::config::edit::ConfigEditsBuilder; use crate::config::edit::apply_blocking; -use crate::config::types::AppToolApproval; -use crate::config::types::ApprovalsReviewer; -use crate::config::types::BundledSkillsConfig; -use crate::config::types::FeedbackConfigToml; -use crate::config::types::HistoryPersistence; -use crate::config::types::McpServerToolConfig; -use crate::config::types::McpServerTransportConfig; -use crate::config::types::MemoriesConfig; -use crate::config::types::MemoriesToml; -use crate::config::types::ModelAvailabilityNuxConfig; -use crate::config::types::NotificationMethod; -use crate::config::types::Notifications; -use crate::config::types::ToolSuggestDiscoverableType; use crate::config_loader::RequirementSource; use crate::plugins::PluginsManager; use assert_matches::assert_matches; use codex_config::CONFIG_TOML_FILE; +use codex_config::types::AppToolApproval; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::BundledSkillsConfig; +use codex_config::types::FeedbackConfigToml; +use codex_config::types::HistoryPersistence; +use codex_config::types::McpServerToolConfig; +use codex_config::types::McpServerTransportConfig; +use codex_config::types::MemoriesConfig; +use codex_config::types::MemoriesToml; +use codex_config::types::ModelAvailabilityNuxConfig; +use codex_config::types::NotificationMethod; +use codex_config::types::Notifications; +use codex_config::types::ToolSuggestDiscoverableType; use codex_features::Feature; use codex_features::FeaturesToml; use codex_protocol::permissions::FileSystemAccessMode; diff --git a/codex-rs/core/src/config/edit.rs b/codex-rs/core/src/config/edit.rs index 761491eb6..1b3d700ab 100644 --- a/codex-rs/core/src/config/edit.rs +++ b/codex-rs/core/src/config/edit.rs @@ -1,8 +1,8 @@ -use crate::config::types::McpServerConfig; use crate::path_utils::resolve_symlink_write_paths; use crate::path_utils::write_atomically; use anyhow::Context; use codex_config::CONFIG_TOML_FILE; +use codex_config::types::McpServerConfig; use codex_features::FEATURES; use codex_protocol::config_types::Personality; use codex_protocol::config_types::ServiceTier; @@ -126,10 +126,10 @@ pub fn model_availability_nux_count_edits(shown_count: &HashMap) -> // TODO(jif) move to a dedicated file mod document_helpers { - use crate::config::types::AppToolApproval; - use crate::config::types::McpServerConfig; - use crate::config::types::McpServerToolConfig; - use crate::config::types::McpServerTransportConfig; + use codex_config::types::AppToolApproval; + use codex_config::types::McpServerConfig; + use codex_config::types::McpServerToolConfig; + use codex_config::types::McpServerTransportConfig; use toml_edit::Array as TomlArray; use toml_edit::InlineTable; use toml_edit::Item as TomlItem; diff --git a/codex-rs/core/src/config/edit_tests.rs b/codex-rs/core/src/config/edit_tests.rs index e27add005..314d8badb 100644 --- a/codex-rs/core/src/config/edit_tests.rs +++ b/codex-rs/core/src/config/edit_tests.rs @@ -1,7 +1,7 @@ use super::*; -use crate::config::types::AppToolApproval; -use crate::config::types::McpServerToolConfig; -use crate::config::types::McpServerTransportConfig; +use codex_config::types::AppToolApproval; +use codex_config::types::McpServerToolConfig; +use codex_config::types::McpServerTransportConfig; use codex_protocol::openai_models::ReasoningEffort; use pretty_assertions::assert_eq; #[cfg(unix)] diff --git a/codex-rs/core/src/config/mod.rs b/codex-rs/core/src/config/mod.rs index 67b6afc85..f22258dfb 100644 --- a/codex-rs/core/src/config/mod.rs +++ b/codex-rs/core/src/config/mod.rs @@ -1,31 +1,5 @@ use crate::config::edit::ConfigEdit; use crate::config::edit::ConfigEditsBuilder; -use crate::config::types::AppsConfigToml; -use crate::config::types::DEFAULT_OTEL_ENVIRONMENT; -use crate::config::types::History; -use crate::config::types::McpServerConfig; -use crate::config::types::McpServerDisabledReason; -use crate::config::types::McpServerTransportConfig; -use crate::config::types::MemoriesConfig; -use crate::config::types::MemoriesToml; -use crate::config::types::ModelAvailabilityNuxConfig; -use crate::config::types::Notice; -use crate::config::types::NotificationMethod; -use crate::config::types::Notifications; -use crate::config::types::OtelConfig; -use crate::config::types::OtelConfigToml; -use crate::config::types::OtelExporterKind; -use crate::config::types::PluginConfig; -use crate::config::types::SandboxWorkspaceWrite; -use crate::config::types::ShellEnvironmentPolicy; -use crate::config::types::ShellEnvironmentPolicyToml; -use crate::config::types::SkillsConfig; -use crate::config::types::ToolSuggestConfig; -use crate::config::types::ToolSuggestDiscoverable; -use crate::config::types::Tui; -use crate::config::types::UriBasedFileOpener; -use crate::config::types::WindowsSandboxModeToml; -use crate::config::types::WindowsToml; use crate::config_loader::CloudRequirementsLoader; use crate::config_loader::ConfigLayerStack; use crate::config_loader::ConfigLayerStackOrdering; @@ -56,6 +30,33 @@ use crate::windows_sandbox::resolve_windows_sandbox_mode; use crate::windows_sandbox::resolve_windows_sandbox_private_desktop; use codex_app_server_protocol::Tools; use codex_app_server_protocol::UserSavedConfig; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::AppsConfigToml; +use codex_config::types::DEFAULT_OTEL_ENVIRONMENT; +use codex_config::types::History; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerDisabledReason; +use codex_config::types::McpServerTransportConfig; +use codex_config::types::MemoriesConfig; +use codex_config::types::MemoriesToml; +use codex_config::types::ModelAvailabilityNuxConfig; +use codex_config::types::Notice; +use codex_config::types::NotificationMethod; +use codex_config::types::Notifications; +use codex_config::types::OtelConfig; +use codex_config::types::OtelConfigToml; +use codex_config::types::OtelExporterKind; +use codex_config::types::PluginConfig; +use codex_config::types::SandboxWorkspaceWrite; +use codex_config::types::ShellEnvironmentPolicy; +use codex_config::types::ShellEnvironmentPolicyToml; +use codex_config::types::SkillsConfig; +use codex_config::types::ToolSuggestConfig; +use codex_config::types::ToolSuggestDiscoverable; +use codex_config::types::Tui; +use codex_config::types::UriBasedFileOpener; +use codex_config::types::WindowsSandboxModeToml; +use codex_config::types::WindowsToml; use codex_features::Feature; use codex_features::FeatureConfigSource; use codex_features::FeatureOverrides; @@ -113,7 +114,6 @@ mod permissions; pub mod profile; pub mod schema; pub mod service; -pub mod types; pub use codex_config::Constrained; pub use codex_config::ConstraintError; pub use codex_config::ConstraintResult; @@ -135,7 +135,6 @@ pub(crate) use permissions::overlay_network_domain_permissions; pub(crate) use permissions::resolve_permission_profile; pub use service::ConfigService; pub use service::ConfigServiceError; -pub use types::ApprovalsReviewer; pub use codex_git_utils::GhostSnapshotConfig; @@ -582,7 +581,7 @@ pub struct Config { pub tool_suggest: ToolSuggestConfig, /// OTEL configuration (exporter type, endpoint, headers, etc.). - pub otel: crate::config::types::OtelConfig, + pub otel: codex_config::types::OtelConfig, } #[derive(Debug, Clone, Default)] @@ -1393,18 +1392,18 @@ pub struct ConfigToml { /// When `false`, disables analytics across Codex product surfaces in this machine. /// Defaults to `true`. - pub analytics: Option, + pub analytics: Option, /// When `false`, disables feedback collection across Codex product surfaces. /// Defaults to `true`. - pub feedback: Option, + pub feedback: Option, /// Settings for app-specific controls. #[serde(default)] pub apps: Option, /// OTEL configuration. - pub otel: Option, + pub otel: Option, /// Windows-specific configuration. #[serde(default)] @@ -1414,7 +1413,7 @@ pub struct ConfigToml { pub windows_wsl_setup_acknowledged: Option, /// Collection of in-product notices (different from notifications) - /// See [`crate::config::types::Notices`] for more details + /// See [`codex_config::types::Notice`] for more details pub notice: Option, /// Legacy, now use features diff --git a/codex-rs/core/src/config/profile.rs b/codex-rs/core/src/config/profile.rs index fcfda644e..7dd8598c0 100644 --- a/codex-rs/core/src/config/profile.rs +++ b/codex-rs/core/src/config/profile.rs @@ -4,9 +4,9 @@ use serde::Deserialize; use serde::Serialize; use crate::config::ToolsToml; -use crate::config::types::ApprovalsReviewer; -use crate::config::types::Personality; -use crate::config::types::WindowsToml; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::Personality; +use codex_config::types::WindowsToml; use codex_features::FeaturesToml; use codex_protocol::config_types::ReasoningSummary; use codex_protocol::config_types::SandboxMode; @@ -54,7 +54,7 @@ pub struct ConfigProfile { pub tools_view_image: Option, pub tools: Option, pub web_search: Option, - pub analytics: Option, + pub analytics: Option, #[serde(default)] pub windows: Option, /// Optional feature toggles scoped to this profile. diff --git a/codex-rs/core/src/config/schema.rs b/codex-rs/core/src/config/schema.rs index 53e0f7f02..bde38f7eb 100644 --- a/codex-rs/core/src/config/schema.rs +++ b/codex-rs/core/src/config/schema.rs @@ -1,5 +1,5 @@ use crate::config::ConfigToml; -use crate::config::types::RawMcpServerConfig; +use codex_config::types::RawMcpServerConfig; use codex_features::FEATURES; use codex_features::legacy_feature_keys; use schemars::r#gen::SchemaGenerator; diff --git a/codex-rs/core/src/config/types.rs b/codex-rs/core/src/config/types.rs deleted file mode 100644 index 9debd7d79..000000000 --- a/codex-rs/core/src/config/types.rs +++ /dev/null @@ -1 +0,0 @@ -pub use codex_config::types::*; diff --git a/codex-rs/core/src/connectors.rs b/codex-rs/core/src/connectors.rs index e02a6fc22..10e10e99f 100644 --- a/codex-rs/core/src/connectors.rs +++ b/codex-rs/core/src/connectors.rs @@ -26,14 +26,14 @@ use tracing::warn; use crate::codex::INITIAL_SUBMIT_ID; use crate::config::Config; -use crate::config::types::AppToolApproval; -use crate::config::types::AppsConfigToml; -use crate::config::types::ToolSuggestDiscoverableType; use crate::config_loader::AppsRequirementsToml; use crate::mcp::McpManager; use crate::plugins::AppConnectorId; use crate::plugins::PluginsManager; use crate::plugins::list_tool_suggest_discoverable_plugins; +use codex_config::types::AppToolApproval; +use codex_config::types::AppsConfigToml; +use codex_config::types::ToolSuggestDiscoverableType; use codex_features::Feature; use codex_login::AuthManager; use codex_login::CodexAuth; diff --git a/codex-rs/core/src/connectors_tests.rs b/codex-rs/core/src/connectors_tests.rs index 11ec4b6ca..893ab243c 100644 --- a/codex-rs/core/src/connectors_tests.rs +++ b/codex-rs/core/src/connectors_tests.rs @@ -1,16 +1,16 @@ use super::*; use crate::config::CONFIG_TOML_FILE; use crate::config::ConfigBuilder; -use crate::config::types::AppConfig; -use crate::config::types::AppToolConfig; -use crate::config::types::AppToolsConfig; -use crate::config::types::AppsDefaultConfig; use crate::config_loader::AppRequirementToml; use crate::config_loader::AppsRequirementsToml; use crate::config_loader::CloudRequirementsLoader; use crate::config_loader::ConfigLayerStack; use crate::config_loader::ConfigRequirements; use crate::config_loader::ConfigRequirementsToml; +use codex_config::types::AppConfig; +use codex_config::types::AppToolConfig; +use codex_config::types::AppToolsConfig; +use codex_config::types::AppsDefaultConfig; use codex_features::Feature; use codex_mcp::mcp::CODEX_APPS_MCP_SERVER_NAME; use codex_mcp::mcp_connection_manager::ToolInfo; diff --git a/codex-rs/core/src/exec_env.rs b/codex-rs/core/src/exec_env.rs index 83ac8ad37..4dd5532d5 100644 --- a/codex-rs/core/src/exec_env.rs +++ b/codex-rs/core/src/exec_env.rs @@ -1,6 +1,6 @@ -use crate::config::types::EnvironmentVariablePattern; -use crate::config::types::ShellEnvironmentPolicy; -use crate::config::types::ShellEnvironmentPolicyInherit; +use codex_config::types::EnvironmentVariablePattern; +use codex_config::types::ShellEnvironmentPolicy; +use codex_config::types::ShellEnvironmentPolicyInherit; use codex_protocol::ThreadId; use std::collections::HashMap; use std::collections::HashSet; diff --git a/codex-rs/core/src/exec_env_tests.rs b/codex-rs/core/src/exec_env_tests.rs index ec6b5b5bb..1b486834e 100644 --- a/codex-rs/core/src/exec_env_tests.rs +++ b/codex-rs/core/src/exec_env_tests.rs @@ -1,5 +1,5 @@ use super::*; -use crate::config::types::ShellEnvironmentPolicyInherit; +use codex_config::types::ShellEnvironmentPolicyInherit; use maplit::hashmap; fn make_vars(pairs: &[(&str, &str)]) -> Vec<(String, String)> { diff --git a/codex-rs/core/src/guardian/review_session.rs b/codex-rs/core/src/guardian/review_session.rs index 88bc795c1..2a63e5b54 100644 --- a/codex-rs/core/src/guardian/review_session.rs +++ b/codex-rs/core/src/guardian/review_session.rs @@ -34,9 +34,9 @@ use crate::config::Constrained; use crate::config::ManagedFeatures; use crate::config::NetworkProxySpec; use crate::config::Permissions; -use crate::config::types::McpServerConfig; use crate::model_provider_info::ModelProviderInfo; use crate::rollout::recorder::RolloutRecorder; +use codex_config::types::McpServerConfig; use codex_features::Feature; use super::GUARDIAN_REVIEW_TIMEOUT; diff --git a/codex-rs/core/src/mcp_tool_call.rs b/codex-rs/core/src/mcp_tool_call.rs index 994f9586d..344e46d0b 100644 --- a/codex-rs/core/src/mcp_tool_call.rs +++ b/codex-rs/core/src/mcp_tool_call.rs @@ -19,7 +19,6 @@ use crate::config::Config; use crate::config::edit::ConfigEdit; use crate::config::edit::ConfigEditsBuilder; use crate::config::load_global_mcp_servers; -use crate::config::types::AppToolApproval; use crate::connectors; use crate::guardian::GuardianApprovalRequest; use crate::guardian::GuardianMcpAnnotations; @@ -31,6 +30,7 @@ use crate::mcp_tool_approval_templates::render_mcp_tool_approval_template; use codex_analytics::AppInvocation; use codex_analytics::InvocationType; use codex_analytics::build_track_events_context; +use codex_config::types::AppToolApproval; use codex_features::Feature; use codex_mcp::mcp::CODEX_APPS_MCP_SERVER_NAME; use codex_otel::sanitize_metric_tag_value; @@ -583,7 +583,7 @@ fn custom_mcp_tool_approval_mode( .and_then(|table| table.get("mcp_servers")) .cloned() .and_then(|value| { - HashMap::::deserialize(value).ok() + HashMap::::deserialize(value).ok() }) .and_then(|servers| servers.get(server).cloned()) .and_then(|server| server.tools.get(tool_name).cloned()) @@ -1541,8 +1541,7 @@ fn project_mcp_tool_approval_config_folder(config: &Config, server: &str) -> Opt .and_then(|table| table.get("mcp_servers")) .cloned() .and_then(|value| { - HashMap::::deserialize(value) - .ok() + HashMap::::deserialize(value).ok() })?; if servers.contains_key(server) { layer diff --git a/codex-rs/core/src/mcp_tool_call_tests.rs b/codex-rs/core/src/mcp_tool_call_tests.rs index 8acdf917e..5bb919485 100644 --- a/codex-rs/core/src/mcp_tool_call_tests.rs +++ b/codex-rs/core/src/mcp_tool_call_tests.rs @@ -1,17 +1,17 @@ use super::*; use crate::codex::make_session_and_context; use crate::codex::make_session_and_context_with_rx; -use crate::config::ApprovalsReviewer; use crate::config::ConfigBuilder; use crate::config::ConfigToml; -use crate::config::types::AppConfig; -use crate::config::types::AppToolConfig; -use crate::config::types::AppToolsConfig; -use crate::config::types::AppsConfigToml; -use crate::config::types::McpServerConfig; -use crate::config::types::McpServerToolConfig; use crate::state::ActiveTurn; use codex_config::CONFIG_TOML_FILE; +use codex_config::types::AppConfig; +use codex_config::types::AppToolConfig; +use codex_config::types::AppToolsConfig; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::AppsConfigToml; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerToolConfig; use core_test_support::responses::ev_assistant_message; use core_test_support::responses::ev_completed; use core_test_support::responses::ev_response_created; diff --git a/codex-rs/core/src/memories/phase1.rs b/codex-rs/core/src/memories/phase1.rs index 921bc9953..ff050ac5b 100644 --- a/codex-rs/core/src/memories/phase1.rs +++ b/codex-rs/core/src/memories/phase1.rs @@ -3,7 +3,6 @@ use crate::RolloutRecorder; use crate::codex::Session; use crate::codex::TurnContext; use crate::config::Config; -use crate::config::types::MemoriesConfig; use crate::contextual_user_message::is_memory_excluded_contextual_user_fragment; use crate::error::CodexErr; use crate::memories::metrics; @@ -13,6 +12,7 @@ use crate::memories::prompts::build_stage_one_input_message; use crate::rollout::INTERACTIVE_SESSION_SOURCES; use crate::rollout::policy::should_persist_response_item_for_memories; use codex_api::ResponseEvent; +use codex_config::types::MemoriesConfig; use codex_otel::SessionTelemetry; use codex_protocol::config_types::ReasoningSummary as ReasoningSummaryConfig; use codex_protocol::config_types::ServiceTier; diff --git a/codex-rs/core/src/memories/tests.rs b/codex-rs/core/src/memories/tests.rs index 783bac3c3..6255eacde 100644 --- a/codex-rs/core/src/memories/tests.rs +++ b/codex-rs/core/src/memories/tests.rs @@ -1,6 +1,5 @@ use super::storage::rebuild_raw_memories_file_from_memories; use super::storage::sync_rollout_summaries_from_memories; -use crate::config::types::DEFAULT_MEMORIES_MAX_RAW_MEMORIES_FOR_CONSOLIDATION; use crate::memories::clear_memory_root_contents; use crate::memories::ensure_layout; use crate::memories::memory_root; @@ -8,6 +7,7 @@ use crate::memories::raw_memories_file; use crate::memories::rollout_summaries_dir; use chrono::TimeZone; use chrono::Utc; +use codex_config::types::DEFAULT_MEMORIES_MAX_RAW_MEMORIES_FOR_CONSOLIDATION; use codex_protocol::ThreadId; use codex_state::Stage1Output; use pretty_assertions::assert_eq; diff --git a/codex-rs/core/src/message_history.rs b/codex-rs/core/src/message_history.rs index d9613e4b8..e2d551085 100644 --- a/codex-rs/core/src/message_history.rs +++ b/codex-rs/core/src/message_history.rs @@ -36,7 +36,7 @@ use tokio::fs; use tokio::io::AsyncReadExt; use crate::config::Config; -use crate::config::types::HistoryPersistence; +use codex_config::types::HistoryPersistence; use codex_protocol::ThreadId; #[cfg(unix)] diff --git a/codex-rs/core/src/otel_init.rs b/codex-rs/core/src/otel_init.rs index 9e38cea52..c732692d6 100644 --- a/codex-rs/core/src/otel_init.rs +++ b/codex-rs/core/src/otel_init.rs @@ -1,6 +1,6 @@ use crate::config::Config; -use crate::config::types::OtelExporterKind as Kind; -use crate::config::types::OtelHttpProtocol as Protocol; +use codex_config::types::OtelExporterKind as Kind; +use codex_config::types::OtelHttpProtocol as Protocol; use codex_features::Feature; use codex_login::default_client::originator; use codex_otel::OtelProvider; diff --git a/codex-rs/core/src/plugins/discoverable.rs b/codex-rs/core/src/plugins/discoverable.rs index f7006185b..8c630619b 100644 --- a/codex-rs/core/src/plugins/discoverable.rs +++ b/codex-rs/core/src/plugins/discoverable.rs @@ -7,7 +7,7 @@ use super::PluginCapabilitySummary; use super::PluginReadRequest; use super::PluginsManager; use crate::config::Config; -use crate::config::types::ToolSuggestDiscoverableType; +use codex_config::types::ToolSuggestDiscoverableType; use codex_features::Feature; use codex_tools::DiscoverablePluginInfo; diff --git a/codex-rs/core/src/plugins/manager.rs b/codex-rs/core/src/plugins/manager.rs index 9147675e2..2b21a2370 100644 --- a/codex-rs/core/src/plugins/manager.rs +++ b/codex-rs/core/src/plugins/manager.rs @@ -33,8 +33,6 @@ use crate::config::ConfigService; use crate::config::ConfigServiceError; use crate::config::edit::ConfigEdit; use crate::config::edit::ConfigEditsBuilder; -use crate::config::types::McpServerConfig; -use crate::config::types::PluginConfig; use crate::config_loader::ConfigLayerStack; use crate::config_rules::SkillConfigRules; use crate::config_rules::resolve_disabled_skill_paths; @@ -44,6 +42,8 @@ use crate::loader::load_skills_from_roots; use codex_analytics::AnalyticsEventsClient; use codex_app_server_protocol::ConfigValueWriteParams; use codex_app_server_protocol::MergeStrategy; +use codex_config::types::McpServerConfig; +use codex_config::types::PluginConfig; use codex_features::Feature; use codex_login::AuthManager; use codex_login::CodexAuth; diff --git a/codex-rs/core/src/plugins/manager_tests.rs b/codex-rs/core/src/plugins/manager_tests.rs index 2089670d7..a9f455bbc 100644 --- a/codex-rs/core/src/plugins/manager_tests.rs +++ b/codex-rs/core/src/plugins/manager_tests.rs @@ -1,7 +1,6 @@ use super::*; use crate::config::CONFIG_TOML_FILE; use crate::config::ConfigBuilder; -use crate::config::types::McpServerTransportConfig; use crate::config_loader::ConfigLayerEntry; use crate::config_loader::ConfigLayerStack; use crate::config_loader::ConfigRequirements; @@ -14,6 +13,7 @@ use crate::plugins::test_support::write_curated_plugin_sha_with as write_curated use crate::plugins::test_support::write_file; use crate::plugins::test_support::write_openai_curated_marketplace; use codex_app_server_protocol::ConfigLayerSource; +use codex_config::types::McpServerTransportConfig; use codex_login::CodexAuth; use codex_protocol::protocol::Product; use pretty_assertions::assert_eq; diff --git a/codex-rs/core/src/plugins/mod.rs b/codex-rs/core/src/plugins/mod.rs index 3e4902214..a86502c28 100644 --- a/codex-rs/core/src/plugins/mod.rs +++ b/codex-rs/core/src/plugins/mod.rs @@ -1,4 +1,4 @@ -use crate::config::types::McpServerConfig; +use codex_config::types::McpServerConfig; mod discoverable; mod injection; diff --git a/codex-rs/core/src/tools/handlers/multi_agents_tests.rs b/codex-rs/core/src/tools/handlers/multi_agents_tests.rs index bb9408587..4fe6ac0e9 100644 --- a/codex-rs/core/src/tools/handlers/multi_agents_tests.rs +++ b/codex-rs/core/src/tools/handlers/multi_agents_tests.rs @@ -3,7 +3,6 @@ use crate::ThreadManager; use crate::built_in_model_providers; use crate::codex::make_session_and_context; use crate::config::DEFAULT_AGENT_MAX_DEPTH; -use crate::config::types::ShellEnvironmentPolicy; use crate::function_tool::FunctionCallError; use crate::session_prefix::format_subagent_notification_message; use crate::state::TaskKind; @@ -17,6 +16,7 @@ use crate::tools::handlers::multi_agents_v2::SendMessageHandler as SendMessageHa use crate::tools::handlers::multi_agents_v2::SpawnAgentHandler as SpawnAgentHandlerV2; use crate::tools::handlers::multi_agents_v2::WaitAgentHandler as WaitAgentHandlerV2; use crate::turn_diff_tracker::TurnDiffTracker; +use codex_config::types::ShellEnvironmentPolicy; use codex_features::Feature; use codex_login::AuthManager; use codex_login::CodexAuth; diff --git a/codex-rs/core/src/windows_sandbox.rs b/codex-rs/core/src/windows_sandbox.rs index 391c59d25..0def23d00 100644 --- a/codex-rs/core/src/windows_sandbox.rs +++ b/codex-rs/core/src/windows_sandbox.rs @@ -2,7 +2,7 @@ use crate::config::Config; use crate::config::ConfigToml; use crate::config::edit::ConfigEditsBuilder; use crate::config::profile::ConfigProfile; -use crate::config::types::WindowsSandboxModeToml; +use codex_config::types::WindowsSandboxModeToml; use codex_features::Feature; use codex_features::Features; use codex_features::FeaturesToml; diff --git a/codex-rs/core/src/windows_sandbox_tests.rs b/codex-rs/core/src/windows_sandbox_tests.rs index d0ffa07b8..3fa396838 100644 --- a/codex-rs/core/src/windows_sandbox_tests.rs +++ b/codex-rs/core/src/windows_sandbox_tests.rs @@ -1,5 +1,5 @@ use super::*; -use crate::config::types::WindowsToml; +use codex_config::types::WindowsToml; use codex_features::Features; use codex_features::FeaturesToml; use pretty_assertions::assert_eq; diff --git a/codex-rs/core/tests/suite/code_mode.rs b/codex-rs/core/tests/suite/code_mode.rs index 9b69149e9..37ee27dd6 100644 --- a/codex-rs/core/tests/suite/code_mode.rs +++ b/codex-rs/core/tests/suite/code_mode.rs @@ -3,8 +3,8 @@ use anyhow::Result; use base64::Engine; use base64::engine::general_purpose::STANDARD as BASE64_STANDARD; -use codex_core::config::types::McpServerConfig; -use codex_core::config::types::McpServerTransportConfig; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerTransportConfig; use codex_features::Feature; use codex_protocol::dynamic_tools::DynamicToolCallOutputContentItem; use codex_protocol::dynamic_tools::DynamicToolResponse; diff --git a/codex-rs/core/tests/suite/model_switching.rs b/codex-rs/core/tests/suite/model_switching.rs index de8845548..4cb84e8b6 100644 --- a/codex-rs/core/tests/suite/model_switching.rs +++ b/codex-rs/core/tests/suite/model_switching.rs @@ -1,5 +1,5 @@ use anyhow::Result; -use codex_core::config::types::Personality; +use codex_config::types::Personality; use codex_core::models_manager::manager::RefreshStrategy; use codex_features::Feature; use codex_login::CodexAuth; diff --git a/codex-rs/core/tests/suite/model_visible_layout.rs b/codex-rs/core/tests/suite/model_visible_layout.rs index 49f635432..13e281914 100644 --- a/codex-rs/core/tests/suite/model_visible_layout.rs +++ b/codex-rs/core/tests/suite/model_visible_layout.rs @@ -4,7 +4,7 @@ use std::fs; use std::sync::Arc; use anyhow::Result; -use codex_core::config::types::Personality; +use codex_config::types::Personality; use codex_features::Feature; use codex_protocol::protocol::AskForApproval; use codex_protocol::protocol::EventMsg; diff --git a/codex-rs/core/tests/suite/personality.rs b/codex-rs/core/tests/suite/personality.rs index a51a39826..22870cae7 100644 --- a/codex-rs/core/tests/suite/personality.rs +++ b/codex-rs/core/tests/suite/personality.rs @@ -1,4 +1,4 @@ -use codex_core::config::types::Personality; +use codex_config::types::Personality; use codex_core::models_manager::manager::ModelsManager; use codex_core::models_manager::manager::RefreshStrategy; use codex_features::Feature; diff --git a/codex-rs/core/tests/suite/rmcp_client.rs b/codex-rs/core/tests/suite/rmcp_client.rs index 5b942c201..4262a6aab 100644 --- a/codex-rs/core/tests/suite/rmcp_client.rs +++ b/codex-rs/core/tests/suite/rmcp_client.rs @@ -9,8 +9,8 @@ use std::time::Duration; use std::time::SystemTime; use std::time::UNIX_EPOCH; -use codex_core::config::types::McpServerConfig; -use codex_core::config::types::McpServerTransportConfig; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerTransportConfig; use codex_core::models_manager::manager::RefreshStrategy; use codex_login::CodexAuth; diff --git a/codex-rs/core/tests/suite/sqlite_state.rs b/codex-rs/core/tests/suite/sqlite_state.rs index d955f342a..f35152e18 100644 --- a/codex-rs/core/tests/suite/sqlite_state.rs +++ b/codex-rs/core/tests/suite/sqlite_state.rs @@ -1,6 +1,6 @@ use anyhow::Result; -use codex_core::config::types::McpServerConfig; -use codex_core::config::types::McpServerTransportConfig; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerTransportConfig; use codex_features::Feature; use codex_protocol::ThreadId; use codex_protocol::dynamic_tools::DynamicToolSpec; diff --git a/codex-rs/core/tests/suite/tool_suggest.rs b/codex-rs/core/tests/suite/tool_suggest.rs index 09c29cb1f..a65c58587 100644 --- a/codex-rs/core/tests/suite/tool_suggest.rs +++ b/codex-rs/core/tests/suite/tool_suggest.rs @@ -2,9 +2,9 @@ #![allow(clippy::unwrap_used, clippy::expect_used)] use anyhow::Result; +use codex_config::types::ToolSuggestDiscoverable; +use codex_config::types::ToolSuggestDiscoverableType; use codex_core::config::Config; -use codex_core::config::types::ToolSuggestDiscoverable; -use codex_core::config::types::ToolSuggestDiscoverableType; use codex_features::Feature; use codex_login::CodexAuth; use codex_protocol::openai_models::ModelsResponse; diff --git a/codex-rs/core/tests/suite/truncation.rs b/codex-rs/core/tests/suite/truncation.rs index c3f019dd3..3f4a9e5a6 100644 --- a/codex-rs/core/tests/suite/truncation.rs +++ b/codex-rs/core/tests/suite/truncation.rs @@ -3,8 +3,8 @@ use anyhow::Context; use anyhow::Result; -use codex_core::config::types::McpServerConfig; -use codex_core::config::types::McpServerTransportConfig; +use codex_config::types::McpServerConfig; +use codex_config::types::McpServerTransportConfig; use codex_protocol::protocol::AskForApproval; use codex_protocol::protocol::EventMsg; use codex_protocol::protocol::Op; @@ -354,8 +354,8 @@ async fn mcp_tool_call_output_exceeds_limit_truncated_for_model() -> Result<()> let mut servers = config.mcp_servers.get().clone(); servers.insert( server_name.to_string(), - codex_core::config::types::McpServerConfig { - transport: codex_core::config::types::McpServerTransportConfig::Stdio { + codex_config::types::McpServerConfig { + transport: codex_config::types::McpServerTransportConfig::Stdio { command: rmcp_test_server_bin, args: Vec::new(), env: None, @@ -719,8 +719,8 @@ async fn mcp_tool_call_output_not_truncated_with_custom_limit() -> Result<()> { let mut servers = config.mcp_servers.get().clone(); servers.insert( server_name.to_string(), - codex_core::config::types::McpServerConfig { - transport: codex_core::config::types::McpServerTransportConfig::Stdio { + codex_config::types::McpServerConfig { + transport: codex_config::types::McpServerTransportConfig::Stdio { command: rmcp_test_server_bin, args: Vec::new(), env: None, diff --git a/codex-rs/linux-sandbox/Cargo.toml b/codex-rs/linux-sandbox/Cargo.toml index c0bfc7aca..524c574fb 100644 --- a/codex-rs/linux-sandbox/Cargo.toml +++ b/codex-rs/linux-sandbox/Cargo.toml @@ -17,6 +17,7 @@ workspace = true [target.'cfg(target_os = "linux")'.dependencies] clap = { workspace = true, features = ["derive"] } +codex-config = { workspace = true } codex-core = { workspace = true } codex-protocol = { workspace = true } codex-sandboxing = { workspace = true } diff --git a/codex-rs/linux-sandbox/tests/suite/landlock.rs b/codex-rs/linux-sandbox/tests/suite/landlock.rs index ba26c7e22..bb214905f 100644 --- a/codex-rs/linux-sandbox/tests/suite/landlock.rs +++ b/codex-rs/linux-sandbox/tests/suite/landlock.rs @@ -1,6 +1,6 @@ #![cfg(target_os = "linux")] #![allow(clippy::unwrap_used)] -use codex_core::config::types::ShellEnvironmentPolicy; +use codex_config::types::ShellEnvironmentPolicy; use codex_core::error::CodexErr; use codex_core::error::Result; use codex_core::error::SandboxErr; diff --git a/codex-rs/linux-sandbox/tests/suite/managed_proxy.rs b/codex-rs/linux-sandbox/tests/suite/managed_proxy.rs index 53d1852c9..256373953 100644 --- a/codex-rs/linux-sandbox/tests/suite/managed_proxy.rs +++ b/codex-rs/linux-sandbox/tests/suite/managed_proxy.rs @@ -1,7 +1,7 @@ #![cfg(target_os = "linux")] #![allow(clippy::unwrap_used)] -use codex_core::config::types::ShellEnvironmentPolicy; +use codex_config::types::ShellEnvironmentPolicy; use codex_core::exec_env::create_env; use codex_protocol::protocol::SandboxPolicy; use pretty_assertions::assert_eq; diff --git a/codex-rs/mcp-server/Cargo.toml b/codex-rs/mcp-server/Cargo.toml index 5de2a9e5a..a463d9bbe 100644 --- a/codex-rs/mcp-server/Cargo.toml +++ b/codex-rs/mcp-server/Cargo.toml @@ -18,6 +18,7 @@ workspace = true [dependencies] anyhow = { workspace = true } codex-arg0 = { workspace = true } +codex-config = { workspace = true } codex-core = { workspace = true } codex-exec-server = { workspace = true } codex-features = { workspace = true } diff --git a/codex-rs/mcp-server/src/lib.rs b/codex-rs/mcp-server/src/lib.rs index e435eab0c..2596339ac 100644 --- a/codex-rs/mcp-server/src/lib.rs +++ b/codex-rs/mcp-server/src/lib.rs @@ -181,8 +181,8 @@ pub async fn run_main( #[cfg(test)] mod tests { use super::*; + use codex_config::types::OtelExporterKind; use codex_core::config::ConfigBuilder; - use codex_core::config::types::OtelExporterKind; use pretty_assertions::assert_eq; use std::collections::HashMap; use tempfile::TempDir; diff --git a/codex-rs/tui/Cargo.toml b/codex-rs/tui/Cargo.toml index 590257609..814a7a783 100644 --- a/codex-rs/tui/Cargo.toml +++ b/codex-rs/tui/Cargo.toml @@ -31,6 +31,7 @@ codex-app-server-protocol = { workspace = true } codex-arg0 = { workspace = true } codex-chatgpt = { workspace = true } codex-cloud-requirements = { workspace = true } +codex-config = { workspace = true } codex-core = { workspace = true } codex-features = { workspace = true } codex-feedback = { workspace = true } diff --git a/codex-rs/tui/src/app.rs b/codex-rs/tui/src/app.rs index 89f5916e1..6e2e89e19 100644 --- a/codex-rs/tui/src/app.rs +++ b/codex-rs/tui/src/app.rs @@ -82,13 +82,13 @@ use codex_app_server_protocol::ThreadRollbackResponse; use codex_app_server_protocol::Turn; use codex_app_server_protocol::TurnError as AppServerTurnError; use codex_app_server_protocol::TurnStatus; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::ModelAvailabilityNuxConfig; use codex_core::config::Config; use codex_core::config::ConfigBuilder; use codex_core::config::ConfigOverrides; use codex_core::config::edit::ConfigEdit; use codex_core::config::edit::ConfigEditsBuilder; -use codex_core::config::types::ApprovalsReviewer; -use codex_core::config::types::ModelAvailabilityNuxConfig; use codex_core::config_loader::ConfigLayerStackOrdering; use codex_core::message_history; use codex_core::models_manager::collaboration_mode_presets::CollaborationModesConfig; @@ -6188,9 +6188,9 @@ mod tests { use codex_app_server_protocol::TurnStartedNotification; use codex_app_server_protocol::TurnStatus; use codex_app_server_protocol::UserInput as AppServerUserInput; + use codex_config::types::ModelAvailabilityNuxConfig; use codex_core::config::ConfigBuilder; use codex_core::config::ConfigOverrides; - use codex_core::config::types::ModelAvailabilityNuxConfig; use codex_otel::SessionTelemetry; use codex_protocol::ThreadId; use codex_protocol::config_types::CollaborationMode; diff --git a/codex-rs/tui/src/app_command.rs b/codex-rs/tui/src/app_command.rs index 3c43c6186..0646cc297 100644 --- a/codex-rs/tui/src/app_command.rs +++ b/codex-rs/tui/src/app_command.rs @@ -1,6 +1,6 @@ use std::path::PathBuf; -use codex_core::config::types::ApprovalsReviewer; +use codex_config::types::ApprovalsReviewer; use codex_protocol::approvals::ElicitationAction; use codex_protocol::config_types::CollaborationMode; use codex_protocol::config_types::Personality; diff --git a/codex-rs/tui/src/app_event.rs b/codex-rs/tui/src/app_event.rs index 77a8c6748..d727963f0 100644 --- a/codex-rs/tui/src/app_event.rs +++ b/codex-rs/tui/src/app_event.rs @@ -31,7 +31,7 @@ use crate::bottom_pane::StatusLineItem; use crate::bottom_pane::TerminalTitleItem; use crate::history_cell::HistoryCell; -use codex_core::config::types::ApprovalsReviewer; +use codex_config::types::ApprovalsReviewer; use codex_features::Feature; use codex_protocol::config_types::CollaborationModeMask; use codex_protocol::config_types::Personality; diff --git a/codex-rs/tui/src/chatwidget.rs b/codex-rs/tui/src/chatwidget.rs index 3c8d068f9..02429e9d9 100644 --- a/codex-rs/tui/src/chatwidget.rs +++ b/codex-rs/tui/src/chatwidget.rs @@ -92,12 +92,12 @@ use codex_app_server_protocol::TurnCompletedNotification; use codex_app_server_protocol::TurnPlanStepStatus; use codex_app_server_protocol::TurnStatus; use codex_chatgpt::connectors; +use codex_config::types::ApprovalsReviewer; +use codex_config::types::Notifications; +use codex_config::types::WindowsSandboxModeToml; use codex_core::config::Config; use codex_core::config::Constrained; use codex_core::config::ConstraintResult; -use codex_core::config::types::ApprovalsReviewer; -use codex_core::config::types::Notifications; -use codex_core::config::types::WindowsSandboxModeToml; use codex_core::config_loader::ConfigLayerStackOrdering; use codex_core::find_thread_name_by_id; use codex_core::plugins::PluginsManager; diff --git a/codex-rs/tui/src/chatwidget/tests.rs b/codex-rs/tui/src/chatwidget/tests.rs index e87634aea..9af2cd30a 100644 --- a/codex-rs/tui/src/chatwidget/tests.rs +++ b/codex-rs/tui/src/chatwidget/tests.rs @@ -79,14 +79,14 @@ pub(super) use codex_app_server_protocol::TurnError as AppServerTurnError; pub(super) use codex_app_server_protocol::TurnStartedNotification; pub(super) use codex_app_server_protocol::TurnStatus as AppServerTurnStatus; pub(super) use codex_app_server_protocol::UserInput as AppServerUserInput; -pub(super) use codex_core::config::ApprovalsReviewer; +pub(super) use codex_config::types::ApprovalsReviewer; +pub(super) use codex_config::types::Notifications; +#[cfg(target_os = "windows")] +pub(super) use codex_config::types::WindowsSandboxModeToml; pub(super) use codex_core::config::Config; pub(super) use codex_core::config::ConfigBuilder; pub(super) use codex_core::config::Constrained; pub(super) use codex_core::config::ConstraintError; -pub(super) use codex_core::config::types::Notifications; -#[cfg(target_os = "windows")] -pub(super) use codex_core::config::types::WindowsSandboxModeToml; pub(super) use codex_core::config_loader::AppRequirementToml; pub(super) use codex_core::config_loader::AppsRequirementsToml; pub(super) use codex_core::config_loader::ConfigLayerStack; diff --git a/codex-rs/tui/src/history_cell.rs b/codex-rs/tui/src/history_cell.rs index badd43b67..cf65f918e 100644 --- a/codex-rs/tui/src/history_cell.rs +++ b/codex-rs/tui/src/history_cell.rs @@ -40,8 +40,8 @@ use crate::wrapping::adaptive_wrap_line; use crate::wrapping::adaptive_wrap_lines; use base64::Engine; use codex_app_server_protocol::McpServerStatus; +use codex_config::types::McpServerTransportConfig; use codex_core::config::Config; -use codex_core::config::types::McpServerTransportConfig; #[cfg(test)] use codex_core::mcp::McpManager; #[cfg(test)] @@ -2768,10 +2768,10 @@ mod tests { use crate::exec_cell::CommandOutput; use crate::exec_cell::ExecCall; use crate::exec_cell::ExecCell; + use codex_config::types::McpServerConfig; + use codex_config::types::McpServerDisabledReason; use codex_core::config::Config; use codex_core::config::ConfigBuilder; - use codex_core::config::types::McpServerConfig; - use codex_core::config::types::McpServerDisabledReason; use codex_otel::RuntimeMetricTotals; use codex_otel::RuntimeMetricsSummary; use codex_protocol::ThreadId; diff --git a/codex-rs/tui/src/notifications/mod.rs b/codex-rs/tui/src/notifications/mod.rs index e9a7ac1dd..ff5e3defa 100644 --- a/codex-rs/tui/src/notifications/mod.rs +++ b/codex-rs/tui/src/notifications/mod.rs @@ -5,7 +5,7 @@ use std::env; use std::io; use bel::BelBackend; -use codex_core::config::types::NotificationMethod; +use codex_config::types::NotificationMethod; use osc9::Osc9Backend; #[derive(Debug)] @@ -74,7 +74,7 @@ fn supports_osc9() -> bool { #[cfg(test)] mod tests { use super::detect_backend; - use codex_core::config::types::NotificationMethod; + use codex_config::types::NotificationMethod; use serial_test::serial; use std::ffi::OsString; diff --git a/codex-rs/tui/src/tui.rs b/codex-rs/tui/src/tui.rs index 9d521d1aa..0877835ba 100644 --- a/codex-rs/tui/src/tui.rs +++ b/codex-rs/tui/src/tui.rs @@ -45,7 +45,7 @@ use crate::tui::event_stream::EventBroker; use crate::tui::event_stream::TuiEventStream; #[cfg(unix)] use crate::tui::job_control::SuspendContext; -use codex_core::config::types::NotificationMethod; +use codex_config::types::NotificationMethod; mod event_stream; mod frame_rate_limiter;