[project] name = "crewai" dynamic = ["version"] description = "" readme = "README.md" authors = [ { name = "Greyson Lalonde", email = "greyson.r.lalonde@gmail.com" } ] keywords = [ "crewai", "ai", "agents", "framework", "orchestration", "llm", "core", "typed", ] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Software Development :: Libraries :: Python Modules", "Typing :: Typed", ] requires-python = ">=3.10, <3.14" dependencies = [ # Core Dependencies "crewai", "pydantic>=2.11.9", "openai>=1.13.3", "litellm==1.74.9", "instructor>=1.3.3", # Text Processing "pdfplumber>=0.11.4", "regex>=2024.9.11", # Telemetry and Monitoring "opentelemetry-api>=1.30.0", "opentelemetry-sdk>=1.30.0", "opentelemetry-exporter-otlp-proto-http>=1.30.0", "tokenizers>=0.20.3", "openpyxl>=3.1.5", "pyvis>=0.3.2", # Authentication and Security "python-dotenv>=1.1.1", "pyjwt>=2.9.0", # Configuration and Utils "click>=8.1.7", "appdirs>=1.4.4", "jsonref>=1.1.0", "json-repair==0.25.2", "tomli-w>=1.1.0", "tomli>=2.0.2", "blinker>=1.9.0", "json5>=0.10.0", "portalocker==2.7.0", "chromadb~=1.1.0", "pydantic-settings>=2.10.1", "uv>=0.4.25", ] [project.optional-dependencies] tools = [ "crewai-tools", ] embeddings = [ "tiktoken~=0.8.0" ] pdfplumber = [ "pdfplumber>=0.11.4", ] pandas = [ "pandas>=2.2.3", ] openpyxl = [ "openpyxl>=3.1.5", ] mem0 = ["mem0ai>=0.1.94"] docling = [ "docling>=2.12.0", ] aisuite = [ "aisuite>=0.1.10", ] qdrant = [ "qdrant-client[fastembed]>=1.14.3", ] aws = [ "boto3>=1.40.38", ] watson = [ "ibm-watsonx-ai>=1.3.39", ] voyageai = [ "voyageai>=0.3.5", ] [project.scripts] crewai = "crewai.cli.cli:crewai" [project.urls] Homepage = "https://crewai.com" Documentation = "https://docs.crewai.com" Repository = "https://github.com/crewAIInc/crewAI" [tool.pytest.ini_options] testpaths = ["tests"] asyncio_mode = "strict" asyncio_default_fixture_loop_scope = "function" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.version] path = "src/crewai/__init__.py" [tool.hatch.build.targets.wheel] packages = ["src/crewai"]