Files
TradingAgents-astock/pyproject.toml
T

95 lines
3.3 KiB
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "tradingagents-astock"
version = "0.5.19"
description = "A股多Agent投研框架 — 基于 TradingAgents 深度特化"
readme = "README.md"
requires-python = ">=3.10"
license = {text = "Apache-2.0"}
authors = [
{name = "simonlin1212", email = "simonlin1212@users.noreply.github.com"},
]
dependencies = [
"langchain-core>=0.3.81",
"backtrader>=1.9.78.123",
"langchain-anthropic>=0.3.15",
"langchain-experimental>=0.3.4",
"langchain-openai>=0.3.23",
"langgraph>=1.0",
"langgraph-checkpoint-sqlite>=2.0.0",
"pandas>=2.3.0",
"parsel>=1.10.0",
"pytz>=2025.2",
"questionary>=2.1.0",
"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",
"streamlit>=1.45.0",
"fpdf2>=2.8.6",
"python-dotenv>=1.1.0",
# 0.11.7 是首个兼容 pandas>=2.3 的版本;放宽到 0.10.x 会让 uv 回溯到
# 要求 pandas<1.3.5 的远古版本,报出与真实成因无关的 pandas 冲突(#87)。
"mootdx>=0.11.7",
]
[project.optional-dependencies]
# 走个人 Claude Pro/Max 订阅额度(而非按 token 计费的 Anthropic API)。
# 依赖链为 claude-agent-sdk → mcp → httpx2,**不碰 httpx**,故与 mootdx 的
# httpx<0.26 无冲突(已 uv lock 实测)——与 #87 移除的 [google] 情况不同。
agentsdk = ["claude-agent-sdk>=0.2.82"]
[project.urls]
Homepage = "https://github.com/simonlin1212/tradingagents-astock"
Repository = "https://github.com/simonlin1212/tradingagents-astock"
Issues = "https://github.com/simonlin1212/tradingagents-astock/issues"
Upstream = "https://github.com/TauricResearch/TradingAgents"
# NOTE: there is deliberately no `[google]` extra — see #87.
#
# `langchain-google-genai>=4.0.0` requires `google-genai>=1.53.0`, and *every*
# google-genai release in that range requires `httpx>=0.28.1`, while `mootdx`
# (core A-share data source) pins `httpx>=0.25.0,<0.26.0`. No version
# combination satisfies both — the conflict is structural, not a bad pin.
#
# It used to be declared as an optional extra, but uv builds a **universal
# lock covering all extras**, so its presence made `uv sync` fail for
# everyone, including users who never asked for Gemini. Declaring it empty
# would be worse: `pip install .[google]` would silently install nothing.
#
# Gemini users: install it into a separate environment, or accept the httpx
# bump (mootdx talks TDX over TCP and does not import httpx at runtime):
# pip install --no-deps "langchain-google-genai>=4.0.0"
# pip install "google-genai>=1.53.0" "httpx>=0.28.1"
# See README「Gemini / langchain-google-genai」for details.
[project.scripts]
tradingagents = "cli.main:app"
tradingagents-web = "web.launch:main"
[tool.setuptools.packages.find]
include = ["tradingagents*", "cli*", "web*"]
[tool.setuptools.package-data]
cli = ["static/*"]
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-ra --strict-markers"
markers = [
"unit: fast isolated unit tests",
"integration: tests requiring external services",
"smoke: quick sanity-check tests",
]
filterwarnings = [
"ignore::DeprecationWarning",
]