01 · Erste Crew
Dein erster Multi-Agent-Workflow: Researcher + Reporter arbeiten sequentiell zusammen.
Voraussetzungen
- Abgeschlossen: 00 · Installation
ollama listzeigtqwen3:8b
Zeitbedarf: 5 Minuten
Endzustand: Du hast eine main.py lokal ausgeführt und bekommst einen zweistufigen Markdown-Report als Output.
1. Projekt anlegen
mkdir my_first_crew && cd my_first_crew
Erstelle main.py mit folgendem Inhalt (aus Spec §1.4 — das PKV-Beispiel):
"""Erste Crew — sequentielles Researcher+Reporter-Pattern."""
from __future__ import annotations
import asyncio
from cognithor.crew import Crew, CrewAgent, CrewProcess, CrewTask
def build_crew() -> Crew:
researcher = CrewAgent(
role="Researcher",
goal="Recherchiere Fakten zum Thema",
llm="ollama/qwen3:8b",
)
reporter = CrewAgent(
role="Reporter",
goal="Schreibe einen strukturierten Report",
llm="ollama/qwen3:8b",
)
research = CrewTask(
description="Recherchiere: Trends in Hausautomation 2026",
expected_output="Bulletpoints der 5 wichtigsten Trends",
agent=researcher,
)
report = CrewTask(
description="Erstelle einen Report basierend auf der Research",
expected_output="Markdown-Report, 300 Wörter",
agent=reporter,
context=[research],
)
return Crew(
agents=[researcher, reporter],
tasks=[research, report],
process=CrewProcess.SEQUENTIAL,
)
def main() -> None:
crew = build_crew()
result = asyncio.run(crew.kickoff_async())
print(result.raw)
if __name__ == "__main__":
main()
2. Ausführen
python main.py
Die erste Ausführung kann 30–60 s dauern, weil Ollama das Modell lädt. Nachfolgende Läufe sind deutlich schneller.
Erwartete Ausgabe (gekürzt):
# Trends in Hausautomation 2026
- Matter/Thread-Adoption auf >60% neuer Geräte
- Lokale KI-Inferenz (Edge-LLMs) für Sprachsteuerung
- ...
3. Was ist passiert?
CrewAgentbeschreibt nur die Rolle — keine Prompts, kein Code.CrewTaskbeschreibt die Arbeit, plus Abhängigkeiten viacontext=[research].Crew(process=SEQUENTIAL)kompiliert beide Tasks in einen DAG und führt sie der Reihe nach aus.- Jeder Task durchläuft intern die PGE-Trinity (Planner → Gatekeeper → Executor) — genauso wie jede andere Cognithor-Aktion. Keine neue Security-Oberfläche.
- Der finale
result.rawist der Output des letzten Tasks. Alle Zwischen-Outputs sind inresult.tasks_output.
4. Lauffähige Version im Repo
Das gleiche Beispiel liegt als eigenständiges Mini-Projekt unter examples/quickstart/01_first_crew/. Dort findest du:
main.py— identisches Skriptrequirements.txt— nurcognithor>=0.93.0test_example.py— smoke-test mit gemocktem Planner, läuft im CI
5. Varianten
- Mehr Agenten: Füge zur
agents=Liste beliebig weitereCrewAgent-Instanzen hinzu. - Hierarchical: Setze
process=CrewProcess.HIERARCHICAL+manager=CrewAgent(...)um einen Manager-Agent Tasks delegieren zu lassen. - YAML-Config: Statt Python-Code kannst du
agents.yaml+tasks.yamlnutzen — siehecognithor.crew.yaml_loader.
Next: 02 · Eigenes Tool