Kern des Patterns
Code-Execution Agent ist ein Pattern, bei dem der Agent nicht nur textuell denkt, sondern generierten Code in einer kontrollierten Umgebung ausführt, ein faktisches Ergebnis erhält und damit weiterarbeitet.
Wann einsetzen: wenn die Antwort durch Code-Ausführung berechnet oder verifiziert werden muss und nicht nur textuell generiert werden soll.
Der Agent:
Generate: erzeugt kurzen, task-spezifischen CodeRun: führt ihn in einer Sandbox ausObserve: erhält das reale ErgebnisExplain: liefert Ergebnis mit Erklärung zurück

Problem
Stell dir vor, du fragst:
"Berechne die durchschnittliche Conversion aus dieser CSV."
Der Agent schreibt ein Skript und sagt: "Durchschnittliche Conversion ist 3,84%."
Aber ohne kontrollierte Umgebung siehst du nicht:
- was genau ausgeführt wurde
- welche Dateien gelesen wurden
- ob Netzwerkaufrufe versucht wurden
- wie viele Ressourcen der Code verbraucht hat
Bei Code-Ausführung ist nicht nur die Logik wichtig, sondern auch die Grenzen der Laufzeitumgebung.
Genau hier liegt das Problem: Das Ergebnis hängt gleichzeitig von Code und Laufzeitumgebung ab, deshalb ist "einfach ausführen" unsicher und intransparent.
Lösung
Code-Execution Agent führt Code nur über eine kontrollierte Execution Layer aus.
Analogie: Das ist wie ein Labor mit Sicherheitsregeln. Ein Experiment darf nur in einem isolierten Raum und nach klaren Regeln stattfinden. So sinkt das Risiko, die Umgebung zu beschädigen oder unnötige Daten herauszugeben.
Schlüsselprinzip: Das Modell darf Code schreiben, aber Ausführung ist nur in Sandbox und nach Policy-Check erlaubt.
Grundlegende Einschränkungen:
- Sandbox Runtime
- eingeschränkter Dateizugriff
- kein Netzwerk
- CPU/RAM/Time-Limits
Kontrollierter Zyklus:
- Planung: minimales Skript für die Aufgabe bestimmen
- Generierung: Code erzeugen
- Policy-Check: Sicherheit und erlaubte Operationen prüfen
- Isolierte Ausführung: Code in Sandbox ausführen
- Ergebnisprüfung: Korrektheit und Risiko des Outputs prüfen
Wenn Policy-Check oder Output-Validierung fehlschlagen, wird gestoppt oder eskaliert.
Das schützt vor Situationen, in denen der Agent:
- sensible Dateien liest
- Daten nach außen sendet
- in langen Schleifen hängt
- gefährliche Operationen ausführt
Zuverlässige Code-Ausführung ist nicht "nur ausführen", sondern Ausführung, die runtime-policy technisch nicht umgehen lässt.
Wie es funktioniert
Der Schlüsselbaustein ist die Sandbox.
Sie begrenzt typischerweise:
Dateisystem: Zugriff nur auf ArbeitsverzeichnisNetzwerk: oft vollständig deaktiviertRessourcen:CPU/RAM/time quotasLaufzeitumgebung: erlaubte Bibliotheken und Syscalls
Vollständiger Flow: Plan → Generate Code → Policy Check → Execution Layer → Sandbox Run → Validate → Return
Planung
Der Agent bestimmt, was genau berechnet werden muss und welches Ergebnisformat erwartet wird.
Code-Generierung
Das Modell generiert minimalen Code für den konkreten Schritt, ohne unnötigen Umfang.
Policy-Check
Der generierte Code läuft durch policy-engine: erlaubte Bibliotheken, Rechentyp und zulässiges Ressourcenprofil.
Execution Layer
Das System bereitet die kontrollierte Ausführung vor: Umgebung, Limits und Zugriffsregeln.
Sandbox-Run
Der Code läuft isoliert mit harten Limits.
Validierung
Das System prüft Output-Format, Fehler, Sicherheits-Policies und Übereinstimmung mit dem erwarteten Schema.
Rückgabe
Nutzer erhält valide Antwort oder einen kontrollierten Stop/Eskalation.
Im Code sieht das so aus
code = agent.generate_code(goal, constraints={
"language": "python",
"no_network": True,
"max_seconds": 5,
})
exec_result = execution_layer.run_code(
code=code,
policy="sandboxed_python",
)
if not exec_result.success:
return fallback_or_stop(exec_result.error)
validated = validate_output(exec_result.stdout, schema=expected_schema)
if not validated.ok:
return stop_with_reason(validated.reason)
return format_answer(validated.data)
Hauptregel: generierten Code niemals außerhalb von sandbox und policy-Kontrolle ausführen.
So sieht es bei der Ausführung aus
Goal: Conversion aus CSV-Report berechnen
Generate Code:
- sales.csv lesen
- conversion_rate = paid / leads berechnen
- Tabelle pro Tag ausgeben
Sandbox Run:
- timeout: 5s
- memory: 256MB
- network: disabled
Output:
- Tabelle mit 7 Zeilen
- durchschnittliche Conversion: 3,84%
Vollständiges Code-Execution-Agent-Beispiel
Wann es passt - und wann nicht
Passt
| Situation | Warum Code-Execution passt | |
|---|---|---|
| ✅ | Reale Berechnungen statt textueller Vermutungen nötig | Code-Ausführung liefert faktische Ergebnisse statt Modellraten. |
| ✅ | Arbeit mit Tabellen, Dateien, Formeln | Hier brauchst du tatsächliche Ausführungsschritte, nicht nur textuelle Beschreibung. |
| ✅ | Reproduzierbarkeit ist wichtig | Ausführung in kontrollierter Umgebung vereinfacht die Prüfung von Ergebnissen. |
| ✅ | Sandbox + erzwungene Policies vorhanden | Sichere Infrastruktur ermöglicht Code-Ausführung ohne kritische Risiken. |
Passt nicht
| Situation | Warum Code-Execution nicht passt | |
|---|---|---|
| ❌ | Reine Textaufgabe | Code-Ausführung bringt unnötige Komplexität ohne Nutzen. |
| ❌ | Keine isolierte Laufzeitumgebung | Ohne Sandbox ist generierter Code nicht sicher ausführbar. |
| ❌ | Risiko größer als Nutzen | Potenzieller Schaden rechtfertigt den Ausführungsansatz in diesem Fall nicht. |
Denn Code-Ausführung erhöht die operativen Anforderungen: Sandbox, Resource Limits, Monitoring und Audit.
Unterschied zu Guarded-Policy
| Guarded-Policy | Code-Execution | |
|---|---|---|
| Hauptfokus | Was ausgeführt werden darf | Wie generierter Code sicher ausgeführt wird |
| Schlüsselmechanismus | Policy Gate | Sandbox Runtime + Output-Validierung |
| Wann es greift | Vor der Aktion | Während und nach Code-Ausführung |
| Risiko ohne Pattern | Unsichere Aktion gelangt in Ausführung | Unzuverlässige oder gefährliche Ausführungsresultate |
Guarded-Policy entscheidet, ob überhaupt gehandelt werden darf. Code-Execution entscheidet, wie eine Code-Aktion sicher und reproduzierbar ausgeführt wird.
Wann Code-Execution verwenden (vs andere Patterns)
Verwende Code-Execution, wenn der Agent Code ausführen, Ergebnisse prüfen und sicher iterieren muss.
Kurzer Test:
- wenn du "Code ausführen und mit faktischem Output arbeiten" musst -> Code-Execution
- wenn du "zuerst nur eine große Aufgabe in Teilaufgaben zerlegen" musst -> Task Decomposition Agent
Vergleich mit anderen Patterns und Beispiele
Schnelle Spickzettel:
| Wenn die Aufgabe so aussieht... | Verwende |
|---|---|
| Nach jedem Schritt muss entschieden werden, was als Nächstes zu tun ist | ReAct Agent |
| Eine große Zielsetzung muss zuerst in kleine ausführbare Aufgaben zerlegt werden | Task Decomposition Agent |
| Code ausführen, Ergebnisse prüfen und sicher iterieren | Code Execution Agent |
| Daten untersuchen und analytische Schlussfolgerungen liefern | Data Analysis Agent |
| Recherche aus mehreren Quellen mit strukturierten Belegen | Research Agent |
Beispiele:
ReAct: "Finde die Ursache eines API-Ausfalls: Logs prüfen -> Fehler ansehen -> nächste Prüfung anhand des Ergebnisses starten."
Task Decomposition: "Bereite einen neuen Tarif-Launch vor: zerlege in Teilaufgaben für Content, Technik, QA und Support."
Code Execution: "Berechne 12-Monats-Retention in Python und prüfe Formelkorrektheit auf realen Daten."
Data Analysis: "Analysiere Sales-CSV: finde Trends, Anomalien und gib kurze Schlussfolgerungen."
Research: "Sammle Daten über 5 Wettbewerber aus mehreren Quellen und erstelle ein Vergleichs-Resümee."
Mit anderen Patterns kombinieren
- Code-Execution + Guarded-Policy: vor der Ausführung prüft der Agent den Code gegen Sicherheitsregeln und blockiert gefährliche Aktionen.
- Code-Execution + Fallback-Recovery: wenn die Ausführung hängt oder fehlschlägt, wechselt der Agent in ein sicheres Fallback-Szenario.
- Code-Execution + Supervisor: riskante Runs werden nicht automatisch ausgeführt, sondern zur menschlichen Freigabe gegeben.
Kurzfassung
Code-Execution Agent:
- Generiert Code für eine konkrete Aufgabe
- Führt ihn in isolierter Sandbox aus
- Validiert den Output vor der Antwort
- Erhöht Genauigkeit bei Rechenaufgaben
Vorteile und Nachteile
Vorteile
liefert präzisere Ergebnisse bei Berechnungen
Ergebnis ist leicht prüfbar und reproduzierbar
sichtbar, welcher Code tatsächlich lief
praktisch für Arbeit mit Dateien und Daten
Nachteile
isolierte Laufzeitumgebung erforderlich
Antwort kann durch Code-Ausführung langsamer sein
Code kann während Laufzeit fehlschlagen
FAQ
Q: Kann man Code einfach auf dem Server ohne Isolation ausführen?
A: Für Produktion: nein. Es braucht Isolation, Resource Limits und Kontrolle erlaubter Operationen.
Q: Garantiert Code-Ausführung die Korrektheit des Ergebnisses?
A: Nicht vollständig. Du brauchst Output-Validierung, Invarianten-Tests und Policy-Checks.
Q: Was tun, wenn Code bei der Ausführung abstürzt?
A: Begrenzte Recovery nutzen: retry, Fallback-Laufzeit oder kontrollierter Stop mit stop reason.
Was als Nächstes
Code-Execution ermöglicht dem Agenten, Berechnungen zuverlässig auszuführen.
Aber wie setzt man das für vollständige Analytics ein: Datenbereinigung, Aggregate, Charts und Schlussfolgerungen?