.db file — no external database required.
Quick Start
How It Works
| Table | Purpose |
|---|---|
sessions | Session metadata |
messages | User and agent messages |
runs | Agent execution runs |
tool_calls | Tool usage records |
Sync vs Async
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
mode | "sync" | "async" | "auto" | "auto" | Backend variant; invalid values raise ValueError |
path | str | "praisonai_conversations.db" | SQLite file path (sync store) |
table_prefix | str | "praison_" | Table name prefix (alphanumeric only) |
URL formats
Best Practices
Use sync mode for multi-agent scripts
Use sync mode for multi-agent scripts
The
sync_sqlite backend (mode="sync") uses per-call connection locking for multi-threaded agents.Use absolute paths in production
Use absolute paths in production
Set the database path via environment variables and use absolute paths for deployments.
Enable WAL for better concurrency
Enable WAL for better concurrency
Run
PRAGMA journal_mode=WAL when multiple readers share the same file.Migrate to PostgreSQL at scale
Migrate to PostgreSQL at scale
SQLite handles thousands of conversations; move to PostgreSQL for multi-instance deployments.
Related
PostgreSQL Persistence
Scale up when you outgrow SQLite
Database Persistence
Compare all persistence backends

