§ DOCUMENTATION
Runtime-Guardrails
Agentenspezifische Richtlinien zur Werkzeug-Aufrufsteuerung, PII- und Injection-Scan von Werkzeugausgaben sowie Agent-zu-Agent-Credential-Authentifizierung — Durchsetzung, die zur Aufrufzeit greift, nicht erst bei der Richtliniendefinition.
Die zwei Laufzeit-Richtlinientypen
Execlave ergänzt zwei neue Richtlinientypen, die die Agentenausführung zur Laufzeit kontrollieren — nicht erst bei der Trace-Aufnahme. Beide werden über POST /api/v1/policies mit dem entsprechenden policyType-Wert erstellt.
| policyType | Was geschützt wird | Wann aktiv |
|---|---|---|
| tool_invocation | Welche Werkzeuge ein Agent aufrufen darf — Erlaubnis/Sperre nach Werkzeugname | Vor der Werkzeugausführung |
| tool_output_scan | Die Ausgabe, die ein Werkzeug zurückgibt — gescannt auf PII und Prompt-Injection | Nach der Werkzeugrückgabe, bevor der Agent sie sieht |
Beide Typen erfordern, dass das Feature-Flag FF_RUNTIME_GUARDRAILS in Ihrer Backend-Umgebung gesetzt ist. Das Flag ist standardmäßig deaktiviert — das bestehende Verhalten bleibt vollständig erhalten, solange es fehlt.
tool_invocation — Werkzeugaufrufe erlauben/sperren
Eine tool_invocation-Richtlinie ist eine agentenspezifische Erlaubnis-/Sperrliste für die MCP-Werkzeuge, die der Agent zur Laufzeit aufrufen darf. Execlave wertet die Richtlinie vor der Werkzeugausführung aus — wenn das Werkzeug auf der Sperrliste steht oder in der Erlaubnisliste fehlt (je nach Ihrer Standardaktion), wird der Aufruf blockiert und ein Audit-Ereignis erfasst. Es findet keine Werkzeugausführung statt.
curl -X POST https://api.execlave.com/api/v1/policies \ -H "Authorization: Bearer $EXECLAVE_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Restrict data-exfil tools for research-agent", "policyType": "tool_invocation", "enforcementMode": "block", "agentId": "agt_01j...", "ruleDefinition": { "allowed_tools": ["web_search", "read_file"], "denied_tools": ["send_email", "upload_file", "execute_code"] } }'Die ruleDefinition akzeptiert ein allow-Array, ein deny-Array und optional eine agentId, um die Richtlinie auf einen bestimmten Agenten zu beschränken. Werkzeuge auf der Sperrliste werden bedingungslos blockiert. Werkzeuge, die in keinem der Arrays aufgeführt sind, erben die Standardaktion der Richtlinie.
tool_output_scan — PII & Injection-Prüfung
Eine tool_output_scan-Richtlinie fängt den Wert ab, den ein Werkzeug zurückgibt, bevor er zum Agenten gelangt. Execlave delegiert den Scan an den Processing-Service — dieselben Detektoren, die von Injection Detection und PII Detection verwendet werden, über die Endpunkte /scan/pii und /scan/injection.
Wenn PII (aus denied_pii_types) oder Injection in der Ausgabe eines Werkzeugs erkannt wird und die Richtlinie auf enforcementMode: "block" gesetzt ist, wird die Ausgabe unterdrückt, bevor sie den Agenten erreicht, und ein Block-Audit-Ereignis erfasst.
Prävention erfordert einen expliziten Aufruf. Übergeben Sie das Werkzeug-Ergebnis an enforceToolOutput() (JS) bzw. enforce_tool_output() (Python), nachdem das Werkzeug geantwortet hat und bevor Sie das Ergebnis an das Modell zurückgeben. Die Framework-Adapter rufen dies nicht automatisch auf — ein Werkzeug-Ergebnis, das Execlave nie erreicht, kann nicht blockiert werden. Ohne diesen Aufruf wirkt die Richtlinie rein detektivisch: Verstöße werden nachträglich aus den erfassten Traces protokolliert statt verhindert.
Der Scan ist latenzbegrenzt. Wenn der Processing-Service nicht verfügbar ist, protokolliert Execlave eine Warnung und lässt die Ausgabe durch, anstatt den Agenten zu blockieren — ein Processing-Ausfall blockiert Workloads nicht hart.
curl -X POST https://api.execlave.com/api/v1/policies \ -H "Authorization: Bearer $EXECLAVE_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Scan DB-query output for PII before agent sees it", "policyType": "tool_output_scan", "enforcementMode": "block", "ruleDefinition": { "scan_pii": true, "scan_injection": true, "denied_pii_types": ["ssn", "credit_card"] } }'A2A-Credential-Authentifizierung
Wenn ein Agent einen anderen aufruft, kann Execlave verlangen, dass der aufrufende Agent seinen verifizierbaren Credential vorlegt, bevor der nachgelagerte Agent fortfährt. Dies wird über das Feature-Flag FF_A2A_AUTH gesteuert (standardmäßig deaktiviert).
Der verwendete Credential ist der exe_agt_-Credential, der über Agent Identity ausgestellt wird. Bei POST /api/v1/agents/authorize verifiziert Execlave den Agent-Credential des Aufrufers und erfasst eine a2a.authorize-Audit-Entscheidung — Gewährung oder Ablehnung des Agent-zu-Agent-Aufrufs mit vollständigem Nachweispfad.
A2A-Auth ist additiv: Der aufrufende Agent benötigt weiterhin einen gültigen API-Key oder JWT für den allgemeinen API-Zugriff. Der exe_agt_-Credential ergänzt diese Basis um eine verifizierbare Agentenidentität.
Runtime-Guardrails aktivieren
Beide Runtime-Guardrail-Funktionen werden durch Backend-Umgebungsflags gesteuert. Setzen Sie diese in Ihrer Backend-.env oder Deployment-Konfiguration. Wenn ein Flag fehlt oder auf false gesetzt ist, ist die entsprechende Funktion inaktiv und das bisherige Verhalten bleibt exakt erhalten.
| Umgebungsvariable | Wirkung wenn aktiviert |
|---|---|
| FF_RUNTIME_GUARDRAILS | Aktiviert die Richtlinientypen tool_invocation und tool_output_scan |
| FF_A2A_AUTH | Aktiviert A2A-Credential-Verifikation auf /api/v1/agents/authorize |
Die beiden Flags sind unabhängig — Sie können Werkzeugaufruf-Steuerung und Ausgaben-Scan aktivieren, ohne A2A-Auth zu aktivieren, und umgekehrt.