Skip to main content
The postgresql backend stores sessions in a PostgreSQL database. Multiple agent instances can connect to the same database for shared, distributed persistence.

When to use

  • Production, multi-instance, or distributed deployments;
  • Teams already using PostgreSQL as shared storage.

Usage

Provide connection details via config.yaml (or the matching environment variables) — never hard-code the password.
To forward SQLAlchemy driver args such as connection pooling, use db_kwargs:
You can also inject a PostgreSqlConfig directly through backend_configs to override the environment variables:

Parameters

ShortTermMemory constructor parameters (postgresql)

PostgreSqlConfig fields and environment variables

The PostgreSqlConfig config class uses the env prefix DATABASE_POSTGRESQL_.
config.yaml
VeADK selects a PostgreSQL driver compatible with the installed Google ADK version and automatically encodes special characters in usernames and passwords. You can provision PostgreSQL on Volcengine.
Use schema when several VeADK deployments share a database but must keep separate session tables. Schema names may contain letters, digits, and underscores and cannot start with a digit.
Last modified on September 19, 2026