Skip to main content

A Python package for building intelligent multi-agent systems using CrewAI

Project description

CrewAIMaster

A Python package for building intelligent multi-agent systems using CrewAI

CrewAIMaster is an advanced framework that automatically generates, manages, and executes multi-agent crews based on natural language task descriptions. It provides a CLI interface and comprehensive backend system for creating intelligent AI agents with memory, tools, and safety guardrails.

๐Ÿ“ฆ Installation

# install from PyPI (when available)
pip install crewaimaster

# Or Install from source (recommended for development)
git clone https://github.com/VishApp/crewaimaster
cd crewaimaster
python -m venv venv
source venv/bin/activate
pip install -e .

๐ŸŽฌ Demo

๐Ÿ“น Video Walkthrough

CrewAIMaster Demo

Click the image above to watch a complete walkthrough of CrewAIMaster in action

๐Ÿ“ธ Screenshots

CLI Interface

CLI Interface

CrewAIMaster Providers

Crew Creation

CrewAIMaster Help

Execution Dashboard

๐Ÿƒ Quick Start

Prerequisites

# Install Python 3.10+
python --version

# Configure your LLM provider (see supported providers)
crewaimaster providers

# Quick setup with OpenAI (most common)
crewaimaster providers --configure openai --api-key "your-openai-key" --model "gpt-4"

1. Create Your First Crew with AI Orchestration

# Create an intelligent crew using AI analysis
crewaimaster create "Write a comprehensive market analysis report for electric vehicles in 2024" --name electric_vehicles_market_analysis_crew

2. Execute the Crew

# Run the crew (requires configured LLM provider)
crewaimaster run electric_vehicles_market_analysis_crew

# With additional context:
crewaimaster run electric_vehicles_market_analysis_crew --input "Focus on Tesla, BMW, and Volkswagen specifically"

3. Alternative Execution (Direct Script)

Generated crews can also be executed directly using environment variables:

# Navigate to the generated crew directory
cd crews/electric_vehicles_market_analysis_crew

# Run using standard environment variables
export OPENAI_API_KEY="your-openai-key"
./run.sh "your input"

# Or run using CrewAIMaster-specific environment variables
export CREWAIMASTER_LLM_PROVIDER="openai"
export CREWAIMASTER_LLM_MODEL="gpt-4"
export CREWAIMASTER_LLM_API_KEY="your-openai-key"
export CREWAIMASTER_LLM_BASE_URL="https://api.openai.com/v1"

๐Ÿ”„ Development Workflow

Typical CrewAIMaster Workflow

