physar / Agentic AI / Tool-Use: Design, Selektion, Sicherheit

Tool-Use: Design, Selektion, Sicherheit

Tools sind das Interface des Agenten zur Welt: gutes Tool-Design, eine kleine orthogonale Menge, Parameter-Validierung, Fehlerbehandlung, Least-Privilege und der Umgang mit dem, was Tools zurückgeben.

Tool-Use: das Interface des Agenten zur Welt

Einführung · 7 Abschnitte · ~9 Min Lesezeit · Stand

Tools bestimmen, wie gut ein Agent ist

Ein Agent handelt über Tools — Funktionen, die er aufrufen kann. Das Modell wählt anhand von Name, Beschreibung und Schema, welches Tool es mit welchen Argumenten aufruft. Die Qualität der Tools deckelt damit die Qualität des Agenten: schlechte Tools ergeben schlechte Agenten, egal wie fähig das Modell ist.

Gutes Tool-Design

Ein Tool braucht einen aussagekräftigen Namen, eine klare Beschreibung (was es tut, wann es zu nutzen ist) und ein typisiertes Schema für die Parameter (Name, Typ, erlaubte Werte). get_data(x) mit „gets data“ lädt zu Fehlgebrauch ein — das Modell liest genau diese Beschreibung, um zu wählen und aufzurufen.

Kleine, orthogonale Tool-Menge

Je mehr Tools — und je stärker sie sich überschneiden —, desto schwerer fällt dem Modell die Auswahl. Vier Tools, die alle „irgendwas suchen“, führen zu Fehlgriffen. Halte die Menge klein und orthogonal: klare, sich nicht überschneidende Zuständigkeiten.

Traue den Argumenten nicht

Die Tool-Argumente, die das LLM erzeugt, sind nicht vertrauenswürdige Eingabe: sie können fehlformatiert, halluziniert oder gefährlich breit sein (ein leerer Filter, der alles löscht). Validiere sie am Tool-Rand (Schema, Grenzen, Plausibilität) vor der Ausführung.

Und Tools scheitern — sie sollten strukturierte, verwertbare Fehler zurückgeben (was schiefging, ob retrybar), keinen rohen Stacktrace und keinen stillen Fehlschlag. Ein guter Fehler ist eine Beobachtung, aus der der Agent den nächsten Schritt ableitet.

Least-Privilege & irreversible Aktionen

Der Blast-Radius eines Tools ist gleich seinen Rechten. Gib jedem Tool die minimalen Berechtigungen (read-only, wo möglich; nur die nötigen Tabellen) — entscheidend, wenn der Agent untrusted Input verarbeitet, der ihn steuern könnte.

Irreversible/destruktive Aktionen (Löschen, Zahlungen) dürfen nicht autonom aus einer LLM-Entscheidung feuern: ein erzwungener Human-in-the-Loop- oder Bestätigungs-/Dry-Run-Schritt davor, plus Limits.

Was Tools zurückgeben

Tool-Ausgaben fließen zurück in den Kontext — und sind damit zweierlei Problem: Größe (eine riesige Webseite bläht Kontext und Kosten, „lost in the middle“) und Trust (der Inhalt kann versteckte Anweisungen tragen — indirekte Prompt Injection über Tool-Output).

Tool oder Code? — gleich im Check

Nicht alles gehört als Tool. Deterministische Logik, die immer (und in fester Reihenfolge) laufen muss, kodiert man fest im Ablauf — nicht als optionales, vom LLM gewähltes Tool, das es überspringen oder umsortieren kann. Tools sind für Aktionen, bei denen das Modell echt entscheiden soll.

Gelesen ist nicht geprüft: Im Modul entscheidest du die Fälle selbst und siehst danach, wo dein Urteil trägt.

8 Checks starten →

Modul-Aufbau

EINFÜHRUNGTool-Use: das Interface des Agenten zur Welt~9 Min
ADR-001TOOL-DESIGNsolide
ADR-002TOOL-SELEKTIONsenior
ADR-003PARAMETER-VALIDIERUNGsenior
ADR-004TOOL-FEHLERsenior
ADR-005LEAST-PRIVILEGEprincipal
ADR-006IRREVERSIBELprincipal
ADR-007TOOL-VS-CODEsolide
ADR-008RÜCKGABE-KONTEXTsenior

Quellen

  1. 01Toolformer: Language Models Can Teach Themselves to Use Tools — Schick et al., 2023
  2. 02Building Effective Agents — Anthropic, 2024
  3. 03OWASP Top 10 for LLM Applications (2025) — LLM06 Excessive Agency, LLM01 Prompt Injection, LLM05 Improper Output Handling
  4. 04OWASP Top 10 for LLM Applications (2025) — LLM06 Excessive Agency
  5. 05OWASP Top 10 for LLM Applications (2025) — LLM05 Improper Output Handling
  6. 06OWASP Top 10 for LLM Applications (2025) — LLM01 Prompt Injection
  7. 07OWASP Top 10 for LLM Applications (2025) — LLM01 Prompt Injection, LLM05 Improper Output Handling
  8. 08Lost in the Middle: How Language Models Use Long Contexts — Liu et al., 2023

Verfasst von Julian Zentgraf