System Requirements & Dependencies

Cleo is built with flexibility in mind and is designed to operate across a variety of environments, including local development machines, private servers, and containerized platforms.

This section outlines the minimum and recommended requirements to run Cleo effectively, along with a breakdown of its core and optional dependencies.


Minimum System Requirements

Resource
Minimum

OS

macOS, Linux, or Windows (WSL)

Python Version

3.9 or higher

RAM

4 GB

Disk Space

500 MB

Network Access

Required for external APIs

Note: For Windows users, it is highly recommended to use Windows Subsystem for Linux (WSL)arrow-up-right for better compatibility.


Resource
Recommended

Python Version

3.10+

RAM

8 GB or more

Docker

Optional, for isolated builds

Virtualenv

For dependency management

Git

Latest version for source control


Python Dependencies

The base dependencies required to run Cleo are listed in the requirements.txt file:

Install them via pip:

These dependencies enable foundational functionality such as task routing, API integration, and environment configuration.


Optional Dependencies (Advanced Features)

To enable advanced agent capabilities, install the following modules based on your intended use case:

Feature
Dependency
Install Command

Vector Memory

faiss-cpu or chromadb

pip install faiss-cpu

Web Browsing Agent

playwright

pip install playwright

HTML Parsing

beautifulsoup4

pip install beautifulsoup4

LLM Chaining

langchain

pip install langchain

Speech I/O

pyttsx3, SpeechRecognition

pip install pyttsx3 SpeechRecognition

Example:

To install all optional dependencies at once:

requirements-extended.txt is a convenience file provided in the repo for full feature installations.


GPU Support (Optional)

If you're planning to run local language models or neural inference, GPU support can be enabled via:

  • CUDA-compatible GPU

  • PyTorch with GPU support

  • Accelerated backends for Faiss or Hugging Face Transformers

These are not required for cloud-based models (like OpenAI), but are useful for self-hosted inference.


Environment Variables

Configuration values such as API keys and runtime preferences should be placed in a .env file at the project root.

Example .env:

Environment variables are automatically loaded by Cleo on startup using python-dotenv.


Dependency Management Best Practices

  • Always use a virtual environment for isolation:

  • Freeze current dependencies if modifying:

  • For production, pin versions strictly to avoid upstream changes.

Last updated