alembic<2,>=1.18
httpx<1,>=0.28
jsonschema<4.27,>=4.25.1
keyring<26,>=25.7
platformdirs<5,>=4.5
prompt-toolkit<4,>=3.0.52
pydantic<3,>=2.12
python-dateutil<3,>=2.9
rapidfuzz<4,>=3.14
rich<16,>=15
sqlalchemy<3,>=2.0
sqlcipher3<0.7,>=0.6.2
sqlglot<31,>=28
tomli-w<2,>=1.2

[all-llm]
anthropic<1,>=0.71
google-genai<3,>=2.12
ollama<1,>=0.6
openai<3,>=2.45

[anthropic]
anthropic<1,>=0.71

[dev]
build<2,>=1.3
check-wheel-contents<1,>=0.6.1
click<9,>=8.3.3
cyclonedx-bom<8,>=7.2
coverage[toml]<8,>=7.12
mypy<3,>=1.19
packaging<27,>=25
pip-audit<3,>=2.10
pre-commit<5,>=4.5
pytest<10,>=9
pytest-cov<8,>=7
pytest-mock<4,>=3.15
ruff<1,>=0.15
setuptools<84,>=83
twine<7,>=6.2
types-python-dateutil<3,>=2.9
uv==0.12.0
wheel<1,>=0.45
zizmor==1.28.0

[gemini]
google-genai<3,>=2.12

[ollama]
ollama<1,>=0.6

[openai]
openai<3,>=2.45

[openrouter]
openai<3,>=2.45
