Claude Code's Tool-API-Details enthüllt

Struktur der Tool-API von Claude Code
Ein Reddit-Nutzer dokumentierte seine Konversation mit Claude Code über dessen interne Tool-API. Der KI-Assistent gab spezifische Details darüber preis, wie er mit der Umgebung interagiert.
Tool-Kategorien und Funktionen
Dateisystem-Tools:
Read— liest Dateien über absoluten Pfad, gibt Inhalt mit Zeilennummern zurück (cat -n Stil). Unterstützt Bilder, PDFs, Jupyter-Notebooks.Write— überschreibt oder erstellt Dateien. Muss vor dem Schreiben in bestehende Dateien zuerst lesen.Edit— führt gezielte Zeichenkettenersetzung durch. Erfordert, dass old_string in der Datei eindeutig ist, sonst schlägt es fehl. Muss zuerst lesen.Glob— findet Dateien nach Muster (z.B. *.py), sortiert nach Änderungszeit.Grep— ripgrep-basierte Inhaltsuche. Unterstützt Regex, Dateitypfilter und Kontextzeilen.
Ausführungs-Tools:
Bash— führt Shell-Befehle mit 2-Minuten-Standardtimeout (bis zu 10 Minuten) aus. Arbeitsverzeichnis bleibt zwischen Aufrufen erhalten, aber Shell-Zustand überträgt sich nicht (keine Umgebungsvariablen, Aliase usw.). Hat eine run_in_background-Option.
Web-Tools:
WebFetch— holt URL-Inhalte.WebSearch— durchsucht das Web.
KI-Agenten:
Agent— erzeugt Subagenten (Allzweck-, Explore-, Plan- usw.) mit eigenem Tool-Zugriff und Kontext. Kann im Hintergrund laufen. Gibt eine einzelne Nachricht zurück, wenn fertig.
Spezial-Tools:
Skill— ruft benannte „Skills“ auf (Slash-Befehle wie /commit), die sich zu vollständigen Prompts erweitern.ToolSearch— holt Schemata für „verzögerte Tools“ (Tools, die namentlich bekannt sind, aber erst aufgerufen werden können, nachdem ihr Schema abgerufen wurde).
Wichtige Implementierungsdetails
Tool-Aufrufstruktur: Claude Code verwendet keine speziellen Tokens, um Tools auszulösen — es ist eine Standard-Funktionsaufruf-API. Die Antwort enthält strukturierte Tool-Aufrufblöcke, und Ergebnisse kommen als Tool-Ergebnisnachrichten zurück.
Tool-Aufrufformat: Die Blöcke verwenden XML-ähnliche Syntax mit einem antml:function_calls-Wrapper, der ein oder mehrere antml:invoke-Elemente mit dem Toolnamen als Attribut enthält. Jeder Parameter ist ein antml:parameter-Element mit einem name-Attribut und dem Wert als Textinhalt.
Beispielstruktur für einen Bash-Aufruf:
- Äußeres Tag:
antml:function_calls - Inneres Tag:
antml:invokemit Attributname="Bash" - Parameter-Tag:
antml:parametermitname="command", das den Befehlstext enthält
Betriebsverhalten
- Linter-Interaktionen: Beim Bearbeiten von Dateien können Git-Hooks oder konfigurierte „Hooks“ automatisch nach Tool-Aufrufen laufen und Dateien weiter modifizieren. Das Tool-Ergebnis zeigt an, dass „Datei von einem anderen Prozess geändert wurde“, was erneutes Lesen vor weiterer Bearbeitung erfordert.
- Tool-Aufrufsichtbarkeit: Jeder Tool-Aufruf erscheint im Terminal zur Benutzerfreigabe (abhängig vom Berechtigungsmodus). Benutzer können jeden Tool-Aufruf ablehnen.
- Parallele Ausführung: Mehrere Tool-Aufrufe können in einer einzigen Antwort ausgegeben und gleichzeitig ausgeführt werden, nützlich zum gleichzeitigen Lesen mehrerer Dateien.
- Kontextverwaltung: Lange Konversationen werden automatisch komprimiert — frühere Nachrichten werden zusammengefasst, um Kontext freizugeben. Speicherpersistenz erfolgt über eine Verzeichnisstruktur:
/home/tpreal/.claude/projects/...
📖 Read the full source: r/ClaudeAI
👀 Siehe auch

Claude Compact Guard Plugin verwendet neuen PostCompact-Hook, um Kontext zu erhalten
Ein Entwickler hat claude-compact-guard veröffentlicht, ein Plugin, das automatisch kritischen Kontext speichert, bevor Claudes /compact-Befehl ihn zerstört, und anschließend alles wieder einfügt. Es nutzt den vor 4 Tagen veröffentlichten PostCompact-Hook von Anthropic.

Erstellen von syntaqlite: Ein SQLite-Entwicklungswerkzeug-Projekt, das mit KI-Unterstützung erstellt wurde
Lalit Maganti baute syntaqlite, eine Reihe von Entwicklertools für SQLite, in drei Monaten mithilfe von KI-Codierungsagenten, nachdem er es acht Jahre lang gewollt hatte. Das Projekt erforderte das genaue Parsen von SQL wie SQLite, was die Anpassung von SQLites dichtem C-Codebase mit über 400 Grammatikregeln beinhaltet.

SpruceChat läuft mit 0,5B LLM direkt auf Miyoo-Handhelds über llama.cpp
SpruceChat führt Qwen2.5-0.5B vollständig auf dem Gerät auf Handheld-Spielgeräten mit llama.cpp aus, ohne Cloud oder WiFi zu benötigen. Auf einem Miyoo A30 (Cortex-A7 Quad-Core) lädt es in ~60 Sekunden und generiert mit ~1-2 Token/Sekunde.

Überarbeitung: KI-Editor entwickelt mit agentenbasierten Codierungstools und Y.js CRDT
Revise ist ein KI-Editor für Dokumente, der über 10 Monate hinweg von Grund auf mit agentenbasierten Codierungswerkzeugen entwickelt wurde. Er verfügt über eine eigene Textverarbeitungs-Engine und eine Rendering-Schicht, die nur Y.js für den CRDT-Stack verwendet. Das System integriert mehrere KI-Modelle, darunter GPT-5.4-Varianten und Claude-Modelle, für Korrekturlesen und Überarbeitungen.