Role-based teams are interfaces
CrewAI popularized a clear role/task/crew mental model: agents have roles and goals, tasks define expected outputs, and a crew chooses a process such as sequential or hierarchical execution. That is useful when the collaboration shape is part of the product.
The trap is theatrical specialization. A "Researcher", "Writer", and "Reviewer" are useful only if their tools, context, permissions, or rubrics differ. Otherwise you created three names for one prompt.
YAML is a product surface
CrewAI's YAML-first recommendation is not just style. It makes roles and tasks reviewable without digging through orchestration code. That matters when non-engineers tune behavior or when multiple agents need clear contracts.
Coordinator before committee
Most useful multi-agent systems still need one coordinator that owns task decomposition and final synthesis. Free-form agent chatrooms look impressive and debug terribly.