[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "openenv-stocker" version = "0.1.0" description = "Stocker — multi-agent council RL environment for stock trading on OpenEnv" requires-python = ">=3.10" dependencies = [ "fastapi>=0.115.0", "uvicorn[standard]>=0.30.0", "pydantic>=2.0.0", "pydantic-settings>=2.6.0", "openai>=1.0.0", "openenv-core>=0.2.0", "pandas>=2.0.0", "pyarrow>=14.0.0", "pillow>=10.0.0", ] [project.scripts] server = "server.app:main" [project.optional-dependencies] dev = [ "pytest>=8.0.0", ] data = [ "yfinance>=0.2.0", "mplfinance>=0.12.0", "matplotlib>=3.8.0", ] eval = [ "matplotlib>=3.8.0", ] serve = [ "vllm>=0.6.0", ] train = [ "trl>=0.11.0", "transformers>=4.45.0", "peft>=0.13.0", "accelerate>=1.0.0", "bitsandbytes>=0.43.0", "datasets>=3.0.0", "tensorboard>=2.18.0", ] [tool.setuptools] # Explicit package list — setuptools' flat-layout autodetect would otherwise # pick up data/ and training/ (which are not importable Python packages). packages = [ "app", "app.api", "app.core", "app.council", "app.data", "server", ] [tool.uv] package = true [tool.pytest.ini_options] testpaths = ["tests"]