Subagenten ermöglichen es dem Hauptagenten, unabhängige Worker zu starten, die Teilaufgaben übernehmen. Ein Subagent teilt Tools und den Kontext der Codebasis mit dem übergeordneten Agenten, arbeitet jedoch in einem eigenen Unterhaltungsstrang — er übernimmt nicht den Unterhaltungsverlauf des übergeordneten Agenten. Das ist nützlich für Aufgaben, die von fokussierter, unabhängiger Arbeit profitieren — etwa beim Erkunden einer Codebasis, beim Ausführen von Tests oder bei der parallelen Implementierung eines Features. Sie können den Agenten ausdrücklich bitten, Subagenten zu verwenden (z. B. „recherchiere in einem Subagenten, wie Authentifizierung funktioniert“), oder der Agent kann selbst entscheiden, einen Subagenten zu beauftragen, wenn er feststellt, dass eine Aufgabe von unabhängiger Arbeit profitieren würde. In unseren Messungen verbessern Subagenten sowohl die Gesamtleistung beim Programmieren als auch reduzieren sie die Kosten.Documentation Index
Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
Use this file to discover all available pages before exploring further.
So funktionieren Subagents
Vordergrund
Läuft direkt in Ihrer Sitzung. Der übergeordnete Agent pausiert und wartet, bis der Subagent fertig ist, bevor er fortfährt. Sie können Tool-Aufrufe genehmigen oder ablehnen, wenn sie anfallen.
Hintergrund
Läuft parallel, während der übergeordnete Agent weiterarbeitet. Der übergeordnete Agent wird automatisch benachrichtigt, wenn der Subagent abgeschlossen ist. Nicht genehmigte Tools werden automatisch abgelehnt.
Sie sehen die Rohausgabe des Subagenten nicht direkt. Wenn ein Subagent fertig ist, liest der übergeordnete Agent das Ergebnis und fasst die wichtigsten Befunde und Maßnahmen für Sie zusammen.
Subagent-Profile
| Profil | Beschreibung | Tool-Zugriff |
|---|---|---|
subagent_explore | Schreibgeschützte Analyse der Codebasis und Recherche | Schreibgeschützte Tools für die Codebasis plus Websuche; kann keine Dateien bearbeiten oder beliebige URLs abrufen (unabhängig davon, ob im Vorder- oder Hintergrund) |
subagent_general | Allgemeine Aufgaben, einschließlich Codeänderungen | Voller Tool-Zugriff (Vordergrund) oder nur vorab genehmigte Tools (Hintergrund) |
Der Agent wählt anhand der Aufgabe automatisch das passende Profil aus. Explore-Subagents sind ideal für Recherche und zum Verstehen, während allgemeine Subagents Änderungen vornehmen können.
Tool-Berechtigungen
- Subagenten im Vordergrund verhalten sich wie der Hauptagent — Sie werden wie gewohnt aufgefordert, Tool-Aufrufe zuzulassen oder abzulehnen.
- Subagenten im Hintergrund übernehmen alle Tool-Berechtigungen, die Sie in der aktuellen Sitzung bereits erteilt haben. Jedes Tool, das nicht vorab genehmigt wurde, wird automatisch abgelehnt. Subagenten im Hintergrund können keine neuen Berechtigungen anfordern.
Subagents überwachen
Subagent-Indikator
Subagent-Panel
Wechsel zwischen Vordergrund und Hintergrund
- Einen Subagent aus dem Vordergrund in den Hintergrund verschieben: Drücke Ctrl+B, während ein Subagent im Vordergrund läuft. Der Subagent arbeitet im Hintergrund weiter, und der übergeordnete Agent setzt seine Arbeit fort.
- Einen Subagent aus dem Hintergrund in den Vordergrund holen: Öffne das Subagent-Panel und drücke f bei einem laufenden Subagent im Hintergrund. Die Ausgabe des Subagents wird inline angezeigt.
Wenn du einen Subagent in den Hintergrund verschiebst, ist der Tool-Aufruf des übergeordneten Agenten bereits zurückgekehrt, sodass der übergeordnete Agent unabhängig weiterarbeitet. Das Ergebnis des Subagents fließt nicht in die aktuelle Pipeline des übergeordneten Agenten zurück, aber du wirst benachrichtigt, wenn er fertig ist.
Subagents abbrechen
- Über das Subagent-Panel: Öffnen Sie das Panel und drücken Sie bei einem laufenden Subagenten x.
- Subagent im Vordergrund: Drücken Sie Ctrl+C oder Esc, um den aktuell im Vordergrund laufenden Subagenten abzubrechen.
Subagenten fortsetzen
- Ein Subagent im Hintergrund fehlgeschlagen ist, weil ein erforderlicher Tool-Aufruf abgelehnt wurde — setze ihn im Vordergrund fort, um die nötigen Berechtigungen zu erteilen.
- Ein Subagent abgeschlossen ist, du aber möchtest, dass er auf Grundlage seiner Befunde weitere Folgearbeiten ausführt.
- Ein Subagent vorzeitig abgebrochen wurde und du möchtest, dass er weiterläuft.
Verschachtelungstiefe
run_subagent und read_subagent) sind innerhalb eines Subagents deaktiviert, um eine unbegrenzte Verschachtelung zu verhindern.
Benutzerdefinierte Subagent-Profile können jedoch die verschachtelte Erstellung aktivieren, indem sie das Feld max-nesting in ihrem Frontmatter festlegen. Dieser Wert überschreibt die Standard-Maximaltiefe und erlaubt es Subagents, untergeordnete Agents zu starten, solange der Baum innerhalb dieses Limits bleibt.
Zum Beispiel erlaubt max-nesting: 3 die folgende Kette:
Benutzerdefinierte Subagents
subagent_explore und subagent_general können Sie eigene benutzerdefinierte Subagent-Profile definieren. Mit benutzerdefinierten Subagents können Sie spezialisierte Subagents mit eigenen Systemprompts, Tooleinschränkungen, Modell-Overrides und Berechtigungen erstellen — zugeschnitten auf bestimmte Aufgaben in Ihrem Workflow.
Einen Custom Subagent erstellen
AGENT.md-Dateien in einem benannten Verzeichnis unter agents/ definiert. Der Verzeichnisname wird zur Kennung des Profils.
- Projektspezifisch
- Global
AGENT.md-Format
AGENT.md-Datei verwendet dasselbe YAML-Frontmatter wie Skills, gefolgt vom System-Prompt des Subagenten:
Frontmatter-Felder
| Feld | Typ | Standard | Beschreibung |
|---|---|---|---|
name | string | Name des Verzeichnisses | Bezeichner für das Profil (darf nicht mit integrierten Profilen kollidieren) |
description | string | keine | Wird dem Agenten bei der Auswahl eines Profils angezeigt |
model | string | Standard-Subagentenmodell | Überschreibt das von diesem Subagenten verwendete Modell |
allowed-tools | list | alle Tools | Beschränkt, welche Tools der Subagent verwenden kann |
permissions | object | vererben | Berechtigungsüberschreibungen (allow, deny, ask) |
max-nesting | integer | keine | Überschreibt die maximale Verschachtelungstiefe und erlaubt diesem Subagenten, eigene Subagenten zu starten |
Wie Custom Subagents verwendet werden
subagent_explore, subagent_general), werden mit einer Warnung übersprungen.
Importieren aus anderen Tools
| Quelle | Dateimuster |
|---|---|
.claude/agents/*.md | Jede .md-Datei wird als Subagent-Profil importiert |
Claude-Code-Agent-Dateien verwenden im
frontmatter tools statt allowed-tools. Beide Formate werden automatisch unterstützt.