Metadata-Version: 2.4
Name: agentic-fleet
Version: 0.4.73
Summary: A powerful multi-agent system for adaptive AI reasoning and automation
Project-URL: Homepage, https://github.com/qredence/agenticfleet
Project-URL: Documentation, https://github.com/qredence/agenticfleet/tree/main/docs
Project-URL: Repository, https://github.com/qredence/agenticfleet.git
Project-URL: Issues, https://github.com/qredence/agenticfleet/issues
Project-URL: Source, https://github.com/qredence/agenticfleet
Project-URL: Docker, https://hub.docker.com/r/qredenceai/agenticfleet
Author-email: Zachary BENSALEM <contact@qredence.ai>
License: Apache-2.0
License-File: LICENSE
Keywords: AI,adaptive,agents,ai,autogen,autogen-sample,automation,magentic-one,multi-agent,reasoning
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Python: >=3.10
Requires-Dist: aioconsole>=0.8.1
Requires-Dist: aiofiles>=23.1.0
Requires-Dist: aiohttp<4.0.0,>=3.11.11
Requires-Dist: asyncio>=3.4.3
Requires-Dist: authlib>=1.4.0
Requires-Dist: autogen-agentchat<0.5.0,>=0.4.5
Requires-Dist: autogen-core<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[azure,openai]<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[diskcache]<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[docker]<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[langchain]<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[magentic-one]<0.5.0,>=0.4.5
Requires-Dist: autogen-ext[web-surfer]<0.5.0,>=0.4.5
Requires-Dist: axios>=0.4.0
Requires-Dist: azure-ai-inference>=1.0.0b6
Requires-Dist: azure-ai-ml>=1.12.1
Requires-Dist: azure-ai-projects>=1.0.0b4
Requires-Dist: azure-core>=1.32.0
Requires-Dist: azure-cosmos>=4.9.0
Requires-Dist: azure-identity>=1.19.0
Requires-Dist: azure-keyvault-secrets>=4.9.0
Requires-Dist: azure-search-documents==11.6.0b4
Requires-Dist: azure-storage-blob>=12.24.0
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: bing>=0.31
Requires-Dist: black>=24.10.0
Requires-Dist: chainlit>=2.1.2
Requires-Dist: codecov>=2.1.13
Requires-Dist: composio-core>=0.6.11.post1
Requires-Dist: deepseek>=0.1.0
Requires-Dist: docker>=7.1.0
Requires-Dist: fastapi>=0.109.0
Requires-Dist: gunicorn>=23.0.0
Requires-Dist: httpx>=0.25.0
Requires-Dist: ipykernel>=6.29.5
Requires-Dist: jsonlines>=4.0.0
Requires-Dist: macholib>=1.16.3
Requires-Dist: magentic-one-cli>=0.2.2
Requires-Dist: markitdown>=0.0.1a3
Requires-Dist: matplotlib>=3.10.0
Requires-Dist: modulegraph>=0.19.6
Requires-Dist: numpy<2.0,>=1.26
Requires-Dist: ollama>=0.1.5
Requires-Dist: opentelemetry-instrumentation-fastapi>=0.44b0
Requires-Dist: packaging>=23.2
Requires-Dist: pandas>=2.2.3
Requires-Dist: pillow>=11.0.0
Requires-Dist: playwright
Requires-Dist: plotly-express>=0.4.1
Requires-Dist: plotly>=5.16.0
Requires-Dist: psutil>=5.9.6
Requires-Dist: psycopg2-binary>=2.9.9
Requires-Dist: puremagic>=1.28
Requires-Dist: py2app>=0.28.8
Requires-Dist: pydantic-settings>=2.2.1
Requires-Dist: pydantic>=2.5.2
Requires-Dist: pytest-asyncio>=0.25.2
Requires-Dist: pytest-cov>=6.0.0
Requires-Dist: pytest>=8.3.4
Requires-Dist: python-dotenv>=1.0.1
Requires-Dist: python-multipart>=0.0.6
Requires-Dist: pytz>=2024.2
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: redis>=5.2.1
Requires-Dist: requests-html>=0.10.0
Requires-Dist: requests>=2.32.3
Requires-Dist: rich>=13.9.4
Requires-Dist: ruff==0.4.8
Requires-Dist: scikit-learn>=1.6.1
Requires-Dist: seaborn>=0.13.0
Requires-Dist: semantic-kernel>=1.19.0
Requires-Dist: setuptools>=75.8.0
Requires-Dist: sqlalchemy[asyncio]>=2.0.28
Requires-Dist: starlette>=0.41.3
Requires-Dist: supabase>=2.3.1
Requires-Dist: tenacity>=9.0.0
Requires-Dist: tiktoken>=0.8.0
Requires-Dist: typer>=0.15.1
Requires-Dist: types-setuptools>=75.8.0.20250110
Requires-Dist: typing-extensions>=4.8.0
Requires-Dist: uvicorn>=0.24.0
Requires-Dist: yfinance>=0.2.51
Provides-Extra: dev
Requires-Dist: bandit[toml]>=1.7.6; extra == 'dev'
Requires-Dist: black>=24.1.1; extra == 'dev'
Requires-Dist: coverage>=7.4.4; extra == 'dev'
Requires-Dist: ipdb>=0.13.13; extra == 'dev'
Requires-Dist: isort>=5.13.2; extra == 'dev'
Requires-Dist: mkdocs>=1.5.3; extra == 'dev'
Requires-Dist: mkdocstrings[python]>=0.24.0; extra == 'dev'
Requires-Dist: mypy>=1.8.0; extra == 'dev'
Requires-Dist: pre-commit>=3.6.2; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.3; extra == 'dev'
Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
Requires-Dist: pytest>=8.0.2; extra == 'dev'
Requires-Dist: rich>=10.16.2; extra == 'dev'
Requires-Dist: ruff>=0.2.1; extra == 'dev'
Provides-Extra: docs
Requires-Dist: mkdocs>=1.5.3; extra == 'docs'
Requires-Dist: mkdocstrings[python]>=0.24.0; extra == 'docs'
Provides-Extra: grpc
Requires-Dist: grpcio-tools>=1.62.0; extra == 'grpc'
Requires-Dist: protobuf>=5.29.3; extra == 'grpc'
Provides-Extra: models
Requires-Dist: autogen-ext[semantic-kernel-anthropic]; extra == 'models'
Requires-Dist: autogen-ext[semantic-kernel-aws]; extra == 'models'
Requires-Dist: autogen-ext[semantic-kernel-google]; extra == 'models'
Requires-Dist: autogen-ext[semantic-kernel-hugging-face]; extra == 'models'
Requires-Dist: autogen-ext[semantic-kernel-mistralai]; extra == 'models'
Requires-Dist: autogen-ext[semantic-kernel-ollama]; extra == 'models'
Requires-Dist: ollama>=0.1.5; extra == 'models'
Provides-Extra: test
Requires-Dist: coverage>=7.4.4; extra == 'test'
Requires-Dist: pytest-asyncio>=0.23.3; extra == 'test'
Requires-Dist: pytest-cov>=4.1.0; extra == 'test'
Requires-Dist: pytest>=8.0.2; extra == 'test'
Description-Content-Type: text/markdown

