Skip to main content

Code

cookbook/05_agent_os/interfaces/agui/research_team.py
from agno.agent.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.os import AgentOS
from agno.os.interfaces.agui import AGUI
from agno.team import Team
from agno.tools.websearch import WebSearchTools

researcher = Agent(
    name="researcher",
    role="Research Assistant",
    model=OpenAIResponses(id="gpt-5.4"),
    instructions="You are a research assistant. Find information and provide detailed analysis.",
    tools=[WebSearchTools()],
    markdown=True,
)

writer = Agent(
    name="writer",
    role="Content Writer",
    model=OpenAIResponses(id="gpt-5.4"),
    instructions="You are a content writer. Create well-structured content based on research.",
    tools=[WebSearchTools()],
    markdown=True,
)

research_team = Team(
    members=[researcher, writer],
    name="research_team",
    instructions="""
    You are a research team that helps users with research and content creation.
    First, use the researcher to gather information, then use the writer to create content.
    """,
    show_members_responses=True,
    get_member_information_tool=True,
    add_member_tools_to_context=True,
    add_history_to_context=True,
)

agent_os = AgentOS(
    teams=[research_team],
    interfaces=[AGUI(team=research_team)],
)
app = agent_os.get_app()

if __name__ == "__main__":
    agent_os.serve(app="research_team:app", reload=True, port=9001)

Usage

1

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate
2

Set Environment Variables

export OPENAI_API_KEY=your_openai_api_key
3

Install Dependencies

uv pip install 'agno[agui]' ddgs
4

Run Example

python cookbook/05_agent_os/interfaces/agui/research_team.py

Key Features

  • Multi-Agent Team: Researcher and writer collaborate on one request
  • Specialized Roles: Each member has a distinct role and instructions
  • Visible Members: show_members_responses=True surfaces each member’s output
  • Shared Tools: Members use WebSearchTools for current information

Setup Frontend

  1. Clone the AG-UI repository: git clone https://github.com/ag-ui-protocol/ag-ui.git
  2. Install the TypeScript SDK: cd ag-ui/typescript-sdk && pnpm install
  3. Build the Agno integration: cd integrations/agno && pnpm run build
  4. Start Dojo: cd ../../apps/dojo && pnpm run dev
  5. Open http://localhost:3000 and select the Agno integration