[build-system] requires = ["setuptools>=61.0"] build-backend = "setuptools.build_meta" [project] name = "tradingagents" version = "0.2.0" description = "TradingAgents: Multi-Agents LLM Financial Trading Framework" readme = "README.md" requires-python = ">=3.10" dependencies = [ "langchain-core>=0.3.81", "backtrader>=1.9.78.123", "chainlit>=2.5.5", "langchain-anthropic>=0.3.15", "langchain-experimental>=0.3.4", "langchain-google-genai>=2.1.5", "langchain-openai>=0.3.23", "langgraph>=0.4.8", "pandas>=2.3.0", "parsel>=1.10.0", "pytz>=2025.2", "questionary>=2.1.0", "rank-bm25>=0.2.2", "redis>=6.2.0", "requests>=2.32.4", "rich>=14.0.0", "typer>=0.21.0", "setuptools>=80.9.0", "stockstats>=0.6.5", "tqdm>=4.67.1", "typing-extensions>=4.14.0", "yfinance>=0.2.63", ] [project.optional-dependencies] dev = [ "pytest>=8.0.0", "pytest-cov>=4.1.0", "ruff>=0.4.0", "mypy>=1.9.0", ] [project.scripts] tradingagents = "cli.main:app" [tool.pytest.ini_options] testpaths = ["tests"] python_files = ["test_*.py"] python_functions = ["test_*"] markers = [ "unit: Unit tests (fast, isolated)", "integration: Integration tests (may require API keys)", "slow: Slow running tests", ] [tool.ruff] target-version = "py310" line-length = 100 select = ["E", "F", "I", "N", "W", "UP", "B", "C4", "DTZ", "ISC", "PIE", "PT", "RET", "SIM", "TCH", "ARG"] [tool.ruff.per-file-ignores] "tests/*" = ["ARG"] [tool.mypy] python_version = "3.10" strict = true warn_return_any = true warn_unused_configs = true ignore_missing_imports = true [tool.setuptools.packages.find] include = ["tradingagents*", "cli*"]