Das Problem: Agents vervielfachen die Leak-Oberflaeche
Eine einzelne Chat-Completion hat einen Prompt und eine Antwort. Eine CrewAI-Crew kann acht haben. Ein Researcher-Agent ruft ein Modell auf. Ein Planner-Agent ruft ein Modell auf. Ein Writer entwirft. Ein Critic prueft. Ein Summarizer komprimiert. Jeder Schritt bekommt denselben Nutzer-Input oder eine Ableitung davon. Jeder Schritt ist eine weitere Chance, dass ein Kundenname, ein API-Key oder ein Stack-Trace in OpenAIs Logs landet.
Input am Eintritt der Crew zu scrubben ist notwendig, aber nicht ausreichend — Zwischen-Modell-Outputs fliessen in nachfolgende Prompts, und PII, das einen Schritt ueberlebt hat, kann im naechsten leaken.
Der richtige Ort, eine Redaktions-Policy durchzusetzen, ist der Request-Pfad jedes Agent-Modell-Calls. Genau das macht Grepture.
Das Setup
CrewAI nutzt LLM-Wrapper (OpenAI, Anthropic, LiteLLM, custom). Zeige die Base-URL des Wrappers auf Grepture, und jeder Agent-Call fliesst durch dieselbe Redaktion.
from crewai import Agent, Crew, Task
from crewai.llm import LLM
import os
llm = LLM(
model="openai/gpt-4o",
base_url="https://proxy.grepture.com/v1",
api_key=os.environ["OPENAI_API_KEY"],
extra_headers={
"X-Grepture-Auth": f"Bearer {os.environ['GREPTURE_API_KEY']}",
},
)
researcher = Agent(
role="Research-Analyst",
goal="Alle relevanten Fakten zur Frage des Nutzers hervorholen",
backstory="Du liest sorgfaeltig und zitierst Quellen",
llm=llm,
)
writer = Agent(
role="Technischer Autor",
goal="Recherche in eine klare Antwort verwandeln",
backstory="Du schreibst fuer Engineers",
llm=llm,
)
crew = Crew(
agents=[researcher, writer],
tasks=[
Task(description=user_request, agent=researcher),
Task(description="Schreibe eine finale Antwort", agent=writer),
],
)
result = crew.kickoff()
Jeder Modell-Call jedes Agents laeuft jetzt durch den Grepture-Proxy. PII wird redigiert, Secrets werden durch stabile Labels ersetzt, reversible Tokens tragen Nutzerdaten durch die Crew, ohne sie dem Modell zu zeigen.
Warum Reversibilitaet in Agent-Workflows wichtig ist
Wenn Agent A „Sarah Chen at 742 Evergreen Terrace ordered widgets" an Agent B uebergibt, und du es zu „[PERSON_1] at [ADDRESS_1] ordered widgets" gescrubbt hast, kann Agent B trotzdem darueber argumentieren. Wenn Agent C die finale, nutzersichtbare Antwort produziert, stellt Grepture die Original-Tokens wieder her — der Nutzer sieht seinen eigenen Namen und seine Adresse, das Modell hat sie nie gesehen.
Ein naiver Scrubber (PII einfach loeschen) bricht die Agent-Kette, weil Zwischenmodelle den referenziellen Faden verlieren. Reversible Tokenisierung haelt die Kette am Laufen.
Was an jedem Schritt abgefangen wird
Dieselbe Policy gilt fuer jeden Modell-Call in der Crew:
- PII (reversibel): E-Mail, Telefon, SSN, Kreditkarte, IP, Postadresse, Personennamen, Geburtsdaten
- Secrets (permanente Ersetzung): API-Keys, Tokens, Passwoerter, Webhooks ueber 25+ Credential-Familien
- Provider-agnostisch: wenn deine Crew OpenAI fuer einen Agent und Anthropic fuer einen anderen mischt, fliessen beide durch dieselben Regeln
Eine Notiz zu Tool-Outputs
CrewAI-Agents rufen Tools auf — Web-Suche, Code-Ausfuehrung, Dokumentensuche — und die Ergebnisse fliessen zurueck in Prompts. Tool-Outputs sind eine haeufige PII-Oberflaeche (ein Such-Ergebnis liefert eine echte E-Mail; ein DB-Lookup liefert einen Kundendatensatz). Weil Grepture im Request-Pfad sitzt, wird Tool-Output, der in den naechsten Modell-Call fliesst, genauso redigiert wie Nutzer-Input.
Der Agent-Plattform-Use-Case
Wenn du eine Agent-Plattform baust, auf der Kunden ihre eigenen Crews konfigurieren, werden die Prompts von Endnutzern (oder ihren Daten) getrieben, und du kannst nicht jeden pruefen. Andere Oberflaeche als ein Chat-UI, gleiches Grundproblem:
Migration
- Bei app.grepture.com anmelden.
base_urlan der/denLLM-Instanz(en) deiner Agents aendern.X-Grepture-Auth-Header ergaenzen.- Im Traffic-Log bestaetigen, dass jeder Agent-Call durch den Proxy fliesst.
Naechste Schritte
- Preise ansehen — kostenlos bis 1.000 Requests/Monat
- LiteLLM-Integration — falls dein CrewAI-Setup LiteLLM zum Routen nutzt
- Docs