Subagents
Ein Subagent ist ein Helfer, den ein Agent während seines eigenen Turns startet, mit der eigenen Subagent- oder Task-Funktion des Providers: eine Suche in der Codebasis, ein Review einer Datei, eine Nebenaufgabe mit einem anderen Modell. Er bearbeitet einen Teil der Aufgabe und gibt ein Ergebnis an den Agent zurück. OAR zeigt jeden im Verlauf und behält, was er getan hat, damit du sehen kannst, wie der Agent zu seiner Antwort kam.
Das ist nicht dasselbe wie eine Agent-Session.
Ein Subagent lebt innerhalb eines Turns einer Konversation und hat keine eigene
Konversation. Eine Agent-Session ist eine eigene Konversation in deiner Liste,
die ein Agent mit relay_
startet.
Im Verlauf #
Während der Turn läuft, hat jeder Subagent eine Blase innerhalb der Live-Blase des Turns. Ein Subagent, der einen weiteren startet, zeigt ihn verschachtelt in seiner eigenen Blase. Der Header der Blase zeigt:
| Teil | Was er ist |
|---|---|
| Name | Name oder Beschreibung des Subagents, wie der Provider sie meldet |
| Letzter Schritt | Eine Zeile, die bei eingeklappter Blase erscheint: die Zahl der Schritte und der neueste, wie in 3 steps · 🛠️ Tool (Read): index., oder das Ende seines Textes, wenn er noch keinen Schritt gemacht hat. Dateipfade werden auf den Dateinamen gekürzt |
| Zustand | ● Running (Läuft), solange er arbeitet, danach, wie er endete: Completed (Abgeschlossen), Failed (Fehlgeschlagen) oder, bei einem Subagent, den du gestoppt hast, Cancelled (Abgebrochen) |
| Stop (Stoppen) | Stoppt diesen Subagent. Er verschwindet, sobald der Subagent beendet ist. Siehe Einen Subagent stoppen |
Neu in 0.9.6 Eine Blase beginnt auf diesen Header eingeklappt, damit ein Turn mit vielen Subagents beim Scrollen kurz bleibt. Klick oder tippe irgendwo auf den Header, um sie zu öffnen und die Überlegungen, Schritte und den Text des Subagents zu sehen, und klick erneut, um sie einzuklappen. Was du von Hand gewählt hast, bleibt, solange die Blase lebt.
Ist der Turn fertig, weichen die Blasen der fertigen Antwort. Darunter listet die Antwort die Subagents des Turns als Zeilen, in der Reihenfolge ihres Starts. Subagents, die ein anderer Subagent gestartet hat, stehen dort nicht; du findest sie in der Aufzeichnung ihres Elternteils. Eine Zeile zeigt:
- den Namen des Subagents, der seine Aufzeichnung öffnet,
- seinen Zustand: Running, Starting (Startet), ✓ Completed, ✗ Failed oder ■ Stopped (Gestoppt), mit in the background (im Hintergrund) und record cut (Aufzeichnung gekürzt), wo sie zutreffen,
- sein Modell, seinen Typ (z. B.
Exploreoder Subagent, wenn keiner angegeben ist), die verbrauchten Tokens und wie lange er lief.
Nur Claude und DeepSeek melden Modell, Typ und Tokens. Bei den anderen Providern zeigt die Zeile Subagent und lässt Modell und Tokens weg. Die Zeile sagt ■ Stopped für einen Subagent, den die Live-Blase Cancelled nannte; beides bedeutet dasselbe.
Der Subagent-Viewer #
Neu in 0.9.10 Der Viewer zeigt die ganze Aufzeichnung eines Subagents: was er überlegt hat, welche Tools er mit welcher Eingabe aufgerufen hat und was zurückkam, den Text, den er geschrieben hat, und die Subagents, die er selbst gestartet hat, in der Reihenfolge, in der es geschah.
Öffnen #
Klick auf den Namen des Subagents:
- in der Zeile unter einer fertigen Antwort,
- in der Task-Leiste über dem Eingabebereich, bei einem Subagent von Claude oder DeepSeek, der im Hintergrund arbeitet (siehe Hintergrund-Tasks),
- in einer Kind-Zeile innerhalb der Aufzeichnung eines anderen Subagents.
Die Blase eines Subagents im laufenden Turn öffnet den Viewer nicht. Nutze die Task-Leiste, wenn dort ein Subagent von Claude oder DeepSeek steht, oder warte, bis die fertige Antwort ihn listet.
Neu in 0.9.11 In einer schreibgeschützten geteilten Ansicht öffnet die Zeile eines Subagents ebenfalls seine Aufzeichnung, schreibgeschützt, ohne Stop und mit den Pfaden des Relay-Hosts gefiltert wie der Rest der geteilten Ansicht. In 0.9.10 waren die Namen dort reiner Text.
Was er zeigt #
Der Header enthält den Namen, einen Button Stop, solange der Subagent läuft, und eine Zeile mit seinem Modell, Typ, Zustand, background (Hintergrund), wo es zutrifft, Tokens und Zeit. Darunter läuft die Aufzeichnung von oben:
| Eintrag | Wie er sich liest |
|---|---|
| 💭 Überlegung | Ihre erste Zeile. Eine Überlegung, die noch geschrieben wird, ist offen und zeigt Thinking… (Denkt nach…), bis Text kommt |
| Tool-Aufruf | Ein Symbol, der Name des Tools und eine einzeilige Zusammenfassung wie der Befehl oder die Datei. Klick darauf, um die volle Eingabe zu sehen, wo es mehr als die Zusammenfassung gibt |
| Ergebnis | Result (Ergebnis) oder Error (Fehler), seine Größe und cut from (gekürzt von) mit der ursprünglichen Größe, wenn es gekürzt wurde (siehe Grenzen). Klick darauf, um den Text zu lesen |
| Antworttext | Der eigene Text des Subagents, als formatiertes Markdown. Writing… (Schreibt…), während er kommt |
| Kind-Agent | Eine Zeile wie die unter einer Antwort. Klick auf ihren Namen, um ihn zu öffnen |
| Hinweis | Eine eigene Zeile des Relays, etwa die, die sagt, dass die Aufzeichnung gekürzt wurde |
Eine Aufzeichnung, die noch läuft, wächst live und folgt ihrem Ende. Scrollst du nach oben, bleibt der Viewer, wo du bist, und ein Button New entries ↓ (Neue Einträge) bringt dich wieder nach unten. Eine fertige Aufzeichnung öffnet oben. Ein Eintrag, den du aufgeklappt hast, bleibt aufgeklappt, während er sich ändert.
Nur eine Seite, die den Viewer offen hat, bekommt die Aufzeichnung, während sie wächst. Geht auf einer langsamen Verbindung ein Paket verloren oder bricht die Verbindung ab, holt der Viewer das Fehlende von selbst nach.
Ist noch nichts aufgezeichnet, sagt er Nothing recorded yet. Entries appear as the agent works. (Noch nichts aufgezeichnet. Einträge erscheinen, während der Agent arbeitet.) Für einen fertigen Subagent ohne Aufzeichnung sagt er Nothing was recorded for this agent. (Für diesen Agent wurde nichts aufgezeichnet.) Eine Aufzeichnung, die das Relay nicht laden konnte, zeigt This agent's record could not be loaded. (Die Aufzeichnung dieses Agents konnte nicht geladen werden.)
Zwischen Subagents wechseln und schließen #
Eine Kind-Zeile öffnet sich an Ort und Stelle. Ein Button oben links, etwa ‹ Review agent, nennt das Elternteil und bringt dich zu ihm zurück. Das Schließen des Viewers, auf jedem der Wege unten, führt zurück zur Konversation, nicht zum Elternteil.
Zum Schließen drückst du das ×, drückst Escape, klickst außerhalb des Fensters oder nutzt die Zurück-Funktion des Browsers oder Handys. Auf einem Handy füllt er den Bildschirm.
Grenzen #
| Was | Limit |
|---|---|
| Ein Tool-Ergebnis | Die ersten 4 KB werden behalten. Der Eintrag sagt, wie groß das Original war |
| Einträge in einer Aufzeichnung | 2000. Die Aufzeichnung endet dann mit einem Hinweis, und der Header sagt record cut at its limit (Aufzeichnung am Limit gekürzt) |
| Ältere Aufzeichnungen | Aufzeichnungen von vor dem Viewer werden aus dem Gespeicherten neu aufgebaut und sagen recorded before the full record existed (aufgezeichnet, bevor es die volle Aufzeichnung gab). Sie sind kürzer |
Eine Claude-Session, die beim Update auf 0.9.10 schon lief, zeichnet keine volle Subagent-Aufzeichnung auf, bis ihr Worker neu startet. ☠️ Kill session (Session beenden) bei einer untätigen Session genügt; die nächste Nachricht startet einen neuen Worker.
Wie lange Tool-Ausgaben behalten werden #
Neu in 0.9.10 Die Tool-Eingaben und -Ergebnisse eines Subagents können groß sein, deshalb entfernt das Relay sie aus alten Aufzeichnungen. Eine Aufzeichnung wird nie gelöscht, und der Subagent bleibt gelistet.
Settings → General → Keep sub-agent tool output (Einstellungen → Allgemein → Tool-Ausgaben von Subagents behalten) legt fest, wie lange die Eingaben und Ergebnisse bleiben. Zur Wahl stehen 7 days (7 Tage), 14 days (14 Tage), 30 days (30 Tage), 90 days (90 Tage) und Always (Immer). Der Standard ist 90 days. Siehe auch Settings (Einstellungen).
Kurz nach dem Start des Relays und danach einmal am Tag geht es die Tool-Aufrufe und Tool-Ergebnisse durch, die zuletzt vor mehr als so vielen Tagen geschrieben wurden, in Subagents, die nicht mehr laufen:
- ein Tool-Aufruf behält seine einzeilige Zusammenfassung und zeigt Input removed after 90 days (Eingabe nach 90 Tagen entfernt) (mit der Zahl, die du gewählt hast); seine volle Eingabe ist weg,
- ein Tool-Ergebnis oder ein Fehler behält seine Größe und zeigt z. B. Result · 3.2 KB · output removed after 90 days (Ergebnis · 3,2 KB · Ausgabe nach 90 Tagen entfernt); sein Text ist weg,
- Überlegungen, der Text des Subagents, Hinweise und Kind-Agents bleiben, wie sie waren.
Ein Subagent, der noch läuft, behält alles, egal wie alt. Always schaltet das Aufräumen ab. Das Speichern der Einstellung startet ein Aufräumen etwa fünf Sekunden später. Eine entfernte Eingabe oder ein entferntes Ergebnis kommt nicht zurück, wenn du die Zahl erhöhst.
Im Hintergrund #
Ein Subagent kann im Hintergrund laufen, sodass er weitermacht, nachdem der
Agent geantwortet hat. Er erscheint dann auch als Zeile in der Task-Leiste über
dem Eingabebereich, mit einem eigenen Button Stop. Bei Claude und DeepSeek
öffnet sein Name in der Leiste den Viewer. Ein Hintergrund-Agent der SDK-Engine
von Copilot steht nur in der Leiste und hat keine Aufzeichnung. Wie die Leiste
funktioniert, was einen Hintergrund-Task beendet und der Timeout stehen unter
Hintergrund-Tasks. Die Zeile eines
Subagents von Claude oder DeepSeek zeigt in the background, der Header des
Viewers background. Seine Aufzeichnung wächst zwischen den Turns weiter.
Neu in 0.9.12 Die Zeile eines Subagents in der Task-Leiste zählt seine
Schritte (Tool-Aufrufe), z. B. 22 steps, wie es seine eingeklappte Blase tut,
bei Claude, DeepSeek und der SDK-Engine von Copilot.
Einen Subagent stoppen #
Es gibt zwei Stellen für Stop: an der Blase des Subagents, solange der Turn läuft, und im Header des Viewers. Beide zeigen ihn bei jedem laufenden Subagent, bei jedem Provider, ob das Stoppen dieses einen möglich ist oder nicht. Ein Hintergrund-Subagent lässt sich auch aus der Task-Leiste stoppen.
Was sich einzeln stoppen lässt:
- Ein Subagent im Hintergrund bei Claude oder DeepSeek und ein Hintergrund-Agent der SDK-Engine von Copilot (aus der Task-Leiste).
- Sonst ist nichts bestätigt. Ein Subagent, der innerhalb des Turns bei Claude oder DeepSeek läuft, lässt sich nicht einzeln stoppen, und ebenso wenig irgendein Subagent bei Claude Cloud, Cursor oder Grok.
Lässt sich ein Subagent nicht stoppen, endet der Klick mit einer Ablehnung. Der Button der Blase wechselt zu Stop unavailable (Stoppen nicht möglich), und unter den Schritten des Subagents erscheint eine Zeile, die mit System note: Could not stop this subagent (Systemhinweis: Dieser Subagent konnte nicht gestoppt werden) beginnt. Im Viewer zeigt der Button bis zu 15 Sekunden lang Stopping… (Wird gestoppt…) und kehrt dann zu Stop zurück; er wechselt nicht zu Stop unavailable. Nutze stattdessen Stop für den ganzen Turn; siehe Während ein Turn läuft.
Klappt ein Stopp, zeigt der Subagent danach Stopped in Zeilen und im Viewer, Cancelled in der Live-Blase.
Nach Provider #
| Provider | Was der Viewer enthält | Einen Subagent stoppen |
|---|---|---|
| Claude | Alles: Überlegungen, jeden Tool-Aufruf mit Eingabe und Ergebnis, den Text, Kind-Agents, Modell, Typ und Tokens | Die im Hintergrund |
| DeepSeek Neu in 0.9.17 | Wie Claude. Das angezeigte Modell ist das DeepSeek-Modell, auf dem der Subagent lief, das Modell des Chats oder DeepSeek Flash für einen, der als haiku angefordert wurde; siehe DeepSeek |
Die im Hintergrund |
| GitHub Copilot und OpenAI, SDK-Engine | Subagents, die innerhalb des Turns laufen: Überlegungen, Schritte und Text, eine Ebene (keine Kind-Agents), kein Modell und keine Tokens. Hintergrund-Agents haben keine Aufzeichnung, nur eine Zeile in der Task-Leiste | Hintergrund-Agents, aus der Task-Leiste |
| GitHub Copilot und OpenAI, Extension-Engine | Was die Extension meldet; die Aufzeichnung kann Lücken haben | Nicht bestätigt |
| Claude Cloud | Überlegungen und Schritte, mit Kind-Agents. Der eigene Text des Subagents wird nicht veröffentlicht | Nein |
| Cursor | Überlegungen, Schritte und Text, eine Ebene (keine Kind-Agents). Tool-Ergebnisse werden nicht gemeldet | Nein |
| Grok | Nur, dass der Subagent gestartet ist und wie er endete. Der Viewer hat selbst nichts zu zeigen | Nein |
| OpenAI Image | Entfällt | Entfällt |
Die vollständige Tabelle der Fähigkeiten steht unter Provider im Überblick.