| Crates.io | adk-session |
| lib.rs | adk-session |
| version | 0.2.1 |
| created_at | 2025-11-30 13:51:10.732502+00 |
| updated_at | 2026-01-22 03:37:38.143051+00 |
| description | Session management and state persistence for Rust Agent Development Kit (ADK-Rust) agents |
| homepage | |
| repository | https://github.com/zavora-ai/adk-rust |
| max_upload_size | |
| id | 1958242 |
| size | 97,483 |
Session management and state persistence for Rust Agent Development Kit (ADK-Rust) agents.
adk-session provides session and state management for the Rust Agent Development Kit (ADK-Rust):
[dependencies]
adk-session = "0.2.0"
Or use the meta-crate:
[dependencies]
adk-rust = { version = "0.2.1", features = ["sessions"] }
use adk_session::{InMemorySessionService, SessionService, CreateRequest, KEY_PREFIX_USER};
use serde_json::json;
use std::collections::HashMap;
// Create session service
let service = InMemorySessionService::new();
// Create a new session with initial state
let mut initial_state = HashMap::new();
initial_state.insert(format!("{}name", KEY_PREFIX_USER), json!("Alice"));
let session = service.create(CreateRequest {
app_name: "my_app".to_string(),
user_id: "user_123".to_string(),
session_id: None, // Auto-generate
state: initial_state,
}).await?;
// Read state (immutable)
let name = session.state().get("user:name");
ADK uses prefixes to organize state:
| Prefix | Purpose | Persistence |
|---|---|---|
user: |
User preferences | Across sessions |
app: |
Application state | Application-wide |
temp: |
Temporary data | Current turn only |
// State is set at session creation or via CreateRequest
let mut state = HashMap::new();
state.insert("user:theme".to_string(), json!("dark"));
state.insert("temp:current_step".to_string(), json!("2"));
// Read state
let theme = session.state().get("user:theme");
database feature)[dependencies]
adk-session = { version = "0.2.1", features = ["database"] }
database - Enable SQLite-backed sessionsSession traitApache-2.0
This crate is part of the ADK-Rust framework for building AI agents in Rust.