Parallel Tasks Execution Example

Demonstrates task mode with parallel execution.

Demonstrates task mode with parallel execution. The team leader creates independent tasks that can run concurrently, then synthesizes results.

parallel.py
"""
Parallel Tasks Execution Example

Demonstrates task mode with parallel execution. The team leader creates
independent tasks that can run concurrently, then synthesizes results.

"""

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.team.mode import TeamMode
from agno.team.team import Team

# ---------------------------------------------------------------------------
# Create Members
# ---------------------------------------------------------------------------

frontend_reviewer = Agent(
    name="Frontend Reviewer",
    role="Reviews frontend architecture and UI patterns",
    model=OpenAIResponses(id="gpt-5.2"),
    instructions=[
        "You review frontend architecture decisions.",
        "Evaluate component patterns, state management, and UX considerations.",
        "Provide a clear assessment with recommendations.",
    ],
)

backend_reviewer = Agent(
    name="Backend Reviewer",
    role="Reviews backend architecture and API design",
    model=OpenAIResponses(id="gpt-5.2"),
    instructions=[
        "You review backend architecture decisions.",
        "Evaluate API design, data models, scalability, and security.",
        "Provide a clear assessment with recommendations.",
    ],
)

devops_reviewer = Agent(
    name="DevOps Reviewer",
    role="Reviews infrastructure and deployment strategy",
    model=OpenAIResponses(id="gpt-5.2"),
    instructions=[
        "You review infrastructure and deployment decisions.",
        "Evaluate CI/CD, hosting, monitoring, and scalability strategy.",
        "Provide a clear assessment with recommendations.",
    ],
)

# ---------------------------------------------------------------------------
# Create Team
# ---------------------------------------------------------------------------

team = Team(
    name="Architecture Review Team",
    mode=TeamMode.tasks,
    model=OpenAIResponses(id="gpt-5.2"),
    members=[frontend_reviewer, backend_reviewer, devops_reviewer],
    instructions=[
        "You lead an architecture review team.",
        "When reviewing a system design:",
        "1. Create separate tasks for frontend, backend, and devops review.",
        "2. These reviews are independent -- use execute_tasks_parallel to run them concurrently.",
        "3. After all reviews complete, synthesize into a unified assessment.",
    ],
    show_members_responses=True,
    markdown=True,
    max_iterations=10,
)

# ---------------------------------------------------------------------------
# Run Team
# ---------------------------------------------------------------------------

if __name__ == "__main__":
    team.print_response(
        "Review this architecture: A SaaS app using React + Next.js frontend, "
        "Python FastAPI backend with PostgreSQL, deployed on AWS with Docker "
        "and GitHub Actions CI/CD."
    )

Example behavior

When selected, execute_tasks_parallel uses a thread pool for synchronous runs and concurrent async member calls for async runs. This differs from synchronous broadcast. Each independent task needs an assigned member. The review is based on the supplied architecture description; no repository or deployment is inspected.

Task creation and execution are chosen by the leader through task tools. max_iterations bounds the outer task loop, not the number of model requests or successful tasks. Inspect task state to distinguish completed work from a run that reached this limit.

Run the Example

Set up your virtual environment

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

Install dependencies

uv pip install -U agno openai

Export your OpenAI API key

export OPENAI_API_KEY="your_openai_api_key_here"

Run the example

Save the code above as parallel.py, then run:

python parallel.py

Full source: cookbook/03_teams/02_modes/tasks/02_parallel.py