pyyaml>=6.0.0
pystator>=0.0.1
simpleeval>=0.9.0

[all]
pygubernator[api,docs,integrations,tools-custom,tools-mcp,tools-rest,ui,worker]

[api]
fastapi>=0.115.0
uvicorn[standard]>=0.30.0
pydantic>=2.8.0
pydantic-settings>=2.3.0
httpx>=0.27.0
PyJWT>=2.9.0
networkx>=3.0
sqlalchemy>=2.0.32
alembic>=1.13.2
psycopg[binary]>=3.1.0
jinja2>=3.1.0
croniter>=2.0.0
aiofiles>=24.1.0
python-dotenv>=1.0.0

[ci]
pygubernator[api,docs,integrations,tools-custom,tools-mcp,tools-rest,ui,worker]
pycharter[ontology]<0.1.0,>=0.0.59
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-timeout>=2.1.0
pytest-xdist>=3.5.0
ruff>=0.9.0
mypy>=1.0.0
pre-commit>=3.0.0

[dev]
pygubernator[api,docs,integrations,tools-custom,tools-mcp,tools-rest,ui,worker]
pycharter[ontology]<0.1.0,>=0.0.59
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-timeout>=2.1.0
pytest-xdist>=3.5.0
ruff>=0.9.0
mypy>=1.0.0
build>=1.2.1
twine>=5.1.1
pre-commit>=3.0.0
marimo>=0.9.0

[docs]
mkdocs<2,>=1.5.3
mkdocs-material>=9.5.0
mkdocstrings[python]>=0.24.0

[integrations]
google-api-python-client>=2.0.0
google-auth>=2.0.0
slack-sdk>=3.27.0
pycharter<0.1.0,>=0.0.59
pycatalyst>=0.0.1
litellm>=1.0.0

[kb]
sentence-transformers<6.0,>=2.2

[packaging]
docker>=7.0.0

[pyactuator-data]
pyactuator[bridges-pygubernator]

[pyactuator-research]
pyactuator[bridges-pygubernator,research-brave,research-tavily]

[tools-custom]
docker>=7.0.0

[tools-google]
google-auth>=2.30.0
httpx>=0.27.0

[tools-mcp]
mcp>=1.0.0

[tools-rest]
httpx>=0.27.0

[ui]
fastapi>=0.115.0
uvicorn[standard]>=0.30.0
httpx>=0.27.0
aiofiles>=24.1.0

[worker]
confluent-kafka>=2.3.0
pika>=1.3.0
boto3>=1.28.0
python-socketio>=5.11.0
opentelemetry-api>=1.27.0
opentelemetry-sdk>=1.27.0
