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
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) for better compatibility.
Recommended Development Environment
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:
textCopyEditopenai>=1.0.0
requests>=2.31.0
python-dotenv>=1.0.0
Install them via pip:
bashCopyEditpip install -r requirements.txt
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:
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:
bashCopyEditpip install faiss-cpu langchain beautifulsoup4
To install all optional dependencies at once:
bashCopyEditpip install -r requirements-extended.txt
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
:
iniCopyEditOPENAI_API_KEY=your_api_key
CLEO_AGENT_NAME=Atlas
CLEO_ENABLE_MEMORY=True
Environment variables are automatically loaded by Cleo on startup using python-dotenv
.
Dependency Management Best Practices
Always use a virtual environment for isolation:
bashCopyEditpython -m venv venv
source venv/bin/activate
Freeze current dependencies if modifying:
bashCopyEditpip freeze > requirements.txt
For production, pin versions strictly to avoid upstream changes.
Last updated