This example demonstrates how to manage session state across different runs for different users. It shows how session state persists within the same session but is isolated between different sessions and users.
from agno.agent import Agentfrom agno.db.in_memory import InMemoryDbfrom agno.models.openai import OpenAIChatagent = Agent( db=InMemoryDb(), model=OpenAIChat(id="gpt-5-mini"), instructions="Users name is {user_name} and age is {age}", debug_mode=True,)# Sets the session state for the session with the id "user_1_session_1"agent.print_response( "What is my name?", session_id="user_1_session_1", user_id="user_1", session_state={"user_name": "John", "age": 30},)# Will load the session state from the session with the id "user_1_session_1"agent.print_response("How old am I?", session_id="user_1_session_1", user_id="user_1")# Sets the session state for the session with the id "user_2_session_1"agent.print_response( "What is my name?", session_id="user_2_session_1", user_id="user_2", session_state={"user_name": "Jane", "age": 25},)# Will load the session state from the session with the id "user_2_session_1"agent.print_response("How old am I?", session_id="user_2_session_1", user_id="user_2")