# Core runtime deps. The ~2GB ML stack (torch / transformers /
# sentence-transformers / scikit-learn) powers the OPTIONAL semantic cache only
# and is NOT installed here — run `pip install screenforge[ml]` for it. The
# deterministic --action path and inspect_ui never touch it.
adbutils==2.12.0
allure-pytest==2.15.3
allure-python-commons==2.15.3
annotated-doc==0.0.4
annotated-types==0.7.0
anyio==4.12.1
attrs==25.4.0
certifi==2026.2.25
charset-normalizer==3.4.5
click==8.3.1
decorator==5.2.1
deprecation==2.1.0
distro==1.9.0
filelock==3.25.2
fsspec==2026.2.0
gevent==25.9.1
greenlet==3.3.2
h11==0.16.0
hf-xet==1.4.2
httpcore==1.0.9
httpx==0.28.1
huggingface_hub==1.7.1
idna==3.11
ImageIO==2.37.3
iniconfig==2.3.0
Jinja2==3.1.6
jiter==0.13.0
joblib==1.5.3
loguru==0.7.3
lxml==6.0.2
markdown-it-py==4.0.0
MarkupSafe==3.0.3
mdurl==0.1.2
mpmath==1.3.0
networkx==3.6.1
numpy==2.4.3
openai==2.26.0
opencv-python==4.13.0.92
packaging==26.0
pillow==12.1.1
playwright==1.58.0
pluggy==1.6.0
pyee==13.0.1
pydantic==2.12.5
pydantic_core==2.41.5
Pygments==2.19.2
pytest==9.0.2
python-dotenv==1.2.2
PyYAML==6.0.3
regex==2026.2.28
requests==2.32.5
retry2==0.9.5
rich==14.3.3
safetensors==0.7.0
scipy==1.17.1
setuptools==82.0.1
shellingham==1.5.4
sniffio==1.3.1
sympy==1.14.0
threadpoolctl==3.6.0
tqdm==4.67.3
typer==0.24.1
typing-inspection==0.4.2
typing_extensions==4.15.0
uiautomator2==3.5.0
urllib3==2.6.3
websocket-client==1.9.0
zope.event==6.1
zope.interface==8.2
