Team support on AgentUI

I noted we have added demo example of Agent UI for teams here recently. So i’m assuming Agent UI now supports team. But I’m facing issues while running it.

Code:

common_memory = Memory(
    model=azure_openai_model,
    db=PgMemoryDb(
        table_name="memory",
        schema="memories",
        db_url=db_url,
    )
)

def get_loan_upselling_team() -> Team:
    loan_upselling_team: Team = Team(
        name="Loan Upselling team.",
        user_id=user_id,
        mode="coordinate",
        session_id=session_id,
        session_state={"state": "running"},
        storage=session_db,
        memory=common_memory,
        model=azure_openai_model,
        members=[sales_agent, verification_agent, decision_making_agent],
        description="A team of agents handling customer queries for personal loan processes at Horizon Financial.",
        instructions="some instructions",
        success_criteria="some success criteria",
        add_context=True,
        context={"session_id":session_id},
        add_state_in_messages=True,
        # add_datetime_to_instructions=True,
        enable_agentic_context=True,
        share_member_interactions=True,
        read_team_history=True,
        enable_team_history=True,
        show_tool_calls=True,
        show_members_responses=True,
        debug_mode=True,
        num_of_interactions_from_history=10,

        # new params support in v1.3
        enable_agentic_memory=True,
        enable_user_memories=True,
        enable_session_summaries=True
    )
    loan_upselling_team.tools = [TeamToolkit(loan_upselling_team)]

    return loan_upselling_team

@Dirk @Monali @ayush @kausmos @anuragphi @monalisha

Hi @MahorShekhar

thanks for reaching out and supporting Agno!

We’ve shared this with the team and are working through requests one by one—we’ll get back to you as soon as we can.We’ve just kicked off the Global Agent Hackathon , so things are a bit busier than usual. If you’re up for it, we’d love for you to join—it’s a great chance to build, win some exciting prizes and connect with the agent community!

If it’s urgent, just let us know. Thanks for your patience!

Hey @MahorShekhar No unfortunately - our AgentUI still doesn’t support teams. I assure you - it’s on our todo. But you can use it on our app’s playground here: Agno

@priti I tried using playground. But code breaks. Please the logs

Traceback (most recent call last):
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 147, in call_next
    message = await recv_stream.receive()
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/anyio/streams/memory.py", line 111, in receive
    return self.receive_nowait()
           ~~~~~~~~~~~~~~~~~~~^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/anyio/streams/memory.py", line 104, in receive_nowait
    raise EndOfStream
anyio.EndOfStream

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        self.scope, self.receive, self.send
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/fastapi/applications.py", line 1054, in __call__
    await super().__call__(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/applications.py", line 112, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 187, in __call__
    raise exc
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/errors.py", line 165, in __call__
    await self.app(scope, receive, _send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/cors.py", line 93, in __call__
    await self.simple_response(scope, receive, send, request_headers=headers)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/cors.py", line 144, in simple_response
    await self.app(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 181, in __call__
    raise app_exc
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/agno/playground/playground.py", line 84, in general_exception_handler
    return await call_next(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 153, in call_next
    raise app_exc
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/base.py", line 140, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/middleware/exceptions.py", line 62, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/routing.py", line 714, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/routing.py", line 734, in app
    await route.handle(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/routing.py", line 288, in handle
    await self.app(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/routing.py", line 76, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/starlette/routing.py", line 73, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/fastapi/routing.py", line 301, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<3 lines>...
    )
    ^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/fastapi/routing.py", line 212, in run_endpoint_function
    return await dependant.call(**values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/agno/playground/async_router.py", line 611, in get_teams
    return [TeamGetResponse.from_team(team) for team in teams]
            ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/Users/Shekhar/agno_ai_poc/venv/lib/python3.13/site-packages/agno/playground/schemas.py", line 169, in from_team
    memory_dict["db"] = team.memory.db.__dict__()  # type: ignore
                        ~~~~~~~~~~~~~~~~~~~~~~~^^
TypeError: 'dict' object is not callable

Could you guys please take a look at this ?

Hey @MahorShekhar I was able to run teams on our playground. Do you mind checking two things for me:

  • you’re passing agent_id to all agent members
  • you’re passing team_id to the Team

If it’s still not fixed- do you mind sharing your full team configuration?

I figured it out. There was code issue in memory configuration. there was mixup of legacy memory and v2 memory database classes. that’s why code was breaking.

thank you so much @priti for your assistance.

1 Like