CrewAI is a Python framework for orchestrating role-playing, autonomous AI agents that collaborate as a crew to tackle complex tasks. It sits in the agentic AI stack between raw LLM calls and full production platforms, giving teams a clean abstraction layer β Crew, Agent, Task β without sacrificing control. Unlike single-prompt patterns, CrewAI agents carry persistent identities (role, goal, backstory) that shape every decision they make, so the quality of those three strings directly determines output quality. The framework spans open-source crew orchestration, deterministic Flows, and a managed enterprise platform (AMP), making it applicable from local experimentation to Fortune 500 production deployments.
What This Cheat Sheet Covers
This topic spans 15 focused tables and 147 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: Core Abstractions β Crew, Agent, Task
The three primitives that everything in CrewAI is built on. Understanding the exact relationship between them β Crew owns the process, Agents own the identity, Tasks own the work β prevents most beginner design mistakes.
| Concept | Example | Description |
|---|---|---|
Agent(role="Analyst", goal="Uncover trends", backstory="10yr data science vet") | An LLM-powered persona with a role, goal, and backstory that shape its system prompt and decision-making style. | |
Task(description="Summarize Q3 report", expected_output="3-bullet summary", agent=analyst) | A discrete unit of work assigned to an agent; its description and expected_output fields directly guide LLM behavior. | |
Crew(agents=[researcher, writer], tasks=[t1, t2], process=Process.sequential) | Orchestrates a list of agents and tasks under a chosen process strategy; entry point for execution via kickoff(). |