# Full pinned dependency list for SecOpsTM — core + AI/ML extras.
#
# WHY THIS FILE EXISTS SEPARATELY FROM pyproject.toml
# ----------------------------------------------------
# pyproject.toml [project.dependencies] lists only the *minimal runtime* deps
# needed to run the core threat modeling pipeline (no AI, no LangChain, no
# vector store).  This lets users install a lightweight version with:
#     pip install -e .
#
# This file adds the AI/ML layer on top.  Use it when you need AI enrichment:
#     pip install -r requirements.txt
#
# Alternatively, install only the curated AI extras group from pyproject.toml:
#     pip install -e ".[ai]"
# (lighter than requirements.txt — omits langchain, jq, unstructured)
#
# INTENTIONAL DIFFERENCES vs pyproject.toml
# ------------------------------------------
# - Includes langchain, langchain-community, langchain-chroma, langchain-litellm,
#   langchain-huggingface (not in pyproject.toml [ai] extras — too heavy for most)
# - Includes jq and unstructured[all] (tooling / data pipeline only)
# - Versions are pinned with >= lower-bounds (not exact) to stay compatible with
#   fresh environments while avoiding known-bad releases.
pytm>=1.4.0
Flask[async]>=3.1.1
waitress>=3.0.2
openpyxl>=3.1.0
Jinja2>=3.1.6
pandas>=2.3.3
PyYAML>=6.0.1
graphviz>=0.21
aiohttp>=3.14.3
langchain>=1.3.9
langchain-core>=1.4.6
langchain-community>=0.4
langchain-text-splitters>=1.1.2
litellm>=1.93.0
chromadb>=0.4.24
sentence-transformers>=5.6.0
lxml>=6.1.0
jq>=1.7.0
unstructured[all]>=0.18.18
langchain-huggingface>=1.0.0
msoffcrypto-tool>=5.0.0
langchain-chroma>=1.0.0
langchain-litellm>=0.6.4