gemini-rs

Full Rust SDK for the Gemini Multimodal Live API — wire protocol, agent runtime, and fluent DX in three layered crates.

┌─────────────────────────────────────────────────────┐
│  gemini-adk-fluent-rs (L2 — Fluent DX)                    │
│  AgentBuilder · Live · S·C·T·P·M·A operators       │
├─────────────────────────────────────────────────────┤
│  gemini-adk-rs (L1 — Agent Runtime)                       │
│  Agent · Tools · State · Phases · TextAgent · LLM  │
├─────────────────────────────────────────────────────┤
│  gemini-genai-rs (L0 — Wire Protocol)                     │
│  Transport · Session · Protocol · VAD · Buffers    │
└─────────────────────────────────────────────────────┘

Quick Start

use gemini_adk_fluent_rs::prelude::*;

let handle = Live::builder()
    .model(GeminiModel::Gemini2_0Flash)
    .voice(Voice::Kore)
    .instruction("You are a helpful assistant.")
    .on_audio(|audio| { /* play audio */ })
    .on_text(|text| { /* display text */ })
    .connect()
    .await?;

Guide Structure

This book is organized into six sections:

  • Getting Started — Local setup, architecture overview, migration guide, and best practices
  • Voice & Live Sessions — Building real-time voice agents with phases, state, and watchers
  • Tools & Extraction — Tool system and structured data extraction from conversations
  • Composition & Patterns — Text agent combinators, S·C·T·P·M·A operators, middleware
  • Examples — 30 progressive cookbook examples (Crawl/Walk/Run) plus interactive gemini-adk-web-rs demos
  • ADK Web UI — Design system, dark/light mode, DevTools panels, and the cookbook browser

API Reference

For detailed type and method documentation, see the rustdoc API reference.

CrateLayerAPI Docs
gemini-genai-rsL0 — Wire Protocolgemini_genai_rs
gemini-adk-rsL1 — Agent Runtimegemini_adk_rs
gemini-adk-fluent-rsL2 — Fluent DXgemini_adk_fluent_rs