Expand description
meerkat-client - LLM provider abstraction for Meerkat
This crate provides a unified interface for calling different LLM providers.
Each provider implementation normalizes its streaming response to the common
LlmEvent type, hiding provider-specific quirks.
Re-exports§
pub use adapter::LlmClientAdapter;pub use block_assembler::BlockAssembler;pub use block_assembler::BlockKey;pub use block_assembler::StreamAssemblyError;pub use error::LlmError;pub use factory::DefaultClientFactory;pub use factory::DefaultFactoryConfig;pub use factory::FactoryError;pub use factory::LlmClientFactory;pub use factory::LlmProvider;pub use provider::ProviderResolver;pub use types::LlmClient;pub use types::LlmDoneOutcome;pub use types::LlmEvent;pub use types::LlmRequest;pub use types::LlmResponse;pub use types::ToolCallBuffer;pub use anthropic::AnthropicClient;pub use openai::OpenAiClient;pub use openai_compatible::OpenAiCompatibleClient;pub use openai_compatible::OpenAiCompatibleMode;pub use gemini::GeminiClient;
Modules§
- adapter
- Adapter from LlmClient to AgentLlmClient.
- anthropic
- Anthropic Claude API client
- block_
assembler - Block assembly for streaming LLM responses.
- error
- LLM client errors
- factory
- LLM client factory for creating provider-specific clients
- gemini
- Google Gemini API client
- openai
- OpenAI API client - Responses API
- openai_
compatible - OpenAI-compatible client for self-hosted endpoints.
- provider
- Provider resolution helpers shared across interfaces.
- types
- LLM client types
Structs§
- Test
Client - Simple test client that emits a deterministic response.