CrewAI (Multi-agent Orchestration)

CrewAI multi-agent framework: role-goal-backstory agent declaration, sequential / hierarchical execution processes, dual tool-call loops (ReAct + OpenAI native function-calling), unified Memory layer, 5 native LLM providers + LiteLLM fallback.

✓ 0 reported success·v0.1.0·

Overview

CrewAI is a Python framework for building multi-agent LLM applications (github.com/joaomdmoura/crewAI). Core features: role-goal-backstory agent declaration, two execution processes (sequential / hierarchical with auto- or custom-built manager), dual tool-call loops (ReAct text-parse vs OpenAI native function-calling, selected by feature-detection at run time), a unified Memory layer (Memory + MemorySlice + RecallFlow with adaptive depth recall), and pluggable LLM provider routing (5 native SDKs + LiteLLM fallback). Optional Flow subsystem (3572 lines in flow/) provides @start / @listen decorators for event-driven orchestration. OpenTelemetry telemetry is on by default; can be disabled via env vars. This skill embeds 56 constraints (5 fatal) covering typical pitfalls: aggregate_raw_outputs has no token cap so long task chains overflow context, tool repeated-usage detection only checks last_used_tool (A→B→A→B oscillation slips through), and telemetry is auto-init opt-out. The host AI applies these automatically.

Blueprint Source

finance-bp-134

joaomdmoura/crewAIcb46a1c1 source file

Constraints

5total
5fatal
5 must-not-violate

Evidence Quality

Confidence90%

High confidence — strong evidence base

5 non-negotiable constraints

FATALdomain_rulecrewai-C-001

WHENWhen constructing a Crew with 5 or more sequential tasks and verbose intermediate outputs

ACTIONAlways set task.context = [task1, task2, ...] explicitly to declare which prior outputs are needed, OR install a task callback that summarizes raw output before the next task consumes it. Do not rely on the default aggregation path for chains beyond ~4 tasks. Verify by inspecting agent prompt token counts at the boundary task.

CONSEQUENCEundefined behavior

FATALdomain_rulecrewai-C-002

WHENWhen configuring an Agent with 2 or more tools where the model could plausibly toggle between them

ACTIONOn every tool instance reachable by an agent with >=2 tools, set max_usage_count to a budget you can afford (e.g. 5-10 per kickoff). Additionally hook step_callback to maintain a per-tool counter and abort the loop when an A→B→A pattern persists for >=2 cycles. Do NOT rely on _check_tool_repeated_usage to catch oscillation.

CONSEQUENCEundefined behavior

FATALdomain_rulecrewai-C-003

WHENWhen deploying any application that imports crewai in an environment with privacy / compliance / GDPR / SOC2 / data-residency requirements

ACTIONSet CREWAI_DISABLE_TELEMETRY=true (or one of the equivalents) BEFORE any process imports crewai — set it in .env, docker-compose, Kubernetes manifests, CI workflows, and developer onboarding scripts. Do NOT rely on assuming SDK frameworks are silent. Audit by running with logging enabled and confirming no OTLP exporter init log appears.

CONSEQUENCEundefined behavior

FAQ

Discussion (0)

No comments yet. Be the first to share!

Changelog

v0.1.02026-04-25·Contributors: tangweigang-jpg

v0.1.0: Initial release on Doramagic.ai. Multi-agent framework on joaomdmoura/crewAI with bilingual metadata, 56 anti-pattern constraints (5 fatal), and 3 FAQs.

v0.1.02026-04-25·Contributors: tangweigang-jpg

v0.1.0: Initial release on Doramagic.ai. Multi-agent framework on joaomdmoura/crewAI with bilingual metadata, 56 anti-pattern constraints (5 fatal), and 3 FAQs.