1pub use crate::error::{KernelError, Result};
8
9#[cfg(feature = "provider")]
12pub use crate::provider::{
13 AuthStrategy, ModelCapabilities, ModelCost, ModelDescriptor, ModelLimit, ModelModalities,
14 ProviderIndex, ServiceDescriptor,
15};
16
17#[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#[cfg(feature = "secrets")]
32pub use crate::secrets::{SecretVault, redact_credential};
33
34#[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#[cfg(feature = "mcp")]
47pub use crate::mcp::{
48 BearerAuth, Handler, JsonRpcDispatcher, McpServer, ResourceDescription, ToolDescription,
49};
50
51#[cfg(feature = "tokens")]
54pub use crate::tokens::estimate_tokens;
55
56#[cfg(feature = "search")]
59pub use crate::search::{SearchResult, rrf_fuse};
60
61#[cfg(feature = "embedding")]
64pub use crate::embedding::{EmbeddingProvider, EmbeddingResult, cosine_similarity};
65
66#[cfg(feature = "telemetry")]
69pub use crate::telemetry::{
70 ConsoleSink, FailureClass, FeatureName, NoopSink, ProviderCategory, TelemetryEvent,
71 TelemetrySink, ToolName,
72};
73
74#[cfg(feature = "safety")]
77pub use crate::safety::{
78 FailureCategory, classify_failure, mask_secrets, sanitize_output, strip_ansi,
79};
80
81#[cfg(feature = "dlp")]
84pub use crate::dlp::{
85 DataPolicy, Finding, FindingCategory, PolicyAction, ScanReport, Sensitivity, Severity, Span,
86 lookup, scan,
87};
88
89#[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#[cfg(feature = "store")]
100pub use crate::store::{
101 MigrationFn, SchemaVersion, init_in_memory, init_schema, init_schema_with_migrations,
102};
103
104#[cfg(feature = "config")]
107pub use crate::config::{default_config_template, load_toml_config};
108
109#[cfg(feature = "install")]
112pub use crate::install::{AgentKind, McpConfig, generate_mcp_config};