2025 ist das Jahr der KI-Agenten. Die erste Agenten-Welle in diesem Jahr waren beispielsweise die KI Programmierer-Agenten von Microsoft/Github (Copilot Agent), openAI (Codex), Google (Jules), Anthropic (Claude Code). Ende Mai folgten nun neue Ankündigungen von Google und Microsoft mit weiterführenden Agenten. Was sind diese KI-Agenten, und was können sie?

Abb. 1: KI-Agent, Quelle: Adobe Firefly

Beginnen wir zunächst mit der Abgrenzung von KI-Agenten zu den bekannten, herkömmlichen KI-Chatbots. Dabei soll es nicht um eine formale, sondern um eine praxisorientierte Definition von KI-Agenten gehen.

Was sind KI-Agenten?

Moderne KI verfügt nicht nur über die Fähigkeit, spontan zu antworten (wie beispielsweise GPT-4o), sondern kann auch komplexe Denkprozesse simulieren (mittels sogenannter “reasoner AI-Models” wie OpenAI o1).

Für Agenten benötigen wir von der KI zusätzliche Fähigkeiten: Sie muss mit der Beschreibung von Werkzeugen anlernbar sein, deren Bedeutung für die Problemlösung erkennen, und bei der Beantwortung von Fragen bestimmen, welche Werkzeuge sie mit welchen Details zur Hilfestellung verwenden möchte. Die KI stellt dann aus den Antworten der Werkzeugverwendungen und ihrem eigenen Wissen die Gesamtantwort zusammen.

Ein einfaches Agenten-Beispiel wäre ein Chatbot, der für seine Antworten auch im Internet suchen darf. Das Werkzeug ist hier eine Websuche, z.B. mittels Google Websuche API Programmaufruf. Die KI des Chatbots bekommt vom Chatbot-Programm beschrieben, welche Möglichkeiten das Websuche-Werkzeug bietet - beispielsweise aktuelle Ergebnisse abfragen zu können, oder zusätzliches Wissen zu Spezialthemen abzurufen. Die KI des Chatbots entscheidet dann selbständig, ob/wann/wie sie bei der Antwortgenerierung welche Suchabfragen absetzen möchte.

Das übergeordnete KI-Programm – beispielsweise ein verbesserter Chatbot – verfügt über Kenntnisse aller verfügbaren Werkzeuge und meldet der KI deren Funktionsbeschreibungen, zusammen mit der Anfrage. Die KI liefert entweder direkt eine Antwort oder Anweisungen zum Werkzeugaufruf zurück – in diesem Fall ruft der Chatbot die gewünschten Werkzeuge auf und liefert die Werkzeugantworten zurück an die KI, damit diese damit die Antwort erstellen kann. Dann gibt der Chatbot die Antwort aus.

In unserem einfachen Beispiel gibt der Chatbot entweder direkt die Antwort aus, wenn die KI keine Suchanfrage für nötig hält und die Antwort direkt generiert. Oder die KI generiert als Antwort Suchabfragen - dann ruft er alle entsprechenden Suchabfragen auf und liefert der KI die Ergebnisse zurück. Die KI verwendet diese, um die endgültige Antwort zur Ausgabe an den Chatbot zu generieren.

KI-Agenten sind flexibel und autonom:\
Die KI muss für diese selbstständige Werkzeugverwendung (“tool-use”) speziell trainiert werden. Dabei wird sie nicht auf spezifische Werkzeugverwendungen trainiert, sondern lernt anhand von späteren Werkzeugbeschreibungen, diese korrekt für die Problemlösung einzusetzen. Für Agenten werden eben solche “tool-use”-KI-Modelle benötigt.\
Die Werkzeugbeschreibungen ähneln einem “Prompt” einer KI, und umfassen auch variable Elemente (Parameter), welche der Werkzeugverwendung mitgegeben werden sollen – beispielsweise wonach von einem Internet-Suchwerkzeug gesucht werden soll.

