Skip to main content

vtcode_core/llm/
provider.rs

1//! Universal LLM provider abstraction with API-specific role handling.
2//!
3//! The canonical trait, request/response types, and tool definitions live in
4//! [`vtcode_llm::provider`]. This module re-exports them so the historical
5//! `crate::llm::provider::*` import paths continue to resolve throughout
6//! `vtcode-core`.
7
8pub use vtcode_llm::provider::{
9    AnthropicOptionalStringOverride, AnthropicOptionalU32Override, AnthropicRequestOverrides, AnthropicThinkingConfig,
10    AnthropicThinkingDisplayOverride, AnthropicThinkingModeOverride, AssistantPhase, BorrowedLLMStream,
11    CodingAgentSettings, ContentPart, ContextWindowProvider, FallbackModel, FinishReason, FunctionCall,
12    FunctionDefinition, GrammarDefinition, LLMError, LLMErrorMetadata, LLMNormalizedStream, LLMProvider, LLMRequest,
13    LLMResponse, LLMStream, LLMStreamEvent, Message, MessageClearAt, MessageContent, MessageRole,
14    NormalizedStreamEvent, ParallelToolConfig, PreparedResponsesRequest, PromptCacheProfile, ProviderCapabilities,
15    ReasoningSource, ResponsesCompactionOptions, ResponsesContinuationState, ShellToolDefinition,
16    SpecificFunctionChoice, SpecificToolChoice, ToolCall, ToolChoice, ToolDefinition, ToolNamespace,
17    ToolSearchAlgorithm, Usage, get_cached_capabilities, prepare_openai_responses_request,
18    prepare_responses_continuation_request, records_responses_continuation_state, responses_continuation_key,
19    supports_responses_chaining, uses_incremental_responses_history,
20};