Überblick
Subagenten werden ausschließlich über den dateisystembasierten Ansatz erstellt, indem Markdown-Dateien mit YAML-Frontmatter in bestimmten Verzeichnissen platziert werden. Das SDK kann dann diese vordefinierten Subagenten während der Ausführung aufrufen.Vorteile der Verwendung von Subagenten
Kontextverwaltung
Subagenten behalten einen separaten Kontext vom Hauptagenten bei, verhindern Informationsüberladung und halten Interaktionen fokussiert. Diese Isolation stellt sicher, dass spezialisierte Aufgaben den Hauptgesprächskontext nicht mit irrelevanten Details verschmutzen. Beispiel: Einresearch-assistant
Subagent kann Dutzende von Dateien und Dokumentationsseiten erkunden, ohne das Hauptgespräch mit all den Zwischensuchergebnissen zu überladen - nur die relevanten Erkenntnisse werden zurückgegeben.
Parallelisierung
Mehrere Subagenten können gleichzeitig laufen und komplexe Arbeitsabläufe dramatisch beschleunigen. Beispiel: Während einer Code-Überprüfung können Siestyle-checker
, security-scanner
und test-coverage
Subagenten gleichzeitig ausführen und die Überprüfungszeit von Minuten auf Sekunden reduzieren.
Spezialisierte Anweisungen und Wissen
Jeder Subagent kann maßgeschneiderte Systemprompts mit spezifischer Expertise, bewährten Praktiken und Einschränkungen haben. Beispiel: Eindatabase-migration
Subagent kann detailliertes Wissen über SQL-bewährte Praktiken, Rollback-Strategien und Datenintegritätsprüfungen haben, die unnötiges Rauschen in den Anweisungen des Hauptagenten wären.
Werkzeugbeschränkungen
Subagenten können auf spezifische Werkzeuge beschränkt werden, wodurch das Risiko unbeabsichtigter Aktionen reduziert wird. Beispiel: Eindoc-reviewer
Subagent könnte nur Zugang zu Read- und Grep-Werkzeugen haben, wodurch sichergestellt wird, dass er analysieren kann, aber niemals versehentlich Ihre Dokumentationsdateien modifiziert.
Erstellen von Subagenten
Subagenten werden als Markdown-Dateien in spezifischen Verzeichnissen definiert:- Projektebene:
.claude/agents/*.md
- Nur im aktuellen Projekt verfügbar - Benutzerebene:
~/.claude/agents/*.md
- In allen Projekten verfügbar
Dateiformat
Jeder Subagent ist eine Markdown-Datei mit YAML-Frontmatter:Konfigurationsfelder
Feld | Erforderlich | Beschreibung |
---|---|---|
name | Ja | Eindeutige Kennung mit Kleinbuchstaben und Bindestrichen |
description | Ja | Natürlichsprachige Beschreibung, wann dieser Subagent verwendet werden soll |
tools | Nein | Kommagetrennte Liste erlaubter Werkzeuge. Wenn weggelassen, erbt alle Werkzeuge |
Wie das SDK Subagenten verwendet
Bei der Verwendung des Claude Code SDK sind im Dateisystem definierte Subagenten automatisch verfügbar. Claude Code wird:- Subagenten automatisch erkennen aus
.claude/agents/
Verzeichnissen - Sie automatisch aufrufen basierend auf Aufgabenabgleich
- Ihre spezialisierten Prompts und Werkzeugbeschränkungen verwenden
- Separaten Kontext beibehalten für jeden Subagenten-Aufruf
Beispiel-Subagenten
Für umfassende Beispiele von Subagenten einschließlich Code-Überprüfern, Test-Runnern, Debuggern und Sicherheitsprüfern, siehe den Haupt-Subagenten-Leitfaden. Der Leitfaden enthält detaillierte Konfigurationen und bewährte Praktiken für die Erstellung effektiver Subagenten.SDK-Integrationsmuster
Automatischer Aufruf
Das SDK wird automatisch geeignete Subagenten basierend auf dem Aufgabenkontext aufrufen. Stellen Sie sicher, dass dasdescription
-Feld Ihres Subagenten klar angibt, wann er verwendet werden sollte:
Expliziter Aufruf
Benutzer können spezifische Subagenten in ihren Prompts anfordern:Werkzeugbeschränkungen
Subagenten können beschränkten Werkzeugzugang über dastools
-Feld haben:
- Feld weglassen - Subagent erbt alle verfügbaren Werkzeuge (Standard)
- Werkzeuge spezifizieren - Subagent kann nur aufgelistete Werkzeuge verwenden
Verwandte Dokumentation
- Haupt-Subagenten-Leitfaden - Umfassende Subagenten-Dokumentation
- SDK-Konfigurationsleitfaden - Überblick über Konfigurationsansätze
- Einstellungen - Konfigurationsdatei-Referenz
- Slash-Befehle - Erstellung benutzerdefinierter Befehle