Die formale Definition von KI-Agenten:\
KI-Agenten sind autonome Software-Systeme, die mit Künstlicher Intelligenz (KI) ausgestattet sind, um Aufgaben im Namen von Nutzern zu erledigen. Sie können selbstständig Entscheidungen treffen, lernen und sich anpassen, um definierte Ziele zu erreichen. (Quelle: amazon aws KI-Agenten)

Model Context Protocol (MCP)

Das Model Context Protocol (MCP, von Anthropic erfunden) ist ein Protokoll, mit dem Werkzeuge standardisiert verwendet werden können – vergleichbar mit dem “http:” des Internets, es wird von den wichtigsten Unternehmen und vielen Open-Source Projekten unterstützt. MCP definiert dabei, wie eine KI auf extern vorhandene Daten zugreifen kann. Die Anwendung für Werkzeuge ist die primäre Möglichkeit, die uns hier interessiert.

Ein “MCP-Server” stellt diese Werkzeug-Funktionalität zur Verfügung. Dies können im Internet verfügbare Services von Anbietern sein. Parallel dazu können aber auch eigene Server erstellt werden, um eigene Programmfunktionen durch die KI nutzen zu können. MCP-Server können beispielsweise auch mit vorfabrizierten (Docker) “Container-Images” erstellt werden.

Es gibt dafür “MCP-Kataloge” – in diesen Katalogen können die MCP-Server gefunden bzw. verwendet werden.

Beispielsweise bietet der Katalog von Docker vorfabrizierte MCP-Server Container-Images, u.A. einen vorfabrizierten Container für einen MCP Web-Suchserver der eher unabhängigen Suchmaschine DuckDuckGo. Docker bietet mit dem MCP-Toolkit ein Werkzeug zur einfachen Anwendung dieser Container für KI-Agenten.

Microsoft hat Ende Mai 2025 angekündigt, MCP in allen Produkten einzubauen, vom Zugriff auf GitHub bis zum Zugriff auf Funktionen von Windows. Und sie bieten auch eigene Werkzeuge zur Agentenerstellung an.

Mit MCP wird eine Software zu einem nicht nur für Menschen sondern auch für KI-Agenten nutzbaren Werkzeug.

Der GitHub Copilot Programmieragent als Praxisbeispiel

Ein praktisches Beispiel ist der neue GitHub Copilot Programmieragent – eine Erweiterung des bisherigen GitHub Copilot Assistenten. Der GitHub Copilot ist gratis und in verschiedenen kostenpflichtigen Ausbaustufen verfügbar.

Der Github Copilot Assistent war bisher vergleichbar mit einem extrem guten “autocomplete” – er lieferte im Visual Studio Code Editor (VSCode) Programmiervorschläge zum aktuellen Kontext.

Ich programmiere beispielsweise so, dass ich immer zuerst als Kommentar beschreibe, was ich im nächsten Teil grob erreichen will. Damit wird für mich ein Programm später lesbar – beispielsweise “Ausführungsstatistik berechnen und ausgeben”. Github Copilot verwendet dies, um mir im VSCode darauf basierende Vorschläge für einen passenden Programmteil zu liefern, passend zum vorher von mir (oder dem Copilot) Programmierten.

Der neue Programmieragent kann aber mehr. Ich verwende ihn beispielsweise gerade, um ein über 2000 Zeilen langes, relativ komplexes C++ Programm auf Python umzuschreiben, dabei nicht benötigte Funktionalität wegzulassen, einige proprietäre Funktionen herauszulösen, und diese auf in der Industrie übliche KI Schnittstellen umzustellen.

Der KI-Agent führt dafür selbständig Aktionen aus, wie beispielsweise ein Projekt bzw. Dateien erstellen, Dateien ändern und Programme testen. Intern agiert der GitHub Copilot Programmieragent dabei über (MCP) Werkzeugaufrufe von VSCode – der Agent ist ein Add-In und kein direkter Teil von VSCode.

