Evo AI - AI Agents Platform Evo AI is an open-source platform for creating and managing AI agents, enabling integration with different AI models and services.
Go to file
2025-05-24 09:51:34 -03:00
.github/workflows chore(workflows): simplify Docker image workflow and update job structure 2025-05-15 19:27:34 -03:00
frontend feat(frontend): add initial frontend structure with components, services, and assets 2025-05-24 09:51:34 -03:00
migrations feat(agent): add Task Agent for structured task execution and improve context management 2025-05-14 12:36:34 -03:00
scripts chore: update author information and file names in multiple files 2025-05-13 17:50:14 -03:00
src feat(frontend): add initial frontend structure with components, services, and assets 2025-05-24 09:51:34 -03:00
.cursorrules chore(cleanup): remove contact-related files and update JWT expiration time settings 2025-05-07 11:43:00 -03:00
.dockerignore chore(cleanup): remove unused entries from .dockerignore and .gitignore 2025-05-07 13:29:53 -03:00
.env.example feat(env): add AI engine configuration option to .env.example and update README for improved clarity 2025-05-19 15:34:42 -03:00
.flake8 chore: update project structure and add testing framework 2025-04-28 20:41:10 -03:00
.gitignore chore(cleanup): remove unused entries from .dockerignore and .gitignore 2025-05-07 13:29:53 -03:00
alembic.ini new mcp servers format 2025-04-28 12:37:58 -03:00
CHANGELOG.md chore(changelog): update changelog for version 0.0.11 with service fixes 2025-05-16 12:15:41 -03:00
conftest.py chore: update author information and file names in multiple files 2025-05-13 17:50:14 -03:00
docker_build.sh feat(docker): add docker build script and enhance docker-compose with health checks and environment variable support 2025-05-05 15:20:51 -03:00
docker-compose.yml Update docker-compose.yml image to correct image 2025-05-16 22:48:35 -03:00
Dockerfile ⚙️ Fix: importação e seeders automáticos 2025-05-16 01:51:47 -03:00
LICENSE chore: add Apache License 2.0 and update project license information in README and pyproject.toml 2025-05-13 06:35:16 -03:00
Makefile chore(docs): update README to clarify alembic-upgrade command usage 2025-05-07 13:34:31 -03:00
pyproject.toml feat(frontend): add initial frontend structure with components, services, and assets 2025-05-24 09:51:34 -03:00
README.md feat(env): add AI engine configuration option to .env.example and update README for improved clarity 2025-05-19 15:34:42 -03:00
setup.py chore: update project structure and add testing framework 2025-04-28 20:41:10 -03:00

Evo AI - AI Agents Platform

Whatsapp Group Discord Community Postman Collection Documentation License Support Sponsors

Evo AI - AI Agents Platform

Evo AI is an open-source platform for creating and managing AI agents, enabling integration with different AI models and services.

🚀 Overview

The Evo AI platform allows:

  • Creation and management of AI agents
  • Integration with different language models
  • Client management and MCP server configuration
  • Custom tools management
  • Google Agent Development Kit (ADK): Base framework for agent development
  • CrewAI Support: Alternative framework for agent development (in development)
  • JWT authentication with email verification
  • Agent 2 Agent (A2A) Protocol Support: Interoperability between AI agents
  • Workflow Agent with LangGraph: Building complex agent workflows
  • Secure API Key Management: Encrypted storage of API keys
  • Agent Organization: Folder structure for organizing agents by categories

🤖 Agent Types

Evo AI supports different types of agents that can be flexibly combined:

1. LLM Agent (Language Model)

Agent based on language models like GPT-4, Claude, etc. Can be configured with tools, MCP servers, and sub-agents.

2. A2A Agent (Agent-to-Agent)

Agent that implements Google's A2A protocol for agent interoperability.

3. Sequential Agent

Executes a sequence of sub-agents in a specific order.

4. Parallel Agent

Executes multiple sub-agents simultaneously.

5. Loop Agent

Executes sub-agents in a loop with a defined maximum number of iterations.

6. Workflow Agent

Executes sub-agents in a custom workflow defined by a graph structure using LangGraph.

7. Task Agent

Executes a specific task using a target agent with structured task instructions.

🛠️ Technologies

  • FastAPI: Web framework for building the API
  • SQLAlchemy: ORM for database interaction
  • PostgreSQL: Main database
  • Alembic: Migration system
  • Pydantic: Data validation and serialization
  • Uvicorn: ASGI server
  • Redis: Cache and session management
  • JWT: Secure token authentication
  • SendGrid/SMTP: Email service for notifications (configurable)
  • Jinja2: Template engine for email rendering
  • Bcrypt: Password hashing and security
  • LangGraph: Framework for building stateful, multi-agent workflows
  • ReactFlow: Library for building node-based visual workflows

📊 Langfuse Integration (Tracing & Observability)

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.

How to configure

  1. Set environment variables in your .env:

    LANGFUSE_PUBLIC_KEY="pk-lf-..."
    LANGFUSE_SECRET_KEY="sk-lf-..."
    OTEL_EXPORTER_OTLP_ENDPOINT="https://cloud.langfuse.com/api/public/otel"
    
  2. View in the Langfuse dashboard

    • Access your Langfuse dashboard to see real-time traces.

🤖 Agent 2 Agent (A2A) Protocol Support

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.

📋 Prerequisites

  • Python: 3.10 or higher
  • PostgreSQL: 13.0 or higher
  • Redis: 6.0 or higher
  • Git: For version control
  • Make: For running Makefile commands

🔧 Installation

  1. Clone the repository:
git clone https://github.com/EvolutionAPI/evo-ai.git
cd evo-ai
  1. Create a virtual environment and install dependencies:
make venv
source venv/bin/activate  # Linux/Mac
make install-dev  # For development dependencies
  1. Set up environment variables:
cp .env.example .env
# Edit the .env file with your settings
  1. Initialize the database and seed data:
make alembic-upgrade
make seed-all

🖥️ Frontend Installation

  1. Clone the frontend repository:
git clone https://github.com/EvolutionAPI/evo-ai-frontend.git
cd evo-ai-frontend
  1. Follow the installation instructions in the frontend repository's README.

🚀 Getting Started

After installation, start by configuring your MCP server, creating a client, and setting up your agents.

Configuration (.env file)

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"

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.

🔐 Authentication

The API uses JWT (JSON Web Token) authentication with:

  • User registration and email verification
  • Login to obtain JWT tokens
  • Password recovery flow
  • Account lockout after multiple failed login attempts

🚀 Running the Project

make run         # For development with automatic reload
make run-prod    # For production with multiple workers

The API will be available at http://localhost:8000

👨‍💻 Development Commands

# 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

🐳 Running with Docker

  1. Configure the .env file
  2. Start the services:
make docker-build
make docker-up
make docker-seed

📚 API Documentation

The interactive API documentation is available at:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

Star Us on GitHub

If you find EvoAI useful, please consider giving us a star! Your support helps us grow our community and continue improving the product.

Star History Chart

🤝 Contributing

We welcome contributions from the community! Please read our Contributing Guidelines for more details.

📄 License

This project is licensed under the Apache License 2.0.