CrewAI
CrewAI is an open-source toolkit, written in Python, for building teams of AI agents, each with a role, that work through a list of tasks together.
Some jobs have several parts that need different skills, such as finding facts and then writing them up. CrewAI is an open-source toolkit, written in Python, for this. You build a small team of AI agents, called a crew, and give it a list of tasks.
Each agent gets a role, a goal and a short backstory. These tell the agent what it is for. An agent can also be given tools, which are extra abilities the agent can call on. Each task has a description, the output it should produce and the agent responsible. Picture a crew with a researcher and a writer. The researcher finds facts about a topic, and the writer turns them into an article.
The crew follows a process. The default is sequential: tasks run in list order. Each result is passed on as background for the next task. In the hierarchical process, a manager agent is in charge. It plans the work, assigns tasks to agents based on what they can do and checks the results. You must give it a manager model or a manager agent.
For engineers: CrewAI also has Flows. A flow is a workflow written in ordinary code. Each step runs when something it waits for happens (that is what “event-driven” means). A flow remembers its data between steps, which is called keeping state, and it can branch or loop. It can hand a hard step to a crew and carry on with the result. Crews give flexible teamwork; flows give precise control. By default, agents cannot pass work to each other; that is called delegation, and it is off. CrewAI can work with many different language models, even ones that run on your own computer.
One general AI helper struggles with a big job that has several different parts.
Follow one article through a two-agent crew.
- 1 · defineYou describe each agent with a role, a goal and a backstory, and can give it tools.
- 2 · assignYou write each task with a description, the expected output and the agent responsible.
- 3 · groupYou put the agents and tasks into a crew and choose a process.
- 4 · passIn the sequential process, tasks run in list order and each output is context for the next.
- 5 · steerA flow can wrap crews with fixed steps, saved state and branching logic.
A crew is a team with a running order: roles, tasks and a process.
| Who | What they ask | What it works with |
|---|---|---|
| Marketing team | “Can one agent research a topic and another write the post?” | A sequential crew of a researcher and a writer |
| Operations team | “Can a manager agent decide who handles each request?” | A hierarchical crew with a manager agent |
| Product team | “Can we run fixed steps and call a crew only for the hard part?” | A flow that starts a crew and keeps state |
| Data team | “Can agents use extra tools as they work?” | Tools given to each agent |
- It lets you split a job across agents that each have a clear role and goal.
- It passes one task's output to the next task as context.
- It offers a manager option that assigns tasks and reviews results.
- Flows add fixed steps, saved state and branching around the agents.
- It does not choose your roles or tasks; you still design the team.
- Crews let agents decide for themselves; for precise, step-by-step control you need a flow instead.
- The hierarchical process needs a manager model or manager agent that you set.
- Each agent still depends on the language model behind it.
Sources used
This explainer is written in original language. The links below support its factual claims.
- repocrewAIInc/crewAI, CrewAI (GitHub) · read 28 Sept 2026
- docsIntroduction, CrewAI documentation · read 28 Sept 2026
- docsAgents, CrewAI documentation · read 28 Sept 2026
- docsTasks, CrewAI documentation · read 28 Sept 2026
- docsCrews, CrewAI documentation · read 28 Sept 2026
- docsProcesses, CrewAI documentation · read 28 Sept 2026
- docsFlows, CrewAI documentation · read 28 Sept 2026