§ DOCUMENTATION
Richtlinien & Sicherheit
Schützen Sie Ihre KI-Agenten mit automatisierter Richtliniendurchsetzung, Kill-Switches und Zugriffskontrollen.
Schnellstart
Kopieren Sie diesen Prompt in Ihren KI-Coding-Assistenten, um alle fünf Basisrichtlinien auf einmal einzurichten.
Richte umfassende Sicherheitsrichtlinien in Execlave ein, um meine KI-Agenten zu schützen. Folgende Schritte sind über die Execlave REST API durchzuführen: 1. Erstelle eine Richtlinie zur Erkennung von Prompt-Injection (blockiert bösartige Eingaben): curl -X POST https://api.execlave.com/api/v1/policies \ -H "X-API-Key: <my-api-key>" \ -H "Content-Type: application/json" \ -d '{ "name": "Block Prompt Injection", "policyType": "injection_scan", "enforcementMode": "block", "ruleDefinition": { "patterns": ["ignore previous instructions", "system prompt"], "action": "block", "scan_input": true, "scan_output": true }, "appliesToAgents": [], "isActive": true }' 2. Erstelle eine PII-Schutzrichtlinie (erkennt und schwärzt personenbezogene Daten): curl -X POST https://api.execlave.com/api/v1/policies \ -H "X-API-Key: <my-api-key>" \ -H "Content-Type: application/json" \ -d '{ "name": "PII Protection", "policyType": "pii_access", "enforcementMode": "monitor", "ruleDefinition": { "denied_pii_types": ["ssn", "credit_card"], "mask_output": true, "log_access": true }, "appliesToAgents": [], "isActive": true }' 3. Erstelle eine Kostenlimit-Richtlinie (verhindert unkontrollierte Ausgaben): curl -X POST https://api.execlave.com/api/v1/policies \ -H "X-API-Key: <my-api-key>" \ -H "Content-Type: application/json" \ -d '{ "name": "Daily Cost Limit", "policyType": "cost_limit", "enforcementMode": "block", "ruleDefinition": { "max_cost_per_execution": 5.0, "daily_budget": 50.0 }, "appliesToAgents": [], "isActive": true }' 4. Erstelle eine monatliche Budgetobergrenze (erzwingt monatliche Ausgabenlimits): curl -X POST https://api.execlave.com/api/v1/policies \ -H "X-API-Key: <my-api-key>" \ -H "Content-Type: application/json" \ -d '{ "name": "Monthly Budget Cap", "policyType": "budget_cap", "enforcementMode": "block", "ruleDefinition": { "monthly_cap_usd": 1000.0, "warning_threshold_pct": 80, "reset_day": 1 }, "appliesToAgents": [], "isActive": true }' 5. Richte die Pre-Execution-Durchsetzung in deinem Code ein. enforcePolicy() WIRFT einen PolicyBlockedError, wenn eine Richtlinie im Block-Modus greift — es wird NICHT { allowed: false } zurückgegeben. Der Fehler muss abgefangen werden. // JavaScript/TypeScriptimport { ag } from './lib/execlave';import { AgentPausedError, PolicyBlockedError } from '@execlave/sdk'; async function handleMessage(input: string) { try { // Richtlinien VOR dem LLM-Aufruf prüfen. Wirft bei Blockierung. await ag.enforcePolicy({ agentId: 'my-chatbot', input }); const response = await llm.call(input); return response; } catch (err) { if (err instanceof PolicyBlockedError) { // err.violations: Liste von { policyType, policyName, severity, message, enforcementMode } return 'Ihre Eingabe wurde durch unsere Inhaltsrichtlinien blockiert.'; } if (err instanceof AgentPausedError) { return 'Dienst vorübergehend nicht verfügbar.'; } throw err; }} # Pythonfrom execlave import AgentPausedError, PolicyBlockedError def handle_message(user_input: str): try: ag.enforce_policy(agent_id="my-chatbot", input=user_input) return llm.invoke(user_input) except PolicyBlockedError: return "Ihre Eingabe wurde durch unsere Inhaltsrichtlinien blockiert." except AgentPausedError: return "Dienst vorübergehend nicht verfügbar." Diese Richtlinien gelten standardmäßig für ALLE Agenten (leeres appliesToAgents-Array).Um den Geltungsbereich auf bestimmte Agenten einzuschränken, deren UUIDs im appliesToAgents-Array angeben. WICHTIG: Tracing allein blockiert KEINE LLM-Aufrufe. Die Trace-Ingestion erzeugt Vorfälle erst nachträglich. Um Anfragen vor dem LLM zu blockieren, MUSS enforcePolicy() / enforce_policy() aufgerufen und PolicyBlockedError wie oben gezeigt behandelt werden.So funktionieren Richtlinien
Richtlinien sind Regeln, die das Verhalten Ihrer KI-Agenten steuern. Jede Richtlinie besitzt einen Typ (was geprüft wird) und einen Durchsetzungsmodus (was bei einem Verstoß geschieht):
Den Verstoß erfassen, die Anfrage dennoch durchlassen. Ideal zur Baseline-Erhebung, bevor die Durchsetzung aktiviert wird.
Anfrage durchlassen, markieren und Administratoren benachrichtigen. Der LLM-Aufruf wird trotzdem ausgeführt.
Anfrage pausieren und in die Freigabe-Warteschlange einreihen. Der LLM-Aufruf erfolgt erst nach Genehmigung durch einen Prüfer.
Anfrage ablehnen. enforcePolicy() löst einen PolicyBlockedError aus, bevor der LLM-Aufruf stattfindet.
Nur „block" verhindert den LLM-Aufruf. Monitor und Warn lassen die Anfrage durch und erzeugen lediglich Dashboard-Vorfälle. Richtlinien können auf alle Agenten oder auf bestimmte Agenten per ID beschränkt werden. Pre-Execution-Gating erfordert ag.enforcePolicy() / ag.enforce_policy() im eigenen Code — die reine Trace-Ingestion blockiert niemals.
Fehlerverhalten. Jede Richtlinie trägt auch einen failureMode — was die Engine tut, wenn ein Detektor, die Datenbank oder das lokale LLM während der Auswertung nicht erreichbar ist. Der Standard fail_open überspringt die Richtlinie, damit ein vorübergehender Ausfall keinen legitimen Datenverkehr blockiert. Mit fail_closed wird jeder Auswertungsfehler als Verstoß behandelt und über den Durchsetzungsmodus der Richtlinie erzwungen — die sichere Wahl für Compliance-kritische Kontrollen. Wenn mehrere Richtlinien greifen, wird die Entscheidung deterministisch kombiniert: Der Schweregrad gewinnt immer in der Reihenfolge block > require_approval > warn > monitor, unabhängig von der Auswertungsreihenfolge.
Abgleich ist standardmäßig sicher. Werkzeug- und Aktionsnamen werden groß-/kleinschreibungs- und trennzeichenunabhängig abgeglichen (eine Sperrliste für delete_user erfasst auch DeleteUser und delete-user); gesperrte Wörter und Ausgabe-Keywords werden an Token-Grenzen mit Unicode-Normalisierung (NFKC) abgeglichen, sodass cat nicht länger category markiert — mit match_substring kann der Teilstring-Abgleich wieder aktiviert werden. Allowlists für externe Aufrufe lehnen bloße öffentliche Suffixe (com, co.uk) ab und normalisieren internationalisierte Domains; Kosten- und Datensatzlimits ignorieren nicht-endliche Werte, anstatt sie als „null" zu lesen.
Richtlinientypen
Kill-Switch
Jeden Agenten sofort pausieren, sobald Probleme auftreten. Pausierte Agenten lehnen alle neuen Trace-Einreichungen und LLM-Aufrufe ab (das SDK wirft AgentPausedError).
§ Agenten pausieren
# Per APIcurl -X PATCH https://api.execlave.com/api/v1/agents/AGENT_ID/pause \ -H "X-API-Key: exe_prod_xxx" \ -H "Content-Type: application/json" \ -d '{"reason": "Schädliche Ausgaben in der Produktion festgestellt"}' # Per Dashboard: Agents → Agent auswählen → Settings → Pause Agent§ Agenten fortsetzen
curl -X PATCH https://api.execlave.com/api/v1/agents/AGENT_ID/resume \ -H "X-API-Key: exe_prod_xxx" # Per Dashboard: Agents → Agent auswählen → Settings → Resume Agent§ In der Anwendung behandeln
// Das SDK prüft den Agentenstatus automatisch vor jedem Traceimport { AgentPausedError } from '@execlave/sdk'; try { const response = await tracedCall('User message');} catch (err) { if (err instanceof AgentPausedError) { // Benutzerfreundliche Meldung anzeigen return 'Dieser Dienst ist vorübergehend wegen Wartungsarbeiten nicht verfügbar.'; } throw err;}Agent-zu-Agent-Zugriffsgenehmigungen
In Multi-Agenten-Systemen legen Sie fest, welche Agenten andere Agenten aufrufen dürfen. Zugriffsgenehmigungen definieren erlaubte Aktionen und optionale Ablaufzeitpunkte.
§ Verfügbare Aktionen
# Agent-a die Berechtigung erteilen, agent-b auszuführen und zu lesencurl -X POST https://api.execlave.com/api/v1/agents/AGENT_A_UUID/grants \ -H "X-API-Key: exe_prod_xxx" \ -H "Content-Type: application/json" \ -d '{ "targetAgentId": "AGENT_B_UUID", "allowedActions": ["execute", "read"], "expiresAt": "2025-12-31T23:59:59Z" }' # Autorisierung vor einem Agent-zu-Agent-Aufruf prüfencurl -X POST https://api.execlave.com/api/v1/agents/authorize \ -H "X-API-Key: exe_prod_xxx" \ -H "Content-Type: application/json" \ -d '{ "sourceAgentId": "agent-a", "targetAgentId": "agent-b", "action": "execute" }'Webhook-Benachrichtigungen
Erhalten Sie Echtzeit-Benachrichtigungen, wenn Richtlinienverstöße oder Anomalien auftreten.
§ Verfügbare Ereignisse
curl -X POST https://api.execlave.com/api/v1/webhooks \ -H "X-API-Key: exe_prod_xxx" \ -H "Content-Type: application/json" \ -d '{ "url": "https://your-app.com/execlave-webhook", "events": ["policy.violated", "agent.paused"], "secret": "whsec_your_signing_secret" }'Benutzerdefinierte Validatoren (BYOV)
Müssen Sie auf Zustand prüfen, den Execlave nicht speichert — kundenspezifische Ausgaben, interne Berechtigungen, zeilenbasierte ACLs, Sperrzeiträume? Registrieren Sie einen signierten HTTPS-Endpunkt, den Execlave während der Durchsetzung aufruft.
BYOV-Leitfaden lesenAusdrucks-Richtlinien (CEL)
Schreiben Sie Durchsetzungsregeln in CEL — Googles abgesicherter, deterministischer Ausdruckssprache (dieselbe, die Kubernetes Admission und GCP IAM verwenden). Ideal für Kostengrenzen, Werkzeugbereichsprüfungen und metadatengesteuerte Gates.
Ausdrucks-Leitfaden lesenRichtlinienverkettung
Definieren Sie Abhängigkeiten zwischen Richtlinien, um aufwändige Prüfungen zu überspringen, wenn eine vorgelagerte Richtlinie bereits entschieden hat — oder nur dann eskalieren, wenn bereits etwas ausgelöst wurde. Zyklen werden beim Schreiben abgelehnt.
Verkettungs-Leitfaden lesen