ADK-Rust
Rust Agent Development Kit (ADK-Rust) - Build AI agents in Rust with modular components for models, tools, memory, realtime voice, and more.
A flexible framework for developing AI agents with simplicity and power. Model-agnostic, deployment-agnostic, optimized for frontier AI models. Includes support for realtime voice agents with OpenAI Realtime API and Gemini Live API.
Quick Start
1. Create a new project:
&&
2. Add dependencies:
[]
= "0.1"
= { = "1.40", = ["full"] }
= "0.15"
3. Set your API key:
4. Write src/main.rs:
use *;
use Launcher;
use Arc;
async
5. Run:
Adding Tools
let agent = new
.instruction
.model
.tool
.build?;
Workflow Agents
// Sequential execution
let pipeline = new;
// Parallel execution
let parallel = new;
// Loop until condition
let loop_agent = new;
Multi-Agent Systems
let coordinator = new
.instruction
.model
.sub_agent
.sub_agent
.build?;
Realtime Voice Agents
Build voice-enabled AI assistants with bidirectional audio streaming:
use ;
let model: = new;
let agent = builder
.model
.instruction
.voice
.server_vad // Voice activity detection
.build?;
Features:
- OpenAI Realtime API & Gemini Live API
- Bidirectional audio (PCM16, G711)
- Server-side VAD
- Real-time tool calling
- Multi-agent handoffs
Graph-Based Workflows
Build complex workflows using LangGraph-style graph agents:
use *;
let agent = builder
.node_fn
.node_fn
.edge
.edge
.edge
.checkpointer
.build?;
Features:
- Cyclic graphs for ReAct patterns
- Conditional routing
- State management with reducers
- Checkpointing (memory, SQLite)
- Human-in-the-loop interrupts
Browser Automation
Give agents web browsing capabilities with 46 tools:
use ;
let session = new.await?;
let toolset = new;
let tools = toolset.all_tools; // 46 browser tools
let agent = new
.model
.tools
.build?;
Tools include navigation, extraction, forms, screenshots, JavaScript execution, and more.
Agent Evaluation
Test and validate agent behavior:
use ;
let evaluator = new;
let report = evaluator.evaluate_file.await?;
assert!;
Deployment
# Console mode (default)
# Server mode
Installation Options
# Full (default)
= "0.1"
# Minimal
= { = "0.1", = false, = ["minimal"] }
# Custom
= { = "0.1", = false, = ["agents", "gemini", "tools"] }
Documentation
License
Apache 2.0