Share Member Interactions
Let team members see each other's interactions during the same run with share_member_interactions.
Share member interactions from the current run with other members by setting share_member_interactions=True.
This allows members to see what other members have done during the same run, enabling better coordination and avoiding duplicate work.
How it Works
When share_member_interactions=True, interaction details are appended to tasks sent to members:
<member_interaction_context>
See below interactions with other team members.
Member: User Profile Agent
Task: Get the user's profile information
Response: {"name": "John Doe", "email": "john.doe@example.com", ...}
Member: Technical Support Agent
Task: Answer technical support questions
Response: Here's how to change your billing address...
</member_interaction_context>This allows the Billing Agent to see that the User Profile Agent has already retrieved the user's information, avoiding duplicate tool calls.
When to Use
Use share_member_interactions=True when:
- Multiple members might need the same information
- You want to avoid duplicate API calls or tool executions
- Members need to coordinate their actions during a single run
- One member's work builds on another's within the same request
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
def get_user_profile() -> dict:
"""Get the user profile."""
return {
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "1234567890",
"billing_address": "123 Main St, Anytown, USA",
"login_type": "email",
"mfa_enabled": True,
}
user_profile_agent = Agent(
name="User Profile Agent",
role="You are a user profile agent that can retrieve information about the user and the user's account.",
model=OpenAIResponses(id="gpt-5.2"),
tools=[get_user_profile],
)
technical_support_agent = Agent(
name="Technical Support Agent",
role="You are a technical support agent that can answer questions about the technical support.",
model=OpenAIResponses(id="gpt-5.2"),
)
billing_agent = Agent(
name="Billing Agent",
role="You are a billing agent that can answer questions about the billing.",
model=OpenAIResponses(id="gpt-5.2"),
)
support_team = Team(
name="Technical Support Team",
model=OpenAIResponses(id="gpt-5-mini"),
members=[user_profile_agent, technical_support_agent, billing_agent],
instructions=[
"You are a technical support team for a Facebook account that can answer questions about the technical support and billing for Facebook.",
"Get the user's profile information first if the question is about the user's profile or account.",
],
db=SqliteDb(
db_file="tmp/technical_support_team.db"
), # Add a database to store the conversation history.
share_member_interactions=True, # Send member interactions DURING the current run to the other members.
show_members_responses=True,
)
session_id = f"conversation_{uuid4()}"
## Ask question about technical support
support_team.print_response(
"What is my billing address and how do I change it?",
stream=True,
session_id=session_id,
)
support_team.print_response(
"Do I have multi-factor enabled? How do I disable it?",
stream=True,
session_id=session_id,
)Usage
Create a Python file
Create share_member_interactions.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 share_member_interactions.py