# AgenticFleet

A powerful multi-agent system for adaptive AI reasoning and automation. AgenticFleet combines Chainlit's interactive interface with AutoGen's multi-agent capabilities to create a flexible, powerful AI assistant platform.

<div align="center">
  <p>
    <img src="https://img.shields.io/pepy/dt/agentic-fleet?style=for-the-badge&color=blue" alt="Pepy Total Downloads">
<img src="https://img.shields.io/github/stars/qredence/agenticfleet?style=for-the-badge&color=purple" alt="GitHub Repo stars">

 <img src="https://img.shields.io/github/license/qredence/agenticfleet?style=for-the-badge" alt="GitHub License">
    <img src="https://img.shields.io/github/forks/qredence/agenticfleet?style=for-the-badge" alt="GitHub forks">

 <a href="https://discord.gg/ebgy7gtZHK">
      <img src="https://img.shields.io/discord/1234567890?style=for-the-badge&logo=discord&logoColor=white&label=Discord" alt="Discord">
    </a>
    <a href="https://x.com/agenticfleet">
      <img src="https://img.shields.io/badge/Twitter-Follow-1DA1F2?style=for-the-badge&logo=x&logoColor=white" alt="Twitter Follow">
    </a>
  </p>
</div>

<div align="center">
  <video src="https://github.com/user-attachments/assets/b1ad83ce-b8af-4406-99ed-257a07c0c7cf
