# Fixed versions to prevent unintended behavior changes
crawl4ai>=0.8.0,<0.9
litellm>=1.83.7,!=1.82.7,!=1.82.8
fastmcp>=2.14.2,<3
pydantic>=2.0.0
asyncio
typing-extensions
python-dotenv>=1.0.0
scikit-learn>=1.3.0
numpy>=1.24.0

# File processing - explicit dependencies to avoid conflicts.
# markitdown[pdf] pulls pdfplumber+pdfminer-six; 0.1.5 made pdfplumber
# mandatory for PDF conversion (pdfminer-six alone no longer works), and
# pdfplumber 0.11.9 itself hard-pins pdfminer-six==20251230, so we let
# the [pdf] extra resolve pdfminer-six rather than pinning it ourselves.
markitdown[pdf]>=0.1.5,<0.2
mammoth>=1.11.0
openpyxl>=3.1.5
python-pptx==1.0.2
xlrd>=2.0.1

googlesearch-python==1.3.0
aiohttp>=3.8.0
beautifulsoup4>=4.12.0

# YouTube transcript extraction - fixed version
youtube-transcript-api==1.2.3

# YouTube comment extraction - fixed version
youtube-comment-downloader==0.1.78

# Playwright for lightweight browser automation - fixed version
playwright==1.55.0

# Date utilities for time parsing functionality
python-dateutil>=2.9.0.post0

# Token counting for accurate content size estimation
tiktoken>=0.5.0

# Anthropic SDK for LLM-based content processing
anthropic>=0.40.0

# Security: urllib3 2.6.x has known CVEs (CVE-2026-44431, CVE-2026-44432)
urllib3>=2.7.0
