Agenten
Erst klären, ob man überhaupt einen Agenten braucht, dann einen von Grund auf schreiben – Tool-Design, Planen und Selbstprüfung, Gedächtnis, mehrere Agenten, MCP und Sicherheit – und zum Schluss RepoBot beibringen, selbst im Quellcode zu suchen.
Lektionen
- 01Agenten und Workflows: erst klären, ob man einen Agenten braucht
Ein Agent lässt das Modell selbst entscheiden, was als Nächstes zu tun ist. Bei denselben drei Fragen lag ein fester Ablauf mit 1 Aufruf richtig, der Agent brauchte 3 bis 4. Der Unterschied zwischen beiden, die Kosten eines Agenten und eine Checkliste für die Entscheidung, ob man einen braucht.
30 Minuten · Fortgeschritten - 02Eine Agentenschleife von Hand schreiben
Ohne Framework einen Agenten in gut hundert Zeilen schreiben – Tool-Registrierung, Aufrufschleife, Stoppbedingungen, Fehlerbehandlung. Erst offline mit einem Scheinmodell testen, das ein Drehbuch abspielt, dann ein echtes Modell einsetzen und zusehen, wie es selbst entscheidet, was es nachschlägt.
50 Minuten · Fortgeschritten - 03Wie man Tools entwirft
Dieselben drei Tools mit vagen Namen und Beschreibungen – das Modell wählt in 30 Versuchen nur 14-mal richtig; klar beschrieben 30 von 30. Wie man Name, Beschreibung, Parameter, Rückgabewert und Fehlermeldung eines Tools jeweils schreibt.
35 Minuten · Fortgeschritten - 04Planen und Selbstprüfung
Dieselbe mehrstufige Aufgabe, drei Vorgehensweisen im Vergleich – direkt erledigen, erst einen Plan erstellen und dann erledigen, nach dem Erledigen selbst prüfen. Der Plan kostete doppelt so viel bei etwa gleichem Ergebnis; die Selbstprüfung fand tatsächlich zwei Fehler bei den Quellenangaben, kostete aber viermal so viel.
40 Minuten · Fortgeschritten - 05Gedächtnis
Das Kurzzeitgedächtnis eines Agenten ist die Nachrichtenliste; ein Langzeitgedächtnis muss man selbst speichern und bei Bedarf wieder abrufen. Wir geben dem Agenten die zwei Tools „merken“ und „erinnern“ und zeigen, wie er in einem völlig neuen Gespräch Fakten nutzt, die er sich beim letzten Mal gemerkt hat.
35 Minuten · Fortgeschritten - 06Mehrere Agenten arbeiten zusammen
Ein Leiter-Agent zerlegt die Aufgabe, übergibt sie an drei Arbeiter-Agenten mit getrenntem Kontext, die parallel arbeiten, und fasst die Ergebnisse zusammen. Verglichen mit einem einzelnen Agenten ein Drittel weniger Tokens, und der Kontext des Leiters hat nur 472 Tokens. Was Mehr-Agenten-Systeme wirklich bringen und was sie kosten.
40 Minuten · Fortgeschritten - 07MCP: die Normsteckdose, um Agenten Tools anzuschließen
Mit dem offiziellen Python-SDK einen minimalen MCP-Server schreiben, der zwei Tools zum Nachschlagen in der httpx-Dokumentation bereitstellt; dann einen Client, der sich damit verbindet, und DeepSeek diese Tools über MCP aufrufen lassen, um Fragen zu beantworten.
45 Minuten · Fortgeschritten - 08Sicherheit von Agenten
Ein echtes, reproduzierbares Experiment zu indirekter Prompt-Injection – eine Webseite versteckt „Anweisungen“ an die KI. Ein Modell fällt nie darauf herein, das andere 4-mal, obwohl der Prompt es ausdrücklich verbietet; nur eine Bestätigung auf Programmebene hielt alles auf.
45 Minuten · Fortgeschritten - 09Projekt: ein Frage-Antwort-Assistent, der im Quellcode sucht
RepoBot wird zu einem Agenten – erst in der Dokumentation nachschlagen, und steht es dort nicht, im Quellcode von httpx suchen. Standardwerte und Ausnahmelogik, an denen v2 scheiterte, beantwortet v3 richtig, mit Datei und Zeilennummer im Quellcode.
60 Minuten · Fortgeschritten
Ein Agent ist eine Schleife: Das Modell entscheidet, was als Nächstes zu tun ist, das Programm führt es aus, das Ergebnis geht zurück ans Modell, und das so lange, bis es meint, antworten zu können. Dieses Modul verzichtet auf jedes Framework, geht von dieser Schleife aus und fügt nach und nach hinzu, was ein echtes System braucht.
Jede Lektion hat ein Vergleichsexperiment, und das Ergebnis lautet nicht immer „die fortschrittlichere Methode ist besser“: Bei denselben Fragen lag ein fester Workflow mit 1 Aufruf richtig, während der Agent viermal so viel Geld ausgab; ein vorab erstellter Plan verdoppelte die Kosten, ohne das Ergebnis zu ändern; und klar geschriebene Tool-Beschreibungen hoben den Anteil richtig gewählter Tools von 47 % auf 100 %.
Warum diese Reihenfolge
Lektion 1 beantwortet zuerst die wichtigste Frage: ob man überhaupt einen braucht. Lektion 2 schreibt die Schleife von Hand, und jede spätere Lektion baut darauf auf. Lektionen 3 bis 5 behandeln die drei Dinge, die die Wirkung eines Agenten am stärksten bestimmen: Tools, die Arbeitsweise (Planen und Prüfen) sowie Gedächtnis und Kontext. Lektion 6 geht von einem Agenten zu mehreren über. Lektion 7 behandelt MCP, damit deine Tools von allen möglichen Agenten genutzt werden können. Lektion 8 behandelt Sicherheit; wer handeln kann, braucht Sicherheit. Lektion 9 baut all das in RepoBot ein.
Du bist fertig, wenn
- du bei einer Anforderung entscheiden kannst, ob ein einzelner Aufruf, ein Workflow oder ein Agent passt, und das begründen kannst.
- du ohne Framework eine Agentenschleife mit Tool-Registrierung, Fehlerbehandlung und Schrittgrenze schreiben und sie mit einem Skript-Modell offline testen kannst.
- du für eine Reihe von Tools klare Beschreibungen schreiben und experimentell prüfen kannst, wie oft das Modell das richtige Tool wählt.
- du einen minimalen MCP-Server schreiben und seine Tools in deinen eigenen Agenten einbinden kannst.
- du erklären kannst, wie indirekte Prompt-Injection entsteht und warum „dem Modell im Prompt einschärfen“ nicht reicht, sondern Grenzen im Programm nötig sind.
- RepoBot v3 Fragen beantworten kann, deren Antwort nur im Quellcode steht, und dabei Datei und Zeilennummer im Quellcode nennt.
Code zu diesem Modul
Code und Programmausgaben stehen genau so da, wie sie gelaufen sind – Kommentare und Ausgaben sind daher auf Chinesisch.
- code/05-agents/agent_loop.py
- code/05-agents/agent_security.py
- code/05-agents/mcp_client.py
- code/05-agents/mcp_server.py
- code/05-agents/memory.json
- code/05-agents/memory.py
- code/05-agents/multi_agent.py
- code/05-agents/planning_reflection.py
- code/05-agents/tool_design.py
- code/05-agents/workflow_vs_agent.py
- projects/repobot/v3/agent.py
- projects/repobot/v3/eval_agent.py
- projects/repobot/v3/eval_qa.jsonl
- projects/repobot/v3/llm.py
- projects/repobot/v3/README.md
- projects/repobot/v3/repobot.py
- projects/repobot/v3/requirements.txt
- projects/repobot/v3/retrieval.py
- projects/repobot/v3/tools.py