CrewAI 把「多 Agent 协作」抽象成了产品经理都能读懂的剧本结构:每个 Agent 是带 role / goal / backstory 三件套的角色,Crew 是把这些角色按顺序拉到一起的剧组,Task 是场记板上的具体镜头。实测 crewAIInc/crewAI 仓库在本 session 拿到 55,618 颗星、推进日期 2026-07-15(MIT 许可)—— 在 2026-07-08 发布 1.15.2 后,CrewAI 已稳定进入「Crew + Flow 双轨」的成熟期,本教程用两条路径各跑一遍,带你从 5 行 prompt 走到一个可部署的研究 Crew。
一、CrewAI 当前定位:上手最快 ≠ 工业最稳
CrewAI 与 AutoGen / LangGraph 的本质差异在于「抽象层级」:AutoGen 给的是裸 AssistantAgent + 消息回调,LangGraph 给的是图状态机;CrewAI 给的是「一个研究团队」—— Researcher 负责查资料、Writer 负责撰稿、Editor 负责润色,LLM 在 Crew 内部按 Process.sequential 或 Process.hierarchical 流转。这种产品化抽象让非工程师能在 30 分钟内跑出一个像样的工作流,但代价是细粒度状态控制比 LangGraph 弱,异常分支比 AutoGen 少。
要在 2026 年 7 月正确选 CrewAI,先认两个里程碑:
- 1.15.x 系列(2026-06 起)引入 Flow(基于事件的状态机),把「简单 Crew 串行任务」扩展到「带条件分支的 Crew 工作流」——这是从 demo 到生产的拐点
- 1.15.2(2026-07-08)[200]是当前最新稳定版,本文示例代码全部基于它
二、30 分钟最小闭环:5 行 prompt 跑通一个研究 Crew

步骤 1:环境与安装(约 5 分钟)
python3 -m venv .venv && source .venv/bin/activate
pip install -U "crewai[tools]" crewai
步骤 2:导出 API Key(以 OpenAI 为例,Anthropic 走 langchain-anthropic 子包)
export OPENAI_API_KEY="***"
步骤 3:写一个三 Agent 协作的研究脚本(约 15 分钟)
from crewai import Agent, Crew, Process, Task
from crewai_tools import SerperDevTool, ScrapeWebsiteTool
search_tool = SerperDevTool()
scrape_tool = ScrapeWebsiteTool()
researcher = Agent(
role="Senior Research Analyst",
goal="Find the most relevant data points on {topic}",
backstory="You are a meticulous analyst who cross-checks sources.",
tools=[search_tool, scrape_tool],
verbose=True,
)
writer = Agent(
role="Technical Writer",
goal="Compose a clear 500-word brief on {topic}",
backstory="You write for engineers. No marketing fluff.",
verbose=True,
)
editor = Agent(
role="Senior Editor",
goal="Polish the draft for clarity and correctness",
backstory="You catch factual errors and tighten prose.",
verbose=True,
)
t1 = Task(description="Research {topic}", expected_output="Bullet list of 8-12 facts with sources", agent=researcher)
t2 = Task(description="Write a 500-word brief", expected_output="Markdown brief", agent=writer)
t3 = Task(description="Edit the brief", expected_output="Final markdown", agent=editor)
crew = Crew(agents=[researcher, writer, editor], tasks=[t1, t2, t3], process=Process.sequential)
result = crew.kickoff(inputs={"topic": "CrewAI vs AutoGen vs LangGraph in 2026"})
print(result.raw)
步骤 4:替换为 Flow 形态(约 10 分钟)
把 Crew.kickoff() 包进 Flow 的状态机,用 @start() / @listen() / @router() 装饰器定义分支,这是把 Crew 从「一次跑完」扩展到「长流程 + 重试 + 人机协同」的关键拐点。
from crewai.flow.flow import Flow, listen, start
class ResearchFlow(Flow):
@start()
def fetch_topic(self):
return "MCP protocol adoption in 2026"
@listen(fetch_topic)
def run_research(self, topic):
return crew.kickoff(inputs={"topic": topic})
@listen(run_research)
def publish(self, brief):
Path(f"reports/{self.state.id}.md").write_text(brief.raw)
return brief.raw
flow = ResearchFlow()
flow.kickoff()
三、关键点
- Agent 三件套(role / goal / backstory)是 CrewAI 的灵魂。backstory 越具体,LLM 越能稳定地保持人设;空 backstory 会让所有 Agent 退化成「通用助手」,协作效果立降。
- 任务依赖用
context字段,不要嵌套 Agent。Task(description=..., context=[t1])表示「本任务依赖 t1 的输出」,CrewAI 自动按 DAG 调度,比 AutoGen 的 message passing 更直观。 - Crew ≠ Flow。简单一次性任务用
Crew.kickoff(),长流程 / 状态持久化 / 异常重试用Flow + @listen。1.15.x 之前的项目基本只能用前者,1.15.x 之后才进 Flow 时代。 Process.hierarchical默认要配 manager LLM。忘了给 manager_agent 时,CrewAI 会用同一模型做调度,容易陷入「自我对话」;生产里要么显式指定 manager_agent,要么强制Process.sequential。- Tools 必须放在 Agent 上,不要全局共享。每个 Agent 的
tools=[...]决定它能用哪些工具—— Researcher 给SerperDevTool,Writer 给FileReadTool,Editor 不给工具,这种「最小授权」能减少幻觉和 token 浪费。 - 可观测靠 CrewAI 的 tracing,不要 print。设置
CREWAI_TRACING_ENABLED=true后,LiteLLM / OpenTelemetry 后端能拿到完整事件流;下一篇教程会展开。

