senno 0.2.0

Wits for your backend: provider-agnostic LLM client and streaming tool-calling agent engine, Vertex AI first (Gemini + Claude on Vertex), with built-in history compaction.
Documentation
1
2
3
4
5
6
7
8
9
10
use crate::error::Error;
use crate::provider::LlmProvider;
use crate::types::{GenerateRequest, GenerateResponse};

pub async fn one_shot(
    provider: &dyn LlmProvider,
    request: &GenerateRequest,
) -> Result<GenerateResponse, Error> {
    provider.generate(request).await
}