Skip to main content

llm_kernel/
prelude.rs

1//! Re-exports of the most commonly used types.
2//!
3//! ```no_run
4//! use llm_kernel::prelude::*;
5//! ```
6
7pub use crate::error::{KernelError, Result};
8
9// --- Provider ---
10
11#[cfg(feature = "provider")]
12pub use crate::provider::{
13    AuthStrategy, ModelCapabilities, ModelCost, ModelDescriptor, ModelLimit, ModelModalities,
14    ProviderIndex, ServiceDescriptor,
15};
16
17// --- Client-async ---
18
19#[cfg(feature = "client-async")]
20pub use crate::llm::{
21    AnthropicClient, ChatMessage, ContentPart, LLMClient, LLMRequest, LLMRequestBuilder,
22    LLMResponse, LLMStream, MessageRole, ModelConfig, ObservabilityContext, OpenAIClient,
23    ReasoningConfig, ReasoningEffort, ReasoningSummary, ResponseFormat, StreamEvent, TokenUsage,
24    ToolCall, ToolDefinition, ToolResult, Verbosity,
25    json_extract::{JsonExtractor, extract_json, parse_json},
26    prompt::render_prompt,
27};
28
29// --- Secrets ---
30
31#[cfg(feature = "secrets")]
32pub use crate::secrets::{SecretVault, redact_credential};
33
34// --- Graph ---
35
36#[cfg(feature = "graph")]
37pub use crate::graph::{
38    EdgeDirection, Graph, GraphEdge, GraphNode, GraphNodeSummary, GraphStats, ScoredNode,
39    append_edge, build_graph, compute_stats, count_expired_nodes, decay_importance, delete_node,
40    graph_neighbors, init_graph_schema, mark_verified, query_nodes, read_node, related_nodes,
41    search_nodes, smart_recall, tag_stale_nodes, upsert_node,
42};
43
44// --- MCP ---
45
46#[cfg(feature = "mcp")]
47pub use crate::mcp::{
48    BearerAuth, Handler, JsonRpcDispatcher, McpServer, ResourceDescription, ToolDescription,
49};
50
51// --- Tokens ---
52
53#[cfg(feature = "tokens")]
54pub use crate::tokens::estimate_tokens;
55
56// --- Search ---
57
58#[cfg(feature = "search")]
59pub use crate::search::{SearchResult, rrf_fuse};
60
61// --- Embedding ---
62
63#[cfg(feature = "embedding")]
64pub use crate::embedding::{EmbeddingProvider, EmbeddingResult, cosine_similarity};
65
66// --- Telemetry ---
67
68#[cfg(feature = "telemetry")]
69pub use crate::telemetry::{
70    ConsoleSink, FailureClass, FeatureName, NoopSink, ProviderCategory, TelemetryEvent,
71    TelemetrySink, ToolName,
72};
73
74// --- Safety ---
75
76#[cfg(feature = "safety")]
77pub use crate::safety::{
78    FailureCategory, classify_failure, mask_secrets, sanitize_output, strip_ansi,
79};
80
81// --- DLP ---
82
83#[cfg(feature = "dlp")]
84pub use crate::dlp::{
85    DataPolicy, Finding, FindingCategory, PolicyAction, ScanReport, Sensitivity, Severity, Span,
86    lookup, scan,
87};
88
89// --- Discovery ---
90
91#[cfg(feature = "discovery")]
92pub use crate::discovery::{
93    ModelEntry, ModelLimits, ModelsDevPayload, fetch_and_cache, fetch_ollama_models,
94    fetch_openai_compatible_models, load_cache,
95};
96
97// --- Store ---
98
99#[cfg(feature = "store")]
100pub use crate::store::{
101    MigrationFn, SchemaVersion, init_in_memory, init_schema, init_schema_with_migrations,
102};
103
104// --- Config ---
105
106#[cfg(feature = "config")]
107pub use crate::config::{default_config_template, load_toml_config};
108
109// --- Install ---
110
111#[cfg(feature = "install")]
112pub use crate::install::{AgentKind, McpConfig, generate_mcp_config};