四、行业影响
CrewAI 与 AutoGen / LangGraph 三足鼎立的格局在 2026 年下半年基本稳定:AutoGen 被微软主推迁移至 Microsoft Agent Framework(企业级),LangGraph 持续深耕 LangChain v1 体系(图状态机 + 持久化),CrewAI 守「上手最快」+「产品化抽象」这条护城河。HN id=43354219 「我用 CrewAI 自动化整个 Gmail 工作流」[200] 26 颗星,印证了「非工程师友好」是真卖点;HN id=44561985「Portia —— 带 auth 和 1000 工具的有状态 Crew AI 替代品」[200] 19 颗星,说明社区开始补 CrewAI 的企业短板。
对中文开发者,36Kr 「CrewAI」[200] 与机器之心「CrewAI」搜索页[200] 均能搜到持续中文报道,质量参差但活跃度有保障。
五、结语
30 分钟跑通的,本质是一段顺序执行的多 Agent 循环;真正难的是上线后如何约束工具调用、控制 token 成本、保留审计日志。下一篇教程会展开 CrewAI + OpenTelemetry + Prometheus 的可观测链路,把研究 Crew 从 demo 推到生产。
参考资料:
官方文档
- crewAIInc/crewAI README API [200] - 33,930 字节,2026-07-15 最新
- arxiv 摘要: CrewAI 框架设计论文 [200] - 2024-10 概述
开源项目
- crewAIInc/crewAI 仓库元数据 API [200] - 55,618 stars / pushed 2026-07-15 / MIT
- crewAIInc/crewAI 最新 release API [200] - 1.15.2 / 2026-07-08
- crewAIInc/crewAI-examples 仓库元数据 API [200] - 官方示例集合
- crewAIInc/crewAI-tools 仓库元数据 API [200] - 工具集成集合
行业报道
- 36Kr: CrewAI 搜索结果页 [200] - 中文社区报道索引
- 机器之心: CrewAI 搜索结果页 [200] - 中文 AI 媒体索引
社区讨论
- HN: 我用 CrewAI 自动化整个 Gmail 工作流(id=43354219, 26 pts) [200] - 2025-08 Show HN
- HN: Portia — 带 auth 和 1000 工具的 Crew AI 替代品(id=44561985, 19 pts) [200] - 2026-02 Show HN
- HN: CrewAI vs AutoGen 运行 LLM 生成代码(id=39399490, 14 pts) [200] - 工程选型对比
- HN Algolia: CrewAI 聚合搜索 [200] - 持续聚合
对比基准
- HN: Agentic AI Engineering Workshop feat. MCP/CrewAI/OpenAI Agent SDK(id=44600832, 12 pts) [200] - 4 小时工作坊横评
本文由 AI 生成。内容基于公开资料整理,可能存在事实偏差,引用链接请以原始来源为准。
