SuperAPI AI Directory

crewai

CrewAI is an open-source Python framework for orchestrating role-playing autonomous AI agents, enabling multiple agents to collaborate on complex tasks through collaborative intelligence. It provides two complementary approaches: Crews and Flows: Crews is aimed at autonomous, collaborative teams of role-based agents, while Flows is aimed at event-driven, precise workflow control. The framework requires Python >=3.10 and <3.14, uses UV to manage dependencies, and can create and run projects via the crewai CLI. The official offering also includes the commercial CrewAI AMP Suite, which includes managed deployment, observability, governance, security, and enterprise support capabilities.

Open website

About this tool

Purpose

CrewAI is a framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, it enables agents to work together seamlessly to tackle complex tasks. The official positioning describes it as a fast, flexible multi-agent automation framework that provides both high-level abstractions and low-level APIs for building production-ready multi-agent workflows.

Main Capabilities

CrewAI provides two complementary approaches that can be used together seamlessly:

Crews: teams of AI agents with true autonomy and agency that work together through role-based collaboration to accomplish complex tasks. It supports natural, autonomous decision-making among agents, dynamic task delegation and collaboration, and specialized roles with clear goals and expertise, and supports flexible approaches to problem-solving.

Flows: production-ready, event-driven workflows that provide precise control for complex automation. It provides fine-grained control over execution paths, safe and consistent state management between tasks, clean integration of AI agents with production-grade Python code, and conditional branching for complex business logic.

Combining Crews and Flows: Together, the two can be used to build complex production-grade applications, balancing autonomy with precise control, handling complex real-world scenarios, and keeping code clear and maintainable.

Framework features include: an architecture designed specifically for agent orchestration, with a lightweight Python core and clear primitives; high-performance optimization aimed at speed and minimal resource usage; complete low-level customization freedom from workflows and system architecture to agent behavior, internal prompts, and execution logic; suitability for simple tasks, complex workflows, and production-grade automation; and support from a community of more than 100,000 developers certified through community courses.

Capabilities also mentioned include: agent-ready capabilities, including tools, memory, knowledge, checkpoints, asynchronous execution, and MCP/A2A support; and production-ready patterns, including deterministic steps, human input, structured outputs, and checkpoints.

Usage

Installation requires Python >=3.10 and <3.14. CrewAI uses UV for dependency management and package handling; you need to install uv first, then install the CrewAI CLI. You can use crewai create crew to create a JSON-first crew project: agents are located in agents/*.jsonc, and tasks and crew-level settings are located in crew.jsonc,crewai run load that JSON definition directly. The command generates a new project folder containing the following structure. If you need the legacy Python/YAML scaffolding (including crew.py, config/agents.yaml, and config/tasks.yaml), you can run the corresponding command; for classic mode, see Using Annotations.

Editing project files: modify agents/*.jsonc to define each agent's role, goal, backstory, LLM, tools, and behavior; modify crew.jsonc Define tasks, processes, and input defaults; add custom tools in tools/ and reference them as "custom:<name>"; add optional knowledge files in knowledge/ and skill files in skills/; write environment variables into the .env file. Use {placeholder} values in agent and task text, and set defaults under inputs in crew.jsonc; when running crewai run, the CLI prompts for missing values.

Before running, set the required keys in .env: the model provider API key (see LLM setup); if using web search, a Serper.dev API key is required SERPER_API_KEY=YOUR_KEY_HERE. Then install dependencies in the project directory and run. If additional packages are needed, use uv add <package-name>. Output is displayed in the console, and output/report.mdis created in the project root. In addition to sequential processes, hierarchical processes can also be used, automatically assigning a manager to the defined crew, coordinating task planning and execution through delegation and result validation.

Connecting models: CrewAI supports using various LLMs through multiple connection options. By default, agents use the OpenAI API when querying models; agents can also be configured to use local models through the Ollama tool. For details, see the Connect CrewAI to LLMs page.

When to use

Use CrewAI when you need more than a single prompt or chatbot: multi-step work, specialized agents, tool use, structured output, human review, or workflows that combine autonomous reasoning with explicit business logic. It is especially suitable for: coordinating multiple agents with clear roles and tasks; wrapping agent work into deterministic, event-driven workflows; keeping application logic in regular Python; moving from experimentation to production without switching between frameworks; adding tools, memory, checkpoints, and asynchronous execution as the system grows.

The official example repository CrewAI-examples provides testable, real-world AI crew examples, including Landing Page Generator, Trip Planner, Stock Analysis, Write Job Descriptions, combining multiple Crews in a process, and more.

Limitations and notes

  • The runtime requires Python >=3.10 and <3.14, with dependencies managed by UV.
  • On Windows, if you encounter a chroma-hnswlib==0.7.6 build error (fatal error C1083: Cannot open include file: 'float.h'), install Visual Studio Build Tools with Desktop development with C++.
  • CrewAI uses anonymous telemetry to collect usage data, mainly to help improve the library, focus on the most commonly used features, integrations, and tools. Official statement: except under specific conditions, it does not collect prompts, task descriptions, agent backstories or goals, tool usage, API calls, responses, any data processed by agents, or keys and environment variables. When the share_crew feature is enabled, detailed data is collected, including task descriptions, agent backstories or goals, and other specific attributes, while respectingHeavy focus on user privacy. Users can disable telemetry by setting the environment variable OTEL_SDK_DISABLED to true. Collected data includes: CrewAI version (to understand how many users are on the latest version), Python version (to determine which versions to better support), and general operating system information, such as the number of CPUs and whether the OS is macOS, Windows, or Linux (to understand which operating systems to focus on and whether it is possible to build OS-specific features).
  • An official commercial CrewAI AMP Suite is provided, adding managed deployment, observability, governance, security, and enterprise support for organizations that need a commercial control plane around CrewAI. Some of it can be tried for free—the Crew Control Plane. Its key features include: tracing and observability (real-time monitoring and tracking of AI agents and workflows, including metrics, logs, and traces), a unified control plane (a platform to centrally manage, monitor, and scale AI agents and workflows), seamless integration (easily connect to existing enterprise systems, data sources, and cloud infrastructure), advanced security (built-in robust security and compliance measures), actionable insights (real-time analytics and reporting), 24/7 support, and on-premises and cloud deployment options.
  • More commercial details such as billing and pricing are not yet provided.