[{"data":1,"prerenderedAt":718},["ShallowReactive",2],{"tool-crewai-de":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":22,"sources":26,"cover":54,"og":55,"expertise":56,"locales":57,"lang":59,"title":61,"description":62,"coverAlt":63,"url":64,"pricing":65,"kind":66,"metaTitle":67,"takeaways":68,"faq":74,"toc":87,"blocks":112,"others":486},"crewai","2026-06-08",10,"agents",[9,10,11,12,13],"Multi-agent","Agent orchestration","Python","Flows","Token cost",[4,15,16,17,18,19,20,21],"crewai vs langgraph","crewai framework review","multi-agent framework python","crewai flows","crewai memory","crewai pricing","agent framework comparison",[23],{"name":24,"url":25},"CrewAI","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCrewAI",[27,30,33,36,39,42,45,48,51],{"title":28,"url":29},"CrewAI documentation: introduction","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fintroduction",{"title":31,"url":32},"CrewAI on PyPI: crewai 1.15.23","https:\u002F\u002Fpypi.org\u002Fproject\u002Fcrewai\u002F",{"title":34,"url":35},"CrewAI docs: Flows","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fconcepts\u002Fflows",{"title":37,"url":38},"CrewAI docs: Memory","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fconcepts\u002Fmemory",{"title":40,"url":41},"CrewAI docs: tracing","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fobservability\u002Ftracing",{"title":43,"url":44},"CrewAI pricing","https:\u002F\u002Fwww.crewai.com\u002Fpricing",{"title":46,"url":47},"GitHub: crewAIInc\u002FcrewAI","https:\u002F\u002Fgithub.com\u002FcrewAIInc\u002FcrewAI",{"title":49,"url":50},"LangGraph overview","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Foverview",{"title":52,"url":53},"AutoGen AgentChat user guide","https:\u002F\u002Fmicrosoft.github.io\u002Fautogen\u002Fstable\u002Fuser-guide\u002Fagentchat-user-guide\u002Findex.html","\u002Fimages\u002Fblog\u002Fcrewai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcrewai\u002Fog.jpg","ai-engineer",[58,59,60],"en","de","hu","CrewAI im Test: Crews, Flows und die Token-Rechnung","CrewAI ist das MIT-lizenzierte Python-Framework für Multi-Agent-Systeme: Crews für autonome Zusammenarbeit, Flows für kontrollierten State. Was ein Lauf an Tokens kostet und wo es hakt.","Diagramm eines CrewAI-Flows, der einen Crew aus Agenten steuert, die Modell, Memory und Tools aufrufen.","https:\u002F\u002Fwww.crewai.com","MIT · enterprise paid","Agent framework","CrewAI: Crews, Flows und die Kosten pro Task · Balázs Csorba",[69,70,71,72,73],"CrewAI 1.15.23 ist MIT-lizenziertes Python für 3.10 bis 3.13, ohne eigene Ausführungsgrenze und mit Extras für Tools, LiteLLM, mem0, Qdrant und Bedrock.","Crews delegieren über Modellaufrufe, deshalb bestimmt die Topologie die Kosten eines Laufs: Rollen-Prompts, ein hierarchischer Manager, drei Guardrail-Retries und Memory-Analyse kosten alle extra.","Memory hält Einträge als LanceDB-Vektoren und ruft ein Modell beim Speichern und beim tiefen Abruf, zusätzlich zum Embedding-Aufruf.","Das eingebaute Tracing geht an CrewAIs eigenes Backend und verlangt ein Konto plus eine Zustimmung beim ersten Lauf; Langfuse, Phoenix, Braintrust und MLflow laufen stattdessen über OpenTelemetry.","Das Framework ist am besten, wenn der Flow die Logik hält und ein oder zwei Agenten den offenen Teil machen.",[75,78,81,84],{"q":76,"a":77},"Ist CrewAI im Produktivbetrieb kostenlos?","Ja. Das Framework ist MIT-lizenziert und ohne Ausführungsgrenze; Kosten entstehen durch die Modellaufrufe deiner Agenten und deine eigene Infrastruktur. Das kommerzielle Produkt CrewAI AMP hat einen kostenlosen Basic-Plan mit 50 Workflow-Ausführungen pro Monat und eine Enterprise-Stufe auf Anfrage.",{"q":79,"a":80},"Hängt CrewAI von LangChain ab?","Nein. Das Paket hat keine LangChain-Abhängigkeit und positioniert sich als eigenständiges Framework. Der Modellzugriff läuft über Provider-SDKs, LiteLLM ist als Extra crewai[litellm] verfügbar.",{"q":82,"a":83},"Worin unterscheiden sich Crews und Flows?","Ein Flow hält State und Ausführungsreihenfolge über @start-, @listen- und @router-Methoden; ein Crew ist eine Menge Agenten und Aufgaben, die in einem Flow-Schritt läuft. Die Empfehlung des Anbieters lautet, mit einem Flow zu starten und an einen Crew zu delegieren, wenn ein Schritt Autonomie braucht.",{"q":85,"a":86},"Ist CrewAIs Memory für vertrauliche Daten geeignet?","Nicht ohne Weiteres. Der Inhalt der Einträge geht zur Analyse von Scope, Kategorie und Importance an das konfigurierte LLM, und der Standard-Embedder ist OpenAI text-embedding-3-large. Die Dokumentation empfiehlt für vertrauliche Inhalte ein lokales LLM und einen lokalen Embedder wie Ollama.",[88,91,94,97,100,103,106,109],{"id":89,"title":90},"what-it-is","Was CrewAI ist",{"id":92,"title":93},"how-it-works","Wie ein Lauf funktioniert",{"id":95,"title":96},"getting-started","Erste Schritte",{"id":98,"title":99},"memory-and-knowledge","Memory und Knowledge",{"id":101,"title":102},"running-it-in-production","Im Produktivbetrieb",{"id":104,"title":105},"where-it-shingles","Wo es hakt",{"id":107,"title":108},"verdict","Urteil",{"id":110,"title":111},"sources","Quellen",[113,117,120,123,126,142,143,174,183,186,187,228,230,240,255,256,267,277,280,302,303,306,310,313,355,358,361,364,367,397,398,401,438,441,442,445,458,463,464],{"type":114,"content":115},"paragraph",[116],"CrewAI ist ein MIT-lizenziertes Python-Framework für Multi-Agent-Systeme und in dieser Kategorie das sofort einsatzfähigste: Ein Agent bekommt Rolle, Ziel und Backstory, eine Aufgabe bekommt eine erwartete Ausgabe, und ein Crew führt beides in ein paar Zeilen Code zusammen. Das Urteil: gut gebaut, ungewöhnlich gut dokumentiert und still teuer. Jedes strukturelle Feature, das das Framework über einen nackten Prompt hinaus legt, ist als zusätzlicher Modellaufruf implementiert, und eine Produktionsrechnung besteht genau aus solchen Aufrufen.",{"type":114,"content":118},[119],"Es liegt auf derselben Ebene wie LangGraph, AutoGen und Pydantic AI und konkurriert um Bedienung, nicht um Kontrolle. Der Anbieter teilt das Angebot in zwei Teile: die Bibliothek auf PyPI, kostenlos und ohne Zählung, und CrewAI AMP, eine gehostete Control Plane mit visuellem Editor, Tracing und Governance, die auf Anfrage verkauft wird. Alles Folgende betrifft die Bibliothek, denn die ist es, die du installierst.",{"type":121,"level":122,"id":89,"text":90},"heading",2,{"type":114,"content":124},[125],"Die Bibliothek erschien erstmals im Dezember 2023 auf PyPI und wird von CrewAI Inc. offen weiterentwickelt. Version 1.15.23 wurde am 28. September 2026 veröffentlicht, verlangt Python 3.10 bis 3.13, und das Repository hat 59.413 Sterne und 8.655 Forks. Die Installation ist ein einzelnes Wheel von rund 1,2 MB, mit optionalen Extras für Tools, LiteLLM, mem0, Qdrant, Bedrock, Anthropic und A2A-Unterstützung.",{"type":127,"ordered":128,"items":129},"list",false,[130,132,134,136,138,140],[131],"MIT-Lizenz, keine Ausführungsgrenze und keine Laufzeitabhängigkeit von LangChain oder einem anderen Agent-Framework.",[133],"Zwei Ebenen: Flows, die State und Ausführungsreihenfolge besitzen, und Crews, also Gruppen von Agenten, die Aufgaben ausführen.",[135],"Ein Agent ist ein Prompt mit Attributen: Rolle, Ziel und Backstory, dazu optional eine Tool-Liste, ein LLM und ein Memory-Scope.",[137],"Prozesse sind sequenziell oder hierarchisch. Der hierarchische braucht ein Manager-LLM und delegiert Arbeit über Modellaufrufe.",[139],"Ergebnisse können Text, JSON oder ein Pydantic-Modell sein, was der saubere Weg zurück in Anwendungscode ist.",[141],"MCP-Server binden sich über crewai-tools an Agenten an, per stdio, SSE oder Streamable HTTP.",{"type":121,"level":122,"id":92,"text":93},{"type":114,"content":144},[145,146,150,151,154,155,158,159,162,163,166,167,170,171,173],"Ein Flow ist eine Klasse von Methoden, die per Dekorator verdrahtet werden. ",{"tag":147,"children":148},"code",[149],"@start()"," markiert die Einstiegspunkte, ",{"tag":147,"children":152},[153],"@listen()"," bindet eine Methode an das Ergebnis einer anderen, ",{"tag":147,"children":156},[157],"@router()"," lenkt die Ausführung in einen von mehreren Zweigen, und ",{"tag":147,"children":160},[161],"and_"," sowie ",{"tag":147,"children":164},[165],"or_"," kombinieren Bedingungen. Das State-Objekt ist ein Pydantic-Modell, die Form der Daten zwischen den Schritten wird also deklariert und nicht erraten, und ",{"tag":147,"children":168},[169],"flow.plot()"," rendert den Graphen. Sind mehrere ",{"tag":147,"children":172},[149],"-Methoden gleichzeitig erfüllt, laufen sie parallel.",{"type":175,"attrs":176,"inner":180,"caption":181},"diagram",{"viewBox":177,"role":178,"aria-labelledby":179},"0 0 720 296","img","d1-crew-t d1-crew-d","\u003Ctitle id=\"d1-crew-t\">Wo die Modellaufrufe entstehen\u003C\u002Ftitle>\u003Cdesc id=\"d1-crew-d\">Vier Kästen in einer Reihe: ein Flow für State und Reihenfolge, ein Crew für Aufgaben und Prozess, ein Agent aus Rolle, Ziel und Backstory und das Sprachmodell hinter der Provider-API. Ein Pfeil führt die Crew-Ausgabe zurück in den Flow-State. In einer zweiten Reihe stehen Memory mit Speichern und Abrufen sowie Tools wie MCP-Server, APIs und Code.\u003C\u002Fdesc>\u003Ctext x=\"20\" y=\"26\" class=\"d-title\">Wo die Modellaufrufe entstehen\u003C\u002Ftext>\u003Ctext x=\"700\" y=\"26\" text-anchor=\"end\" class=\"d-label\">jeder Kasten ist ein Prompt des Frameworks\u003C\u002Ftext>\u003Crect x=\"20\" y=\"52\" width=\"155\" height=\"64\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"97.5\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Flow\u003C\u002Ftext>\u003Ctext x=\"97.5\" y=\"101\" text-anchor=\"middle\" class=\"d-small\">State und Reihenfolge\u003C\u002Ftext>\u003Cpath d=\"M175 84 H213\" class=\"d-line\" \u002F>\u003Cpath d=\"M222 84 l-9 -5 v10 z\" class=\"d-head\" \u002F>\u003Crect x=\"222\" y=\"52\" width=\"155\" height=\"64\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"299.5\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Crew\u003C\u002Ftext>\u003Ctext x=\"299.5\" y=\"101\" text-anchor=\"middle\" class=\"d-small\">Aufgaben und Prozess\u003C\u002Ftext>\u003Cpath d=\"M377 84 H415\" class=\"d-line\" \u002F>\u003Cpath d=\"M424 84 l-9 -5 v10 z\" class=\"d-head\" \u002F>\u003Crect x=\"424\" y=\"52\" width=\"155\" height=\"64\" rx=\"10\" class=\"d-sky\" \u002F>\u003Ctext x=\"501.5\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">Agent\u003C\u002Ftext>\u003Ctext x=\"501.5\" y=\"101\" text-anchor=\"middle\" class=\"d-small\">Rolle, Ziel, Story\u003C\u002Ftext>\u003Cpath d=\"M579 84 H617\" class=\"d-line-accent\" \u002F>\u003Cpath d=\"M626 84 l-9 -5 v10 z\" class=\"d-head-accent\" \u002F>\u003Crect x=\"626\" y=\"52\" width=\"74\" height=\"64\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"663\" y=\"80\" text-anchor=\"middle\" class=\"d-text\">LLM\u003C\u002Ftext>\u003Ctext x=\"663\" y=\"101\" text-anchor=\"middle\" class=\"d-small\">API\u003C\u002Ftext>\u003Cpath d=\"M299.5 116 V138 H97.5 V120\" class=\"d-line d-dash\" \u002F>\u003Cpath d=\"M97.5 111 l-5 9 h10 z\" class=\"d-head\" \u002F>\u003Ctext x=\"360\" y=\"132\" class=\"d-label\">CrewOutput fließt zurück in den State\u003C\u002Ftext>\u003Cpath d=\"M663 116 V158 H299.5 V182\" class=\"d-line-accent\" \u002F>\u003Cpath d=\"M299.5 182 l-5 9 h10 z\" class=\"d-head-accent\" \u002F>\u003Crect x=\"222\" y=\"190\" width=\"155\" height=\"58\" rx=\"10\" class=\"d-mint\" \u002F>\u003Ctext x=\"299.5\" y=\"215\" text-anchor=\"middle\" class=\"d-text\">Memory\u003C\u002Ftext>\u003Ctext x=\"299.5\" y=\"236\" text-anchor=\"middle\" class=\"d-small\">Speichern und Abrufen\u003C\u002Ftext>\u003Cpath d=\"M501.5 116 V182\" class=\"d-line-accent\" \u002F>\u003Cpath d=\"M501.5 182 l-5 9 h10 z\" class=\"d-head-accent\" \u002F>\u003Crect x=\"424\" y=\"190\" width=\"155\" height=\"58\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"501.5\" y=\"215\" text-anchor=\"middle\" class=\"d-text\">Tools\u003C\u002Ftext>\u003Ctext x=\"501.5\" y=\"236\" text-anchor=\"middle\" class=\"d-small\">MCP, APIs, Code\u003C\u002Ftext>\u003Ctext x=\"20\" y=\"278\" class=\"d-small\">Jeder Hop ist ein Modellaufruf: Agentenschritt, Delegation, Guardrail-Retry, Memory-Analyse.\u003C\u002Ftext>",[182],"Die Pipeline ist billig, das Framework nicht: Jeder Kasten ist ein weiterer Prompt, den das Modell lesen muss, und die Kästen unter der Linie sind genau der Overhead, den ein normales Skript nicht hätte.",{"type":114,"content":184},[185],"Innerhalb eines Flow-Schritts baut ein Crew den Prompt zusammen: Rolle, Ziel und Backstory jedes Agenten werden jeder Aufgabe vorangestellt, die Aufgabenbeschreibung wird interpoliert, und die Ausgabe einer Aufgabe wird Kontext der nächsten. Ein Agent läuft standardmäßig bis zu 20 Iterationen, wiederholt zweimal bei Fehlern und fasst Nachrichten zusammen, um im Kontextfenster zu bleiben. Darauf muss man schauen. Mit den Standardwerten ist ein Crew aus vier Aufgaben vier lange Prompts, bevor überhaupt delegiert wird, und ein Crew mit Memory addiert pro Abruf einen Embedding-Aufruf plus einen Modellaufruf zum Analysieren und Konsolidieren.",{"type":121,"level":122,"id":95,"text":96},{"type":114,"content":188},[189,190,193,194,196,197,200,201,204,205,208,209,212,213,216,217,220,221,223,224,227],"Die CLI ist der schnelle Weg hinein. ",{"tag":147,"children":191},[192],"uv tool install crewai"," legt ein ",{"tag":147,"children":195},[4],"-Binary in den Pfad, ",{"tag":147,"children":198},[199],"crewai create crew \u003Cname>"," erzeugt ein JSON-first-Projekt mit ",{"tag":147,"children":202},[203],"agents\u002F*.jsonc"," und ",{"tag":147,"children":206},[207],"crew.jsonc",", und ",{"tag":147,"children":210},[211],"crewai create flow \u003Cname>"," erzeugt ein Flow-Projekt. ",{"tag":147,"children":214},[215],"crewai install"," löst Abhängigkeiten über uv auf, ",{"tag":147,"children":218},[219],"crewai run"," führt den Einstiegspunkt aus, und ",{"tag":147,"children":222},[19]," öffnet einen Terminal-Browser für den Speicher. Das Flag ",{"tag":147,"children":225},[226],"--classic"," stellt das ältere Layout aus Python-Klasse plus YAML wieder her.",{"type":147,"code":229},"from crewai import Agent, Crew, Process, Task\nfrom crewai.flow import Flow, listen, start\nfrom pydantic import BaseModel\n\n\nclass ReportState(BaseModel):\n    topic: str = \"agent memory\"\n    brief: str = \"\"\n\n\nclass ReportFlow(Flow[ReportState]):\n    @start()\n    def pick_topic(self):\n        self.state.topic = \"agent memory\"\n\n    @listen(pick_topic)\n    def research(self):\n        analyst = Agent(\n            role=\"Research analyst\",\n            goal=f\"Collect verifiable facts about {self.state.topic}\",\n            backstory=\"You read primary sources and quote them.\",\n            llm=\"openai\u002Fgpt-4o-mini\",\n        )\n        task = Task(\n            description=\"Write a brief on {topic}.\",\n            expected_output=\"Five bullets, each with a source URL.\",\n            agent=analyst,\n        )\n        crew = Crew(agents=[analyst], tasks=[task], process=Process.sequential)\n        self.state.brief = crew.kickoff(inputs={\"topic\": self.state.topic}).raw\n\nReportFlow().kickoff()",{"type":114,"content":231},[232,233,204,236,239],"Das kostet im Normalfall höchstens zwei Modellaufrufe: einen für die Reasoning- und Tool-Schleife des Agenten, einen für die endgültige Antwort. Kommt ein zweiter Agent, ein Manager oder Memory dazu, steigt die Zahl schnell, weshalb ",{"tag":147,"children":234},[235],"crew.usage_metrics",{"tag":147,"children":237},[238],"flow.usage_metrics"," die ersten beiden Dinge sind, die hinter ein Dashboard gehören.",{"type":241,"variant":242,"title":243,"body":244},"callout","note","Telemetrie ist standardmäßig aktiv",[245],[246,247,250,251,254],"Anonyme Nutzungstelemetrie wird gesendet, solange ",{"tag":147,"children":248},[249],"CREWAI_DISABLE_TELEMETRY"," nicht gesetzt ist: Paket- und Python-Version, Betriebssystem, Anzahl der Agenten und Aufgaben, Prozessart, ob Memory und Delegation aktiv sind, das Modell, die Agentenrollen und die Namen der Tools. Prompts, Backstories und Modellantworten bleiben außen vor. Der gegenteilige Schalter ist ",{"tag":147,"children":252},[253],"share_crew=True"," an einem Crew, das Aufgabenbeschreibungen, Backstories, Kontext und Ausgabe freigibt.",{"type":121,"level":122,"id":98,"text":99},{"type":114,"content":257},[258,259,262,263,266],"Memory wurde zu einer einzigen ",{"tag":147,"children":260},[261],"Memory","-Klasse zusammengefasst. Die Einträge sind Vektoren in LanceDB unter ",{"tag":147,"children":264},[265],".crewai\u002Fmemory",", sortiert nach einem Mix aus semantischer Ähnlichkeit, Aktualität mit 30 Tagen Halbwertszeit und einem Importance-Score, den das Modell beim Speichern vergibt. Beim Abruf gibt es zwei Tiefen: shallow ist eine reine Vektorsuche mit rund 200 ms und ohne Modellaufruf, deep analysiert zuerst die Anfrage und läuft nur, wenn die Anfrage länger als 200 Zeichen ist. Mit aktiviertem Memory extrahiert ein Crew aus jeder Aufgabenausgabe Fakten und holt vor jeder Aufgabe Kontext.",{"type":127,"ordered":128,"items":268},[269,271,273,275],[270],"Der Speicher ist standardmäßig lokal in LanceDB, und das Backend ist ein Protokoll, lässt sich also ersetzen.",[272],"Standard-Embedder ist OpenAI text-embedding-3-large mit 3.072 Dimensionen, Standard-Analyse-Modell gpt-4o-mini. Beides ist konfigurierbar.",[274],"Knowledge-Quellen sind ein eigener Mechanismus: Sie landen in ChromaDB-Collections mit einer Relevanzschwelle von 0,35 und drei Dokumenten pro Abfrage.",[276],"Schreibvorgänge laufen in einem Hintergrund-Thread und der Abruf wartet auf sie, so geht am Ende eines Laufs nichts verloren, aber die Analyse kostet trotzdem Tokens.",{"type":114,"content":278},[279],"Memory ist außerdem der Teil, den man vor der Freigabe durch eine Datenschutzprüfung lesen sollte. Die Dokumentation sagt klar, dass der Inhalt der Einträge zur Analyse von Scope, Kategorie und Importance an das konfigurierte LLM geht, weshalb alles Vertrauliche ein lokales Modell auf beiden Seiten braucht, für das LLM und für den Embedder.",{"type":241,"variant":281,"title":282,"body":283},"warn","Embedding-Dimensionen prüfen",[284],[285,286,289,290,293,294,297,298,301],"Der Standard-Embedder für Memory ist ",{"tag":147,"children":287},[288],"text-embedding-3-large"," mit 3.072 Dimensionen. Ein älterer Store mit ",{"tag":147,"children":291},[292],"text-embedding-3-small"," oder ",{"tag":147,"children":295},[296],"text-embedding-ada-002"," und 1.536 Dimensionen scheitert beim Lesen. Dokumentierte Abhilfen sind ",{"tag":147,"children":299},[300],"crewai reset-memories -m",", das Löschen des Speicherverzeichnisses oder ein explizit gesetztes älteres Modell, bis der Store migriert ist.",{"type":121,"level":122,"id":101,"text":102},{"type":114,"content":304},[305],"Die Bibliothek bewegt sich schnell. Stabile Versionen erschienen am 9., 16. und 28. September 2026, und Dev-Pre-Releases erscheinen täglich, Pinning ist für alles Langlebige also nicht optional. Das Repository hat 570 offene Issues, und dieselbe Distribution trägt inzwischen die Open-Source-Laufzeit und den Client für die gehostete Plattform, weshalb ein Changelog-Eintrag einen SQLite-Fix neben einer Plattformfunktion enthalten kann.",{"type":121,"level":307,"id":308,"text":309},3,"observability","Observability",{"type":114,"content":311},[312],"Das eingebaute Tracing verdient einen zweiten Blick. Es ist standardmäßig aus und getrennt von der Telemetrie konfigurierbar, aber das Ziel ist CrewAIs eigenes Backend: Es braucht ein kostenloses AMP-Konto, eine authentifizierte CLI, und beim ersten Lauf fragt der Prozess, ob der Execution-Trace geteilt werden darf. Traces enthalten Prompts, Eingaben und Ausgaben, und der lokale Puffer hält bis zu 1.000 Spans, bevor die ältesten fallen. Für selbst gehostete Setups sind die OpenTelemetry-Integrationen die bessere Voreinstellung, und die Dokumentation liefert fertige Wege für Langfuse, Arize Phoenix, Braintrust, Datadog, MLflow, Opik, Patronus, Portkey, Weave und Galileo.",{"type":127,"ordered":128,"items":314},[315,321,330,342],[316,317,320],"Setze ",{"tag":147,"children":318},[319],"CREWAI_DISABLE_TELEMETRY=1"," wenn du keinen Grund hast, anonyme Nutzungsdaten an den Anbieter zu senden.",[322,323,204,326,329],"Tracing fragt beim ersten Lauf im Terminal nach Zustimmung und verwirft den Puffer, wenn niemand antwortet; ",{"tag":147,"children":324},[325],"crewai traces enable",{"tag":147,"children":327},[328],"crewai traces disable"," ändern das später.",[331,334,335,204,338,341],{"tag":147,"children":332},[333],"kickoff_async()"," wickelt nur den synchronen Lauf in einen Thread. ",{"tag":147,"children":336},[337],"akickoff()",{"tag":147,"children":339},[340],"akickoff_for_each()"," sind die nativen Async-Wege und die richtige Wahl unter Last.",[343,346,347,350,351,354],{"tag":147,"children":344},[345],"@persist"," schreibt den Flow-State standardmäßig in eine lokale SQLite-Datenbank. ",{"tag":147,"children":348},[349],"restore_from_state_id"," forkt einen Lauf aus einem gespeicherten Snapshot, während ",{"tag":147,"children":352},[353],"kickoff(inputs={\"id\": ...})"," den Original fortsetzt.",{"type":121,"level":307,"id":356,"text":357},"guardrails","Guardrails",{"type":114,"content":359},[360],"Task-Guardrails gibt es in zwei Formen. Ein Python-Callable bekommt die Aufgabenausgabe und liefert ein Urteil, während ein einfacher String zu einem LLM-Guardrail wird, der die Ausgabe mit dem Modell des Agenten bewertet. Retries sind standardmäßig drei, ein nie erfüllter Guardrail kann die Aufgabenkosten also verdreifachen, bevor irgendetwas eskaliert wird. Guardrails prüfen Ausgaben; sie sind keine Grenze um Werkzeuge, und eine Prompt-Injection im Ergebnis eines Tools kommt direkt durch.",{"type":121,"level":307,"id":362,"text":363},"licence-and-cost","Lizenz und Kosten",{"type":114,"content":365},[366],"Die Lizenz ist der einfache Teil. CrewAI ist MIT ohne Ausführungsgrenze, und der einzige Kostenbeitrag des Frameworks selbst ist der Modellverkehr, den seine eigenen Features erzeugen. Das bezahlte Produkt ist CrewAI AMP: ein kostenloser Basic-Plan mit 50 Workflow-Ausführungen pro Monat und eine Enterprise-Stufe, die fallweise kalkuliert wird.",{"type":368,"head":369,"rows":376},"table",[370,372,374],[371],"Was du betreibst",[373],"Preis",[375],"Was enthalten ist",[377,384,390],[378,380,382],[379],"CrewAI OSS",[381],"Kostenlos",[383],"Keine Ausführungsgrenze. Modellaufrufe, Tools und eigene Infrastruktur zahlst du selbst.",[385,387,388],[386],"CrewAI AMP Basic",[381],[389],"50 Workflow-Ausführungen pro Monat, visueller Editor, GitHub-Sync, Tracing und OpenTelemetry.",[391,393,395],[392],"CrewAI AMP Enterprise",[394],"Individuelles Angebot",[396],"SSO, RBAC, Workload Identity, PII-Redaktion, eigene VPC oder On-Prem, 45 Tage Onboarding.",{"type":121,"level":122,"id":104,"text":105},{"type":114,"content":399},[400],"Die Schwächen sind strukturell und sollten vor jedem Vergleich stehen. Jede Abstraktionsebene ist ein Prompt: Rolle, Ziel und Backstory werden jeder Aufgabe vorangestellt, der Kontext wächst also mit dem Crew, und die Standardwerte des Frameworks, zwanzig Iterationen, drei Guardrail-Retries und Memory-Analyse beim Speichern und beim Abruf, werden separat abgerechnet. Delegation und der hierarchische Manager sind die schlimmsten Posten, denn jeder Hop ist ein weiterer Modellaufruf, dessen einzige Aufgabe es ist zu entscheiden, wer als Nächstes arbeitet. Python ist die einzige Laufzeit, in einer Kategorie, in der die umgebende Anwendung oft TypeScript ist. Und außerhalb der bezahlten Plattform stützt sich Debugging auf Log-Ausgaben, was schwächer ist als eine Graph-Laufzeit, die einen fehlgeschlagenen Knoten wiederholen kann.",{"type":368,"head":402,"rows":411},[403,405,407,409],[404],"Framework",[406],"Wie Arbeit verdrahtet wird",[408],"Kosten pro Aufgabe",[410],"Debugging",[412,420,429],[413,414,416,418],[24],[415],"Rollen und Aufgaben; ein Flow hält State und Reihenfolge",[417],"Am höchsten: Delegation, Memory-Analyse und Guardrail-Retries addieren Modellaufrufe",[419],"AMP-Traces brauchen ein Konto; OpenTelemetry-Hooks für Langfuse, Phoenix, Braintrust, MLflow",[421,423,425,427],[422],"LangGraph",[424],"Expliziter Graph, typisierter State, Checkpoints",[426],"Am niedrigsten: Routing ist normales Python",[428],"LangSmith-Traces, Replay ab jedem Knoten",[430,432,434,436],[431],"AutoGen",[433],"Konversatorische Teams mit Mustern und Abbruchbedingungen",[435],"Hoch und offen, wenn keine Turn-Limits gesetzt sind",[437],"AgentChat-Logging; GraphFlow ergänzt einen gerichteten Graphen",{"type":114,"content":439},[440],"LangGraph ist das bessere Werkzeug für eine feste Produktionspipeline mit Schleifen und Checkpoints, und es gewinnt bei den Kosten, weil Routing normales Python ist. AutoGen ist das bessere Werkzeug für offene Konversation. CrewAI gewinnt dort, wo es zählt, wenn das System an jemanden übergeben werden muss, der kein Engineer ist: Das Vokabular ist eine Stellenbeschreibung, und die JSONC- oder YAML-Konfiguration ist lesbar. Die eigene Dokumentation des Anbieters enthält einen Migrationsleitfaden von LangGraph zu CrewAI und Vergleichs-Notebooks, was man vor einem Vertrag wissen sollte.",{"type":121,"level":122,"id":107,"text":108},{"type":114,"content":443},[444],"CrewAI ist ein gutes Default für Teams, die agentenförmigen Code wollen, ohne einen Graphen von Hand zu verdrahten, und ein schlechtes Default überall dort, wo die Token-Rechnung die bindende Größe ist. Das Framework ist solide, seine Dokumentation ist besser als die der Wettbewerber, und die Flow-Ebene verdient ihren Platz für sich genommen. Der Preis dafür ist, dass Autonomie als Modellaufrufe ausgedrückt wird, und das Framework macht sie gern für dich.",{"type":127,"ordered":446,"items":447},true,[448,450,452,454,456],[449],"Nimm es, wenn die Pipeline weitgehend linear ist und der teure Teil ein oder zwei offene Schritte sind. Halte den Crew klein und lass den Flow die Logik tragen.",[451],"Nimm es, wenn Nicht-Engineers die Konfiguration lesen oder bearbeiten müssen, denn eine Rolle, ein Ziel und eine YAML-Datei sind leichter zu prüfen als ein Knotengraph.",[453],"Nimm es nicht für eine feste Hochlast-Pipeline, in der jeder Hop ein normaler Funktionsaufruf ist. Der Koordinations-Overhead kauft Flexibilität, die eine solche Pipeline nie nutzt.",[455],"Nimm es nicht, wenn du ab Tag eins Checkpoint-Replay und Kosten pro Knoten brauchst, ohne entweder die Plattform zu bezahlen oder OpenTelemetry selbst anzuschließen.",[457],"Miss, bevor du es behältst: Setze usage_metrics in der ersten Woche hinter ein Dashboard und vergleiche den Crew mit denselben Schritten als reinen Flow.",{"type":241,"variant":281,"title":459,"body":460},"Der Preis der Hilfe",[461],[462],"Ein hierarchischer Crew mit Memory und LLM-Guardrails kann mehr Tokens für Entscheiden und Erinnern ausgeben als für die eigentliche Arbeit. Das ist das Design, kein Defekt. Plane das ein oder schalte die Features ab.",{"type":121,"level":122,"id":110,"text":111},{"type":127,"ordered":446,"items":465},[466],[467,470,472,474,476,478,480,482,484],{"tag":468,"href":29,"children":469},"a",[28],{"tag":468,"href":32,"children":471},[31],{"tag":468,"href":35,"children":473},[34],{"tag":468,"href":38,"children":475},[37],{"tag":468,"href":41,"children":477},[40],{"tag":468,"href":44,"children":479},[43],{"tag":468,"href":47,"children":481},[46],{"tag":468,"href":50,"children":483},[49],{"tag":468,"href":53,"children":485},[52],[487,552,601,664],{"slug":488,"published":489,"minutes":490,"category":7,"tags":491,"keywords":496,"about":503,"sources":507,"cover":544,"og":545,"expertise":56,"locales":546,"lang":59,"title":547,"description":548,"coverAlt":549,"url":510,"pricing":550,"kind":551},"mcp-reference-servers","2026-09-25",9,[492,493,494,495],"MCP","Reference servers","Tool protocol","Server SDKs",[497,498,499,500,501,502],"mcp reference servers","modelcontextprotocol servers github","write an mcp server","mcp server examples","mcp server sdk","mcp server security",[504],{"name":505,"url":506},"Model Context Protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_Context_Protocol",[508,511,514,517,520,523,526,529,532,535,538,541],{"title":509,"url":510},"MCP reference servers repository","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers",{"title":512,"url":513},"Repository README and server list","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers\u002Fblob\u002Fmain\u002FREADME.md",{"title":515,"url":516},"Security policy","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers\u002Fblob\u002Fmain\u002FSECURITY.md",{"title":518,"url":519},"Release process and trusted publishing","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers\u002Fblob\u002Fmain\u002FRELEASING.md",{"title":521,"url":522},"Filesystem server README","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers\u002Fblob\u002Fmain\u002Fsrc\u002Ffilesystem\u002FREADME.md",{"title":524,"url":525},"Everything server feature list","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers\u002Fblob\u002Fmain\u002Fsrc\u002Feverything\u002Fdocs\u002Ffeatures.md",{"title":527,"url":528},"MCP Registry","https:\u002F\u002Fregistry.modelcontextprotocol.io\u002F",{"title":530,"url":531},"Archived reference servers","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fservers-archived",{"title":533,"url":534},"Model Context Protocol documentation","https:\u002F\u002Fmodelcontextprotocol.io\u002F",{"title":536,"url":537},"TypeScript MCP SDK","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Ftypescript-sdk",{"title":539,"url":540},"Python MCP SDK","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fpython-sdk",{"title":542,"url":543},"FastMCP on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Ffastmcp\u002F","\u002Fimages\u002Fblog\u002Fmcp-reference-servers\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fmcp-reference-servers\u002Fog.jpg",[58,59,60],"MCP-Referenzserver: was sie zeigen und was sie auslassen","Ein Review von modelcontextprotocol\u002Fservers: sieben Referenzserver, was jeder einzelne lehrt, die SDK-Versionen dahinter und warum keiner in die Produktion gehört.","Sieben Referenzserver, die von einem einzigen MCP-Client über Stdio ausgefächert werden","MIT","Protocol tooling",{"slug":553,"published":554,"minutes":6,"category":7,"tags":555,"keywords":561,"about":569,"sources":576,"cover":593,"og":594,"expertise":56,"locales":595,"lang":59,"title":596,"description":597,"coverAlt":598,"url":599,"pricing":600,"kind":556},"aider","2026-09-23",[556,557,558,559,560],"Coding agent","Terminal","Git workflow","BYO key","Open source",[553,562,563,564,565,566,567,568],"aider vs claude code","aider polyglot benchmark","ai pair programming terminal","aider leaderboard","open source coding agent","aider architect mode","aider install",[570,573],{"name":571,"url":572},"Aider","https:\u002F\u002Faider.chat\u002F",{"name":574,"url":575},"Aider on GitHub","https:\u002F\u002Fgithub.com\u002FAider-AI\u002Faider",[577,579,582,585,588,590],{"title":578,"url":572},"Aider website",{"title":580,"url":581},"Aider LLM leaderboards","https:\u002F\u002Faider.chat\u002Fdocs\u002Fleaderboards\u002F",{"title":583,"url":584},"Aider linting and testing","https:\u002F\u002Faider.chat\u002Fdocs\u002Fusage\u002Flint-test.html",{"title":586,"url":587},"Aider token limits","https:\u002F\u002Faider.chat\u002Fdocs\u002Ftroubleshooting\u002Ftoken-limits.html",{"title":589,"url":575},"Aider repository on GitHub",{"title":591,"url":592},"aider-chat on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Faider-chat\u002F","\u002Fimages\u002Fblog\u002Faider\u002Fcover.webp","\u002Fimages\u002Fblog\u002Faider\u002Fog.jpg",[58,59,60],"Aider im Test: Pair Programming im Terminal, git zuerst","Ein Test von Aider 0.86.2, ein Apache-2.0-Terminal-Pair-Programmierer mit ehrlichem Benchmark — und ohne Release seit acht Monaten.","Coverbild für den Aider-Test: eine Terminalsitzung, die aus einer einzigen Anfrage eine Reihe von git Commits macht","https:\u002F\u002Faider.chat","Free · BYO API key",{"slug":602,"published":603,"minutes":6,"category":7,"tags":604,"keywords":607,"about":616,"sources":626,"cover":657,"og":658,"expertise":56,"locales":659,"lang":59,"title":660,"description":661,"coverAlt":662,"url":629,"pricing":663,"kind":66},"openai-agents-sdk","2026-09-11",[605,606,357,492,11],"Agent runtime","Tracing",[608,609,610,611,612,613,614,615],"openai agents sdk","openai agents sdk vs langgraph","python agent framework comparison","openai agents sdk guardrails","agent run tracing tool calls","openai agents sdk human in the loop","openai-agents pypi","agents sdk vs responses api",[617,620,623],{"name":618,"url":619},"Model context protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_context_protocol",{"name":621,"url":622},"Software framework","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSoftware_framework",{"name":624,"url":625},"Agentic AI","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAgentic_AI",[627,630,633,636,639,642,645,648,651,654],{"title":628,"url":629},"OpenAI Agents SDK documentation: Intro, and Agents SDK or Responses API","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002F",{"title":631,"url":632},"OpenAI Agents SDK documentation: Running agents","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Frunning_agents\u002F",{"title":634,"url":635},"OpenAI Agents SDK documentation: Guardrails","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fguardrails\u002F",{"title":637,"url":638},"OpenAI Agents SDK documentation: Human-in-the-loop","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fhuman_in_the_loop\u002F",{"title":640,"url":641},"OpenAI Agents SDK documentation: Tracing","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Ftracing\u002F",{"title":643,"url":644},"OpenAI Agents SDK documentation: Configuration","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fconfig\u002F",{"title":646,"url":647},"openai-agents 0.23.1 on PyPI, release history and licence","https:\u002F\u002Fpypi.org\u002Fproject\u002Fopenai-agents\u002F",{"title":649,"url":650},"OpenAI: The next evolution of the Agents SDK (15 April 2026)","https:\u002F\u002Fopenai.com\u002Findex\u002Fthe-next-evolution-of-the-agents-sdk\u002F",{"title":652,"url":653},"OpenAI API documentation: Agents, comparison of the three runtimes","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents",{"title":655,"url":656},"Arize: AI agent frameworks compared (1 October 2026)","https:\u002F\u002Farize.com\u002Fai-agents\u002Fagent-frameworks\u002F","\u002Fimages\u002Fblog\u002Fopenai-agents-sdk\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fopenai-agents-sdk\u002Fog.jpg",[58,59,60],"OpenAI Agents SDK: eine schlanke Agent-Runtime mit scharfen Kanten","Eine Bewertung des OpenAI Agents SDK: Runner-Schleife, Tracing, Guardrails und Approvals, plus was Release-Tempo und die Responses-only-Funktionen kosten.","Diagramm der Runner-Schleife im Agents SDK: Eingabe, Agent, Modellaufruf, Endausgabe, Guardrails und Tool-Aufrufe, die zurück in die Eingabe laufen","MIT · API pay per token",{"slug":665,"published":666,"minutes":490,"category":7,"tags":667,"keywords":672,"about":679,"sources":689,"cover":710,"og":711,"expertise":56,"locales":712,"lang":59,"title":713,"description":714,"coverAlt":715,"url":716,"pricing":717,"kind":556},"openhands","2026-09-09",[556,668,669,670,671],"Sandboxed execution","Automations","Self-hosted","MIT licence",[665,673,674,675,676,677,566,678],"openhands self-host","open hands coding agent","openhands vs claude code","agent canvas","openhands docker sandbox","openhands cloud pricing",[680,683,686],{"name":681,"url":682},"OpenHands","https:\u002F\u002Fwww.openhands.dev",{"name":684,"url":685},"OpenHands on GitHub","https:\u002F\u002Fgithub.com\u002FOpenHands\u002FOpenHands",{"name":687,"url":688},"Intelligent agent","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIntelligent_agent",[690,692,695,698,701,704,707],{"title":691,"url":685},"OpenHands README",{"title":693,"url":694},"OpenHands licence (MIT)","https:\u002F\u002Fgithub.com\u002FOpenHands\u002FOpenHands\u002Fblob\u002Fmain\u002FLICENSE",{"title":696,"url":697},"Agent Canvas 1.25.0 release notes","https:\u002F\u002Fdocs.openhands.dev\u002Fopenhands\u002Fusage\u002Fagent-canvas\u002Frelease-notes\u002Fv1.25.0.md",{"title":699,"url":700},"OpenHands sandbox overview","https:\u002F\u002Fdocs.openhands.dev\u002Fopenhands\u002Fusage\u002Fsandboxes\u002Foverview.md",{"title":702,"url":703},"OpenHands quick start","https:\u002F\u002Fdocs.openhands.dev\u002Fopenhands\u002Fusage\u002Finstallation",{"title":705,"url":706},"OpenHands pricing","https:\u002F\u002Fwww.openhands.dev\u002Fpricing",{"title":708,"url":709},"Introducing the OpenHands Index","https:\u002F\u002Fwww.openhands.dev\u002Fblog\u002Fintroducing-the-openhands-index","\u002Fimages\u002Fblog\u002Fopenhands\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fopenhands\u002Fog.jpg",[58,59,60],"OpenHands: der Open-Source-Coding-Agent im Eigenbetrieb","OpenHands 1.25.0 ist eine MIT-lizenzierte Coding-Agent-Plattform mit Web-Canvas, CLI, sandboxierter Ausführung und geplanten Automatisierungen. Ein Review der Stärken und der Betriebskosten.","Covermotiv zum OpenHands-Review: eine Schleife von Aufgabe über Agent und Sandbox zurück","https:\u002F\u002Fgithub.com\u002FAll-Hands-AI\u002FOpenHands","Free · self-host",1791383550820]