Quick Start
How It Works
Redis is a state store — fast key-value access for agent preferences and runtime data. Conversation history usesdatabase_url separately.
| Feature | Description |
|---|---|
| In-memory speed | Sub-millisecond reads and writes |
| TTL support | Expire keys automatically with ttl |
| Key prefix | Namespace keys with prefix (default praison:) |
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
url | str | None | Full Redis URL (overrides host/port/db/password) |
host | str | "localhost" | Redis host when url is not set |
port | int | 6379 | Redis port |
db | int | 0 | Redis database number |
password | str | None | Redis password |
prefix | str | "praison:" | Key prefix for namespacing |
decode_responses | bool | True | Compatibility flag (not used internally) |
socket_timeout | int | 5 | Socket timeout in seconds |
max_connections | int | 10 | Compatibility flag for pool size |
URL formats
Best Practices
Pair Redis with a SQL conversation backend
Pair Redis with a SQL conversation backend
Use
database_url for chat history and state_url for fast ephemeral state.Set TTL on ephemeral keys
Set TTL on ephemeral keys
Pass
ttl when storing session-scoped data that should expire automatically.Use a key prefix per environment
Use a key prefix per environment
Set
prefix="prod:" vs prefix="staging:" to isolate keys on a shared Redis instance.Enable persistence for durability
Enable persistence for durability
Configure Redis AOF or RDB snapshots if state must survive Redis restarts.
Related
MongoDB State Store
Document-based state with flexible schemas
Database Persistence
Overview of conversation and state backends

