Evo AI is an open-source platform for creating and managing AI agents, enabling integration with different AI models and services.
Evo AI is an open-source platform for creating and managing AI agents, enabling integration with different AI models and services.
The Evo AI platform allows:
Evo AI supports different types of agents that can be flexibly combined:
Agent based on language models like GPT-4, Claude, etc. Can be configured with tools, MCP servers, and sub-agents.
Agent that implements Google's A2A protocol for agent interoperability.
Executes a sequence of sub-agents in a specific order.
Executes multiple sub-agents simultaneously.
Executes sub-agents in a loop with a defined maximum number of iterations.
Executes sub-agents in a custom workflow defined by a graph structure using LangGraph.
Executes a specific task using a target agent with structured task instructions.
Evo AI platform natively supports integration with Langfuse for detailed tracing of agent executions, prompts, model responses, and tool calls, using the OpenTelemetry (OTel) standard.
.env
:LANGFUSE_PUBLIC_KEY="pk-lf-..."
LANGFUSE_SECRET_KEY="sk-lf-..."
OTEL_EXPORTER_OTLP_ENDPOINT="https://cloud.langfuse.com/api/public/otel"
Evo AI implements the Google's Agent 2 Agent (A2A) protocol, enabling seamless communication and interoperability between AI agents.
For more information about the A2A protocol, visit Google's A2A Protocol Documentation.
git clone https://github.com/EvolutionAPI/evo-ai.git
cd evo-ai
# Create and activate virtual environment
make venv
source venv/bin/activate # Linux/Mac
# or on Windows: venv\Scripts\activate
# Install development dependencies
make install-dev
# Copy and configure backend environment
cp .env.example .env
# Edit the .env file with your database, Redis, and other settings
# Initialize database and apply migrations
make alembic-upgrade
# Seed initial data (admin user, sample clients, etc.)
make seed-all
# Navigate to frontend directory
cd frontend
# Install dependencies using pnpm (recommended)
pnpm install
# Or using npm
# npm install
# Or using yarn
# yarn install
# Copy and configure frontend environment
cp .env.example .env
# Edit .env with your API URL (default: http://localhost:8000)
The frontend .env
should contain:
NEXT_PUBLIC_API_URL=http://localhost:8000
# From project root
make run
# Backend will be available at http://localhost:8000
# From frontend directory
cd frontend
pnpm dev
# Or using npm/yarn
# npm run dev
# yarn dev
# Frontend will be available at http://localhost:3000
make run-prod # Production with multiple workers
cd frontend
pnpm build && pnpm start
# Or using npm/yarn
# npm run build && npm start
# yarn build && yarn start
# Build and start all services (backend + database + redis)
make docker-build
make docker-up
# Initialize database with seed data
make docker-seed
# From frontend directory
cd frontend
# Build frontend image
docker build -t evo-ai-frontend .
# Run frontend container
docker run -p 3000:3000 -e NEXT_PUBLIC_API_URL=http://localhost:8000 evo-ai-frontend
Or using the provided docker-compose:
# From frontend directory
cd frontend
docker-compose up -d
After installation, follow these steps:
http://localhost:3000
After running the seeders, you can login with:
The interactive API documentation is available at:
http://localhost:8000/docs
http://localhost:8000/redoc
# Database migrations
make alembic-upgrade # Update database to latest version
make alembic-revision message="description" # Create new migration
# Seeders
make seed-all # Run all seeders
# Code verification
make lint # Verify code with flake8
make format # Format code with black
# From frontend directory
cd frontend
# Development
pnpm dev # Start development server
pnpm build # Build for production
pnpm start # Start production server
pnpm lint # Run ESLint
Key settings include:
# Database settings
POSTGRES_CONNECTION_STRING="postgresql://postgres:root@localhost:5432/evo_ai"
# Redis settings
REDIS_HOST="localhost"
REDIS_PORT=6379
# AI Engine configuration
AI_ENGINE="adk" # Options: "adk" (Google Agent Development Kit) or "crewai" (CrewAI framework)
# JWT settings
JWT_SECRET_KEY="your-jwt-secret-key"
# Email provider configuration
EMAIL_PROVIDER="sendgrid" # Options: "sendgrid" or "smtp"
# Encryption for API keys
ENCRYPTION_KEY="your-encryption-key"
# API Configuration
NEXT_PUBLIC_API_URL="http://localhost:8000" # Backend API URL
Note: While Google ADK is fully supported, the CrewAI engine option is still under active development. For production environments, it's recommended to use the default "adk" engine.
The API uses JWT (JSON Web Token) authentication with:
If you find EvoAI useful, please consider giving us a star! Your support helps us grow our community and continue improving the product.
We welcome contributions from the community! Please read our Contributing Guidelines for more details.
This project is licensed under the Apache License 2.0.
EvolutionAPI/evo-ai
May 13, 2025
July 4, 2025
TypeScript