--- title: Installation description: Get started with CrewAI - Install, configure, and build your first AI crew icon: wrench --- **Python Version Requirements** CrewAI requires `Python >=3.10 and <3.13`. Here's how to check your version: ```bash python3 --version ``` If you need to update Python, visit [python.org/downloads](https://python.org/downloads) # Setting Up Your Environment Before installing CrewAI, it's recommended to set up a virtual environment. This helps isolate your project dependencies and avoid conflicts. Choose your preferred method to create a virtual environment: **Using venv (Python's built-in tool):** ```shell Terminal python3 -m venv .venv ``` **Using conda:** ```shell Terminal conda create -n crewai-env python=3.12 ``` Activate your virtual environment based on your platform: **On macOS/Linux (venv):** ```shell Terminal source .venv/bin/activate ``` **On Windows (venv):** ```shell Terminal .venv\Scripts\activate ``` **Using conda (all platforms):** ```shell Terminal conda activate crewai-env ``` # Installing CrewAI Now let's get you set up! 🚀 Install CrewAI with all recommended tools using either method: ```shell Terminal pip install 'crewai[tools]' ``` or ```shell Terminal pip install crewai crewai-tools ``` Both methods install the core package and additional tools needed for most use cases. If you have an older version of CrewAI installed, you can upgrade it: ```shell Terminal pip install --upgrade crewai crewai-tools ``` If you see a Poetry-related warning, you'll need to migrate to our new dependency manager: ```shell Terminal crewai update ``` This will update your project to use [UV](https://github.com/astral-sh/uv), our new faster dependency manager. Skip this step if you're doing a fresh installation. Check your installed versions: ```shell Terminal pip freeze | grep crewai ``` You should see something like: ```markdown Output crewai==X.X.X crewai-tools==X.X.X ``` Installation successful! You're ready to create your first crew. # Creating a New Project We recommend using the YAML Template scaffolding for a structured approach to defining agents and tasks. Run the CrewAI CLI command: ```shell Terminal crewai create crew ``` This creates a new project with the following structure: ``` my_project/ ├── .gitignore ├── pyproject.toml ├── README.md ├── .env └── src/ └── my_project/ ├── __init__.py ├── main.py ├── crew.py ├── tools/ │ ├── custom_tool.py │ └── __init__.py └── config/ ├── agents.yaml ├── config.yaml └── tasks.yaml ``` You can install additional tools using UV: ```shell Terminal uv add ``` UV is our preferred package manager as it's significantly faster than pip and provides better dependency resolution. Your project will contain these essential files: | File | Purpose | | --- | --- | | `agents.yaml` | Define your AI agents and their roles | | `tasks.yaml` | Set up agent tasks and workflows | | `.env` | Store API keys and environment variables | | `main.py` | Project entry point and execution flow | | `crew.py` | Crew orchestration and coordination | | `tools/` | Directory for custom agent tools | Start by editing `agents.yaml` and `tasks.yaml` to define your crew's behavior. Keep sensitive information like API keys in `.env`. ## Next Steps Follow our quickstart guide to create your first CrewAI agent and get hands-on experience. Connect with other developers, get help, and share your CrewAI experiences.