Skip to main content

vtcode_llm/providers/shared/
mod.rs

1//! Shared provider wire helpers with stable facade imports.
2
3mod prompt_cache;
4mod responses_adapter;
5mod responses_stream;
6mod sse;
7mod stream;
8mod tag_sanitizer;
9mod tool_output;
10mod usage;
11mod utf8;
12
13pub use crate::providers::ReasoningBuffer;
14pub(crate) use prompt_cache::{session_lineage_from_prompt_cache_key, split_dynamic_prompt_suffix};
15pub(crate) use responses_stream::{
16    RESPONSES_COMPLETION_TOKEN_KEYS, RESPONSES_PROMPT_TOKEN_KEYS, ResponsesStreamEventPolicy,
17    response_stream_event_policy,
18};
19pub(crate) use responses_stream::{
20    ResponsesNormalizedStreamOptions, ResponsesNormalizedStreamProcessor, create_responses_normalized_stream,
21};
22pub(crate) use sse::{drain_consumed_sse, extract_data_payload, find_sse_boundary_bytes, next_sse_event};
23pub use stream::{
24    NoopStreamTelemetry, OpenAiDeltaOrder, StreamAssemblyError, StreamDelta, StreamFragment, StreamTelemetry,
25    ToolCallBuilder,
26};
27pub(crate) use stream::{
28    StreamAggregator, collect_tool_references_from_tool_search_output, generate_tool_call_id,
29    handle_openai_compatible_chunk, parse_openai_tool_calls, process_openai_stream,
30};
31pub use tag_sanitizer::TagStreamSanitizer;
32pub(crate) use tool_output::{
33    function_output_value_from_message_content, parse_compacted_output_messages,
34    tool_result_content_from_message_content,
35};
36pub(crate) use usage::{
37    parse_cache_write_tokens_from_usage, parse_cached_prompt_tokens_from_usage, usage_u32_from_keys,
38};
39pub use utf8::Utf8StreamDecoder;