" autoplay loop muted playsinline width="800">
    <p>Your browser doesn't support HTML5 video. Here is a <a href="assets/b1ad83ce-b8af-4406-99ed-257a07c0c7cf">link to the video</a> instead.</p>
  </video>
</div>


AgenticFleet operates through a coordinated team of specialized agents:

## System Architecture

AgenticFleet operates through a coordinated team of specialized agents:

```mermaid
graph TD
    User[Chainlit UI] -->|HTTP| App[app.py]
    App --> AgentTeam[MagenticOneGroupChat]
    AgentTeam --> WebSurfer
    AgentTeam --> FileSurfer
    AgentTeam --> Coder
    AgentTeam --> Executor
    WebSurfer -->|Selenium| Web[External Websites]
    FileSurfer -->|OS| FileSystem[Local Files]
    Executor -->|Subprocess| Code[Python/Runtime]
```

- **WebSurfer**: Expert web navigation agent
  - Extracts information from web pages
  - Captures and processes screenshots
  - Provides structured summaries of findings

- **FileSurfer**: File system specialist
  - Searches and analyzes workspace files
  - Manages file operations efficiently
  - Extracts relevant information from documents

- **Coder**: Development expert
  - Generates and reviews code
  - Implements solutions
  - Maintains code quality

- **Executor**: Code execution specialist
  - Safely runs code in isolated workspace
  - Monitors execution and handles timeouts
  - Provides detailed execution feedback

## Installation Guide

### Prerequisites

- **Python Version:** 3.10-3.12
- **Operating Systems:** macOS, Linux, Windows

### 1. Install `uv` Package Manager

#### macOS/Linux

```bash
# Using pip
pip install uv

# Using homebrew (macOS)
brew install uv

# Using curl
curl -LsSf https://astral.sh/uv/install.sh | sh
```

#### Windows

```powershell
# Using pip
pip install uv

# Using winget
winget install uv
```

### 2. Create a Virtual Environment

```bash
# Create a new virtual environment
uv venv

# Activate the virtual environment
# On macOS/Linux
source .venv/bin/activate

# On Windows
.venv\Scripts\activate
```

### 3. Install AgenticFleet

```bash
# Install the latest stable version
uv pip install agentic-fleet

# Install with specific optional features
uv pip install 'agentic-fleet[telemetry]'
uv pip install 'agentic-fleet[tracing]'

# Install Playwright for web automation and scraping
uv pip install playwright
playwright install --with-deps chromium  # Install Chromium browser and dependencies
```

#### Playwright Installation Notes

- Installs Chromium browser for web automation
- Includes necessary browser dependencies
- Required for web scraping and browser-based agents
- Supports headless and headed browser modes

### 4. Verify Installation

```bash
# Check installed version
uv pip show agentic-fleet

# Run a quick test
python -c "import agentic_fleet; print(agentic_fleet.__version__)"
```

### Troubleshooting

