CrewAI Planning Defines Two Roles, Including a Content Researcher Agent
Why does CrewAI’s planning matter for anyone building a multi‑agent system? While the framework promises a structured workflow, the real test lies in how it translates abstract goals into concrete agent definitions. Here’s the thing: the library lets developers declare each participant’s purpose, constraints and backstory in code, rather than leaving those details to guesswork.
In the example that follows, the author sketches a “Content Researcher” agent, complete with a role label, a clear goal to pull factual data, and a backstory that nudges it toward trustworthy sources. The snippet also shows the import statement and the exact syntax used to instantiate the agent. By laying out these elements, the piece demonstrates the practical steps required to move from a high‑level plan to an executable component.
This context sets the stage for the next line, which spells out the two roles the example employs.
There are two roles in this example: This AI agent collects all the necessary factual information. from crewai import Agent researcher = Agent( role="Content Researcher", goal="Research information on a given topic and prepare structured notes", backstory="You gather credible information from trusted sources and summarize it in a clear format.", tools=[browser_tool, exa_tool], ) This agent will format the article based on the notes collected by the Content Researcher. writer = Agent( role="Senior Content Writer", goal="Write a polished article based on the research notes", backstory="You create clean and engaging content from research findings.", tools=[browser_tool, exa_tool], ) Each agent will be assigned one task.
from crewai import Task research_task = Task( description="Research the topic and produce a structured set of notes with clear headings.", expected_output="A well-organized research summary about the topic.", agent=researcher, ) write_task = Task( description="Write a clear final article using the research notes from the first task.", expected_output="A polished article that covers the topic thoroughly.", agent=writer, ) This is the key part. from crewai import Crew crew = Crew( agents=[researcher, writer], tasks=[research_task, write_task], planning=True ) Once planning is enabled, CrewAI generates a step-by-step workflow before agents work on their tasks. That plan is injected into both tasks so each agent knows what the overall structure looks like.
Kick off the workflow with a topic and date. result = crew.kickoff(inputs={"topic":"AI Agent Roadmap", "todays_date": "Dec 1, 2025"}) The process looks like this: Display the output. print(result) You will see the completed article and the reasoning steps.
This demonstrates how planning allows CrewAI agents to work in a much more organized and seamless manner. By having that one shared roadmap generated, the agents will know exactly what to do at any given moment, without forgetting the context of their role.
Can a single roadmap truly align dozens of autonomous agents? CrewAI’s planning module claims to do just that, laying out a step‑by‑step guide that each participant follows. In practice, the example notebook demonstrates two defined roles, the first being a Content Researcher who pulls factual data and formats it into structured notes.
By giving both agents the same plan, the system reduces the need for ad‑hoc communication, which has historically been a bottleneck in multi‑agent projects. Yet the article stops short of measuring how the approach scales beyond a simple two‑agent scenario. The backstory attached to the researcher role emphasizes credibility, suggesting that trust in source material remains a core concern.
Because the roadmap is generated beforehand, agents can focus on execution rather than negotiation, but it's unclear whether unexpected task variations will derail the preset sequence. Overall, the demonstration offers a concrete illustration of CrewAI’s planning feature, showing how a shared blueprint can streamline coordination, even if broader applicability still needs validation.
Further Reading
- CrewAI Guide: Build Multi-Agent AI Teams in October 2025 - Mem0 AI Blog
- CrewAI Framework 2025: Complete Review of the Open Source Multi-Agent AI Platform - LateNode
- Top AI Agent Frameworks in 2025 - Codecademy - Codecademy
- Building Multi-Agent Systems With CrewAI - A Comprehensive Tutorial - Firecrawl
Common Questions Answered
What purpose does the Content Researcher agent serve in CrewAI’s planning example?
The Content Researcher agent is tasked with gathering credible factual information on a given topic and organizing it into structured notes. Its role ensures that downstream agents, like the writer, have reliable data to format into an article.
How does CrewAI allow developers to define an agent’s backstory and constraints?
CrewAI lets developers specify each agent’s purpose, backstory, goal, and toolset directly in code, eliminating guesswork. By embedding these details, the framework creates a clear, reproducible workflow for multi‑agent systems.
Which tools are assigned to the Content Researcher agent, and what are they used for?
The Content Researcher agent is equipped with `browser_tool` and `exa_tool`, which enable it to browse the web and query external knowledge bases. These tools help the agent retrieve and verify information from trusted sources.
What advantage does CrewAI’s planning module claim to provide when coordinating multiple autonomous agents?
The planning module claims to align dozens of agents by providing a shared, step‑by‑step roadmap, reducing the need for ad‑hoc communication. This structured approach addresses a common bottleneck in multi‑agent projects, improving efficiency and consistency.