Team History
Share conversation history across team members with add_team_history_to_members so one agent can recall context another agent received.
In this team, the leader routes requests to the appropriate member and the members respond directly to the user.
Using add_team_history_to_members=True, each team member has access to the shared history of the team, allowing them to use context from previous interactions with other members.
How it Works
When add_team_history_to_members=True, team history is appended to tasks sent to members:
<team_history_context>
[run-1]
input: Hallo, wie heißt du? Mein Name ist John.
response: Ich heiße ChatGPT.
</team_history_context>This allows the Spanish agent to recall the name "John" that was originally shared with the German agent.
With respond_directly=True, the member's reply is the final response. This curated example does not ask the leader to translate or synthesize it afterward.
Code
from uuid import uuid4
from agno.agent import Agent
from agno.db.sqlite import SqliteDb
from agno.models.openai import OpenAIResponses
from agno.team.team import Team
german_agent = Agent(
name="German Agent",
role="You answer German questions.",
model=OpenAIResponses(id="gpt-5.2"),
)
spanish_agent = Agent(
name="Spanish Agent",
role="You answer Spanish questions.",
model=OpenAIResponses(id="gpt-5.2"),
)
multi_lingual_q_and_a_team = Team(
name="Multi Lingual Q and A Team",
model=OpenAIResponses(id="gpt-5.2"),
members=[german_agent, spanish_agent],
instructions=[
"You are a multi lingual Q and A team that can answer questions in German and Spanish. You MUST delegate the task to the appropriate member based on the language of the question.",
"If the question is in German, delegate to the German agent. If the question is in Spanish, delegate to the Spanish agent.",
],
db=SqliteDb(
db_file="tmp/multi_lingual_q_and_a_team.db"
), # Add a database to store the conversation history. This is a requirement for history to work correctly.
determine_input_for_members=False, # Send the input directly to the member agents without the team leader synthesizing its own input.
respond_directly=True,
add_team_history_to_members=True, # Send the last three team input/output pairs to members.
)
session_id = f"conversation_{uuid4()}"
# First give information to the team
## Ask question in German
multi_lingual_q_and_a_team.print_response(
"Hallo, wie heißt du? Meine Name ist John.", stream=True, session_id=session_id
)
# Then watch them recall the information (the question below states: "Tell me a 2-sentence story using my name")
## Follow up in Spanish
multi_lingual_q_and_a_team.print_response(
"Cuéntame una historia de 2 oraciones usando mi nombre real.",
stream=True,
session_id=session_id,
)Usage
Create a Python file
Create team_history.py with the code above.
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U agno openai sqlalchemyExport your OpenAI API key
export OPENAI_API_KEY="your_openai_api_key_here"Run Team
python team_history.py