- Ensure you're using Python 3.10-3.12
- Update `uv` to the latest version: `pip install -U uv`
- If you encounter issues, check our [GitHub Issues](https://github.com/Qredence/AgenticFleet/issues)

### Best Practices

- Always use a virtual environment
- Keep `uv` updated
- Use optional feature sets as needed
- Report any installation issues on GitHub

### Optional Feature Sets

```bash
# Install with specific optional features
uv pip install 'agentic-fleet[telemetry]'
uv pip install 'agentic-fleet[tracing]'
```

### ⚠️ Warning About Editable Installations

**DO NOT use `-e` unless you are a core contributor.**

Editable installations:

- Are NOT supported in production
- May introduce unexpected behaviors
- Void package support and warranty
- Are intended ONLY for package development

If you modify the package locally:

1. Open a GitHub issue
2. Submit a pull request
3. Discuss proposed changes with maintainers

Unauthorized local modifications are strongly discouraged.

## Quick Start with Docker

```bash
# Pull the latest image
docker pull qredence/agenticfleet:latest

# Run with minimum required configuration
docker run -d -p 8001:8001 qredence/agenticfleet:latest

# Or run with additional configuration
docker run -d -p 8001:8001 \
  -e AZURE_OPENAI_API_KEY=your_key \
  -e AZURE_OPENAI_ENDPOINT=your_endpoint \
  -e AZURE_OPENAI_DEPLOYMENT=your_deployment \
  -e AZURE_OPENAI_MODEL=your_model \
  -e USE_OAUTH=true \
  -e OAUTH_GITHUB_CLIENT_ID=your_client_id \
  -e OAUTH_GITHUB_CLIENT_SECRET=your_client_secret \
  qredence/agenticfleet:latest

# Run without OAuth
docker run -d -p 8001:8001 \
  -e AZURE_OPENAI_API_KEY=your_key \
  -e AZURE_OPENAI_ENDPOINT=your_endpoint \
  -e USE_OAUTH=false \
  qredence/agenticfleet:latest
```

## Core Components

AgenticFleet operates through a coordinated team of specialized agents:

- **WebSurfer**: Expert web navigation agent
  - Extracts information from web pages
  - Captures and processes screenshots
  - Provides structured summaries of findings

- **FileSurfer**: File system specialist
  - Searches and analyzes workspace files
  - Manages file operations efficiently
  - Extracts relevant information from documents

- **Coder**: Development expert
  - Generates and reviews code
  - Implements solutions
  - Maintains code quality

- **Executor**: Code execution specialist
  - Safely runs code in isolated workspace
  - Monitors execution and handles timeouts
  - Provides detailed execution feedback

## Model Provider Installation

Install providers using pip:

```bash
# Install base package
pip install agentic-fleet
```

## Supported Model Providers

AgenticFleet supports multiple LLM providers through a unified interface:

- **OpenAI**
  - GPT-4 and other OpenAI models
  - Function calling and vision capabilities
  - JSON mode support

- **Azure OpenAI**
  - Azure-hosted OpenAI models
  - Azure AD authentication support
  - Enterprise-grade security

- **Google Gemini**
  - Gemini Pro and Ultra models
  - OpenAI-compatible API
  - Multimodal capabilities

- **DeepSeek**
  - DeepSeek's language models
  - OpenAI-compatible API
  - Specialized model capabilities

- **Ollama**
  - Local model deployment
  - Various open-source models
  - Offline capabilities

- **Azure AI Foundry**
  - Azure-hosted models (e.g., Phi-4)
  - GitHub authentication
  - Enterprise integration

- **CogCache**
  - OpenAI-compatible API with caching
  - Improved response times
  - Cost optimization
  - Automatic retry handling

## Key Features

- **Advanced Capabilities**
  - Multiple LLM provider support
  - GitHub OAuth authentication
  - Configurable agent behaviors
  - Comprehensive error handling and recovery
  - Multi-modal content processing (text, images)
  - Execution workspace isolation
  
- **Developer-Friendly**
  - Easy-to-use CLI
  - Extensive documentation
  - Flexible configuration
  - Active community support

## System Architecture

```mermaid
graph TD
    User[Chainlit UI] -->|HTTP| App[app.py]
    App --> AgentTeam[MagenticOneGroupChat]
    AgentTeam --> WebSurfer
    AgentTeam --> FileSurfer
    AgentTeam --> Coder
    AgentTeam --> Executor
    WebSurfer -->|Selenium| Web[External Websites]
    FileSurfer -->|OS| FileSystem[Local Files]
    Executor -->|Subprocess| Code[Python/Runtime]
```

![thumbnail](https://github.com/user-attachments/assets/e8050f0b-3bea-4772-992f-8d511efe9deb)

## Configuration

The `.env.example` file contains all required and recommended settings:

```env
# Required: Azure OpenAI Configuration
AZURE_OPENAI_API_KEY=your_api_key
AZURE_OPENAI_ENDPOINT=your_endpoint
AZURE_OPENAI_DEPLOYMENT=your_deployment
AZURE_OPENAI_MODEL=your_model

# Optional: OAuth Configuration
USE_OAUTH=false # Set to true to enable GitHub OAuth
OAUTH_GITHUB_CLIENT_ID=
OAUTH_GITHUB_CLIENT_SECRET=
OAUTH_REDIRECT_URI=http://localhost:8001/oauth/callback

# Optional: Other Model Provider Configurations
GEMINI_API_KEY=your_gemini_key
DEEPSEEK_API_KEY=your_deepseek_key
GITHUB_TOKEN=your_github_pat  # For Azure AI Foundry
COGCACHE_API_KEY=your_cogcache_key  # For CogCache proxy API
```

## Error Handling

AgenticFleet implements comprehensive error handling:

- Graceful degradation on service failures
- Detailed error logging and reporting
- Automatic cleanup of resources
- Session state recovery
- Execution timeout management

## Community Contributions

### 🤝 We Welcome Your Contributions

AgenticFleet is an open-source project that thrives on community involvement. We actively encourage contributions from developers of all skill levels.

#### How to Contribute

1. **Forking the Repository**

   ```bash
   # Fork the repository on GitHub
   # Clone your forked repository
   git clone https://github.com/YOUR_USERNAME/AgenticFleet.git
   cd AgenticFleet
   ```

2. **Reporting Issues**
   - Use GitHub Issues to:
     - Report bugs
     - Suggest features
     - Ask questions
   - [Create a New Issue](https://github.com/Qredence/AgenticFleet/issues/new)

3. **Pull Requests**
   - Fork the repository
   - Create a new branch: `git checkout -b feature/your-feature-name`
   - Make your changes
   - Run pre-commit hooks: `pre-commit run --all-files`
   - Commit with a clear, descriptive message
   - Open a Pull Request

#### Contribution Guidelines

- Read our [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines
- Follow our [Code of Conduct](CODE_OF_CONDUCT.md)
- Ensure code quality with pre-commit hooks
- Write comprehensive tests for new features
- Update documentation accordingly

#### Ways to Contribute

- 🐛 Bug reports
- 📝 Documentation improvements
- 🚀 Feature suggestions
- 💻 Code contributions
- 📖 Tutorials and examples
- 🌐 Internationalization

### Support the Project

- ⭐ Star the repository
- 🐦 Follow us on X (Twitter): [@AgenticFleet](https://x.com/agenticfleet)
- 💬 Join our Discord Community: [AgenticFleet Discord](https://discord.gg/ebgy7gtZHK)
- 💡 Share your use cases
- 🤝 Spread the word about AgenticFleet

We believe in the power of open-source and collaborative development. Your contributions, no matter how small, are valuable and appreciated!

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=Qredence/AgenticFleet&type=Date)](https://star-history.com/#Qredence/AgenticFleet&Date)
