mirror of
https://github.com/openai/codex.git
synced 2026-10-31 19:28:49 +00:00
## What changed Add `CodexThread::replace_dynamic_tools` to replace the tool catalog without starting a turn. Updates apply to subsequent model steps and future turns while preserving in-flight calls; an empty list clears the catalog. Require host opt-in through `allow_persistent_dynamic_tool_updates` for persistent threads. Persist replacements before publishing them, restore the latest catalog on resume, and preserve replacements and explicit clears through compaction. Keep explicit resume overrides separate from the persisted catalog. ## Testing Add coverage for pending calls during replacement, replacement and clearing across restart, compaction recovery, resume overrides, submission ordering after caller cancellation, host opt-in, and persistence failures. GitOrigin-RevId: fd2634906895a9b72ae7892ddd9435dced45eccb
153 lines
7.2 KiB
Rust
153 lines
7.2 KiB
Rust
//! Public facade for thread management APIs built on `codex-core`.
|
|
|
|
#![deny(private_bounds, private_interfaces, unreachable_pub)]
|
|
|
|
pub use codex_analytics::AnalyticsEventsClient;
|
|
pub use codex_app_server_protocol::ServerNotification;
|
|
pub use codex_app_server_protocol::item_event_to_server_notification;
|
|
pub use codex_arg0::Arg0DispatchPaths;
|
|
pub use codex_arg0::arg0_dispatch_or_else;
|
|
pub use codex_config::ConfigLayerStack;
|
|
pub use codex_config::ConfigLoadOptions;
|
|
pub use codex_config::ConfigRequirements;
|
|
pub use codex_config::ConfigRequirementsToml;
|
|
pub use codex_config::config_toml::ProjectConfig;
|
|
pub use codex_config::config_toml::RealtimeAudioConfig;
|
|
pub use codex_config::config_toml::RealtimeConfig;
|
|
pub use codex_config::types::AuthCredentialsStoreMode;
|
|
pub use codex_config::types::AuthKeyringBackendKind;
|
|
pub use codex_config::types::History;
|
|
pub use codex_config::types::MemoriesConfig;
|
|
pub use codex_config::types::ModelAvailabilityNuxConfig;
|
|
pub use codex_config::types::Notice;
|
|
pub use codex_config::types::OAuthCredentialsStoreMode;
|
|
pub use codex_config::types::OtelConfig;
|
|
pub use codex_config::types::SessionPickerViewMode;
|
|
pub use codex_config::types::ToolSuggestConfig;
|
|
pub use codex_config::types::TuiKeymap;
|
|
pub use codex_config::types::TuiNotificationSettings;
|
|
pub use codex_config::types::TuiPetAnchor;
|
|
pub use codex_config::types::UriBasedFileOpener;
|
|
pub use codex_core::AgentTreeShutdown;
|
|
pub use codex_core::AgentTreeShutdownFailure;
|
|
pub use codex_core::AgentTreeShutdownFailureReason;
|
|
pub use codex_core::AgentTreeShutdownReport;
|
|
pub use codex_core::CodexAppsToolsCache;
|
|
pub use codex_core::CodexThread;
|
|
pub use codex_core::CodexThreadSettingsOverrides;
|
|
pub use codex_core::EnvironmentConfig;
|
|
pub use codex_core::EnvironmentMcpPolicy;
|
|
pub use codex_core::EnvironmentNetworkPolicy;
|
|
pub use codex_core::ForkSnapshot;
|
|
pub use codex_core::LoadedAgentsMd;
|
|
pub use codex_core::McpManager;
|
|
pub use codex_core::NetworkDomainPermission;
|
|
pub use codex_core::NetworkDomainPermissionEntry;
|
|
pub use codex_core::NetworkDomainPermissions;
|
|
pub use codex_core::NetworkUnixSocketPermission;
|
|
pub use codex_core::NetworkUnixSocketPermissions;
|
|
pub use codex_core::NewThread;
|
|
pub use codex_core::NotSubmittedReason;
|
|
pub use codex_core::PromptCacheKey;
|
|
pub use codex_core::RecoverTurnRequest;
|
|
pub use codex_core::StartIfIdleSubmission;
|
|
pub use codex_core::StartThreadOptions;
|
|
pub use codex_core::StateDbHandle;
|
|
pub use codex_core::SteerSubmission;
|
|
pub use codex_core::SuspendTurnOutcome;
|
|
pub use codex_core::ThreadManager;
|
|
pub use codex_core::ThreadShutdownReport;
|
|
pub use codex_core::TurnInput;
|
|
pub use codex_core::TurnInputRequest;
|
|
pub use codex_core::TurnInputSubmission;
|
|
pub use codex_core::TurnStartOptions;
|
|
pub use codex_core::WaitForEnvironmentToolConfig;
|
|
pub use codex_core::WithTurnExtensionData;
|
|
pub use codex_core::build_models_manager;
|
|
pub use codex_core::config::Config;
|
|
pub use codex_core::config::Constrained;
|
|
pub use codex_core::config::ExtraConfig;
|
|
pub use codex_core::config::GhostSnapshotConfig;
|
|
pub use codex_core::config::MultiAgentV2Config;
|
|
pub use codex_core::config::NetworkProxySpec;
|
|
pub use codex_core::config::Permissions;
|
|
pub use codex_core::config::TerminalResizeReflowConfig;
|
|
pub use codex_core::config::ThreadStoreConfig;
|
|
pub use codex_core::config::bootstrap_auth_config;
|
|
pub use codex_core::config::find_codex_home;
|
|
pub use codex_core::config::load_config_toml_with_layer_stack;
|
|
pub use codex_core::config::resolve_bootstrap_respect_system_proxy;
|
|
pub use codex_core::init_state_db;
|
|
pub use codex_core::local_agent_graph_store_from_state_db;
|
|
pub use codex_core::passthrough_image_store;
|
|
pub use codex_core::resolve_installation_id;
|
|
pub use codex_core::thread_store_from_config;
|
|
pub use codex_exec_server::EnvironmentManager;
|
|
pub use codex_exec_server::EnvironmentRegistryConnectRequest;
|
|
pub use codex_exec_server::EnvironmentRegistryConnectResponse;
|
|
pub use codex_exec_server::EnvironmentRegistryHarnessKeyValidationRequest;
|
|
pub use codex_exec_server::EnvironmentRegistryHarnessKeyValidationResponse;
|
|
pub use codex_exec_server::EnvironmentRegistryRegistrationRequest;
|
|
pub use codex_exec_server::EnvironmentRegistryRegistrationResponse;
|
|
pub use codex_exec_server::ExecServerError;
|
|
pub use codex_exec_server::ExecServerRuntimeOptions;
|
|
pub use codex_exec_server::NoiseChannelIdentity;
|
|
pub use codex_exec_server::NoiseChannelPublicKey;
|
|
pub use codex_exec_server::NoiseRendezvousConnectBundle;
|
|
pub use codex_exec_server::NoiseRendezvousConnectProvider;
|
|
pub use codex_extension_api::ExtensionRegistryBuilder;
|
|
pub use codex_extension_api::Instructions;
|
|
pub use codex_extension_api::LoadInstructionsFuture;
|
|
pub use codex_extension_api::LoadedUserInstructions;
|
|
pub use codex_extension_api::ThreadInstructionsProvider;
|
|
pub use codex_extension_api::UserInstructionsProvider;
|
|
pub use codex_extension_api::empty_extension_registry;
|
|
pub use codex_features::Feature;
|
|
pub use codex_features::Features;
|
|
pub use codex_history::InitialHistory;
|
|
pub use codex_history::latest_dynamic_tools;
|
|
pub use codex_home::CodexHomeUserInstructionsProvider;
|
|
pub use codex_image_generation_extension::install as install_image_generation_extension;
|
|
pub use codex_login::AuthHeaders;
|
|
pub use codex_login::AuthManager;
|
|
pub use codex_login::CodexAuth;
|
|
pub use codex_login::ExternalAuth;
|
|
pub use codex_login::ExternalAuthFuture;
|
|
pub use codex_login::ExternalAuthRefreshContext;
|
|
pub use codex_login::ExternalAuthRefreshReason;
|
|
pub use codex_login::default_client::set_default_originator;
|
|
pub use codex_model_provider_info::OPENAI_PROVIDER_ID;
|
|
pub use codex_model_provider_info::built_in_model_providers;
|
|
pub use codex_models_manager::manager::RefreshStrategy;
|
|
pub use codex_models_manager::manager::SharedModelsManager;
|
|
pub use codex_protocol::ThreadId;
|
|
pub use codex_protocol::capabilities::CapabilityRootLocation;
|
|
pub use codex_protocol::capabilities::SelectedCapabilityRoot;
|
|
pub use codex_protocol::config_types::AltScreenMode;
|
|
pub use codex_protocol::config_types::ApprovalsReviewer;
|
|
pub use codex_protocol::config_types::AutoCompactTokenLimitScope;
|
|
pub use codex_protocol::config_types::CollaborationModeMask;
|
|
pub use codex_protocol::config_types::ShellEnvironmentPolicy;
|
|
pub use codex_protocol::config_types::WebSearchMode;
|
|
pub use codex_protocol::dynamic_tools::DynamicToolFunctionSpec;
|
|
pub use codex_protocol::dynamic_tools::DynamicToolNamespaceSpec;
|
|
pub use codex_protocol::dynamic_tools::DynamicToolNamespaceTool;
|
|
pub use codex_protocol::dynamic_tools::DynamicToolSpec;
|
|
pub use codex_protocol::error::Result as CodexResult;
|
|
pub use codex_protocol::models::PermissionProfile;
|
|
pub use codex_protocol::models::PermissionProfileSnapshot;
|
|
pub use codex_protocol::openai_models::ModelPreset;
|
|
pub use codex_protocol::protocol::AskForApproval;
|
|
pub use codex_protocol::protocol::EnvironmentConfigState;
|
|
pub use codex_protocol::protocol::EventMsg;
|
|
pub use codex_protocol::protocol::Op;
|
|
pub use codex_protocol::protocol::SessionConfiguredEvent;
|
|
pub use codex_protocol::protocol::SessionSource;
|
|
pub use codex_protocol::protocol::ThreadSettingsOverrides;
|
|
pub use codex_protocol::protocol::TurnEnvironmentRequest;
|
|
pub use codex_protocol::protocol::TurnEnvironmentSelection;
|
|
pub use codex_protocol::protocol::W3cTraceContext;
|
|
pub use codex_protocol::user_input::UserInput;
|
|
pub use codex_state::SqliteConfig;
|
|
pub use codex_utils_absolute_path::AbsolutePathBuf;
|