Skip to main content
Current Version: v0.1.4
The Starter Multi-Agent (Level 1) demonstrates patterns for multiple agents working together using Agno Teams. It supports delegation, collaboration, and coordination modes to handle more complex tasks that require specialization.
This repository can be used as a base template for creating your own application. Select starter-multi-agent as the repository_template when provisioning a new repository via Self Service.

GitHub Repository

View source code, releases, and issues

Prerequisites

  • Python 3.12+: Managed via UV
  • UV Package Manager: Modern Python package manager (replaces pip/poetry)

Quick Start

1. Clone and Install UV

git clone https://github.com/bb-ecos-agbs/starter-multi-agent.git
cd starter-multi-agent

# Install UV (macOS)
brew install uv

# Install UV (Linux/WSL)
curl -LsSf https://astral.sh/uv/install.sh | sh

2. Setup Environment

# Create virtual environment
uv venv --python 3.12
source .venv/bin/activate  # macOS/Linux
# or .venv\Scripts\activate  # Windows

# Copy environment template
cp env.template .env

3. Configure Credentials

Update .env with your Backbase Artifactory credentials (required for bb-ai-sdk) and platform keys:
# Required - Artifactory credentials (for bb-ai-sdk)
UV_INDEX_BACKBASE_USERNAME[email protected]
UV_INDEX_BACKBASE_PASSWORD=your-artifactory-token

# AI Gateway
AI_GATEWAY_ENDPOINT=https://ai-gateway.backbase.cloud
AI_GATEWAY_API_KEY=your-api-key

# Observability (Langfuse)
LANGFUSE_PUBLIC_KEY=pk-lf-...
LANGFUSE_SECRET_KEY=sk-lf-...
LANGFUSE_HOST=https://langfuse.backbase.cloud

# Server Config
HOST=0.0.0.0
PORT=8001
DEBUG=true

# Web Proxy (Required for local dev)
HTTP_PROXY=http://webproxy.infra.backbase.cloud:8888
HTTPS_PROXY=http://webproxy.infra.backbase.cloud:8888
NO_PROXY=localhost,127.0.0.1

4. Install Dependencies and Run

Load environment variables and sync dependencies:
# Export env vars (Linux/macOS) to authenticate with Artifactory
export $(cat .env | grep -v '^#' | xargs) && uv sync

# Run the server
uv run python -m src.main
VPN and Web Proxy: Required for local development. Configure Aviatrix VPN and web proxy settings. See Onboarding Guide for setup instructions.

Team Modes

The starter demonstrates three core multi-agent patterns:

Delegation Mode

Content Team: Team leader delegates specific tasks sequentially (Researcher → Writer → Reviewer). Endpoint: /run/content_team

Collaboration Mode

Collaboration Team: Agents (Researcher & Writer) work together, sharing context to solve a problem. Endpoint: /run/collaboration_team

Coordination Mode

Coordinator Team: Team leader orchestrates workflow and uses tools directly for coordination. Endpoint: /run/coordinator_team

API Usage

# Delegation mode: Research -> Write -> Review
curl -X POST "http://localhost:8000/run/content_team" \
  -H "Content-Type: application/json" \
  -d '{"query": "Write an article about AI trends"}'

Project Structure

starter-multi-agent/
├── .github/                    # CI/CD workflows
├── promptfoo_config/           # Evaluation configurations
│   ├── instructions_agent_config.yaml
│   └── ...
├── prompts/                    # Centralized prompt definitions
├── providers/                  # AI provider configurations
├── src/
│   ├── main.py                 # App entry point & observability init
│   ├── agents/                 # Agent logic implementation
│   │   ├── researcher_agent.py    # Web search agent
│   │   ├── writer_agent.py        # Content creation agent
│   │   ├── reviewer_agent.py      # Quality review agent
│   │   ├── content_team.py        # Delegation team
│   │   ├── collaboration_team.py  # Collaborative team
│   │   └── coordinator_team.py    # Coordinator team
│   └── api/                    # FastAPI routes and schemas
├── tests/                      # Unit tests
├── redteam.yaml                # Red teaming configuration
├── Dockerfile                  # Container definition
└── pyproject.toml              # Dependencies

Observability

The starter automatically integrates with Langfuse via the bb-ai-sdk.
  • Automatic Tracing: Captures full traces for agent runs and LLM calls.
  • OpenAI Instrumentation: Automatically instruments Agno’s OpenAI calls.
  • Configuration: Managed via LANGFUSE_* environment variables.
This starter is integrated with bb-ai-sdk to connect with observability tools (Langfuse) and AI Gateway. See BB AI SDK Observability for advanced configuration and custom tracing.

Development

Run Tests

export $(cat .env | grep -v '^#' | xargs) && uv sync --extra dev
uv run python -m pytest tests/ -v

CI/CD

Standard workflows are pre-configured in .github/workflows:
  • PR Checks: Linting, testing, and validation.
  • Build & Publish: Docker image creation on merge.
  • Release: Automated versioning and release notes.
See CI/CD Workflows for pipeline details.

Next Steps