flowchart LR
    A["`**1. Task Definition**
    Natural Language Task`"] --> B["`**2. AI Analysis**
    ๐Ÿค– Task Complexity
    ๐ŸŽฏ Agent Requirements
    ๐Ÿ› ๏ธ Tool Selection`"]
    
    B --> C["`**3. Crew Creation**
    ๐Ÿ‘ฅ Agent Design
    ๐Ÿ”ง Tool Assignment
    ๐Ÿ“‹ Task Orchestration`"]
    
    C --> D["`**4. Execution**
    ๐Ÿƒ Multi-Agent Coordination
    ๐Ÿ”„ Real-time Processing
    ๐Ÿ“Š Progress Monitoring`"]
    
    D --> E["`**5. Results & Analytics**
    ๐Ÿ“„ Output Generation
    ๐Ÿ“ˆ Performance Metrics
    ๐Ÿ’พ Persistent Storage`"]
    
    E --> F["`**6. Optimization**
    ๐Ÿ”ง Crew Modification
    โšก Performance Tuning
    ๐Ÿ“ค Export/Backup`"]
    
    F --> G["`**7. Reuse & Scale**
    ๐Ÿ”„ Crew Reusability
    ๐Ÿ“š Knowledge Building
    ๐Ÿš€ Production Deployment`"]

    classDef stepStyle fill:#f9f9f9,stroke:#333,stroke-width:2px,color:#333
    class A,B,C,D,E,F,G stepStyle

๐Ÿ—๏ธ Architecture

CrewAIMaster follows a clean, layered architecture designed for intelligent multi-agent system creation and execution:

flowchart TD
    %% User Entry Point
    User[๐Ÿ‘ค User Input<br/>Natural Language Task] --> CLI[๐Ÿ–ฅ๏ธ CLI Interface<br/>crewaimaster create/run/providers]
    
    %% Configuration Layer
    CLI --> Config[โš™๏ธ Configuration<br/>config.yaml<br/>LLM Providers]
    
    %% AI Orchestration Core
    CLI --> MasterAgent[๐Ÿง  Master Agent<br/>Intelligent Orchestrator]
    
    %% AI Analysis Pipeline
    MasterAgent --> TaskAnalyzer[๐Ÿ“‹ Task Analyzer<br/>โ€ข Complexity Assessment<br/>โ€ข Requirements Extraction<br/>โ€ข Agent Planning]
    
    TaskAnalyzer --> AgentDesigner[๐Ÿ‘ฅ Agent Designer<br/>โ€ข Role Definition<br/>โ€ข Tool Selection<br/>โ€ข Capability Mapping]
    
    AgentDesigner --> CrewOrchestrator[๐ŸŽญ Crew Orchestrator<br/>โ€ข Team Assembly<br/>โ€ข Process Selection<br/>โ€ข Workflow Design]
    
    %% Core Generation Engine
    CrewOrchestrator --> CrewDesigner[๐Ÿ”ง Crew Designer<br/>File-Based Generator]
    Config --> CrewDesigner
    
    CrewDesigner --> FileGen[๐Ÿ“ File Generator<br/>โ€ข Project Structure<br/>โ€ข Python Modules<br/>โ€ข YAML Configs]
    
    %% Output Generation
    FileGen --> GeneratedFiles{๐Ÿ“„ Generated Crew Project}
    
    %% Generated Project Structure
    GeneratedFiles --> AgentYAML[agents.yaml<br/>Agent Definitions]
    GeneratedFiles --> TaskYAML[tasks.yaml<br/>Task Specifications]
    GeneratedFiles --> CrewPY[crew.py<br/>CrewAI Implementation]
    GeneratedFiles --> MainPY[main.py<br/>Execution Entry Point]
    
    %% Execution Runtime
    MainPY --> CrewAI[๐Ÿš€ CrewAI Runtime<br/>Multi-Agent Execution]
    
    CrewAI --> AgentA[๐Ÿค– Agent A<br/>Specialized Role]
    CrewAI --> AgentB[๐Ÿค– Agent B<br/>Specialized Role]
    CrewAI --> AgentC[๐Ÿค– Agent C<br/>Specialized Role]
    
    %% Tool Integration
    AgentA --> Tools[๐Ÿ› ๏ธ Tool Registry<br/>โ€ข Web Search<br/>โ€ข File Operations<br/>โ€ข Code Execution<br/>โ€ข Custom Tools]
    AgentB --> Tools
    AgentC --> Tools
    
    %% LLM Integration
    Config --> LLMProvider[๐Ÿ”— LLM Provider<br/>โ€ข OpenAI<br/>โ€ข Anthropic<br/>โ€ข Google<br/>โ€ข Custom APIs]
    LLMProvider --> AgentA
    LLMProvider --> AgentB
    LLMProvider --> AgentC
    LLMProvider --> MasterAgent
    
    %% Memory & Knowledge
    CrewAI --> Memory[๐Ÿง  Memory System<br/>โ€ข Agent Memory<br/>โ€ข Shared Context<br/>โ€ข Knowledge Base]
    
    %% Safety & Guardrails
    Tools --> Guardrails[๐Ÿ›ก๏ธ Guardrails<br/>โ€ข Safety Checks<br/>โ€ข Content Filtering<br/>โ€ข Validation]
    
    %% Final Output
    CrewAI --> Results[๐Ÿ“Š Results<br/>Task Completion<br/>Generated Content]
    
    %% Styling
    classDef userLayer fill:#e8f5e8,stroke:#1b5e20,stroke-width:3px,color:#000
    classDef cliLayer fill:#e1f5fe,stroke:#01579b,stroke-width:2px,color:#000
    classDef aiLayer fill:#f3e5f5,stroke:#4a148c,stroke-width:2px,color:#000
    classDef coreLayer fill:#fff8e1,stroke:#ff8f00,stroke-width:2px,color:#000
    classDef fileLayer fill:#fce4ec,stroke:#880e4f,stroke-width:2px,color:#000
    classDef runtimeLayer fill:#fff3e0,stroke:#e65100,stroke-width:2px,color:#000
    classDef toolLayer fill:#f1f8e9,stroke:#33691e,stroke-width:2px,color:#000
    
    class User userLayer
    class CLI,Config cliLayer
    class MasterAgent,TaskAnalyzer,AgentDesigner,CrewOrchestrator aiLayer
    class CrewDesigner,FileGen,LLMProvider coreLayer
    class GeneratedFiles,AgentYAML,TaskYAML,CrewPY,MainPY fileLayer
    class CrewAI,AgentA,AgentB,AgentC,Memory,Results runtimeLayer
    class Tools,Guardrails toolLayer

๐Ÿ”„ Data Flow Explanation

  1. User Input: Natural language task description via CLI
  2. AI Analysis: Master Agent analyzes complexity and requirements
  3. Intelligent Design: AI agents design optimal crew composition
  4. Code Generation: Automated creation of CrewAI project files
  5. Execution: Generated crew runs with real-time coordination
  6. Results: Task completion with generated content and insights

๐Ÿ›๏ธ Architecture Overview

CrewAIMaster's architecture is designed for scalability, modularity, and intelligent automation:

๐ŸŽฏ User Interface Layer

  • CLI Interface: Rich terminal experience with typer and rich libraries
  • Command Processing: Handles user commands and provides interactive feedback
  • Input Validation: Ensures commands are properly formatted and validated

๐Ÿค– AI Orchestration Layer (Core Innovation)

  • MasterAgentCrew: Main orchestrator using AI agents for intelligent decision-making
  • TaskAnalyzerAgent: Advanced NLP analysis of user tasks and requirements
  • AgentDesignerAgent: Intelligent design of agents based on task requirements
  • CrewOrchestratorAgent: Optimizes crew composition and execution strategies

โš™๏ธ Core Processing Layer

  • CrewDesigner: Handles CrewAI integration and agent instantiation
  • TaskAnalyzer: Legacy fallback for task analysis with pattern matching

๐Ÿ› ๏ธ Tool Ecosystem

  • Tool Registry: Centralized management of all available tools
  • Available Tools: Comprehensive library of built-in and custom tools
  • Guardrails: Safety and validation systems for secure operation

๐Ÿ”„ Execution Engine

  • CrewAI Engine: Core execution engine for running multi-agent crews
  • Agent Memory: Sophisticated memory management for agent learning and context

๐Ÿ”„ Data Flow

  1. User Input โ†’ CLI processes commands and validates input
  2. AI Analysis โ†’ MasterAgentCrew analyzes task using specialized AI agents
  3. Crew Creation โ†’ CrewDesigner instantiates agents with appropriate tools
  4. Execution โ†’ CrewAI Engine runs the crew with real-time monitoring

๐Ÿ› ๏ธ Configuration

LLM Provider Setup

CrewAIMaster uses a .crewaimaster/config.yaml configuration file for all settings. Environment variables are no longer supported - all configuration must be done via CLI commands or direct config file editing.

๐Ÿ“‹ View Available Providers

# See all supported providers and configuration examples
crewaimaster providers

๐Ÿš€ CLI Configuration (All Providers)

Configure any supported provider using the CLI:

OpenAI:

crewaimaster providers --configure openai --api-key "your-openai-key" --model "gpt-4"
# Automatically sets base_url to https://api.openai.com/v1

Anthropic:

crewaimaster providers --configure anthropic --api-key "your-anthropic-key" --model "claude-3-sonnet-20240229"
# Automatically sets base_url to https://api.anthropic.com/v1

Google:

crewaimaster providers --configure google --api-key "your-google-key" --model "gemini-pro"
# Automatically sets base_url to https://generativelanguage.googleapis.com/v1beta

DeepSeek:

crewaimaster providers --configure deepseek --api-key "your-deepseek-key" --model "deepseek-chat"
# Automatically sets base_url to https://api.deepseek.com/v1

Custom Provider:

crewaimaster providers --configure custom --api-key "your-key" --base-url "https://api.example.com/v1" --model "gpt-4o-mini"
# Requires explicit base_url for custom endpoints

๐Ÿค Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and add tests
  4. Run tests: pytest tests/
  5. Commit changes: git commit -m 'Add amazing feature'
  6. Push to branch: git push origin feature/amazing-feature
  7. Open a Pull Request

Development Setup

# Clone and setup development environment
git clone https://github.com/VishApp/crewaimaster
cd crewaimaster

# Install development dependencies
pip install -e .

๐Ÿ“„ License

CrewAIMaster is released under the MIT License. See LICENSE for details.

๐Ÿ™ Acknowledgments

๐Ÿ”— Links


Built with โค๏ธ for the AI community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crewaimaster-0.1.3.tar.gz (376.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

crewaimaster-0.1.3-py3-none-any.whl (123.2 kB view details)

Uploaded Python 3

File details

Details for the file crewaimaster-0.1.3.tar.gz.

File metadata

  • Download URL: crewaimaster-0.1.3.tar.gz
  • Upload date:
  • Size: 376.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for crewaimaster-0.1.3.tar.gz
Algorithm Hash digest
SHA256 9ac5d56b73f53c2de7e3d32eab21e88019e12ee86c746c040ac9343ed7c01637
MD5 244eb8ebac8de2d99d329da62efe0602
BLAKE2b-256 b19f11d9a70fdb91fba1674292369afa167a2d60f0d5ec0cf7286053e1792bf3

See more details on using hashes here.

File details

Details for the file crewaimaster-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: crewaimaster-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 123.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for crewaimaster-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bb3f111f41153be3f996b651d32581cee137b22445f5e0cae137623dc95cde72
MD5 3ca2cf7751ae00ac034a6f7fc9b49d3b
BLAKE2b-256 0218851f8dfad90b9c30f675c41adbe7c8a5742098cc1709a58ba9c21fab8222

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page