System Requirements & Dependencies
Last updated
Last updated
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.
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 for better compatibility.
Python Version
3.10+
RAM
8 GB or more
Docker
Optional, for isolated builds
Virtualenv
For dependency management
Git
Latest version for source control
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.
To enable advanced agent capabilities, install the following modules based on your intended use case:
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.
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.
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
.
Always use a virtual environment for isolation:
Freeze current dependencies if modifying:
For production, pin versions strictly to avoid upstream changes.