Neben VSCode könnte der KI-Agent hier auch bei Bedarf andere MCP-basierte Werkzeuge verwenden – beispielsweise zur für das Implementieren eines Designs von Benutzerschnittstellen (das weitverbreitete Designwerkzeug Figma bietet beispielsweise bereits einen MCP-Server).

Mein Projekt als Beispiel

Das Ausgangsprogramm ist llama-bench des Projektes ggml-org/llama.cpp – ein Programm für Leistungstests (Benchmarks) von KI-Modellen mit llama.cpp. Der KI-Agent soll mir darauf basierend ein neues Programm erstellen, daß einen Teil der Benchmark-Funktionalität umfasst. Dies soll aber nicht nur für llama.cpp funktionieren, sondern für alle KI-Programme und Modelle, welche den Industriestandard der openAI Programmierschnittstelle (APIs) unterstützen. Und es soll in Python, statt C++ programmiert sein – damit ich es einfacher verstehen und ändern kann.

Ich gehe dazu mit Visual Studio Code (VSCode) in eine lokale Kopie von GitHub ggml-org/llama.cpp, öffne llama-bench.cpp, und starte den Github Copilot Agent als Add-In für VSCode mit folgender initialer Anweisung:

I want to convert this project’s llama-bench.cpp into python as a new project. Keep the constants, functions, etc. form the includes common.h, ggml.h, llama.h in separate python files in the new project, which I will implement later.

Der KI-Agent kann VSCode als Server über MCP verwenden, und erstellt ein neues Projekt mit folgendem Inhalt (nach einer Frage, ob das eh OK ist), dann antwortet er:

Abb. 2: VSCode mit Github Copilot Agent, Quelle: Autor

The new Python project is set up as a port of llama-bench.cpp:

llama_bench.py: Main script, with CLI and structure ready for porting logic.
common.py, ggml.py, llama.py: Stubs for constants, types, and functions from the respective C++ headers.
copilot-instructions.md: Custom Copilot instructions.
README.md: Project overview and usage.
You can now implement the actual logic in the stub files and expand llama_bench.py as needed.

Would you like to proceed with porting specific logic or need help with a particular part next?

Ich will hier nichts selbst übernehmen, und auf die Eingabe Please continue with porting the logic. folgt:

