Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,31 +37,31 @@ dependencies = [
"pillow>=10.3",
"opencv-python-headless>=4.9",
"python-dotenv>=1.0",
"mcp>=2.0,<3",
"mcp>=2.2.0,<3",
]

[project.optional-dependencies]
anthropic = ["anthropic>=1.0,<2"]
openai = ["openai>=1.50"]
openai = ["openai>=3.11.0"]
gemini = ["google-genai>=1.0"]
# Eight vendors, one wheel. Each speaks OpenAI's API at its own address, so the extra exists
# to name the install a reader of `quackd doctor` or a ProviderNotInstalled actually wants,
# not because there is a second package to fetch (see EXTRA_FOR in agent/providers/factory.py).
grok = ["openai>=1.50"]
mistral = ["openai>=1.50"]
deepseek = ["openai>=1.50"]
cohere = ["openai>=1.50"]
qwen = ["openai>=1.50"]
kimi = ["openai>=1.50"]
glm = ["openai>=1.50"]
meta = ["openai>=1.50"]
all = ["anthropic>=1.0,<2", "openai>=1.50", "google-genai>=1.0"]
grok = ["openai>=3.11.0"]
mistral = ["openai>=3.11.0"]
deepseek = ["openai>=3.11.0"]
cohere = ["openai>=3.11.0"]
qwen = ["openai>=3.11.0"]
kimi = ["openai>=3.11.0"]
glm = ["openai>=3.11.0"]
meta = ["openai>=3.11.0"]
all = ["anthropic>=1.0,<2", "openai>=3.11.0", "google-genai>=1.0"]
yolo = ["ultralytics>=8.2"]
live = ["pygame>=2.5"]
# The physics simulator: MuJoCo on the CPU, no GPU, both imported only inside connect().
# onnxruntime is what runs the robot's own walking policy; the Microduck's meshes and that
# policy are fetched at run time and never shipped here (docs/licenses.md).
mujoco = ["mujoco>=3.12,<4", "onnxruntime>=1.20"]
mujoco = ["mujoco>=3.13.0,<4", "onnxruntime>=1.29.0"]
# LAN: zeroconf discovery and the MQTT flock bus (docs/lan.md). Never imported by default.
lan = ["zeroconf>=0.132", "paho-mqtt>=2,<3"]
# LeRobot needs Python 3.12 and pulls torch; the marker keeps the lock solvable on 3.11.
Expand Down
Loading
Loading