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    ChoiceDecisionAnswer, ChoiceDecisionRequest, ChoiceDecisionResponse, CodingAgentSettings, ContentPart,
12    ContextWindowProvider, DECISIONS_MODEL, DecisionChoiceOption, DecisionProbability, FallbackModel, FinishReason,
13    FunctionCall, FunctionDefinition, GrammarDefinition, LLMError, LLMErrorMetadata, LLMNormalizedStream, LLMProvider,
14    LLMRequest, LLMResponse, LLMStream, LLMStreamEvent, Message, MessageClearAt, MessageContent, MessageRole,
15    NormalizedStreamEvent, ParallelToolConfig, PreparedResponsesRequest, PromptCacheProfile, ProviderCapabilities,
16    ReasoningSource, ResponsesCompactionOptions, ResponsesContinuationState, ShellToolDefinition,
17    SpecificFunctionChoice, SpecificToolChoice, ToolCall, ToolChoice, ToolDefinition, ToolNamespace,
18    ToolSearchAlgorithm, Usage, get_cached_capabilities, prepare_openai_responses_request,
19    prepare_responses_continuation_request, records_responses_continuation_state, responses_continuation_key,
20    supports_responses_chaining, uses_incremental_responses_history,
21};