Great, I’ll begin porting the main logic from ‘llama-bench.cppintollama_bench.py`, using idiomatic Python and argparse, and referencing the stub modules. I’ll start by implementing the utility functions, enums, and CLI parameter handling, mapping the C++ logic to Python.

I’ll focus on:

Utility functions (timing, join, avg, stdev, etc.)
Output format enum and helpers
CLI argument parsing and defaults (as in cmd_params)
Data structures for parameters
Let’s start by implementing these foundational elements in llama_bench.py.

The foundational logic for parameter handling, enums, and utility functions from llama-bench.cpp has been ported to llama_bench.py using idiomatic Python. The CLI now maps to a CmdParams structure, and utility functions are in place for further porting.
Next steps would be to port the main benchmarking logic, test structures, and output formatting. Let me know if you want to proceed with a specific part (e.g., test execution, output formatting, or model/context stubs), or if you want the next logical section ported.

Der KI-Agent will übrigens manchmal selbständig den erstellten Programmcode ausprobieren (ob er die gewünschten Resultate bringt, und fragt vorher brav nach). Er macht durchaus gelegentlich Programmierfehler, aber findet und korrigiert diese. Hier das Ergebnis eines erfolgreichen Tests:

☑️ python llama_bench.py

The Python port now runs, parses CLI arguments, executes a stubbed benchmark loop, and prints results in markdown format—mirroring the C++ structure. The next steps would be to expand the benchmark logic and add more output formats or parameter handling as needed.

Would you like to proceed with a specific feature, such as adding more output formats, porting more parameter logic, or integrating model/context stubs?

Ich habe dann mit spezifischen Instruktionen weitergemacht, selbst Dinge programmiert-korrigiert, und immer wieder den KI-Agenten angewiesen, Dinge für mich zu tun. Bin ich mit dem Portieren schon fertig? Noch nicht ganz. Nach ca. 3 Stunden Rumexperimentieren startet das portierte Programm mit Parametern immerhin eine lokale KI (einen lokalen server via openAI APIs), misst die Ausführung, und kann das Ergebnis abhängig von Parametern als .md, .csv, .json format liefern. Aber im Detail sind noch viele Dinge zu tun.

Ich kam übrigens beim Programmieren ständig drauf, dass ich manche Funktionen gerne anders oder gar nicht implementiert hätte. Es kam daher zu einem dauernden hin und her mit dem KI-Agenten. Dies umfasste dabei auch Anweisungen, daß er Teile des zuletzt Geschriebenen wieder ändern oder löschen soll, weil ich sie nicht so wollte.

Dieser eher experimentelle Zugang zur Programmierung, den ein KI-Agent gut ermöglicht, heißt übrigens “Vibe-Coding”. Etwas, das speziell beim raschen Prototyping gut weiterhilft und sehr modern ist.

Die KI ist auch gut darin, das Programm mit meinen speziellen Vorgaben zu testen, dann ggf. Änderungswünsche einzubauen.

Und wenn ich dann endlich mit dem Programm zufrieden bin, werde ich den KI-Agenten das Ganze auch selber dokumentieren lassen 😉 – niemand, den ich kenne, mag das. Und dann lasse ich den Agenten alles auf GitHub hochladen.

Wie gehts weiter?

Aktuell werden parallel neue, über MCP verfügbare, Werkzeuge angeboten, sowie auch neue Hilfsmittel zum Erstellen der KI-Agenten selbst. Damit können relativ einfach neue KI-Agenten für verschiedene Aufgabenbereiche erstellt werden. Diese Agenten werden nicht programmiert, sondern sie erhalten ausgewählte Werkzeuge und KI-Prompts – Anweisungen in menschlicher Sprache, was sie tun sollen. Die neuen KI-Agenten Erstellungs-Hilfsmittel kümmern sich um die Unterstützung für das Testen, das Ausführen und die Sicherheit der Agenten. KI-Agenten die innerhalb von Firmen, aber auch öffentlich im Internet angewendet werden, und sie werden auch Bestandteile von Produkten sein.

Die Sicherheit dieser KI-Agenten wird von essentieller Bedeutung sein. Die Agenten entscheiden selbständig, und als KI non-deterministisch, über den Einsatz ihrer Werkzeuge.

Mein Fazit

Ich verstehe nun, warum die US-Großkonzerne die Anzahl der Programmierer reduzieren und diese durch die mittels KI gesteigerte Produktivität der verbleibenden Programmierer ersetzen. Gleichzeitig entstehen viele kleine Start-ups und Gründerfirmen, die mit kleinen Teams relativ große Softwareprojekte realisieren. Dies geschieht primär im Umfeld der KI, wo etablierte, träge Unternehmen Schwierigkeiten haben. Meiner Meinung nach geschieht dies jedoch eher nicht mit entlassenen Programmierern, die zwar ihre Programmieraufgaben erledigten, sich aber eher nicht für Neues interessierten.

Wir leben in bewegten Zeiten, da diese Agenten auch in andere Firmenbereiche vordringen werden. Es ist nun das erste Mal, dass nicht nur mechanische, wenig qualifizierte Tätigkeiten durch Automation (hier KI) ersetzt werden, sondern durchaus höher qualifizierte Arbeitsplätze. Microsoft reduziert beispielsweise nicht nur Programmierer- sondern auch Verkaufs- und Marketingstellen.


Meine Meinung dazu: “Nicht KI vernichtet deinen Arbeitsplatz, sondern jemand, der besser damit umgehen kann. Bewege deinen Hintern und tu ‘was – unsere Clubs helfen dir dabei!”