1pub mod acp;
27pub mod api_keys;
28pub mod auth;
29pub mod codex;
30pub mod constants;
31pub mod context;
32pub mod core;
33pub mod debug;
34pub mod defaults;
35pub mod hooks;
36pub mod ide_context;
37pub mod loader;
38pub mod mcp;
39pub mod models;
40pub mod optimization;
41pub mod output_styles;
42pub mod root;
43#[cfg(feature = "schema")]
44pub mod schema;
45pub mod status_line;
46pub mod subagents;
47pub mod telemetry;
48pub mod timeouts;
49pub mod types;
50pub mod update;
51pub mod workspace_env;
52
53pub use acp::{
54 AgentClientProtocolConfig, AgentClientProtocolTransport, AgentClientProtocolZedConfig,
55 AgentClientProtocolZedToolsConfig, AgentClientProtocolZedWorkspaceTrustMode,
56 WorkspaceTrustLevel,
57};
58pub use api_keys::ApiKeySources;
59pub use context::{ContextFeaturesConfig, DynamicContextConfig, LedgerConfig};
60pub use core::{
61 AgentCodexAppServerConfig, AgentConfig, AgentOnboardingConfig, AgentPromptSuggestionsConfig,
62 AuthConfig, AutoModeConfig, AutoModeEnvironmentConfig, AutomationConfig, BundledSkillsConfig,
63 CommandsConfig, CopilotAuthConfig, DockerSandboxConfig, EditorToolConfig,
64 ExternalSandboxConfig, ExternalSandboxType, FullAutoConfig, GatekeeperConfig,
65 MicroVMSandboxConfig, ModelConfig, NetworkAllowlistEntryConfig, NetworkConfig,
66 OpenAIAuthConfig, OpenAIConfig, OpenAIHostedShellConfig, OpenAIHostedShellDomainSecret,
67 OpenAIHostedShellEnvironment, OpenAIHostedShellNetworkPolicy,
68 OpenAIHostedShellNetworkPolicyType, OpenAIHostedSkill, OpenAIManualCompactionConfig,
69 OpenAIPreferredMethod, OpenAIServiceTier, OpenResponsesConfig, OpenRouterAuthConfig,
70 PermissionMode, PluginRuntimeConfig, PluginTrustLevel, PromptCachingConfig,
71 ProviderPromptCachingConfig, ResourceLimitsConfig, ResourceLimitsPreset, SandboxConfig,
72 SandboxMode, SeccompConfig, SeccompProfilePreset, SecurityConfig, SensitivePathsConfig,
73 SkillsConfig, SkillsRenderMode, ToolPolicy, ToolsConfig, WebFetchConfig,
74};
75pub use debug::{DebugConfig, TraceLevel};
76pub use defaults::{
77 ConfigDefaultsProvider, ContextStoreDefaults, PerformanceDefaults, ScenarioDefaults,
78 SyntaxHighlightingDefaults, WorkspacePathsDefaults, current_config_defaults, get_config_dir,
79 get_data_dir, install_config_defaults_provider, reset_to_default_config_defaults,
80 with_config_defaults,
81};
82pub use hooks::{
83 HookCommandConfig, HookCommandKind, HookGroupConfig, HooksConfig, LifecycleHooksConfig,
84};
85pub use ide_context::{
86 IdeContextConfig, IdeContextProviderConfig, IdeContextProviderFamily, IdeContextProviderMode,
87 IdeContextProvidersConfig,
88};
89pub use loader::layers::{
90 ConfigLayerEntry, ConfigLayerLoadError, ConfigLayerMetadata, ConfigLayerSource,
91 ConfigLayerStack, LayerDisabledReason,
92};
93pub use loader::{
94 ConfigBuilder, ConfigManager, ConfigWatcher, SimpleConfigWatcher, SyntaxHighlightingConfig,
95 VTCodeConfig, fingerprint_str, fingerprint_toml_value, merge_toml_values,
96 merge_toml_values_with_origins,
97};
98pub use mcp::{
99 McpAllowListConfig, McpAllowListRules, McpClientConfig, McpHttpServerConfig, McpProviderConfig,
100 McpStdioServerConfig, McpTransportConfig, McpUiConfig, McpUiMode,
101};
102pub use models::{ModelId, OpenRouterMetadata};
103pub use optimization::{
104 AgentExecutionConfig, AsyncPipelineConfig, CommandCacheConfig, FileReadCacheConfig,
105 LLMClientConfig, MemoryPoolConfig, OptimizationConfig, ProfilingConfig, ToolRegistryConfig,
106};
107pub use output_styles::{OutputStyle, OutputStyleConfig, OutputStyleManager};
108pub use root::{
109 AskQuestionsConfig, ChatConfig, LayoutModeOverride, NotificationDeliveryMode, PtyConfig,
110 PtyEmulationBackend, ReasoningDisplayMode, ToolOutputMode, UiConfig, UiDisplayMode,
111 UiNotificationsConfig,
112};
113#[cfg(feature = "schema")]
114pub use schema::{vtcode_config_schema, vtcode_config_schema_json, vtcode_config_schema_pretty};
115pub use status_line::{StatusLineConfig, StatusLineMode};
116pub use subagents::{
117 DiscoveredSubagents, SubagentDiscoveryInput, SubagentMcpServer, SubagentMemoryScope,
118 SubagentRuntimeLimits, SubagentSource, SubagentSpec, builtin_subagents, discover_subagents,
119 load_subagent_from_file,
120};
121pub use telemetry::TelemetryConfig;
122pub use timeouts::{TimeoutsConfig, resolve_timeout};
123pub use types::{
124 EditingMode, ReasoningEffortLevel, SystemPromptMode, ToolDocumentationMode,
125 UiSurfacePreference, VerbosityLevel,
126};
127pub use workspace_env::{read_workspace_env_value, write_workspace_env_value};
128
129pub use auth::{
131 AuthStatus, CopilotAuthConfig as AuthCopilotConfig, McpOAuthConfig, McpOAuthService,
132 McpOAuthStatus, McpOAuthToken, OpenAIAccountAuthService, OpenAIChatGptAuthHandle,
133 OpenAIChatGptAuthStatus, OpenAIChatGptSession, OpenRouterOAuthConfig, OpenRouterToken,
134 PkceChallenge, clear_oauth_token, clear_openai_chatgpt_session, generate_pkce_challenge,
135 get_auth_status, get_auth_url, get_openai_chatgpt_auth_status, get_openai_chatgpt_auth_url,
136 load_oauth_token, load_openai_chatgpt_session, resolve_openai_auth, save_oauth_token,
137 save_openai_chatgpt_session,
138};
139pub use codex::{
140 FileOpener, HistoryConfig, HistoryPersistence, TerminalNotificationMethod, TuiAlternateScreen,
141 TuiConfig, TuiNotificationEvent, TuiNotificationsConfig,
142};