This example demonstrates how to use session state and manage user context across different sessions. It shows how session state persists and can be retrieved for different users and sessions.
1
Create a Python file
session_state_in_context.py
Copy
Ask AI
from agno.agent import Agentfrom agno.db.sqlite import SqliteDbfrom agno.models.openai import OpenAIResponsesdb = SqliteDb(db_file="tmp/agent.db")agent = Agent( model=OpenAIResponses(id="gpt-5.2"), instructions="Users name is {user_name} and age is {age}", db=db,)# 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}, stream=True,)# 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", stream=True)# 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}, stream=True,)# 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", stream=True)