# Devin AGI - Python Dependencies

# --- Build Tools ---
setuptools>=83.0.0  # PYSEC-2026-3447: fix requires >=83.0.0

# --- Core & Servers ---
flask
flask-socketio
python-telegram-bot
requests
python-dotenv
numpy
pandas
pyarrow
websockets
cmake
# Terminal UI (modules/user_interaction_module.py) -- markdown-rendered
# replies, styled prompts/panels, and a thinking spinner, closer to Claude
# Code's own CLI than hand-rolled ANSI escape codes.
rich

# --- AI & Machine Learning ---
openai
anthropic
# google-generativeai is EOL and unused by Devin's own code (see modules/Gemini_module.py,
# which uses google-genai instead) -- kept only because vendored self-operating-computer/
# still imports it directly in its own config.py.
google-generativeai
# Required by vendored self-operating-computer/ (operate_computer tool):
# config.py and models/apis.py import these unconditionally at module load,
# so operate_computer fails to import at all without them regardless of
# which AI provider/model is actually selected.
prompt-toolkit
ollama
python3-xlib
easyocr
scikit-learn
spacy
torch
torchvision
torchaudio
ultralytics
Pillow
tiktoken
sentence-transformers

# --- Social & Communication ---
tweepy
praw
cryptography>=49.0.0
# Multi-channel messaging (modules/messaging_gateway.py) -- Telegram is
# covered by python-telegram-bot above; these add Discord and Slack,
# following openclaw's pattern of pluggable channel integrations.
discord.py
slack-bolt

# --- OS & Automation ---
psutil
watchdog
pynput
selenium
playwright
pyautogui
mss
pygetwindow; sys_platform != 'linux'
pycaw; sys_platform == 'win32'
paramiko
boto3
google-cloud-storage
google-cloud-compute
pywin32; sys_platform == 'win32'
SpeechRecognition
openai-whisper
PyAudio
pyttsx3
gtts
simpleaudio

# --- Robotics ---
pyserial
opencv-python

# --- Consented Face Recognition (ConsentedFaceRecognizer) ---
# Needs cmake + a C++ compiler to build dlib from source on most systems.
face_recognition

# --- Threat Intelligence & Pentesting ---
python-nmap
beautifulsoup4
scapy
pymetasploit3  # PYSEC-2026-500: no fix version available upstream

# --- Other Utilities ---
tqdm
pyyaml
webdriver-manager
ppad
pure-python-adb
dataclasses
google-genai
hf_xet
GPUtil

# --- Extended Capabilities (quantum, privacy, reality/XR, plugins, ops) ---
# All of these are individually optional -- every facade in modules/*_tools.py
# degrades gracefully (logs a warning, disables just that feature) if its
# dependency isn't installed, same as torch/ROS2/adb above. Install what you
# actually want to use; nothing here is required for the core assistant loop.
qiskit                  # quantum circuit simulation (QuantumFacade)
qiskit-aer
qiskit-algorithms        # quantum ML (QuantumFacade.train_quantum_classifier)
qiskit-machine-learning
liboqs-python            # real post-quantum crypto (Kyber, Dilithium, etc. -- imported as `oqs`)
diffprivlib              # differential privacy (PrivacyFacade)
presidio-analyzer        # PII detection/redaction (PrivacyFacade) -- also needs a spaCy model, e.g. `python -m spacy download en_core_web_lg`
presidio-anonymizer
Faker
scipy                    # statistical drift detection (PlatformOpsFacade)
prometheus_client        # metrics exposition (PlatformOpsFacade)
geopy                    # geocoding (RealityEngineFacade)
tinytuya                 # local smart-home IoT control (RealityEngineFacade) -- optional, only needed if you have Tuya devices
stem                     # Tor control port (RealityEngineFacade dark-web tools) -- also requires a local Tor daemon
PySocks                  # SOCKS proxy support for the Tor-routed requests session above
googlesearch-python      # web_search (PluginsFacade)
numexpr                  # calculate() (PluginsFacade)
pytz
ccxt                     # crypto market data, read-only (PluginsFacade)
pandas-ta; python_version >= '3.12'  # no wheel/sdist available for Python 3.11 or earlier as of this writing
reportlab                # PDF generation (EthicsLegalFacade pentest-authorization doc, PluginsFacade)
