SpyBara
Go Premium

Documentation 2026-10-08 22:58 UTC to 2026-10-09 16:59 UTC

43 files changed +321 −123. View all changes and history on the product overview
2026
Fri 9 18:01 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

284. **Wiederholen.** Die Schritte 2 und 3 wiederholen sich als Zyklus. Jeder vollständige Zyklus ist eine Runde. Claude ruft weiterhin Werkzeuge auf und verarbeitet Ergebnisse, bis es eine Antwort ohne Werkzeugaufrufe erzeugt.284. **Wiederholen.** Die Schritte 2 und 3 wiederholen sich als Zyklus. Jeder vollständige Zyklus ist eine Runde. Claude ruft weiterhin Werkzeuge auf und verarbeitet Ergebnisse, bis es eine Antwort ohne Werkzeugaufrufe erzeugt.

295. **Ergebnis zurückgeben.** Das SDK gibt eine endgültige [`AssistantMessage`](#message-types) mit der Textantwort (keine Werkzeugaufrufe) aus, gefolgt von einer [`ResultMessage`](#message-types) mit dem endgültigen Text, Token-Nutzung, Kosten und Sitzungs-ID.295. **Ergebnis zurückgeben.** Das SDK gibt eine endgültige [`AssistantMessage`](#message-types) mit der Textantwort (keine Werkzeugaufrufe) aus, gefolgt von einer [`ResultMessage`](#message-types) mit dem endgültigen Text, Token-Nutzung, Kosten und Sitzungs-ID.

30 30 

31Eine schnelle Frage („welche Dateien sind hier?") könnte eine oder zwei Runden dauern, in denen `Glob` aufgerufen und die Ergebnisse beantwortet werden. Eine komplexe Aufgabe („refaktorisieren Sie das Auth-Modul und aktualisieren Sie die Tests") kann Dutzende von Werkzeugaufrufen über viele Runden hinweg verketten, Dateien lesen, Code bearbeiten und Tests ausführen, wobei Claude seinen Ansatz basierend auf jedem Ergebnis anpasst.31Eine schnelle Frage („welche Dateien sind hier?“) könnte eine oder zwei Runden dauern, in denen `Glob` aufgerufen und die Ergebnisse beantwortet werden. Eine komplexe Aufgabe („refaktorisieren Sie das Auth-Modul und aktualisieren Sie die Tests“) kann Dutzende von Werkzeugaufrufen über viele Runden hinweg verketten, Dateien lesen, Code bearbeiten und Tests ausführen, wobei Claude seinen Ansatz basierend auf jedem Ergebnis anpasst.

32 32 

33<h2 id="turns-and-messages">33<h2 id="turns-and-messages">

34 Runden und Nachrichten34 Runden und Nachrichten


36 36 

37Eine Runde ist eine Hin- und Rückfahrt in der Schleife: Claude erzeugt eine Ausgabe, die Werkzeugaufrufe enthält, das SDK führt diese Werkzeuge aus, und die Ergebnisse werden automatisch an Claude zurückgesendet. Dies geschieht, ohne die Kontrolle an Ihren Code zurückzugeben. Runden werden fortgesetzt, bis Claude eine Ausgabe ohne Werkzeugaufrufe erzeugt, woraufhin die Schleife endet und das endgültige Ergebnis geliefert wird.37Eine Runde ist eine Hin- und Rückfahrt in der Schleife: Claude erzeugt eine Ausgabe, die Werkzeugaufrufe enthält, das SDK führt diese Werkzeuge aus, und die Ergebnisse werden automatisch an Claude zurückgesendet. Dies geschieht, ohne die Kontrolle an Ihren Code zurückzugeben. Runden werden fortgesetzt, bis Claude eine Ausgabe ohne Werkzeugaufrufe erzeugt, woraufhin die Schleife endet und das endgültige Ergebnis geliefert wird.

38 38 

39Stellen Sie sich vor, wie eine vollständige Sitzung für den Prompt „Beheben Sie die fehlgeschlagenen Tests in auth.ts" aussehen könnte.39Stellen Sie sich vor, wie eine vollständige Sitzung für den Prompt „Beheben Sie die fehlgeschlagenen Tests in auth.ts“ aussehen könnte.

40 40 

41Zunächst sendet das SDK Ihren Prompt an Claude und gibt eine [`SystemMessage`](#message-types) mit den Sitzungsmetadaten aus. Dann beginnt die Schleife:41Zunächst sendet das SDK Ihren Prompt an Claude und gibt eine [`SystemMessage`](#message-types) mit den Sitzungsmetadaten aus. Dann beginnt die Schleife:

42 42 

431. **Runde 1:** Claude ruft `Bash` auf, um `npm test` auszuführen. Das SDK gibt eine [`AssistantMessage`](#message-types) mit dem Werkzeugaufruf aus, führt den Befehl aus und gibt dann eine [`UserMessage`](#message-types) mit der Ausgabe (drei Fehler) aus.431. **Runde 1:** Claude ruft `Bash` auf, um `npm test` auszuführen. Das SDK gibt eine [`AssistantMessage`](#message-types) mit dem Werkzeugaufruf aus, führt den Befehl aus und gibt dann eine [`UserMessage`](#message-types) mit der Ausgabe (drei Fehler) aus.

442. **Runde 2:** Claude ruft `Read` auf `auth.ts` und `auth.test.ts` auf. Das SDK gibt eine `AssistantMessage` für jeden Aufruf aus und gibt die Dateiinhalte zurück.442. **Runde 2:** Claude ruft `Read` auf `auth.ts` und `auth.test.ts` auf. Das SDK gibt eine `AssistantMessage` für jeden Aufruf aus und gibt die Dateiinhalte zurück.

453. **Runde 3:** Claude ruft `Edit` auf, um `auth.ts` zu beheben, und ruft dann `Bash` auf, um `npm test` erneut auszuführen. Alle drei Tests bestehen. Das SDK gibt eine `AssistantMessage` für jeden Aufruf aus.453. **Runde 3:** Claude ruft `Edit` auf, um `auth.ts` zu beheben, und ruft dann `Bash` auf, um `npm test` erneut auszuführen. Alle drei Tests bestehen. Das SDK gibt eine `AssistantMessage` für jeden Aufruf aus.

464. **Letzte Runde:** Claude erzeugt eine nur-Text-Antwort ohne Werkzeugaufrufe: „Behobener Auth-Bug, alle drei Tests bestehen jetzt." Das SDK gibt eine endgültige `AssistantMessage` mit diesem Text aus, gefolgt von einer [`ResultMessage`](#message-types) mit dem gleichen Text plus Kosten und Nutzung.464. **Letzte Runde:** Claude erzeugt eine nur-Text-Antwort ohne Werkzeugaufrufe: „Behobener Auth-Bug, alle drei Tests bestehen jetzt.“ Das SDK gibt eine endgültige `AssistantMessage` mit diesem Text aus, gefolgt von einer [`ResultMessage`](#message-types) mit dem gleichen Text plus Kosten und Nutzung.

47 47 

48Das waren vier Runden: drei mit Werkzeugaufrufen, eine endgültige nur-Text-Antwort.48Das waren vier Runden: drei mit Werkzeugaufrufen, eine endgültige nur-Text-Antwort.

49 49 

50Sie können die Schleife mit `max_turns` / `maxTurns` begrenzen, die nur Werkzeug-Nutzungsrunden zählt. Zum Beispiel würde `max_turns=2` in der obigen Schleife vor dem Bearbeitungsschritt gestoppt haben. Sie können auch `max_budget_usd` / `maxBudgetUsd` verwenden, um Runden basierend auf einem Ausgabenschwellenwert zu begrenzen.50Sie können die Schleife mit `max_turns` / `maxTurns` begrenzen, die nur Werkzeug-Nutzungsrunden zählt. Zum Beispiel würde `max_turns=2` in der obigen Schleife vor dem Bearbeitungsschritt gestoppt haben. Sie können auch `max_budget_usd` / `maxBudgetUsd` verwenden, um Runden basierend auf einem Ausgabenschwellenwert zu begrenzen.

51 51 

52Ohne Limits läuft die Schleife, bis Claude von selbst fertig ist, was für gut definierte Aufgaben in Ordnung ist, aber bei offenen Prompts lange laufen kann („verbessern Sie diese Codebasis"). Das Festlegen eines Budgets ist eine gute Standardeinstellung für Produktionsagenten. Siehe [Runden und Budget](#turns-and-budget) unten für die Optionsreferenz.52Ohne Limits läuft die Schleife, bis Claude von selbst fertig ist, was für gut definierte Aufgaben in Ordnung ist, aber bei offenen Prompts lange laufen kann („verbessern Sie diese Codebasis“). Das Festlegen eines Budgets ist eine gute Standardeinstellung für Produktionsagenten. Siehe [Runden und Budget](#turns-and-budget) unten für die Optionsreferenz.

53 53 

54<h2 id="message-types">54<h2 id="message-types">

55 Nachrichtentypen55 Nachrichtentypen


216| Option | Was es steuert | Standard |216| Option | Was es steuert | Standard |

217| :- | :- | :- |217| :- | :- | :- |

218| Max. Durchläufe (`max_turns` / `maxTurns`) | Maximale Tool-Use-Rundgänge | Keine Begrenzung |218| Max. Durchläufe (`max_turns` / `maxTurns`) | Maximale Tool-Use-Rundgänge | Keine Begrenzung |

219| Max. Budget (`max_budget_usd` / `maxBudgetUsd`) | Maximale Kosten vor dem Stopp | Keine Begrenzung |219| Max. Budget (`max_budget_usd` / `maxBudgetUsd`) | Geschätzte Kosten, bei denen die Schleife stoppt | Keine Begrenzung |

220 220 

221Wenn eine dieser Grenzen erreicht wird, gibt das SDK eine `ResultMessage` mit einem entsprechenden Fehler-Subtyp (`error_max_turns` oder `error_max_budget_usd`) zurück. Siehe [Handle the result](#handle-the-result) für die Überprüfung dieser Subtypen und [`ClaudeAgentOptions`](/docs/de/agent-sdk/python#claudeagentoptions) / [`Options`](/docs/de/agent-sdk/typescript#options) für die Syntax.221Wenn eine dieser Grenzen erreicht wird, gibt das SDK eine `ResultMessage` mit einem entsprechenden Fehler-Subtyp (`error_max_turns` oder `error_max_budget_usd`) zurück. Siehe [Handle the result](#handle-the-result) für die Überprüfung dieser Subtypen und [`ClaudeAgentOptions`](/docs/de/agent-sdk/python#claudeagentoptions) / [`Options`](/docs/de/agent-sdk/typescript#options) für die Syntax.

222 222 


224 224 

225Mit [Streaming-Eingabe](/docs/de/agent-sdk/streaming-vs-single-mode) bleibt eine Nachricht, die noch in der Warteschlange steht, wenn ein Durchlauf bei der max-turns-Grenze endet, in der Warteschlange. Claude Code fügt sie nicht zum letzten Modellaufruf dieses Durchlaufs hinzu. Es startet einen neuen Durchlauf für die Nachricht, und die max-turns-Zählung beginnt für diesen Durchlauf von vorne. Das Budget-Gesamtbudget wird über Nachrichten hinweg kumuliert, und sobald die Ausgaben `maxBudgetUsd` erreichen, enden spätere Nachrichten in derselben Konversation mit dem `error_max_budget_usd`-Ergebnis. Ein [`/clear`](/docs/de/agent-sdk/cost-tracking) startet das Budget neu.225Mit [Streaming-Eingabe](/docs/de/agent-sdk/streaming-vs-single-mode) bleibt eine Nachricht, die noch in der Warteschlange steht, wenn ein Durchlauf bei der max-turns-Grenze endet, in der Warteschlange. Claude Code fügt sie nicht zum letzten Modellaufruf dieses Durchlaufs hinzu. Es startet einen neuen Durchlauf für die Nachricht, und die max-turns-Zählung beginnt für diesen Durchlauf von vorne. Das Budget-Gesamtbudget wird über Nachrichten hinweg kumuliert, und sobald die Ausgaben `maxBudgetUsd` erreichen, enden spätere Nachrichten in derselben Konversation mit dem `error_max_budget_usd`-Ergebnis. Ein [`/clear`](/docs/de/agent-sdk/cost-tracking) startet das Budget neu.

226 226 

227<h4 id="budget-headroom">

228 Budget-Spielraum

229</h4>

230 

231Claude Code vergleicht die Ausgaben erst nach dem Eintreffen der Modellantworten mit der Obergrenze `max_budget_usd` / `maxBudgetUsd`, da sich die Kosten jeder Antwort aus der Token-Nutzung ergeben, die die API mit ihr zurückgibt. Die Antwort, die die Obergrenze erreicht, wird dennoch abgeschlossen und zählt zu [`total_cost_usd`](/docs/de/agent-sdk/cost-tracking#get-the-total-cost-of-a-query). Die Ausgaben können die Obergrenze daher um bis zu die Kosten dieser einen Antwort überschreiten, zuzüglich dessen, was zu diesem Zeitpunkt noch laufende Subagenten ausgeben, bevor sie stoppen. Planen Sie dafür beim Festlegen der Obergrenze Spielraum ein.

232 

227<h3 id="effort-level">233<h3 id="effort-level">

228 Anstrengungsgrad234 Anstrengungsgrad

229</h3>235</h3>

Details

146| `auto` | Modellklassifizierte Genehmigungen | Ein Modellklassifizierer überprüft Aktionen wie Shell-Befehle und Netzwerkanfragen und genehmigt oder blockiert jede überprüfte Aktion. Siehe [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) für Verfügbarkeit und die Entscheidungsreihenfolge |146| `auto` | Modellklassifizierte Genehmigungen | Ein Modellklassifizierer überprüft Aktionen wie Shell-Befehle und Netzwerkanfragen und genehmigt oder blockiert jede überprüfte Aktion. Siehe [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) für Verfügbarkeit und die Entscheidungsreihenfolge |

147 147 

148<Warning>148<Warning>

149 **Subagent-Vererbung:** Ein Subagent wird im Berechtigungsmodus der übergeordneten Sitzung ausgeführt, es sei denn, Sie legen `permissionMode` auf seiner [`AgentDefinition`](/docs/de/agent-sdk/typescript#agentdefinition) fest und die übergeordnete Sitzung befindet sich im `default`-, `dontAsk`- oder `plan`-Modus. Auch dann wendet Claude Code nie einen `"bypassPermissions"`-Wert an. Ein Subagent wird nur dann im `bypassPermissions`-Modus ausgeführt, wenn die übergeordnete Sitzung selbst dies tut. Die `bypassPermissions`-Ausnahme erfordert Claude Code v2.1.267 oder später.149 **Subagent-Vererbung:** Ein Subagent wird im Berechtigungsmodus der übergeordneten Sitzung ausgeführt, es sei denn, Sie legen `permissionMode` auf seiner [`AgentDefinition`](/docs/de/agent-sdk/typescript#agentdefinition) fest und die übergeordnete Sitzung befindet sich im `default`-, `dontAsk`- oder `plan`-Modus. Auch dann wendet Claude Code nie einen `"bypassPermissions"`-Wert an und wendet einen `"auto"`-Wert nur dann an, wenn [der Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) für diesen Subagenten verfügbar ist. Ein Subagent wird nur dann im `bypassPermissions`-Modus ausgeführt, wenn die übergeordnete Sitzung selbst dies tut. Die `bypassPermissions`-Ausnahme erfordert Claude Code v2.1.267 oder später.

150 150 

151 Subagents können unterschiedliche Systemaufforderungen und weniger eingeschränktes Verhalten als Ihr Hauptagent haben, daher gewährt die Vererbung von `bypassPermissions` ihnen vollständigen, autonomen Systemzugriff. Die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves), gelten weiterhin.151 Subagents können unterschiedliche Systemaufforderungen und weniger eingeschränktes Verhalten als Ihr Hauptagent haben, daher gewährt die Vererbung von `bypassPermissions` ihnen vollständigen, autonomen Systemzugriff. Die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves), gelten weiterhin.

152</Warning>152</Warning>

Details

928| `resume` | `str \| None` | `None` | Sitzungs-ID zum Fortsetzen |928| `resume` | `str \| None` | `None` | Sitzungs-ID zum Fortsetzen |

929| `session_id` | `str \| None` | `None` | Verwenden Sie eine bestimmte Sitzungs-ID statt einer automatisch generierten. Muss eine gültige UUID sein. Kann nicht mit `continue_conversation` oder `resume` kombiniert werden, es sei denn, `fork_session` ist auch gesetzt |929| `session_id` | `str \| None` | `None` | Verwenden Sie eine bestimmte Sitzungs-ID statt einer automatisch generierten. Muss eine gültige UUID sein. Kann nicht mit `continue_conversation` oder `resume` kombiniert werden, es sei denn, `fork_session` ist auch gesetzt |

930| `max_turns` | `int \| None` | `None` | Maximale Anzahl agentischer Turns (Tool-Use-Rundläufe) |930| `max_turns` | `int \| None` | `None` | Maximale Anzahl agentischer Turns (Tool-Use-Rundläufe) |

931| `max_budget_usd` | `float \| None` | `None` | Stoppen Sie die Abfrage, wenn die clientseitige Kostenschätzung diesen USD-Wert erreicht. Zählt nur die Ausgaben des Aufrufs selbst; Gesamtwerte aus einer fortgesetzten Sitzung zählen nicht. Für Einschränkungen zur Genauigkeit und zum Zurücksetzungsverhalten siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) |931| `max_budget_usd` | `float \| None` | `None` | Stoppen Sie die Abfrage, wenn die clientseitige Kostenschätzung diesen USD-Wert erreicht. Die Schätzung kann diesen Wert überschreiten, lassen Sie daher [Spielraum](/docs/de/agent-sdk/agent-loop#budget-headroom). Zählt nur die Ausgaben des Aufrufs selbst; Gesamtwerte aus einer fortgesetzten Sitzung zählen nicht. Für Einschränkungen zur Genauigkeit und zum Zurücksetzungsverhalten siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) |

932| `disallowed_tools` | `list[str]` | `[]` | Tools, die verweigert werden. Ein einfacher Name wie `"Bash"` entfernt das Tool aus Claudes Kontext. Eine eingeschränkte Regel wie `"Bash(rm *)"` lässt das Tool verfügbar und verweigert übereinstimmende Aufrufe in jedem Berechtigungsmodus, einschließlich `bypassPermissions`, für den Befehl [wie geschrieben](/docs/de/permissions#bash-rule-limits). Siehe [Berechtigungen](/docs/de/agent-sdk/permissions#allow-and-deny-rules) |932| `disallowed_tools` | `list[str]` | `[]` | Tools, die verweigert werden. Ein einfacher Name wie `"Bash"` entfernt das Tool aus Claudes Kontext. Eine eingeschränkte Regel wie `"Bash(rm *)"` lässt das Tool verfügbar und verweigert übereinstimmende Aufrufe in jedem Berechtigungsmodus, einschließlich `bypassPermissions`, für den Befehl [wie geschrieben](/docs/de/permissions#bash-rule-limits). Siehe [Berechtigungen](/docs/de/agent-sdk/permissions#allow-and-deny-rules) |

933| `enable_file_checkpointing` | `bool` | `False` | Aktivieren Sie die Dateiänderungsverfolgung zum Zurückspulen. Siehe [Datei-Checkpointing](/docs/de/agent-sdk/file-checkpointing) |933| `enable_file_checkpointing` | `bool` | `False` | Aktivieren Sie die Dateiänderungsverfolgung zum Zurückspulen. Siehe [Datei-Checkpointing](/docs/de/agent-sdk/file-checkpointing) |

934| `model` | `str \| None` | `None` | Claude-Modell-Alias oder vollständiger Modellname. Siehe [akzeptierte Werte und anbieterspezifische IDs](/docs/de/model-config#available-models) |934| `model` | `str \| None` | `None` | Claude-Modell-Alias oder vollständiger Modellname. Siehe [akzeptierte Werte und anbieterspezifische IDs](/docs/de/model-config#available-models) |


987```987```

988 988 

989* `API_TIMEOUT_MS`: Timeout pro Anfrage auf dem Anthropic-Client in Millisekunden. Standard `600000`. Gilt für die Hauptschleife und alle Subagenten.989* `API_TIMEOUT_MS`: Timeout pro Anfrage auf dem Anthropic-Client in Millisekunden. Standard `600000`. Gilt für die Hauptschleife und alle Subagenten.

990* `CLAUDE_CODE_MAX_RETRIES`: Maximale Anzahl von API-Wiederholungsversuchen. Standard `10`, begrenzt auf `15`. Jeder Wiederholungsversuch erhält sein eigenes `API_TIMEOUT_MS`-Fenster, daher beträgt die Gesamtdauer im ungünstigsten Fall ungefähr `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` plus Backoff. Für unbeaufsichtigte Läufe, die längere Ausfälle abwarten müssen, setzen Sie [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/de/errors#tune-retry-behavior): Damit werden vorübergehende Kapazitätsfehler unbegrenzt erneut versucht, und ab Claude Code v2.1.199 wird der Standard für andere vorübergehende Fehler auf `300` erhöht und die Obergrenze für diese Variable entfernt.990* `CLAUDE_CODE_MAX_RETRIES`: Maximale Anzahl von API-Wiederholungsversuchen. Standard `10`, begrenzt auf `15`. Jeder Wiederholungsversuch erhält sein eigenes `API_TIMEOUT_MS`-Fenster.

991 

992 Für unbeaufsichtigte Läufe, die längere Ausfälle abwarten müssen, setzen Sie [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/de/errors#tune-retry-behavior): Damit werden vorübergehende Kapazitätsfehler unbegrenzt erneut versucht, und ab Claude Code v2.1.199 wird der Standard für andere vorübergehende Fehler auf `300` erhöht und die Obergrenze für diese Variable entfernt.

991* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: Stall-Watchdog für Subagenten. Während der Stream-Watchdog eingeschaltet ist, beträgt der Standard `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 Minuten, was `600000` ergibt, es sei denn, Sie erhöhen diese Variable. Bei ausgeschaltetem Stream-Watchdog ist der Standard `600000`. Vor v2.1.257 war der Standard immer `600000`.993* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: Stall-Watchdog für Subagenten. Während der Stream-Watchdog eingeschaltet ist, beträgt der Standard `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 Minuten, was `600000` ergibt, es sei denn, Sie erhöhen diese Variable. Bei ausgeschaltetem Stream-Watchdog ist der Standard `600000`. Vor v2.1.257 war der Standard immer `600000`.

992 994 

993 Der Timer wird bei jedem Stream-Ereignis zurückgesetzt. Bei einem Stillstand bricht Claude Code den Subagenten ab und meldet den Stillstand an den übergeordneten Agenten. Bei einem Hintergrund-Subagenten markiert es außerdem die Aufgabe als fehlgeschlagen und hängt ein eventuelles Teilergebnis an.995 Der Timer wird bei jedem Stream-Ereignis zurückgesetzt. Bei einem Stillstand bricht Claude Code den Subagenten ab und meldet den Stillstand an den übergeordneten Agenten. Bei einem Hintergrund-Subagenten markiert es außerdem die Aufgabe als fehlgeschlagen und hängt ein eventuelles Teilergebnis an.


3327{3329{

3328 "url": str, # Die URL, von der Inhalt abgerufen werden soll3330 "url": str, # Die URL, von der Inhalt abgerufen werden soll

3329 "prompt": str, # Der Prompt, der auf den abgerufenen Inhalt angewendet werden soll3331 "prompt": str, # Der Prompt, der auf den abgerufenen Inhalt angewendet werden soll

3332 "offset": int | None, # Anzahl der Zeichen, die ab dem Anfang der Seite übersprungen werden. Erfordert Python Agent SDK 0.2.164 oder später

3330}3333}

3331```3334```

3332 3335 

Details

323 Subagent-Aufrufe erkennen323 Subagent-Aufrufe erkennen

324</h2>324</h2>

325 325 

326Claude ruft Subagents über das Agent-Tool auf. Um zu erkennen, wenn ein Subagent aufgerufen wird, suchen Sie nach `tool_use`-Blöcken, bei denen `name` gleich `"Agent"` ist. Nachrichten aus dem Kontext eines Subagents enthalten ein `parent_tool_use_id`-Feld.326Claude ruft Subagenten über das Agent-Tool auf. Um zu erkennen, wenn ein Subagent aufgerufen wird, suchen Sie nach `tool_use`-Blöcken, bei denen `name` gleich `"Agent"` ist.

327 

328Nachrichten aus dem Kontext eines Subagenten enthalten ein `parent_tool_use_id`-Feld. In TypeScript enthält außerdem jede Assistenten- und Benutzernachricht, die ein Subagent erzeugt, [`agent_id`](/docs/de/agent-sdk/typescript#sdkassistantmessage): die `task_id` der [Task-Ereignisse](/docs/de/agent-sdk/typescript#sdktaskstartedmessage) dieses Subagenten. `agent_id` erfordert TypeScript Agent SDK v0.3.292 oder höher.

327 329 

328<Note>330<Note>

329 Das Tool wird in `tool_use`-Blöcken als `"Agent"` angezeigt, aber in der `system:init`-Toolsliste als `"Task"`. Vor Claude Code v2.1.63 benannten `tool_use`-Blöcke es ebenfalls `"Task"`. Um die Erkennung über SDK-Versionen hinweg funktionsfähig zu halten, stimmen Sie beide Werte in `block.name` ab.331 Das Tool wird in `tool_use`-Blöcken als `"Agent"` angezeigt, aber in der `system:init`-Toolsliste als `"Task"`. Vor Claude Code v2.1.63 benannten `tool_use`-Blöcke es ebenfalls `"Task"`. Um die Erkennung über SDK-Versionen hinweg funktionsfähig zu halten, stimmen Sie beide Werte in `block.name` ab.


331 333 

332Die Nachrichtenstruktur unterscheidet sich zwischen SDKs. In Python greifen Sie direkt über `message.content` auf Inhaltsblöcke zu. In TypeScript umhüllt `SDKAssistantMessage` die Claude-API-Nachricht, daher greifen Sie über `message.message.content` auf Inhalte zu.334Die Nachrichtenstruktur unterscheidet sich zwischen SDKs. In Python greifen Sie direkt über `message.content` auf Inhaltsblöcke zu. In TypeScript umhüllt `SDKAssistantMessage` die Claude-API-Nachricht, daher greifen Sie über `message.message.content` auf Inhalte zu.

333 335 

334Dieses Beispiel durchläuft gestreamte Nachrichten und protokolliert, wenn ein Subagent aufgerufen wird und wenn nachfolgende Nachrichten aus dem Ausführungskontext dieses Subagents stammen.336Dieses Beispiel durchläuft gestreamte Nachrichten und protokolliert, wenn ein Subagent aufgerufen wird und wenn nachfolgende Nachrichten aus dem Ausführungskontext dieses Subagenten stammen. Die TypeScript-Version protokolliert außerdem die `agent_id` jeder Subagent-Nachricht, die eine solche enthält.

335 337 

336<CodeGroup>338<CodeGroup>

337 ```python Python theme={null}339 ```python Python theme={null}


403 // Check if this message is from within a subagent's context405 // Check if this message is from within a subagent's context

404 if (msg.parent_tool_use_id) {406 if (msg.parent_tool_use_id) {

405 console.log(" (running inside subagent)");407 console.log(" (running inside subagent)");

408 // On assistant and user messages, agent_id matches the task_id

409 // on that subagent's task_started and other task events

410 if (msg.agent_id) {

411 console.log(` agent_id: ${msg.agent_id}`);

412 }

406 }413 }

407 414 

408 if ("result" in message) {415 if ("result" in message) {

Details

569| `includePartialMessages` | `boolean` | `false` | Ereignisse für Teilnachrichten einbeziehen |569| `includePartialMessages` | `boolean` | `false` | Ereignisse für Teilnachrichten einbeziehen |

570| `loadTimeoutMs` | `number` | `60000` | *Alpha.* Timeout in Millisekunden für jeden Aufruf von `sessionStore.load()` und `sessionStore.listSubkeys()` während der Materialisierung beim Fortsetzen. Wenn der Adapter innerhalb dieses Zeitfensters nicht abschließt, schlägt die Abfrage fehl, anstatt zu hängen. Wird ignoriert, wenn `sessionStore` nicht gesetzt ist |570| `loadTimeoutMs` | `number` | `60000` | *Alpha.* Timeout in Millisekunden für jeden Aufruf von `sessionStore.load()` und `sessionStore.listSubkeys()` während der Materialisierung beim Fortsetzen. Wenn der Adapter innerhalb dieses Zeitfensters nicht abschließt, schlägt die Abfrage fehl, anstatt zu hängen. Wird ignoriert, wenn `sessionStore` nicht gesetzt ist |

571| `managedSettings` | `Settings` | `undefined` | Einstellungen auf Richtlinienebene, die Ihr Host-Prozess der gestarteten Sitzung bereitstellt. Auf Rechnern mit von Admins bereitgestellten verwalteten Einstellungen ignoriert Claude Code diese, sofern nicht die verwaltete Quelle des Admins mit der höchsten Priorität `parentSettingsBehavior: 'merge'` setzt, und führt sie nie zusammen, solange ein [`policyHelper`](/docs/de/settings-reference#policyhelper) verwaltete Einstellungen bereitstellt. Zusammengeführte Werte durchlaufen einen Filter, der nur Einschränkungen zulässt; [Übergeordnete Einstellungen einschränken](/docs/de/claude-apps-gateway#restrict-parent-settings) beschreibt, was der Filter zulässt, sowie die `allowManaged*Only`-Sperren. Bei einem Host, der [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/de/env-vars) setzt, werden stattdessen drei Schlüssel direkt aus dieser Payload gelesen: seine [Modellkonfiguration](/docs/de/model-config#restrict-model-selection) ab Claude Code v2.1.222, [`modelPricing`](/docs/de/settings-reference#modelpricing), wenn keine verwaltete Quelle es setzt, ab v2.1.246, und sein `ENABLE_TOOL_SEARCH`-Umgebungseintrag ab v2.1.247 |571| `managedSettings` | `Settings` | `undefined` | Einstellungen auf Richtlinienebene, die Ihr Host-Prozess der gestarteten Sitzung bereitstellt. Auf Rechnern mit von Admins bereitgestellten verwalteten Einstellungen ignoriert Claude Code diese, sofern nicht die verwaltete Quelle des Admins mit der höchsten Priorität `parentSettingsBehavior: 'merge'` setzt, und führt sie nie zusammen, solange ein [`policyHelper`](/docs/de/settings-reference#policyhelper) verwaltete Einstellungen bereitstellt. Zusammengeführte Werte durchlaufen einen Filter, der nur Einschränkungen zulässt; [Übergeordnete Einstellungen einschränken](/docs/de/claude-apps-gateway#restrict-parent-settings) beschreibt, was der Filter zulässt, sowie die `allowManaged*Only`-Sperren. Bei einem Host, der [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/de/env-vars) setzt, werden stattdessen drei Schlüssel direkt aus dieser Payload gelesen: seine [Modellkonfiguration](/docs/de/model-config#restrict-model-selection) ab Claude Code v2.1.222, [`modelPricing`](/docs/de/settings-reference#modelpricing), wenn keine verwaltete Quelle es setzt, ab v2.1.246, und sein `ENABLE_TOOL_SEARCH`-Umgebungseintrag ab v2.1.247 |

572| `maxBudgetUsd` | `number` | `undefined` | Die Abfrage stoppen, wenn die clientseitige Kostenschätzung diesen USD-Wert erreicht. Zählt nur die eigenen Ausgaben des Aufrufs; aus einer fortgesetzten Sitzung wiederhergestellte Summen zählen nicht. Zu Einschränkungen der Genauigkeit und zum Zurücksetzverhalten siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) |572| `maxBudgetUsd` | `number` | `undefined` | Die Abfrage beenden, wenn die clientseitige Kostenschätzung diesen USD-Wert erreicht. Die Schätzung kann diesen Wert überschreiten, [lassen Sie also Spielraum](/docs/de/agent-sdk/agent-loop#budget-headroom). Zählt nur die eigenen Ausgaben des Aufrufs; aus einer fortgesetzten Sitzung wiederhergestellte Summen zählen nicht. Zu Einschränkungen der Genauigkeit und zum Zurücksetzverhalten siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) |

573| `maxThinkingTokens` | `number` | `undefined` | *Veraltet:* Verwenden Sie stattdessen `thinking`. Maximale Token für den Thinking-Prozess |573| `maxThinkingTokens` | `number` | `undefined` | *Veraltet:* Verwenden Sie stattdessen `thinking`. Maximale Token für den Thinking-Prozess |

574| `maxTurns` | `number` | `undefined` | Maximale Anzahl agentischer Turns (Tool-Use-Roundtrips) |574| `maxTurns` | `number` | `undefined` | Maximale Anzahl agentischer Turns (Tool-Use-Roundtrips) |

575| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | MCP-Server-Konfigurationen |575| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | MCP-Server-Konfigurationen |


631```631```

632 632 

633* `API_TIMEOUT_MS`: Timeout pro Anfrage im Anthropic-Client, in Millisekunden. Standard `600000`. Gilt für die Hauptschleife und alle Subagenten.633* `API_TIMEOUT_MS`: Timeout pro Anfrage im Anthropic-Client, in Millisekunden. Standard `600000`. Gilt für die Hauptschleife und alle Subagenten.

634* `CLAUDE_CODE_MAX_RETRIES`: maximale Anzahl von API-Wiederholungsversuchen. Standard `10`, begrenzt auf `15`. Jeder Wiederholungsversuch erhält ein eigenes `API_TIMEOUT_MS`-Zeitfenster, sodass die Gesamtlaufzeit im ungünstigsten Fall ungefähr `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` zuzüglich Backoff beträgt. Für unbeaufsichtigte Ausführungen, die längere Ausfälle abwarten müssen, setzen Sie [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/de/errors#tune-retry-behavior): Damit werden vorübergehende Kapazitätsfehler unbegrenzt erneut versucht, und ab Claude Code v2.1.199 wird der Standard für andere vorübergehende Fehler auf `300` angehoben und die Obergrenze dieser Variable aufgehoben.634* `CLAUDE_CODE_MAX_RETRIES`: maximale Anzahl an API-Wiederholungsversuchen. Standard `10`, begrenzt auf `15`. Jeder Wiederholungsversuch erhält ein eigenes `API_TIMEOUT_MS`-Zeitfenster.

635 

636 Für unbeaufsichtigte Läufe, die längere Ausfälle überstehen müssen, setzen Sie [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/de/errors#tune-retry-behavior): Damit werden vorübergehende Kapazitätsfehler unbegrenzt erneut versucht, und ab Claude Code v2.1.199 wird der Standardwert für andere vorübergehende Fehler auf `300` angehoben und die Obergrenze dieser Variable aufgehoben.

635* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: Watchdog für hängende Subagenten. Solange der Stream-Watchdog aktiv ist, beträgt der Standard `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 Minuten, was `600000` ergibt, sofern Sie diese Variable nicht erhöhen. Bei ausgeschaltetem Stream-Watchdog beträgt der Standard `600000`. Vor v2.1.257 betrug der Standard immer `600000`.637* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: Watchdog für hängende Subagenten. Solange der Stream-Watchdog aktiv ist, beträgt der Standard `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 Minuten, was `600000` ergibt, sofern Sie diese Variable nicht erhöhen. Bei ausgeschaltetem Stream-Watchdog beträgt der Standard `600000`. Vor v2.1.257 betrug der Standard immer `600000`.

636 638 

637 Der Timer wird bei jedem Stream-Ereignis zurückgesetzt. Bei einem Hänger bricht Claude Code den Subagenten ab und meldet dies an den übergeordneten Agenten. Bei einem Hintergrund-Subagenten markiert es außerdem die Aufgabe als fehlgeschlagen und hängt ein eventuelles Teilergebnis an.639 Der Timer wird bei jedem Stream-Ereignis zurückgesetzt. Bei einem Hänger bricht Claude Code den Subagenten ab und meldet dies an den übergeordneten Agenten. Bei einem Hintergrund-Subagenten markiert es außerdem die Aufgabe als fehlgeschlagen und hängt ein eventuelles Teilergebnis an.


1557 type: "assistant";1559 type: "assistant";

1558 uuid: UUID;1560 uuid: UUID;

1559 session_id: string;1561 session_id: string;

1560 message: BetaMessage; // Aus Anthropic SDK1562 message: BetaMessage; // From Anthropic SDK

1561 parent_tool_use_id: string | null;1563 parent_tool_use_id: string | null;

1562 error?: SDKAssistantMessageError;1564 error?: SDKAssistantMessageError;

1563 aborted?: true;1565 aborted?: true;

1566 agent_id?: string;

1564 timestamp?: string;1567 timestamp?: string;

1565 context_usage?: SDKContextUsage;1568 context_usage?: SDKContextUsage;

1566 user_message_uuid?: string;1569 user_message_uuid?: string;


1580 1583 

1581`aborted` ist `true`, wenn ein Interrupt oder Abbruch die Assistenten-Nachricht vor Abschluss des Streams abgeschnitten hat: Die Nachricht hat keinen `stop_reason` und der Inhalt kann mitten im Wort enden. Das Feld fehlt bei normal abgeschlossenen Nachrichten. Es erfordert Agent SDK v0.3.214 oder später.1584`aborted` ist `true`, wenn ein Interrupt oder Abbruch die Assistenten-Nachricht vor Abschluss des Streams abgeschnitten hat: Die Nachricht hat keinen `stop_reason` und der Inhalt kann mitten im Wort enden. Das Feld fehlt bei normal abgeschlossenen Nachrichten. Es erfordert Agent SDK v0.3.214 oder später.

1582 1585 

1586`agent_id` identifiziert den Subagenten, der die Nachricht erzeugt hat, und fehlt bei Nachrichten des Hauptthreads. Der Wert entspricht der `task_id` in den [`task_started`](#sdktaskstartedmessage)- und anderen Task-Ereignissen dieses Subagenten und bleibt unverändert, wenn der Subagent [fortgesetzt](/docs/de/agent-sdk/subagents#resume-subagents) wird. Das Feld erfordert Agent SDK v0.3.292 oder höher.

1587 

1588Ordnen Sie die Nachrichten eines Subagenten seinen Task-Ereignissen über `agent_id` zu, statt die `parent_tool_use_id` einer Nachricht mit der `tool_use_id` eines Task-Ereignisses zu paaren. Wenn ein Tool-Aufruf den Subagenten fortsetzt, tragen die Task-Ereignisse die `tool_use_id` dieses Aufrufs, während die Nachrichten die `parent_tool_use_id` des Tool-Aufrufs behalten, der den Subagenten ursprünglich gestartet hat, sodass die beiden nicht mehr übereinstimmen.

1589 

1583Claude Code setzt `user_message_uuid` und `user_message_uuids` auf die erste Assistenten-Nachricht des Turns unter den Bedingungen in [`user_message_uuid`](#user_message_uuid). Wenn Claude Code einen Turn erneut ausführt, den ein Neustart unterbrochen hat, tragen die Assistenten-Nachrichten des erneuten Durchlaufs, die diese Felder tragen, auch [`resume_reason`](#resume_reason).1590Claude Code setzt `user_message_uuid` und `user_message_uuids` auf die erste Assistenten-Nachricht des Turns unter den Bedingungen in [`user_message_uuid`](#user_message_uuid). Wenn Claude Code einen Turn erneut ausführt, den ein Neustart unterbrochen hat, tragen die Assistenten-Nachrichten des erneuten Durchlaufs, die diese Felder tragen, auch [`resume_reason`](#resume_reason).

1584 1591 

1585`timestamp` ist die ISO-8601-Zeit, wenn die Generierung des Nachrichteninhalts auf dem Prozess, der ihn erzeugt hat, beendet wurde. Der Wert stammt von der Uhr dieser Maschine, daher verwenden Sie ihn nur zur Anzeige und ordnen Sie Nachrichten nicht danach. Ein API-Turn kann mehrere Assistenten-Nachrichten erzeugen, die eine `message.id` teilen, jede mit ihrem eigenen `timestamp`. Wenn das Feld fehlt, greifen Sie auf die Zeit zurück, zu der Sie die Nachricht erhalten haben.1592`timestamp` ist die ISO-8601-Zeit, wenn die Generierung des Nachrichteninhalts auf dem Prozess, der ihn erzeugt hat, beendet wurde. Der Wert stammt von der Uhr dieser Maschine, daher verwenden Sie ihn nur zur Anzeige und ordnen Sie Nachrichten nicht danach. Ein API-Turn kann mehrere Assistenten-Nachrichten erzeugen, die eine `message.id` teilen, jede mit ihrem eigenen `timestamp`. Wenn das Feld fehlt, greifen Sie auf die Zeit zurück, zu der Sie die Nachricht erhalten haben.


1597 type: "user";1604 type: "user";

1598 uuid?: UUID;1605 uuid?: UUID;

1599 session_id?: string;1606 session_id?: string;

1607 agent_id?: string;

1600 message: MessageParam; // From Anthropic SDK1608 message: MessageParam; // From Anthropic SDK

1601 pasted_content?: MessageParam["content"][];1609 pasted_content?: MessageParam["content"][];

1602 parent_tool_use_id: string | null;1610 parent_tool_use_id: string | null;


1636};1644};

1637```1645```

1638 1646 

1647Eine Benutzernachricht, die ein Subagent erzeugt, etwa das `tool_result` für einen seiner eigenen Tool-Aufrufe, trägt `agent_id`. Siehe [`SDKAssistantMessage`](#sdkassistantmessage), wo das Feld und seine Versionsanforderung definiert sind.

1648 

1639Bei einer Nachricht, die einen `tool_result`-Block enthält, ist `tool_use_result` das strukturierte Ausgabeobjekt des Tools und nicht der an das Modell gesendete Text. Seine Form hängt von dem Tool ab, das im zugehörigen `tool_use`-Block genannt wird, daher ist das Feld als `unknown` typisiert; die integrierten Formen sind unter [Tool-Ausgabetypen](#tool-output-types) aufgeführt. Diese Ergebnisse erfordern eine Behandlung über ihre aufgeführte Form hinaus:1649Bei einer Nachricht, die einen `tool_result`-Block enthält, ist `tool_use_result` das strukturierte Ausgabeobjekt des Tools und nicht der an das Modell gesendete Text. Seine Form hängt von dem Tool ab, das im zugehörigen `tool_use`-Block genannt wird, daher ist das Feld als `unknown` typisiert; die integrierten Formen sind unter [Tool-Ausgabetypen](#tool-output-types) aufgeführt. Diese Ergebnisse erfordern eine Behandlung über ihre aufgeführte Form hinaus:

1640 1650 

1641* Das `Agent`-Tool: `tool_use_result` ist [`AgentOutput`](#agent-2). Rendern Sie daraus, statt den `tool_result`-Text zu parsen. Der `content` eines `completed`-Ergebnisses enthält den Bericht des Subagenten oder, bei einem Subagenten, dessen Bericht über einen `SubagentHandback`-Tool-Aufruf läuft, anstelle des Berichts einen kurzen Hinweis auf diese Übergabe. Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) ab Claude Code v2.1.271 berichtet jeder Subagent, der ein `completed`-Ergebnis erzeugt, auf diese Weise, sofern er kein [Fork](/docs/de/sub-agents#fork-the-current-conversation) ist, und Claude erhält den Bericht als separate Nachricht vom Subagenten.1651* Das `Agent`-Tool: `tool_use_result` ist [`AgentOutput`](#agent-2). Rendern Sie daraus, statt den `tool_result`-Text zu parsen. Der `content` eines `completed`-Ergebnisses enthält den Bericht des Subagenten oder, bei einem Subagenten, dessen Bericht über einen `SubagentHandback`-Tool-Aufruf läuft, anstelle des Berichts einen kurzen Hinweis auf diese Übergabe. Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) ab Claude Code v2.1.271 berichtet jeder Subagent, der ein `completed`-Ergebnis erzeugt, auf diese Weise, sofern er kein [Fork](/docs/de/sub-agents#fork-the-current-conversation) ist, und Claude erhält den Bericht als separate Nachricht vom Subagenten.


1992 `SDKPartialAssistantMessage`2002 `SDKPartialAssistantMessage`

1993</h3>2003</h3>

1994 2004 

1995Streaming-Teilnachricht (nur wenn `includePartialMessages` true ist). Das `parent_tool_use_id`-Feld ist immer `null`: Stream-Ereignisse werden nur für die Hauptsitzung ausgegeben. Für die Zuordnung von Subagenten verwenden Sie vollständige Nachrichten, die `parent_tool_use_id` enthalten, oder aktivieren Sie [`forwardSubagentText`](#options), um Subagenten-Text und Thinking als vollständige Nachrichten zu erhalten.2005Partielle Streaming-Nachricht (nur wenn `includePartialMessages` true ist).

2006 

2007Das Feld `parent_tool_use_id` ist immer `null`: Stream-Ereignisse werden nur für die Hauptsitzung ausgegeben. Zur Zuordnung zu Subagenten verwenden Sie vollständige Nachrichten, die [`agent_id`](#sdkassistantmessage) und `parent_tool_use_id` tragen, oder aktivieren Sie [`forwardSubagentText`](#options), um Text und Thinking von Subagenten als vollständige Nachrichten zu erhalten.

1996 2008 

1997```typescript theme={null}2009```typescript theme={null}

1998type SDKPartialAssistantMessage = {2010type SDKPartialAssistantMessage = {


3416type WebFetchInput = {3428type WebFetchInput = {

3417 url: string;3429 url: string;

3418 prompt: string;3430 prompt: string;

3431 offset?: number;

3419};3432};

3420```3433```

3421 3434 

3422Ruft Inhalte von einer URL ab und verarbeitet sie mit einem KI-Modell.3435Ruft Inhalte von einer URL ab und verarbeitet sie mit einem KI-Modell.

3423 3436 

3437`offset` ist die Anzahl der Zeichen, die ab dem Anfang der Seite übersprungen werden. Claude setzt es, um eine lange Seite weiterzulesen. Das Feld erfordert Agent SDK v0.3.290 oder später.

3438 

3424<h3 id="websearch">3439<h3 id="websearch">

3425 WebSearch3440 WebSearch

3426</h3>3441</h3>


5775 task_type?: string;5790 task_type?: string;

5776 is_backgrounded?: boolean;5791 is_backgrounded?: boolean;

5777 spawn_depth?: number;5792 spawn_depth?: number;

5793 parent_task_id?: string;

5778 ambient?: boolean;5794 ambient?: boolean;

5779 uuid: UUID;5795 uuid: UUID;

5780 session_id: string;5796 session_id: string;


5792 5808 

5793Ein [fortgesetzter Subagent](/docs/de/agent-sdk/subagents#resume-subagents) meldet immer `is_backgrounded: true`, weil Claude Code jeden fortgesetzten Subagenten im Hintergrund ausführt. Wenn eine Vordergrund-Aufgabe später in den Hintergrund wechselt, meldet Claude Code den neuen `is_backgrounded`-Wert in einer [`task_updated`](#sdktaskupdatedmessage)-Nachricht, anstatt eine zweite `task_started` zu senden.5809Ein [fortgesetzter Subagent](/docs/de/agent-sdk/subagents#resume-subagents) meldet immer `is_backgrounded: true`, weil Claude Code jeden fortgesetzten Subagenten im Hintergrund ausführt. Wenn eine Vordergrund-Aufgabe später in den Hintergrund wechselt, meldet Claude Code den neuen `is_backgrounded`-Wert in einer [`task_updated`](#sdktaskupdatedmessage)-Nachricht, anstatt eine zweite `task_started` zu senden.

5794 5810 

5811`parent_task_id` enthält die `task_id` des Subagenten, der diese Aufgabe gestartet hat. Verwenden Sie es, um jede Aufgabe unter dem Subagenten zu gruppieren, der sie gestartet hat. Claude Code setzt es bei Subagenten-, Bash- und [Monitor](#monitor)-Aufgaben. Das Feld erfordert Agent SDK v0.3.292 oder später. Es fehlt, wenn:

5812 

5813* Der Hauptthread die Aufgabe gestartet hat

5814* Claude Code die übergeordnete Aufgabe nicht mehr verfolgt

5815* Ein [Teammitglied](/docs/de/agent-teams) oder ein Agent innerhalb eines Workflows die Aufgabe gestartet hat

5816 

5817Die übergeordnete Aufgabe kann eine Vordergrund-Aufgabe oder eine bereits beendete Aufgabe sein, behandeln Sie daher eine ID, die Sie nicht erkennen, so, als gäbe es keine übergeordnete Aufgabe.

5818 

5795<h3 id="sdktaskprogressmessage">5819<h3 id="sdktaskprogressmessage">

5796 `SDKTaskProgressMessage`5820 `SDKTaskProgressMessage`

5797</h3>5821</h3>


5848 `SDKBackgroundTasksChangedMessage`5872 `SDKBackgroundTasksChangedMessage`

5849</h3>5873</h3>

5850 5874 

5851Wird ausgegeben, wenn sich die Menge der aktiven Hintergrundaufgaben ändert: eine Aufgabe startet, wird abgeschlossen, wird beendet, ein Vordergrund-Agent wird in den Hintergrund verschoben, oder das `description`- oder `ambient`-Feld einer Aufgabe ändert sich.5875Wird ausgegeben, wenn sich die Menge der aktiven Hintergrundaufgaben ändert: eine Aufgabe startet, wird abgeschlossen oder wird beendet; ein Vordergrund-Agent wird in den Hintergrund verschoben; oder das `description`-, `ambient`- oder `parent_task_id`-Feld einer Aufgabe ändert sich. Für das `parent_task_id`-Feld in jedem Eintrag siehe [`SDKTaskStartedMessage`](#sdktaskstartedmessage), das es und seine Versionsanforderung definiert.

5852 5876 

5853Das `tasks`-Array ist die vollständige aktive Menge. Ersetzen Sie alle zwischengespeicherten Mengen mit jeder Payload, anstatt `task_started`- und `task_notification`-Ereignisse zu koppeln, sodass die nächste Änderung der Mitgliedschaft alle verpassten Ereignisse korrigiert.5877Das `tasks`-Array ist die vollständige aktive Menge. Ersetzen Sie alle zwischengespeicherten Mengen mit jeder Payload, anstatt `task_started`- und `task_notification`-Ereignisse zu koppeln, sodass die nächste Änderung der Mitgliedschaft alle verpassten Ereignisse korrigiert.

5854 5878 

5855Die Reihenfolge relativ zu diesen Pro-Aufgaben-Ereignissen ist nicht spezifiziert, daher korrelieren Sie die beiden Streams nicht.5879Wenn eine Aufgabe endet, kommen ihre [`task_updated`](#sdktaskupdatedmessage)- und [`task_notification`](#sdktasknotificationmessage)-Nachrichten vor der `background_tasks_changed`-Nachricht an, die sie aus der Liste entfernt. Ansonsten ist die Reihenfolge relativ zu den Pro-Aufgaben-Ereignissen nicht spezifiziert.

5856 5880 

5857Beim Start wird nichts ausgegeben. Setzen Sie auf eine leere Menge zurück, wenn der CLI-Prozess der Sitzung startet oder neu startet, und lassen Sie die nächste Änderung der Mitgliedschaft ihn neu auffüllen.5881Beim Start wird nichts ausgegeben. Setzen Sie auf eine leere Menge zurück, wenn der CLI-Prozess der Sitzung startet oder neu startet, und lassen Sie die nächste Änderung der Mitgliedschaft ihn neu auffüllen.

5858 5882 


5869 task_type: string;5893 task_type: string;

5870 subagent_type?: string;5894 subagent_type?: string;

5871 description: string;5895 description: string;

5896 parent_task_id?: string;

5872 ambient?: boolean;5897 ambient?: boolean;

5873 }[];5898 }[];

5874 uuid: UUID;5899 uuid: UUID;

Details

36 ```36 ```

37 37 

38 ```typescript TypeScript theme={null}38 ```typescript TypeScript theme={null}

39 async function handleToolRequest(toolName, input, options) {39 import type { CanUseTool } from "@anthropic-ai/claude-agent-sdk";

40 

41 const handleToolRequest: CanUseTool = async (toolName, input, options) => {

40 // options includes { signal: AbortSignal, suggestions?: PermissionUpdate[] }42 // options includes { signal: AbortSignal, suggestions?: PermissionUpdate[] }

41 // Benutzer auffordern und Zulassung oder Ablehnung zurückgeben43 // Benutzer hier auffordern, dann Zulassung oder Ablehnung zurückgeben

42 }44 return { behavior: "deny", message: "User declined" };

45 };

43 46 

44 const options = { canUseTool: handleToolRequest };47 const options = { canUseTool: handleToolRequest };

45 ```48 ```


296 <Tab title="Genehmigen und merken">299 <Tab title="Genehmigen und merken">

297 Der Benutzer genehmigt und möchte nicht erneut gefragt werden für diese Art von Aufruf. Das dritte Callback-Argument enthält `suggestions`, ein Array von vorgefertigten [`PermissionUpdate`](/docs/de/agent-sdk/typescript#permissionupdate)-Einträgen. Geben Sie einen in `updatedPermissions` zurück, um ihn anzuwenden. Ein Vorschlag mit dem `localSettings`-Ziel schreibt die Regel in `.claude/settings.local.json`, damit zukünftige Sitzungen die Aufforderung für übereinstimmende Aufrufe überspringen.300 Der Benutzer genehmigt und möchte nicht erneut gefragt werden für diese Art von Aufruf. Das dritte Callback-Argument enthält `suggestions`, ein Array von vorgefertigten [`PermissionUpdate`](/docs/de/agent-sdk/typescript#permissionupdate)-Einträgen. Geben Sie einen in `updatedPermissions` zurück, um ihn anzuwenden. Ein Vorschlag mit dem `localSettings`-Ziel schreibt die Regel in `.claude/settings.local.json`, damit zukünftige Sitzungen die Aufforderung für übereinstimmende Aufrufe überspringen.

298 301 

299 In TypeScript überspringen Sie die Wahl „Immer zulassen" für eine Anfrage, deren Optionen [`suppressAlwaysAllowRule: true`](/docs/de/agent-sdk/typescript#canusetool) enthalten. Der Hinweis erfordert Agent SDK v0.3.268 oder später, und der Python-`context` enthält ihn nicht.302 In TypeScript überspringen Sie die Wahl „Immer zulassen“ für eine Anfrage, deren Optionen [`suppressAlwaysAllowRule: true`](/docs/de/agent-sdk/typescript#canusetool) enthalten. Der Hinweis erfordert Agent SDK v0.3.268 oder später, und der Python-`context` enthält ihn nicht.

300 303 

301 Das Python-Beispiel erfordert `claude-agent-sdk` 0.1.80 oder später.304 Das Python-Beispiel erfordert `claude-agent-sdk` 0.1.80 oder später.

302 305 


440 // Fügen Sie AskUserQuestion in Ihre Tools-Liste ein443 // Fügen Sie AskUserQuestion in Ihre Tools-Liste ein

441 tools: ["Read", "Glob", "Grep", "AskUserQuestion"],444 tools: ["Read", "Glob", "Grep", "AskUserQuestion"],

442 canUseTool: async (toolName, input) => {445 canUseTool: async (toolName, input) => {

443 // Klärungsfragen hier verarbeiten446 // Platzhalter, der jeden Aufruf genehmigt. Der Schritt „Erkennen Sie AskUserQuestion" ersetzt ihn.

447 return { behavior: "allow", updatedInput: input };

444 }448 }

445 }449 }

446 })) {450 })) {


636| `answers` | Objekt, bei dem Schlüssel Fragetext und Werte ausgewählte Labels sind |640| `answers` | Objekt, bei dem Schlüssel Fragetext und Werte ausgewählte Labels sind |

637| `response` | Optionale freie Antwort, die der Benutzer eingegeben hat, anstatt die strukturierten Fragen zu beantworten |641| `response` | Optionale freie Antwort, die der Benutzer eingegeben hat, anstatt die strukturierten Fragen zu beantworten |

638 642 

639Für Multi-Select-Fragen übergeben Sie ein Array von Labels oder verbinden Sie sie mit `", "`. Für benutzerdefinierte freie Texteingaben wie eine „Other"-Option geben Sie den Text des Benutzers in `answers[question]` ein, wie in [Freie Texteingabe unterstützen](#support-free-text-input) gezeigt. Setzen Sie `response` nur, wenn Ihre Benutzeroberfläche dem Benutzer ermöglicht, die Fragenkarte zu schließen und eine allgemeine Antwort einzugeben, die keine Antwort auf eine bestimmte Frage ist. Wenn `response` gesetzt ist, erhält Claude „Der Benutzer hat geantwortet: …" anstelle der Liste der Antworten pro Frage.643Für Multi-Select-Fragen übergeben Sie ein Array von Labels oder verbinden Sie sie mit `", "`. Für benutzerdefinierte freie Texteingaben wie eine „Other“-Option geben Sie den Text des Benutzers in `answers[question]` ein, wie in [Freie Texteingabe unterstützen](#support-free-text-input) gezeigt. Setzen Sie `response` nur, wenn Ihre Benutzeroberfläche dem Benutzer ermöglicht, die Fragenkarte zu schließen und eine allgemeine Antwort einzugeben, die keine Antwort auf eine bestimmte Frage ist. Wenn `response` gesetzt ist, erhält Claude „Der Benutzer hat geantwortet: …“ anstelle der Liste der Antworten pro Frage.

640 644 

641```jsonc theme={null}645```jsonc theme={null}

642{646{


656 660 

657Claudes vordefinierte Optionen decken nicht immer ab, was Benutzer möchten. Um Benutzern zu ermöglichen, ihre eigene Antwort einzugeben:661Claudes vordefinierte Optionen decken nicht immer ab, was Benutzer möchten. Um Benutzern zu ermöglichen, ihre eigene Antwort einzugeben:

658 662 

659* Zeigen Sie nach Claudes Optionen eine zusätzliche „Other"-Auswahlmöglichkeit an, die Texteingabe akzeptiert663* Zeigen Sie nach Claudes Optionen eine zusätzliche „Other“-Auswahlmöglichkeit an, die Texteingabe akzeptiert

660* Verwenden Sie den benutzerdefinierten Text des Benutzers als Antwortwert (nicht das Wort „Other")664* Verwenden Sie den benutzerdefinierten Text des Benutzers als Antwortwert (nicht das Wort „Other“)

661 665 

662Siehe das [vollständige Beispiel](#complete-example) unten für eine vollständige Implementierung.666Siehe das [vollständige Beispiel](#complete-example) unten für eine vollständige Implementierung.

663 667 


671 675 

6721. **Leiten Sie die Anfrage weiter**: Der `canUseTool`-Callback überprüft, ob der Tool-Name `"AskUserQuestion"` ist, und leitet zu einem dedizierten Handler weiter6761. **Leiten Sie die Anfrage weiter**: Der `canUseTool`-Callback überprüft, ob der Tool-Name `"AskUserQuestion"` ist, und leitet zu einem dedizierten Handler weiter

6732. **Zeigen Sie Fragen an**: Der Handler durchläuft das `questions`-Array und druckt jede Frage mit nummerierten Optionen6772. **Zeigen Sie Fragen an**: Der Handler durchläuft das `questions`-Array und druckt jede Frage mit nummerierten Optionen

6743. **Sammeln Sie Eingaben**: Der Benutzer kann eine Nummer eingeben, um eine Option auszuwählen, oder direkt freien Text eingeben (z. B. „jquery", „i don't know")6783. **Sammeln Sie Eingaben**: Der Benutzer kann eine Nummer eingeben, um eine Option auszuwählen, oder direkt freien Text eingeben (z. B. „jquery“, „i don't know“)

6754. **Ordnen Sie Antworten zu**: Der Code überprüft, ob die Eingabe numerisch ist (verwendet das Label der Option) oder freier Text (verwendet den Text direkt)6794. **Ordnen Sie Antworten zu**: Der Code überprüft, ob die Eingabe numerisch ist (verwendet das Label der Option) oder freier Text (verwendet den Text direkt)

6765. **Geben Sie an Claude zurück**: Die Antwort enthält sowohl das ursprüngliche `questions`-Array als auch die `answers`-Zuordnung6805. **Geben Sie an Claude zurück**: Die Antwort enthält sowohl das ursprüngliche `questions`-Array als auch die `answers`-Zuordnung

677 681 


763 767 

764 ```typescript TypeScript theme={null}768 ```typescript TypeScript theme={null}

765 import { query } from "@anthropic-ai/claude-agent-sdk";769 import { query } from "@anthropic-ai/claude-agent-sdk";

770 import type { PermissionResult } from "@anthropic-ai/claude-agent-sdk";

766 import * as readline from "readline/promises";771 import * as readline from "readline/promises";

767 772 

768 // Hilfsfunktion zum Auffordern von Benutzereingaben im Terminal773 // Hilfsfunktion zum Auffordern von Benutzereingaben im Terminal


783 }788 }

784 789 

785 // Zeigen Sie Claudes Fragen an und sammeln Sie Benutzerantworten790 // Zeigen Sie Claudes Fragen an und sammeln Sie Benutzerantworten

786 async function handleAskUserQuestion(input: any) {791 async function handleAskUserQuestion(input: any): Promise<PermissionResult> {

787 const answers: Record<string, string> = {};792 const answers: Record<string, string> = {};

788 793 

789 for (const q of input.questions) {794 for (const q of input.questions) {

agent-view.md +7 −4

Details

603 603 

604Außerhalb eines Git-Repositorys schreiben Sitzungen direkt in das Arbeitsverzeichnis und sind nicht voneinander isoliert, vermeiden Sie daher das Versenden paralleler Sitzungen, die dieselben Dateien bearbeiten. Wenn Sie ein anderes Versionskontrollsystem verwenden, konfigurieren Sie einen [`WorktreeCreate`-Hook](/docs/de/worktrees#non-git-version-control), und Claude isoliert Bearbeitungen auf die gleiche Weise wie bei Git.604Außerhalb eines Git-Repositorys schreiben Sitzungen direkt in das Arbeitsverzeichnis und sind nicht voneinander isoliert, vermeiden Sie daher das Versenden paralleler Sitzungen, die dieselben Dateien bearbeiten. Wenn Sie ein anderes Versionskontrollsystem verwenden, konfigurieren Sie einen [`WorktreeCreate`-Hook](/docs/de/worktrees#non-git-version-control), und Claude isoliert Bearbeitungen auf die gleiche Weise wie bei Git.

605 605 

606Wenn der Hook in einem Verzeichnis fehlschlägt, das kein Git-Repository ist, überspringt Claude die Isolation für dieses Verzeichnis und bearbeitet das Arbeitsverzeichnis an Ort und Stelle. Innerhalb eines Git-Repositorys kann eine Sitzung, die Claude vor dem Bearbeiten in einen Worktree verschiebt, keine Dateien im gemeinsamen Checkout bearbeiten, bis dieser Wechsel erfolgt ist.606Wenn der Hook in einem Verzeichnis fehlschlägt, das kein Git-Repository ist, überspringt Claude die Isolation für dieses Verzeichnis und bearbeitet das Arbeitsverzeichnis an Ort und Stelle. Innerhalb eines Git-Repositorys kann eine Sitzung, die Claude vor dem Bearbeiten in einen Worktree verschiebt, die Tools `Edit`, `Write` oder `NotebookEdit` im gemeinsamen Checkout nicht verwenden, bis dieser Wechsel erfolgt ist.

607 607 

608Um den Worktree-Pfad einer Sitzung zu finden, hängen Sie sich an und prüfen Sie ihr Arbeitsverzeichnis.608Um den Worktree-Pfad einer Sitzung zu finden, hängen Sie sich an und prüfen Sie ihr Arbeitsverzeichnis.

609 609 


979 Öffnen einer Sitzung besagt, dass sie kein gespeichertes Transkript hat979 Öffnen einer Sitzung besagt, dass sie kein gespeichertes Transkript hat

980</h3>980</h3>

981 981 

982Eine gestoppte Sitzung, die [von einer anderen Konversation aus backgroundet wurde](#from-inside-a-session) und gestoppt wurde, bevor ihre erste Antwort fertig wurde, hat nichts zum Fortsetzen: Bis diese erste Antwort fertig ist, lebt die Konversation noch nur in der Sitzung, von der sie backgroundet wurde. `claude attach` weigert sich, sie mit `This session has no saved transcript` zu öffnen.982Wenn Sie eine Sitzung öffnen, die Sie [von einer anderen Konversation aus in den Hintergrund verschoben haben](#from-inside-a-session) und die gestoppt wurde, bevor sie einen eigenen Turn ausgeführt hat, setzt Claude Code diese Konversation fort. Wenn Claude Code die Konversation nicht finden kann, weigert es sich, die Sitzung zu öffnen:

983 983 

984In der Agenten-Ansicht zeigt das Öffnen dieser Zeile `Press enter again to restart this session fresh` unter der Liste. Drücken Sie `Enter` auf derselben Zeile erneut, um die Sitzung mit einer leeren Konversation neu zu starten, oder führen Sie `claude respawn <id>` aus der Shell aus.984* `claude attach` gibt `This session has no saved transcript` aus.

985* Die Agenten-Ansicht zeigt `Press enter again to restart this session fresh` unter der Liste.

985 986 

986Die ursprüngliche Konversation ist intakt; setzen Sie sie mit `claude --resume` fort oder arbeiten Sie weiter darin. Siehe die [Fehlerreferenz](/docs/de/errors#this-session-has-no-saved-transcript) für Details.987Drücken Sie `Enter` auf derselben Zeile erneut, um die Sitzung mit einer leeren Konversation neu zu starten, oder führen Sie `claude respawn <id>` aus der Shell aus.

988 

989Siehe die [Fehlerreferenz](/docs/de/errors#this-session-has-no-saved-transcript) für Details.

987 990 

988<h3 id="the-terminal-host-died-or-the-session-stopped-responding">991<h3 id="the-terminal-host-died-or-the-session-stopped-responding">

989 Der Terminal-Host ist gestorben oder die Sitzung hat nicht mehr reagiert992 Der Terminal-Host ist gestorben oder die Sitzung hat nicht mehr reagiert

artifacts.md +38 −10

Details

51Build a dashboard artifact of last week's deploy failures by service and keep it updated as you investigate.51Build a dashboard artifact of last week's deploy failures by service and keep it updated as you investigate.

52```52```

53 53 

54Sofern Sie keinen Speicherort angeben, schreibt Claude die Seite in eine HTML- oder Markdown-Datei in einem temporären Verzeichnis außerhalb Ihres Projekts und veröffentlicht sie dann. Außerhalb des [Plan Mode](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) wird ein neues Artefakt, das Claude als Reaktion auf einen von Ihnen eingegebenen Prompt veröffentlicht, ohne eine Genehmigungsaufforderung oder Klassifizierer-Überprüfung veröffentlicht, es sei denn, diese Veröffentlichung deklariert Laufzeitfähigkeiten für die Seite, wie [Konnektor-Aufrufe](#pull-live-data-with-mcp-connectors) oder [Datei-Downloads](#offer-a-file-download). Im Plan Mode fragt Claude Code Sie vor der ersten Veröffentlichung jedes Artefakts.54Sofern Sie keinen Speicherort angeben, schreibt Claude die Seite in eine HTML- oder Markdown-Datei in einem temporären Verzeichnis außerhalb Ihres Projekts und veröffentlicht sie dann. Das Artefakt bleibt privat für Sie, bis Sie es [freigeben](#share-an-artifact).

55 55 

56Das Artefakt bleibt privat für Sie, bis Sie es [freigeben](#share-an-artifact). Nachdem Sie es öffentlich freigegeben haben, fragt Claude Code Sie einmal pro Konversation um Genehmigung, bevor es geändert wird, oder im [Auto Mode](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) lässt der Klassifizierer die Änderung überprüfen.56Nach der ersten Veröffentlichung gibt Claude die URL aus, und Ihr Browser öffnet die neue Seite.

57 57 

58Wenn Sie das [Abrufen von Feature-Flags](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktiviert haben, fragt Claude Code vor der ersten Veröffentlichung jedes Artefakts, oder im Auto Mode lässt der Klassifizierer es überprüfen.58* **Seite erneut öffnen**: Drücken Sie jederzeit `Ctrl+]`, um das neueste Artefakt der Sitzung erneut zu öffnen

59* **Artefakte dieser Sitzung anzeigen**: Eine `⧉`-Markierung unter dem Prompt zeigt den Namen des Artefakts an oder eine Anzahl, wenn die Sitzung mehrere hat. Klicken Sie im [Vollbild-Rendering](/docs/de/fullscreen) darauf, um die [`/artifacts`](#find-an-artifact-again)-Liste zu öffnen

60* **Öffnen des Browsers verhindern**: Setzen Sie `CLAUDE_CODE_ARTIFACT_AUTO_OPEN=0` in Ihrer Umgebung

61* **Remote Control**: Wenn Sie den Prompt über [Remote Control](/docs/de/remote-control) von claude.ai, Claude Desktop oder der Claude Mobile-App gesendet haben, öffnet sich auf dem Computer, auf dem die Sitzung läuft, keine Registerkarte. Der Browser öffnet sich dort beim nächsten Mal, wenn Claude das Artefakt aus einem Prompt veröffentlicht, den Sie im Terminal eingeben

59 62 

60Nach der ersten Veröffentlichung druckt Claude die URL aus, und Ihr Browser öffnet die neue Seite. Wenn Sie die Aufforderung über [Remote Control](/docs/de/remote-control) von claude.ai, Claude Desktop oder der Claude Mobile-App gesendet haben, öffnet sich auf dem Computer, auf dem die Sitzung läuft, keine Registerkarte. Der Browser öffnet sich dort beim nächsten Mal, wenn Claude das Artefakt aus einer Aufforderung veröffentlicht, die Sie im Terminal eingeben. Drücken Sie `Ctrl+]` jederzeit, um das neueste Artefakt der Sitzung erneut zu öffnen.63Claude wählt den Titel des Artefakts und ein Browser-Tab-Symbol, das dem entspricht, was die Seite ist, wie ein Diagramm oder ein Kalender. Der Titel wird in Ihrer [Galerie von Artefakten](#share-an-artifact) auf claude.ai und in freigegebenen Links angezeigt. Bitten Sie Claude um einen bestimmten Titel oder ein bestimmtes Tab-Symbol, wenn Sie eines möchten.

61 64 

62Claude wählt den Titel des Artefakts und ein Emoji, und beide werden in Ihrer [Galerie von Artefakten](#share-an-artifact) auf claude.ai und in freigegebenen Links angezeigt. Claude kann auch ein Browser-Tab-Symbol auswählen, das dem entspricht, was die Seite ist, wie ein Diagramm oder ein Kalender. Bitten Sie Claude um einen bestimmten Titel, ein bestimmtes Emoji oder ein bestimmtes Tab-Symbol, wenn Sie einen möchten.65Wenn Claude antwortet, dass es nicht veröffentlichen kann, oder eine lokale HTML-Datei ohne Link schreibt, sind Artefakte für Ihre Sitzung nicht aktiviert. Überprüfen Sie die [Verfügbarkeits](#availability)-Anforderungen. Wenn das Terminal `Artifacts need a claude.ai login` anzeigt, finden Sie im [Eintrag zu diesem Fehler](/docs/de/errors#artifacts-need-a-claude-ai-login), wie Sie sich anmelden.

63 66 

64Um zu verhindern, dass der Browser automatisch geöffnet wird, wenn ein neues Artefakt veröffentlicht wird, setzen Sie `CLAUDE_CODE_ARTIFACT_AUTO_OPEN=0` in Ihrer Umgebung.67<h3 id="when-claude-code-asks-before-publishing">

68 Wann Claude Code vor dem Veröffentlichen nachfragt

69</h3>

70 

71Ein neues Artefakt, das Claude als Antwort auf einen von Ihnen eingegebenen Prompt veröffentlicht, wird ohne Berechtigungsabfrage oder Klassifikator-Überprüfung veröffentlicht. In den folgenden Fällen fragt Claude Code Sie zuerst oder lässt im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) die Veröffentlichung vom Klassifikator überprüfen:

65 72 

66Wenn Claude antwortet, dass es nicht veröffentlichen kann, oder eine lokale HTML-Datei ohne Link schreibt, ist das Tool für Ihre Sitzung nicht aktiviert. Überprüfen Sie die [Verfügbarkeits](#availability)-Anforderungen.73| Wann | Was Claude Code tut |

74| :- | :- |

75| Die Sitzung befindet sich im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) | Fragt vor der ersten Veröffentlichung jedes Artefakts nach |

76| Die Veröffentlichung deklariert Laufzeitfähigkeiten für die Seite, wie [Konnektor-Aufrufe](#pull-live-data-with-mcp-connectors) oder [Datei-Downloads](#offer-a-file-download) | Fragt vor dieser Veröffentlichung nach |

77| Sie haben das Artefakt öffentlich freigegeben | Fragt einmal pro Konversation nach, bevor es geändert wird |

78| Sie haben das [Abrufen von Feature-Flags](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktiviert | Fragt vor der ersten Veröffentlichung jedes Artefakts nach |

79| Claude veröffentlicht in einem Turn, der durch eine in Ihrer Sitzung ausgelöste [geplante Aufgabe](/docs/de/scheduled-tasks) gestartet wurde, statt durch einen von Ihnen eingegebenen Prompt | Fragt vor der ersten Veröffentlichung jedes Artefakts nach |

80| Claude kann die Datei nicht ohne Ihre Genehmigung lesen | Fragt vor der Veröffentlichung nach. Eine Allow-Regel für das `Artifact`-Tool überspringt diese Abfrage nicht |

81 

82Claude liest Dateien in den [Arbeitsverzeichnissen](/docs/de/permissions#working-directories) Ihrer Sitzung sowie in dem temporären Verzeichnis, in das es Seiten schreibt, ohne nachzufragen. Damit Claude ohne Abfrage aus einem anderen Ordner veröffentlichen kann, fügen Sie den Ordner beim Start mit [`--add-dir`](/docs/de/cli-reference#cli-flags) oder während der Sitzung mit `/add-dir` als Arbeitsverzeichnis hinzu.

67 83 

68<h2 id="update-an-artifact">84<h2 id="update-an-artifact">

69 Aktualisieren Sie ein Artefakt85 Aktualisieren Sie ein Artefakt


87 Ein Artefakt erneut finden103 Ein Artefakt erneut finden

88</h2>104</h2>

89 105 

90Führen Sie `/artifacts` in Claude Code aus, um jedes Artefakt aufzulisten, das Sie besitzen, und jedes Artefakt, das mit Ihnen geteilt wurde. Wählen Sie eines aus und drücken Sie `o`, um es in Ihrem Browser zu öffnen, oder `c`, um seinen Link zu kopieren. Drücken Sie `Enter`, um es an die aktuelle Sitzung anzufügen; vor v2.1.216 öffnete `Enter` es in Ihrem Browser. Claude Code liest die Liste aus Ihrem claude.ai-Konto, daher funktioniert es in einer neuen Sitzung und nach `/clear`, wenn der Link aus dem Terminal gescrollt ist. Erfordert Claude Code v2.1.208 oder später.106Führen Sie `/artifacts` in Claude Code aus, um die Artefakte aufzulisten, die Sie besitzen, und die Artefakte, die mit Ihnen geteilt wurden. Die Artefakte der aktuellen Sitzung stehen an erster Stelle unter **This session**. Erfordert Claude Code v2.1.208 oder später.

107 

108Wählen Sie ein Artefakt aus und drücken Sie dann eine dieser Tasten:

109 

110* **`Enter`**: öffnet es in Ihrem Browser, wenn es bereits an die aktuelle Sitzung angefügt ist, und fügt es an, wenn dies nicht der Fall ist. Vor v2.1.216 öffnete `Enter` es in Ihrem Browser

111* **`o`**: öffnet es in Ihrem Browser

112* **`c`**: kopiert seinen Link

113 

114Claude Code liest die Liste aus Ihrem claude.ai-Konto, daher funktioniert es in einer neuen Sitzung und nach `/clear`, wenn der Link aus dem Terminal gescrollt ist.

91 115 

92<h2 id="share-an-artifact">116<h2 id="share-an-artifact">

93 Ein Artefakt teilen117 Ein Artefakt teilen


110 134 

111Ein Bearbeiter veröffentlicht neue Versionen auf die gleiche Weise wie Sie [das Artefakt aus einer anderen Sitzung aktualisieren](#update-an-artifact): Er oder sie gibt Claude die URL des Artefakts, oder fügt es aus [`/artifacts`](#find-an-artifact-again) an, und Claude ruft den aktuellen Inhalt ab und veröffentlicht ihn mit seinen oder ihren Änderungen erneut. Jeder, der die Seite offen hat, sieht jede Aktualisierung live.135Ein Bearbeiter veröffentlicht neue Versionen auf die gleiche Weise wie Sie [das Artefakt aus einer anderen Sitzung aktualisieren](#update-an-artifact): Er oder sie gibt Claude die URL des Artefakts, oder fügt es aus [`/artifacts`](#find-an-artifact-again) an, und Claude ruft den aktuellen Inhalt ab und veröffentlicht ihn mit seinen oder ihren Änderungen erneut. Jeder, der die Seite offen hat, sieht jede Aktualisierung live.

112 136 

137Wenn ein Bearbeiter veröffentlicht, während Claude eine ältere Kopie der Seite vorliegt, lehnt Claude Code eine Veröffentlichung ab, die auf dieser Kopie basiert. Claude führt seine Änderungen dann mit der neueren Version zusammen und veröffentlicht erneut.

138 

113<h2 id="read-an-artifact-shared-with-you">139<h2 id="read-an-artifact-shared-with-you">

114 Ein mit Ihnen geteiltes Artefakt lesen140 Ein mit Ihnen geteiltes Artefakt lesen

115</h2>141</h2>


168 194 

169Claude stoppt auch das automatische Antworten auf ein Artefakt, nachdem es 60 gesendete Kommentare oder Thread-Aktivierungen auf diesem Artefakt innerhalb einer Stunde bearbeitet hat. Sie sehen `Comments are waiting on Artifact: <name>` einmal, und Claude nimmt wieder auf, wenn diese Stunde Kommentare veralten.195Claude stoppt auch das automatische Antworten auf ein Artefakt, nachdem es 60 gesendete Kommentare oder Thread-Aktivierungen auf diesem Artefakt innerhalb einer Stunde bearbeitet hat. Sie sehen `Comments are waiting on Artifact: <name>` einmal, und Claude nimmt wieder auf, wenn diese Stunde Kommentare veralten.

170 196 

171Führen Sie `/tasks` aus, um jedes Artefakt zu sehen, das Ihre Sitzung überwacht, aufgelistet als eine Live-Updates-Aufgabe. Sie können Claude auf folgende Weise davon abhalten, von selbst zu antworten:197Führen Sie `/tasks` aus, um die Artefakte zu sehen, die Ihre Sitzung überwacht. `/tasks` gruppiert die Überwachungen, die Claude Code von selbst gestartet hat, unter der Zeile **System tasks**. Drücken Sie `Enter` auf dieser Zeile, um sie aufzulisten. Eine Überwachung, deren Start Sie bei Claude angefordert haben, erscheint unter **Monitors**.

198 

199Sie können Claude auf folgende Weise davon abhalten, von selbst zu antworten:

172 200 

173* **Drücken Sie Ctrl+C einmal bei einer leeren Eingabeaufforderung**: Claude pausiert das Antworten auf jedem Artefakt, das Ihre Sitzung überwacht. Antworten beginnen wieder, nachdem Sie Ihre nächste Nachricht senden.201* **Drücken Sie Ctrl+C einmal bei einer leeren Eingabeaufforderung**: Claude pausiert das Antworten auf jedem Artefakt, das Ihre Sitzung überwacht. Antworten beginnen wieder, nachdem Sie Ihre nächste Nachricht senden.

174* **Stoppen Sie die Aufgabe in `/tasks`**: Claude stoppt das Antworten auf diesem Artefakt, bis Sie es bitten, Antworten dort zu fortsetzen. Das erneute Veröffentlichen des Artefakts startet Antworten nicht erneut, und der Stopp gilt immer noch, wenn Sie die Sitzung später fortsetzen.202* **Stoppen Sie die Aufgabe in `/tasks`**: Claude stoppt das Antworten auf diesem Artefakt, bis Sie es bitten, Antworten dort zu fortsetzen. Das erneute Veröffentlichen des Artefakts startet Antworten nicht erneut, und der Stopp gilt immer noch, wenn Sie die Sitzung später fortsetzen.


391| Authentifizierung | Die Sitzung wird durch ein claude.ai-Konto unterstützt: Melden Sie sich mit `/login` in der CLI oder Desktop-App an. Claude Tag-Sitzungen sind durch die Identität des Agenten angemeldet, daher ist kein Schritt erforderlich. Sitzungen, die einen API-Schlüssel, [Gateway-Token](/docs/de/llm-gateway) oder Cloud-Provider-Anmeldedaten verwenden, können nicht veröffentlichen. |419| Authentifizierung | Die Sitzung wird durch ein claude.ai-Konto unterstützt: Melden Sie sich mit `/login` in der CLI oder Desktop-App an. Claude Tag-Sitzungen sind durch die Identität des Agenten angemeldet, daher ist kein Schritt erforderlich. Sitzungen, die einen API-Schlüssel, [Gateway-Token](/docs/de/llm-gateway) oder Cloud-Provider-Anmeldedaten verwenden, können nicht veröffentlichen. |

392| Modell-Provider | Anthropic API. Nicht verfügbar auf [Amazon Bedrock](/docs/de/amazon-bedrock), [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) oder [Microsoft Foundry](/docs/de/microsoft-foundry). |420| Modell-Provider | Anthropic API. Nicht verfügbar auf [Amazon Bedrock](/docs/de/amazon-bedrock), [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) oder [Microsoft Foundry](/docs/de/microsoft-foundry). |

393| Organisationsrichtlinie | Customer-managed encryption keys (CMEK), HIPAA und [Zero Data Retention](/docs/de/zero-data-retention) sind nicht für die Organisation aktiviert. |421| Organisationsrichtlinie | Customer-managed encryption keys (CMEK), HIPAA und [Zero Data Retention](/docs/de/zero-data-retention) sind nicht für die Organisation aktiviert. |

394| Oberfläche | Claude Code CLI oder die Claude Desktop-App Version 1.13576.0 oder später. [Claude Tag](https://claude.com/docs/claude-tag/overview)-Sitzungen können auch Artefakte veröffentlichen, wenn sowohl Claude Tag als auch Artefakte für die Organisation aktiviert sind. Standardmäßig aus in [Agent SDK](/docs/de/agent-sdk/overview), GitHub Action und MCP-Server-Kontexten, wenn Sie Claude Code mit [`-p`](/docs/de/headless) aus Ihrem eigenen Terminal oder Ihren eigenen Skripten ausführen, und wenn [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) gesetzt ist. |422| Oberfläche | Claude Code CLI oder die Claude Desktop-App Version 1.13576.0 oder später. [Claude Tag](https://claude.com/docs/claude-tag/overview)-Sitzungen können auch Artefakte veröffentlichen, wenn sowohl Claude Tag als auch Artefakte für die Organisation aktiviert sind. Sitzungen, die über [`claude remote-control`](/docs/de/remote-control) bereitgestellt werden, können Artefakte veröffentlichen, wenn Sie die Sitzung selbst gestartet haben. Erfordert Claude Code v2.1.281 oder später. Standardmäßig aus in [Agent SDK](/docs/de/agent-sdk/overview), GitHub Action und MCP-Server-Kontexten, wenn Sie Claude Code mit [`-p`](/docs/de/headless) aus Ihrem eigenen Terminal oder Ihren eigenen Skripten ausführen, und wenn [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) gesetzt ist. |

395 423 

396Ob Artefakte für Ihre Organisation zulässig sind, ergibt sich aus der Richtlinie Ihrer Organisation, die Claude Code von `api.anthropic.com` lädt. Wenn Claude Code die Richtlinie nicht laden kann, sind Artefakte nicht verfügbar. Wenn Sie um eines bitten, sagt Claude, warum.424Ob Artefakte für Ihre Organisation zulässig sind, ergibt sich aus der Richtlinie Ihrer Organisation, die Claude Code von `api.anthropic.com` lädt. Wenn Claude Code die Richtlinie nicht laden kann, sind Artefakte nicht verfügbar. Wenn Sie um eines bitten, sagt Claude, warum.

397 425 

Details

1237 1237 

1238Die CLI sendet Metriken, Logs und, wenn aktiviert, Traces an das Gateway, das sie wörtlich an jedes konfigurierte Ziel weiterleitet. Die Exporte verwenden OpenTelemetry Protocol (OTLP) über HTTP. Um das Relay zu überspringen und Sitzungen direkt an Ihren Collector exportieren zu lassen, [benennen Sie den Collector in einer Richtlinie](#export-directly-to-your-collector). Siehe [Überwachung der Nutzung](/docs/de/monitoring-usage) für die Metriken und Ereignisse, die die CLI ausgibt.1238Die CLI sendet Metriken, Logs und, wenn aktiviert, Traces an das Gateway, das sie wörtlich an jedes konfigurierte Ziel weiterleitet. Die Exporte verwenden OpenTelemetry Protocol (OTLP) über HTTP. Um das Relay zu überspringen und Sitzungen direkt an Ihren Collector exportieren zu lassen, [benennen Sie den Collector in einer Richtlinie](#export-directly-to-your-collector). Siehe [Überwachung der Nutzung](/docs/de/monitoring-usage) für die Metriken und Ereignisse, die die CLI ausgibt.

1239 1239 

1240In Sitzungen, die über `/login` angemeldet sind, stempelt die CLI jeden Export mit der Identität des authentifizierten Benutzers, gelesen aus dem vom Gateway ausgegebenen JWT: die Attribute `user.id`, `user.email` und `user.groups`. Die Kosten- und Nutzungsattribution pro Entwickler funktioniert daher ohne Konfiguration auf der Entwicklerseite.1240In Sitzungen, die über `/login` angemeldet sind, stempelt die CLI jeden Export mit der Identität des authentifizierten Benutzers, gelesen aus dem vom Gateway ausgegebenen JWT: die Attribute `user.id`, `user.email` und `user.groups`. Die Kosten- und Nutzungsattribution pro Entwickler funktioniert daher ohne Konfiguration auf der Entwicklerseite. Ereignisse, die Claude Code protokolliert, bevor sich der Entwickler anmeldet, [tragen diese Identität nicht](/docs/de/monitoring-usage#standard-attributes).

1241 1241 

1242[Claude Desktop](#claude-desktop-overlay) und Cowork-Sitzungen, die sich durch das Gateway anmelden, stempeln ihre Telemetrie mit `user.email` und `user.groups` neben `enduser.id`, sodass Sie Terminal-, Desktop- und Cowork-Nutzung mit einer Abfrage auf `user.email` oder `user.groups` abdecken können. `user.groups` ist die kommagetrennte IdP-Gruppenliste.1242[Claude Desktop](#claude-desktop-overlay) und Cowork-Sitzungen, die sich durch das Gateway anmelden, stempeln ihre Telemetrie mit `user.email` und `user.groups` neben `enduser.id`, sodass Sie Terminal-, Desktop- und Cowork-Nutzung mit einer Abfrage auf `user.email` oder `user.groups` abdecken können. `user.groups` ist die kommagetrennte IdP-Gruppenliste.

1243 1243 

Details

516 Telemetrie516 Telemetrie

517</h2>517</h2>

518 518 

519Das Gateway bietet Ihnen Pro-Entwickler-Nutzungsmetriken ohne OTEL-Konfiguration pro Maschine. Claude Code gibt OpenTelemetry (OTLP) Metriken, Protokolle und optionale Traces aus; [Überwachung der Nutzung](/docs/de/monitoring-usage) behandelt alles, was die CLI meldet. In Sitzungen, die sich über `/login` anmelden, versieht die CLI jeden Export mit den authentifizierten IdP-Identitätsattributen `user.id`, `user.email` und `user.groups`, sodass die Nutzung pro Entwickler zusammengefasst wird.519Das Gateway bietet Ihnen Pro-Entwickler-Nutzungsmetriken ohne OTEL-Konfiguration pro Maschine. Claude Code gibt OpenTelemetry (OTLP) Metriken, Logs und optionale Traces aus; [Überwachung der Nutzung](/docs/de/monitoring-usage) behandelt alles, was die CLI meldet. In Sitzungen, die sich über `/login` anmelden, [versieht die CLI jeden Export](/docs/de/monitoring-usage#standard-attributes) mit den authentifizierten IdP-Identitätsattributen `user.id`, `user.email` und `user.groups`, sodass die Nutzung pro Entwickler zusammengefasst wird.

520 520 

521Das Gateway selbst ist ein authentifiziertes OTLP-Relay. Setzen Sie [`telemetry.forward_to`](/docs/de/claude-apps-gateway-config#telemetry) zusammen mit `listen.public_url`, und es überträgt die OTEL-Exporter-Einstellungen an jeden verbundenen Client und leitet seinen OTLP-Verkehr wörtlich an jedes von Ihnen aufgelistete Ziel weiter. Jedes Ziel entscheidet sich unabhängig für Metriken, Protokolle und Traces, und die Standardeinstellung ist nur Metriken; siehe die [`telemetry`-Referenz](/docs/de/claude-apps-gateway-config#telemetry) für die Pro-Signal-Felder und ihre Sensitivitäts-Kompromisse. Das Gateway puffert, aggregiert oder speichert Telemetrie nicht, daher ist es vollständig die Exporter-Konfiguration des Collectors, wo die Daten landen.521Das Gateway selbst ist ein authentifiziertes OTLP-Relay. Setzen Sie [`telemetry.forward_to`](/docs/de/claude-apps-gateway-config#telemetry) zusammen mit `listen.public_url`, und es überträgt die OTEL-Exporter-Einstellungen an jeden verbundenen Client und leitet seinen OTLP-Verkehr wörtlich an jedes von Ihnen aufgelistete Ziel weiter. Jedes Ziel entscheidet sich unabhängig für Metriken, Protokolle und Traces, und die Standardeinstellung ist nur Metriken; siehe die [`telemetry`-Referenz](/docs/de/claude-apps-gateway-config#telemetry) für die Pro-Signal-Felder und ihre Sensitivitäts-Kompromisse. Das Gateway puffert, aggregiert oder speichert Telemetrie nicht, daher ist es vollständig die Exporter-Konfiguration des Collectors, wo die Daten landen.

522 522 

Details

489* **Routinen**: Wenn Sie geplante Arbeit in einem Projekt anfordern, erstellt Claude eine [Routine](/docs/de/routines), die als Threads in diesem Projekt läuft und auf seiner Registerkarte **Routinen** angezeigt wird. Routinen, die Sie außerhalb eines Projekts erstellen, laufen weiter auf ihre eigene Weise.489* **Routinen**: Wenn Sie geplante Arbeit in einem Projekt anfordern, erstellt Claude eine [Routine](/docs/de/routines), die als Threads in diesem Projekt läuft und auf seiner Registerkarte **Routinen** angezeigt wird. Routinen, die Sie außerhalb eines Projekts erstellen, laufen weiter auf ihre eigene Weise.

490* **Remote Control**: [Remote Control](/docs/de/remote-control) verbindet claude.ai mit einer Claude Code-Sitzung, die auf Ihrem Computer läuft. Wenn Sie Claude in einem Projekt bitten, einen Thread auf Ihrem Computer auszuführen, nutzt das Projekt [Remote Control, um dies zu tun](#run-a-thread-on-your-own-computer).490* **Remote Control**: [Remote Control](/docs/de/remote-control) verbindet claude.ai mit einer Claude Code-Sitzung, die auf Ihrem Computer läuft. Wenn Sie Claude in einem Projekt bitten, einen Thread auf Ihrem Computer auszuführen, nutzt das Projekt [Remote Control, um dies zu tun](#run-a-thread-on-your-own-computer).

491* **Lokale Sitzungen und Agent-Ansicht**: Eine Sitzung, die Sie selbst in Ihrem Terminal, IDE oder der lokalen Umgebung der Desktop-App starten, kann nicht zu einem Projekt hinzugefügt werden. [Agent-Ansicht](/docs/de/agent-view) ist ein Bildschirm zum Verfolgen mehrerer lokaler Sitzungen nebeneinander, und Sie starten immer noch jede selbst und geben ihr ihre Aufgabe selbst.491* **Lokale Sitzungen und Agent-Ansicht**: Eine Sitzung, die Sie selbst in Ihrem Terminal, IDE oder der lokalen Umgebung der Desktop-App starten, kann nicht zu einem Projekt hinzugefügt werden. [Agent-Ansicht](/docs/de/agent-view) ist ein Bildschirm zum Verfolgen mehrerer lokaler Sitzungen nebeneinander, und Sie starten immer noch jede selbst und geben ihr ihre Aufgabe selbst.

492* **Worktrees**: Ein [Worktree](/docs/de/worktrees) gibt jeder lokalen Sitzung ihre eigene Arbeitskopie eines Repositories, daher überschreiben sich parallele Sitzungen auf Ihrem Computer nicht gegenseitig. Cloud-Threads benötigen sie nicht: Jeder klont seine Repositories in seine eigene Cloud-Sandbox und arbeitet auf seinem eigenen Branch.492* **Worktrees**: Ein [Worktree](/docs/de/worktrees) gibt jeder lokalen Sitzung ihre eigene Arbeitskopie eines Repositorys. Cloud-Threads benötigen sie nicht: Jeder klont seine Repositorys in seine eigene Cloud-Sandbox und arbeitet auf seinem eigenen Branch.

493* **Agent-Teams**: Ein [Agent-Team](/docs/de/agent-teams) ist eine Sitzung, die Teammate-Sitzungen für eine einzelne Aufgabe startet, auf Ihrem Computer oder in einer Cloud-Sitzung, und endet mit dieser Aufgabe.493* **Agent-Teams**: Ein [Agent-Team](/docs/de/agent-teams) ist eine Sitzung, die Teammate-Sitzungen für eine einzelne Aufgabe startet, auf Ihrem Computer oder in einer Cloud-Sitzung, und endet mit dieser Aufgabe.

494* **Subagenten**: Ein [Subagent](/docs/de/sub-agents) läuft in einer Sitzung, führt eine Nebenaufgabe in seinem eigenen Kontextfenster aus und gibt eine Zusammenfassung an diese Sitzung zurück. Die Threads eines Projekts sind ganze Sitzungen, die Claude startet und die an das Projektgespräch berichten, und ein Thread kann immer noch Subagenten für seine eigenen Nebenaufgaben nutzen.494* **Subagenten**: Ein [Subagent](/docs/de/sub-agents) läuft in einer Sitzung, führt eine Nebenaufgabe in seinem eigenen Kontextfenster aus und gibt eine Zusammenfassung an diese Sitzung zurück. Die Threads eines Projekts sind ganze Sitzungen, die Claude startet und die an das Projektgespräch berichten, und ein Thread kann immer noch Subagenten für seine eigenen Nebenaufgaben nutzen.

495* **Projekte in claude.ai-Chat und Cowork**: Die [frühere Projekte-Erfahrung](https://support.claude.com/en/articles/9517075-what-are-projects), die Gespräche und Referenzdateien ohne Threads oder einen Koordinator gruppiert. Diese Projekte funktionieren weiterhin wie heute, bis die neu gestaltete Erfahrung sie erreicht.495* **Projekte in claude.ai-Chat und Cowork**: Die [frühere Projekte-Erfahrung](https://support.claude.com/en/articles/9517075-what-are-projects), die Gespräche und Referenzdateien ohne Threads oder einen Koordinator gruppiert. Diese Projekte funktionieren weiterhin wie heute, bis die neu gestaltete Erfahrung sie erreicht.

Details

106| `--input-format` | Geben Sie das Eingabeformat für den Print-Modus an (Optionen: `text`, `stream-json`) | `claude -p --output-format json --input-format stream-json` |106| `--input-format` | Geben Sie das Eingabeformat für den Print-Modus an (Optionen: `text`, `stream-json`) | `claude -p --output-format json --input-format stream-json` |

107| `--json-schema` | Erhalten Sie validierte JSON-Ausgabe, die einem JSON-Schema entspricht, nachdem der Agent seinen Workflow abgeschlossen hat (nur Print-Modus). Siehe [strukturierte Ausgaben](/docs/de/agent-sdk/structured-outputs). Claude Code beendet sich mit einem Fehler bei einem ungültigen Schema und akzeptiert das `format`-Schlüsselwort als Anmerkung ohne clientseitige Validierung | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |107| `--json-schema` | Erhalten Sie validierte JSON-Ausgabe, die einem JSON-Schema entspricht, nachdem der Agent seinen Workflow abgeschlossen hat (nur Print-Modus). Siehe [strukturierte Ausgaben](/docs/de/agent-sdk/structured-outputs). Claude Code beendet sich mit einem Fehler bei einem ungültigen Schema und akzeptiert das `format`-Schlüsselwort als Anmerkung ohne clientseitige Validierung | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |

108| `--maintenance` | Führen Sie [Setup-Hooks](/docs/de/hooks#setup) mit dem `maintenance`-Matcher vor der Sitzung aus (nur Print-Modus) | `claude -p --maintenance "query"` |108| `--maintenance` | Führen Sie [Setup-Hooks](/docs/de/hooks#setup) mit dem `maintenance`-Matcher vor der Sitzung aus (nur Print-Modus) | `claude -p --maintenance "query"` |

109| `--max-budget-usd` | Maximaler Dollarbetrag, der für API-Aufrufe ausgegeben werden soll, bevor gestoppt wird (nur Print-Modus). Claude Code prüft die Obergrenze anhand seiner [clientseitigen Kostenschätzung](/docs/de/agent-sdk/cost-tracking#estimates-not-billing), die von Ihrer Rechnung abweichen kann. Ausgaben von [Subagenten](/docs/de/sub-agents) zählen zur Obergrenze. Wenn Sie zu einer Konversation mit `--continue` oder `--resume` zurückkehren, zählen Gesamtsummen [aus früheren Läufen wiederhergestellt](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls) nicht zur Obergrenze. Sobald die Ausgaben die Obergrenze erreichen, schlägt das Spawnen eines weiteren Subagenten mit `Budget limit reached` fehl, und Claude Code stoppt Hintergrund-Subagenten, die noch laufen; die Obergrenzendurchsetzungsverhalten erfordern Claude Code v2.1.217 oder später | `claude -p --max-budget-usd 5.00 "query"` |109| `--max-budget-usd` | Stoppt den Lauf, sobald die geschätzten Ausgaben für API-Aufrufe diesen Betrag erreichen (nur Print-Modus). Claude Code prüft die Obergrenze anhand seiner [clientseitigen Kostenschätzung](/docs/de/agent-sdk/cost-tracking#estimates-not-billing), die von Ihrer Rechnung abweichen kann. Ausgaben von [Subagenten](/docs/de/sub-agents) zählen zur Obergrenze. Die Ausgaben können die Obergrenze überschreiten, [planen Sie daher Spielraum ein](/docs/de/agent-sdk/agent-loop#budget-headroom). Wenn Sie mit `--continue` oder `--resume` zu einer Konversation zurückkehren, zählen [aus früheren Läufen wiederhergestellte](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls) Gesamtsummen nicht zur Obergrenze. Sobald die Ausgaben die Obergrenze erreichen, schlägt das Spawnen eines weiteren Subagenten mit `Budget limit reached` fehl, und Claude Code stoppt Hintergrund-Subagenten, die noch laufen; die Obergrenzendurchsetzungsverhalten erfordern Claude Code v2.1.217 oder später | `claude -p --max-budget-usd 5.00 "query"` |

110| `--max-turns` | Begrenzen Sie die Anzahl der agentengesteuerten Turns (nur Print-Modus). Beendet sich mit einem Fehler, wenn die Grenze erreicht wird. Standardmäßig keine Grenze. Mit `--input-format stream-json` bleibt eine Nachricht, die noch in die Warteschlange eingereiht ist, wenn die Grenze einen Turn beendet, in der Warteschlange und startet einen neuen Turn mit seiner eigenen Grenze | `claude -p --max-turns 3 "query"` |110| `--max-turns` | Begrenzen Sie die Anzahl der agentengesteuerten Turns (nur Print-Modus). Beendet sich mit einem Fehler, wenn die Grenze erreicht wird. Standardmäßig keine Grenze. Mit `--input-format stream-json` bleibt eine Nachricht, die noch in die Warteschlange eingereiht ist, wenn die Grenze einen Turn beendet, in der Warteschlange und startet einen neuen Turn mit seiner eigenen Grenze | `claude -p --max-turns 3 "query"` |

111| `--mcp-config` | Laden Sie MCP-Server aus JSON-Dateien oder Strings (durch Leerzeichen getrennt). Wenn Sie diesen Flag mit `-p` übergeben, wartet Claude Code darauf, dass noch ausstehende Server verbunden werden, bevor der erste Turn ausgeführt wird, bis zum [`MCP_TIMEOUT`](/docs/de/env-vars)-Startup-Timeout, standardmäßig 30 Sekunden; ein Server mit einer [zwischengespeicherten Tool-Liste](/docs/de/mcp#managing-your-servers) überspringt das Warten und verbindet sich bei der ersten Verwendung. Das Warten erfordert Claude Code v2.1.221 oder später | `claude --mcp-config ./mcp.json` |111| `--mcp-config` | Laden Sie MCP-Server aus JSON-Dateien oder Strings (durch Leerzeichen getrennt). Wenn Sie diesen Flag mit `-p` übergeben, wartet Claude Code darauf, dass noch ausstehende Server verbunden werden, bevor der erste Turn ausgeführt wird, bis zum [`MCP_TIMEOUT`](/docs/de/env-vars)-Startup-Timeout, standardmäßig 30 Sekunden; ein Server mit einer [zwischengespeicherten Tool-Liste](/docs/de/mcp#managing-your-servers) überspringt das Warten und verbindet sich bei der ersten Verwendung. Das Warten erfordert Claude Code v2.1.221 oder später | `claude --mcp-config ./mcp.json` |

112| `--model` | Legt das Modell für die aktuelle Sitzung mit einem [Modellalias](/docs/de/model-config#model-aliases) wie `sonnet`, `opus`, `haiku` oder `fable` oder einem vollständigen Modellnamen fest. Überschreibt die [`model`](/docs/de/settings-reference#model)-Einstellung und [`ANTHROPIC_MODEL`](/docs/de/model-config#environment-variables) | `claude --model claude-sonnet-5` |112| `--model` | Legt das Modell für die aktuelle Sitzung mit einem [Modellalias](/docs/de/model-config#model-aliases) wie `sonnet`, `opus`, `haiku` oder `fable` oder einem vollständigen Modellnamen fest. Überschreibt die [`model`](/docs/de/settings-reference#model)-Einstellung und [`ANTHROPIC_MODEL`](/docs/de/model-config#environment-variables) | `claude --model claude-sonnet-5` |

Details

307| | Verfügbar in Cloud-Sitzungen | Warum |307| | Verfügbar in Cloud-Sitzungen | Warum |

308| :- | :- | :- |308| :- | :- | :- |

309| Die `CLAUDE.md` Ihres Repos | Ja | Teil des Klons |309| Die `CLAUDE.md` Ihres Repos | Ja | Teil des Klons |

310| Die `.claude/settings.json`-Hooks und Berechtigungsregeln Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons. Eine Sitzung mit mehreren Repositorys, einschließlich eines [Projekt](/docs/de/claude-projects#what-threads-pick-up-from-your-repositories)-Threads, startet über den Klonen und liest sie nicht |310| Die `.claude/settings.json`-Hooks und Berechtigungsregeln Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons. Für eine Sitzung mit mehreren Repositorys siehe [welche Einstellungen sie liest](/docs/de/settings#settings-in-cloud-sessions) |

311| Die `.mcp.json` MCP-Server Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons, gefunden aus dem Arbeitsverzeichnis der Sitzung |311| Die `.mcp.json` MCP-Server Ihres Repos | Ja, in einer Sitzung mit einem Repository | Teil des Klons, gefunden aus dem Arbeitsverzeichnis der Sitzung. Für eine selbstgehostete Umgebung siehe [welche Repository-Einstellungen gelten](/docs/de/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories) |

312| Das `.claude/rules/` Ihres Repos | Ja | Teil des Klons |312| Das `.claude/rules/` Ihres Repos | Ja | Teil des Klons |

313| Die `.claude/skills/`, `.claude/agents/`, `.claude/commands/` Ihres Repos | Ja | Teil des Klons |313| Die `.claude/skills/`, `.claude/agents/`, `.claude/commands/` Ihres Repos | Ja | Teil des Klons |

314| Plugins und Marketplaces, die in der `.claude/settings.json` Ihres Repos deklariert sind | Nein | Eine Cloud-Sitzung installiert nicht die Plugins, die ein Repository unter [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) aktiviert, einschließlich solcher aus den Marketplaces, die es unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) auflistet |314| Plugins und Marketplaces, die in der `.claude/settings.json` Ihres Repos deklariert sind | Nein | Eine Cloud-Sitzung installiert nicht die Plugins, die ein Repository unter [`enabledPlugins`](/docs/de/settings-reference#enabledplugins) aktiviert, einschließlich solcher aus den Marketplaces, die es unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) auflistet |


575 575 

576SessionStart-Hooks verhalten sich in der Cloud genauso wie lokal, mit diesen Vorbehalten:576SessionStart-Hooks verhalten sich in der Cloud genauso wie lokal, mit diesen Vorbehalten:

577 577 

578* **Ein Repository pro Sitzung**: Eine Sitzung mit mehreren Repositorys lädt keine Hooks aus der `.claude/settings.json` eines Repositorys, daher wird ein SessionStart-Hook, den Sie dort definieren, nicht ausgeführt. Installieren Sie Abhängigkeiten für diese Sitzungen stattdessen mit einem [Setup-Skript](#setup-scripts).578* **Ein Repository pro Sitzung**: In einer von Anthropic gehosteten Umgebung lädt eine Sitzung mit mehreren Repositorys keine Hooks aus der `.claude/settings.json` eines Repositorys, daher wird ein SessionStart-Hook, den Sie dort definieren, nicht ausgeführt. Installieren Sie Abhängigkeiten für diese Sitzungen stattdessen mit einem [Setup-Skript](#setup-scripts). Für eine selbst gehostete Umgebung siehe [welche Repository-Einstellungen gelten](/docs/de/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories).

579* **Keine Cloud-Only-Scoping**: Hooks werden in lokalen und Cloud-Sitzungen ausgeführt. Um die lokale Ausführung zu überspringen, beenden Sie früh, es sei denn, die Umgebungsvariable `CLAUDE_CODE_REMOTE` ist `true`, wie das [Abhängigkeitsinstallations-Skript](#install-dependencies-with-a-sessionstart-hook) es tut.579* **Keine Cloud-Only-Scoping**: Hooks werden in lokalen und Cloud-Sitzungen ausgeführt. Um die lokale Ausführung zu überspringen, beenden Sie früh, es sei denn, die Umgebungsvariable `CLAUDE_CODE_REMOTE` ist `true`, wie das [Abhängigkeitsinstallations-Skript](#install-dependencies-with-a-sessionstart-hook) es tut.

580* **Erfordert Netzwerkzugriff**: Installationsbefehle müssen Paket-Registries erreichen. Wenn Ihre Umgebung **Keine** Netzwerkzugriff verwendet, schlagen diese Hooks fehl. Die [Standard-Zulassungsliste](#default-allowed-domains) unter **Vertraut** deckt npm, PyPI, RubyGems und crates.io ab.580* **Erfordert Netzwerkzugriff**: Installationsbefehle müssen Paket-Registries erreichen. Wenn Ihre Umgebung **Keine** Netzwerkzugriff verwendet, schlagen diese Hooks fehl. Die [Standard-Zulassungsliste](#default-allowed-domains) unter **Vertraut** deckt npm, PyPI, RubyGems und crates.io ab.

581* **Proxy-Kompatibilität**: In von Anthropic gehosteten Umgebungen wird der gesamte ausgehende Datenverkehr durch einen [Sicherheits-Proxy](#security-proxy) geleitet, und einige Paket-Manager funktionieren nicht korrekt damit; Bun ist ein bekanntes Beispiel. In einer [selbst gehosteten Umgebung](/docs/de/self-hosted-environments-deploy#default-deny-egress) wird der ausgehende Datenverkehr stattdessen durch Ihre eigene Netzwerk-Grenze geleitet.581* **Proxy-Kompatibilität**: In von Anthropic gehosteten Umgebungen wird der gesamte ausgehende Datenverkehr durch einen [Sicherheits-Proxy](#security-proxy) geleitet, und einige Paket-Manager funktionieren nicht korrekt damit; Bun ist ein bekanntes Beispiel. In einer [selbst gehosteten Umgebung](/docs/de/self-hosted-environments-deploy#default-deny-egress) wird der ausgehende Datenverkehr stattdessen durch Ihre eigene Netzwerk-Grenze geleitet.

desktop.md +1 −1

Details

396 Arbeiten Sie parallel mit Sitzungen396 Arbeiten Sie parallel mit Sitzungen

397</h3>397</h3>

398 398 

399Klicken Sie auf **+ Neue Sitzung** in der Seitenleiste, oder drücken Sie **Cmd+N** auf macOS oder **Ctrl+N** auf Windows, um an mehreren Aufgaben parallel zu arbeiten. Drücken Sie **Ctrl+Tab** und **Ctrl+Shift+Tab**, um durch Sitzungen in der Seitenleiste zu zyklisieren. Für Git-Repositories wählen Sie die **worktree**-Option neben dem Branch-Namen, um der Sitzung ihre eigene isolierte Kopie Ihres Projekts mit [Git worktrees](/docs/de/worktrees) zu geben, sodass Änderungen in einer Sitzung andere Sitzungen nicht beeinflussen, bis Sie sie committen.399Klicken Sie auf **+ Neue Sitzung** in der Seitenleiste, oder drücken Sie **Cmd+N** auf macOS oder **Ctrl+N** auf Windows, um an mehreren Aufgaben parallel zu arbeiten. Drücken Sie **Ctrl+Tab** und **Ctrl+Shift+Tab**, um durch Sitzungen in der Seitenleiste zu zyklisieren. Für Git-Repositories wählen Sie die **worktree**-Option neben dem Branch-Namen, um der Sitzung ihre eigene isolierte Kopie Ihres Projekts mit [Git worktrees](/docs/de/worktrees) zu geben.

400 400 

401Um zwei Sitzungen gleichzeitig anzuzeigen, halten Sie **Cmd** auf macOS oder **Ctrl** auf Windows gedrückt und klicken Sie auf eine Sitzung in der Seitenleiste. Die Sitzung wird in einem zweiten Bereich neben dem bereits geöffneten angezeigt. Während die Aufteilung aktiv ist, ersetzt das Klicken auf eine andere Sitzung in der Seitenleiste denjenigen Bereich, der den Fokus hat. Drücken Sie **Cmd+\\** auf macOS oder **Ctrl+\\** auf Windows, um den fokussierten Bereich zu schließen und zu einer einzelnen Sitzung zurückzukehren.401Um zwei Sitzungen gleichzeitig anzuzeigen, halten Sie **Cmd** auf macOS oder **Ctrl** auf Windows gedrückt und klicken Sie auf eine Sitzung in der Seitenleiste. Die Sitzung wird in einem zweiten Bereich neben dem bereits geöffneten angezeigt. Während die Aufteilung aktiv ist, ersetzt das Klicken auf eine andere Sitzung in der Seitenleiste denjenigen Bereich, der den Fokus hat. Drücken Sie **Cmd+\\** auf macOS oder **Ctrl+\\** auf Windows, um den fokussierten Bereich zu schließen und zu einer einzelnen Sitzung zurückzukehren.

402 402 

env-vars.md +2 −2

Details

204| `CLAUDE_AFK_TIMEOUT_MS` | Wie viele Millisekunden Leerlaufzeit vergehen, bevor ein unbeantworteter [`AskUserQuestion`](/docs/de/tools-reference)-Dialog ohne Sie automatisch fortfährt. Das automatische Fortfahren ist standardmäßig ausgeschaltet; aktivieren Sie es mit der Einstellung [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout). Diese Variable ist eine Überschreibung für Demos und automatisierte Tests: Wenn sie gesetzt ist, hat sie Vorrang vor dieser Einstellung und schaltet das automatische Fortfahren auch dann ein, wenn die Einstellung nicht gesetzt oder `never` ist. Das Setzen von `0` schaltet den Timeout nicht aus, sondern schließt den Dialog sofort. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Vor v2.1.200 war das automatische Fortfahren standardmäßig mit einem Timeout von `60000` (60 Sekunden) eingeschaltet. Erfordert Claude Code v2.1.198 oder höher |204| `CLAUDE_AFK_TIMEOUT_MS` | Wie viele Millisekunden Leerlaufzeit vergehen, bevor ein unbeantworteter [`AskUserQuestion`](/docs/de/tools-reference)-Dialog ohne Sie automatisch fortfährt. Das automatische Fortfahren ist standardmäßig ausgeschaltet; aktivieren Sie es mit der Einstellung [`askUserQuestionTimeout`](/docs/de/settings-reference#askuserquestiontimeout). Diese Variable ist eine Überschreibung für Demos und automatisierte Tests: Wenn sie gesetzt ist, hat sie Vorrang vor dieser Einstellung und schaltet das automatische Fortfahren auch dann ein, wenn die Einstellung nicht gesetzt oder `never` ist. Das Setzen von `0` schaltet den Timeout nicht aus, sondern schließt den Dialog sofort. Wird in [Projekt- und lokalen Einstellungen](/docs/de/settings-reference#variables-claude-code-ignores-in-env) ignoriert. Vor v2.1.200 war das automatische Fortfahren standardmäßig mit einem Timeout von `60000` (60 Sekunden) eingeschaltet. Erfordert Claude Code v2.1.198 oder höher |

205| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Setzen Sie `1`, um alle integrierten [Subagenten](/docs/de/sub-agents)-Typen wie Explore und Plan zu deaktivieren. Gilt nur im nicht interaktiven Modus (das Flag `-p`). Nützlich für SDK-Benutzer, die mit einer leeren Ausgangslage beginnen möchten. Dadurch wird auch `general-purpose` entfernt, der Subagent, den Claude Code ausführt, wenn ein Aufruf des Agent-Tools `subagent_type` weglässt. Ein solcher Aufruf schlägt dann mit [`subagent_type is required`](/docs/de/errors#subagent-type-is-required) fehl |205| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Setzen Sie `1`, um alle integrierten [Subagenten](/docs/de/sub-agents)-Typen wie Explore und Plan zu deaktivieren. Gilt nur im nicht interaktiven Modus (das Flag `-p`). Nützlich für SDK-Benutzer, die mit einer leeren Ausgangslage beginnen möchten. Dadurch wird auch `general-purpose` entfernt, der Subagent, den Claude Code ausführt, wenn ein Aufruf des Agent-Tools `subagent_type` weglässt. Ein solcher Aufruf schlägt dann mit [`subagent_type is required`](/docs/de/errors#subagent-type-is-required) fehl |

206| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Setzen Sie `1`, um das Präfix `mcp__<server>__` bei Tool-Namen von SDK-erstellten MCP-Servern wegzulassen. Tools verwenden ihre ursprünglichen Namen. Nur für die SDK-Nutzung |206| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Setzen Sie `1`, um das Präfix `mcp__<server>__` bei Tool-Namen von SDK-erstellten MCP-Servern wegzulassen. Tools verwenden ihre ursprünglichen Namen. Nur für die SDK-Nutzung |

207| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Stillstands-Timeout in Millisekunden für Subagenten. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog eingeschaltet ist, steigt der Standardwert mit, wie unter [Langsame oder blockierte API-Antworten behandeln](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschrieben. Der Timer wird bei jedem Streaming-Fortschrittsereignis zurückgesetzt; trifft innerhalb des Zeitfensters kein Fortschritt ein, bricht Claude Code den Subagenten ab und meldet den Stillstand an den übergeordneten Agenten |207| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Timeout für Stillstand in Millisekunden für Subagenten. Deckt ab Claude Code v2.1.286 auch [Workflow-Agenten](/docs/de/workflows#when-an-agent-stalls-and-restarts) ab. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog eingeschaltet ist, steigt der Standard mit, wie unter [Langsame oder stockende API-Antworten behandeln](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschrieben |

208| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Legt den Prozentsatz (1-100) des Fensters für die automatische Komprimierung fest, bei dem die automatische Komprimierung ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann den Schwellenwert nicht anheben, daher werden Werte über dem Standardprozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontextlimit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt sowohl für Hauptkonversationen als auch für Subagenten |208| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Legt den Prozentsatz (1-100) des Fensters für die automatische Komprimierung fest, bei dem die automatische Komprimierung ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann den Schwellenwert nicht anheben, daher werden Werte über dem Standardprozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontextlimit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt sowohl für Hauptkonversationen als auch für Subagenten |

209| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie `1`, um das automatische Verschieben lang laufender Agentenaufgaben in den Hintergrund zwangsweise zu aktivieren. Wenn aktiviert, werden Subagenten nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert unter Claude Code v2.1.212 oder höher im nicht interaktiven Modus außerdem das [automatische Verschieben langer MCP-Tool-Aufrufe in den Hintergrund](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) |209| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie `1`, um das automatische Verschieben lang laufender Agentenaufgaben in den Hintergrund zwangsweise zu aktivieren. Wenn aktiviert, werden Subagenten nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert unter Claude Code v2.1.212 oder höher im nicht interaktiven Modus außerdem das [automatische Verschieben langer MCP-Tool-Aufrufe in den Hintergrund](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) |

210| `CLAUDE_AX_PREPARK_MS` | Im [Screenreader-Modus](/docs/de/accessibility) die Anzahl der Millisekunden, die Claude Code wartet, bevor es eine neue oder geänderte Zeile schreibt. Standard `0`, sodass Claude Code nicht wartet. Vor v2.1.287 war der Standardwert `50`. Claude Code begrenzt die Wartezeit auf `5000`. Erfordert Claude Code v2.1.233 oder höher |210| `CLAUDE_AX_PREPARK_MS` | Im [Screenreader-Modus](/docs/de/accessibility) die Anzahl der Millisekunden, die Claude Code wartet, bevor es eine neue oder geänderte Zeile schreibt. Standard `0`, sodass Claude Code nicht wartet. Vor v2.1.287 war der Standardwert `50`. Claude Code begrenzt die Wartezeit auf `5000`. Erfordert Claude Code v2.1.233 oder höher |


378| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Maximales Alter in Millisekunden der letzten Transkriptnachricht, bis zu dem eine mitten im Turn beendete Sitzung beim Fortsetzen automatisch weiterläuft. Ist die letzte Nachricht älter als diese Grenze, überspringt Claude Code die automatische Fortsetzung durch `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` und deren Fortsetzungsnachricht `CLAUDE_CODE_RESUME_PROMPT`, und die Sitzung startet im Leerlauf, sodass Sie explizit fortfahren. Nicht gesetzt oder `0` bedeutet keine Grenze, außer dass ein Turn, dessen letzte Anfrage mit einem API-Fehler fehlgeschlagen ist, nur fortgesetzt wird, solange dieser Fehler weniger als sechs Stunden alt ist. Ein positiver Wert begrenzt jeden Turn, auch diese; ein negativer oder nicht numerischer Wert wendet eine Grenze von einer Stunde an. Startskripte für lang laufende Agenten können dies setzen, damit ein Neustart mit einem alten Transkript keinen veralteten Prompt erneut ausführt. Claude Code setzt selbst eine Grenze von einer Stunde, wenn es eine abgestürzte Sitzung der [Agent-Ansicht](/docs/de/agent-view) neu startet, die ihre Konversation von einer interaktiven Sitzung übernommen hat. Erfordert Claude Code v2.1.211 oder höher |378| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Maximales Alter in Millisekunden der letzten Transkriptnachricht, bis zu dem eine mitten im Turn beendete Sitzung beim Fortsetzen automatisch weiterläuft. Ist die letzte Nachricht älter als diese Grenze, überspringt Claude Code die automatische Fortsetzung durch `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` und deren Fortsetzungsnachricht `CLAUDE_CODE_RESUME_PROMPT`, und die Sitzung startet im Leerlauf, sodass Sie explizit fortfahren. Nicht gesetzt oder `0` bedeutet keine Grenze, außer dass ein Turn, dessen letzte Anfrage mit einem API-Fehler fehlgeschlagen ist, nur fortgesetzt wird, solange dieser Fehler weniger als sechs Stunden alt ist. Ein positiver Wert begrenzt jeden Turn, auch diese; ein negativer oder nicht numerischer Wert wendet eine Grenze von einer Stunde an. Startskripte für lang laufende Agenten können dies setzen, damit ein Neustart mit einem alten Transkript keinen veralteten Prompt erneut ausführt. Claude Code setzt selbst eine Grenze von einer Stunde, wenn es eine abgestürzte Sitzung der [Agent-Ansicht](/docs/de/agent-view) neu startet, die ihre Konversation von einer interaktiven Sitzung übernommen hat. Erfordert Claude Code v2.1.211 oder höher |

379| `CLAUDE_CODE_RESUME_PROMPT` | Überschreibt die Fortsetzungsnachricht, die Claude Code an Claude sendet, wenn `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` einen unterbrochenen Turn fortsetzt, statt dessen Prompt erneut zu senden, oder wenn Sie einen [zurückgestellten Tool-Aufruf](/docs/de/hooks#defer-a-tool-call-for-later) mit `-p` fortsetzen. Standardmäßig `Continue from where you left off.`. Eine leere Zeichenfolge verwendet den Standardwert |379| `CLAUDE_CODE_RESUME_PROMPT` | Überschreibt die Fortsetzungsnachricht, die Claude Code an Claude sendet, wenn `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` einen unterbrochenen Turn fortsetzt, statt dessen Prompt erneut zu senden, oder wenn Sie einen [zurückgestellten Tool-Aufruf](/docs/de/hooks#defer-a-tool-call-for-later) mit `-p` fortsetzen. Standardmäßig `Continue from where you left off.`. Eine leere Zeichenfolge verwendet den Standardwert |

380| `CLAUDE_CODE_RETRY_WATCHDOG` | Auf `1` setzen für unbeaufsichtigte Sitzungen wie Eval-Harnesses, CI-Jobs oder Remote-Worker. Versucht `429`- und `529`-Kapazitätsfehler unbegrenzt erneut, statt nach `CLAUDE_CODE_MAX_RETRIES` Versuchen fehlzuschlagen. Claude Code schlägt sofort fehl, wenn eine Anfrage mit Standardgeschwindigkeit einen `429` erhält, der ein Ausgabenlimit oder aufgebrauchtes Nutzungsguthaben meldet, selbst wenn er von einer [Gateway-Ausgabenobergrenze](/docs/de/errors#spend-limit-reached) stammt, die nach einem Zeitplan zurückgesetzt wird. Vor v2.1.239 versuchte der Watchdog diese unbegrenzt erneut. Informationen zu Anfragen im Fast-Modus finden Sie unter [Rate-Limits handhaben](/docs/de/fast-mode#handle-rate-limits). Der Watchdog wartet zwischen den Versuchen bis zu 5 Minuten oder, wenn die Antwort eine Rücksetzzeit für das Rate-Limit enthält, bis das Limit zurückgesetzt wird, sodass eine Sitzung, die ein Nutzungslimit erreicht, das verbleibende Zeitfenster abwartet. Ab v2.1.199 erhöht er außerdem die standardmäßige Anzahl an Wiederholungsversuchen für andere vorübergehende Fehler wie Serverfehler, Timeouts und abgebrochene Verbindungen auf 300, was etwa drei Stunden Backoff entspricht, und hebt die Obergrenze von 15 für `CLAUDE_CODE_MAX_RETRIES` auf, wenn Sie diese Variable explizit setzen. Erfordert Claude Code v2.1.186 oder höher |380| `CLAUDE_CODE_RETRY_WATCHDOG` | Auf `1` setzen für unbeaufsichtigte Sitzungen wie Eval-Harnesses, CI-Jobs oder Remote-Worker. Versucht `429`- und `529`-Kapazitätsfehler unbegrenzt erneut, statt nach `CLAUDE_CODE_MAX_RETRIES` Versuchen fehlzuschlagen. Claude Code schlägt sofort fehl, wenn eine Anfrage mit Standardgeschwindigkeit einen `429` erhält, der ein Ausgabenlimit oder aufgebrauchtes Nutzungsguthaben meldet, selbst wenn er von einer [Gateway-Ausgabenobergrenze](/docs/de/errors#spend-limit-reached) stammt, die nach einem Zeitplan zurückgesetzt wird. Vor v2.1.239 versuchte der Watchdog diese unbegrenzt erneut. Informationen zu Anfragen im Fast-Modus finden Sie unter [Rate-Limits handhaben](/docs/de/fast-mode#handle-rate-limits). Der Watchdog wartet zwischen den Versuchen bis zu 5 Minuten oder, wenn die Antwort eine Rücksetzzeit für das Rate-Limit enthält, bis das Limit zurückgesetzt wird, sodass eine Sitzung, die ein Nutzungslimit erreicht, das verbleibende Zeitfenster abwartet. Ab v2.1.199 erhöht er außerdem die standardmäßige Anzahl an Wiederholungsversuchen für andere vorübergehende Fehler wie Serverfehler, Timeouts und abgebrochene Verbindungen auf 300, was etwa drei Stunden Backoff entspricht, und hebt die Obergrenze von 15 für `CLAUDE_CODE_MAX_RETRIES` auf, wenn Sie diese Variable explizit setzen. Erfordert Claude Code v2.1.186 oder höher |

381| `CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS` | Maximale Zeit in Millisekunden, die jede API-Anfrage mit dem Abwarten von `429`- und `529`-Fehlern verbringt, wenn `CLAUDE_CODE_RETRY_WATCHDOG` gesetzt ist. Sobald diese Zeit verbraucht ist, beendet der nächste solche Fehler die Anfrage. Geben Sie eine positive ganze Zahl als reine Ziffern an, zum Beispiel `1800000` für 30 Minuten. Wenn nicht gesetzt, ist die Wartezeit unbegrenzt. Erfordert Claude Code v2.1.295 oder höher |

381| `CLAUDE_CODE_SAFE_MODE` | Auf `1` setzen, um im abgesicherten Modus zu starten: CLAUDE.md, Skills, Plugins, Hooks, MCP-Server, benutzerdefinierte Befehle und Agenten, Ausgabestile, Workflows, benutzerdefinierte Designs, benutzerdefinierte Tastenkombinationen, Statuszeilen- und Dateivorschlagsbefehle, LSP-Server und Auto-Memory werden nicht geladen, um eine fehlerhafte Konfiguration zu beheben. Richtlinien aus verwalteten Einstellungen gelten weiterhin, einschließlich über Richtlinien konfigurierter Hooks, Statuszeilen- und Dateivorschlagsbefehle; für verwaltete Plugins, verwaltete Skills, verwaltete CLAUDE.md und über Richtlinien konfigurierte MCP-Server gilt dies nicht. Entspricht der Übergabe von [`--safe-mode`](/docs/de/cli-reference#cli-flags). Direkt gestartete Kindprozesse erben die Variable |382| `CLAUDE_CODE_SAFE_MODE` | Auf `1` setzen, um im abgesicherten Modus zu starten: CLAUDE.md, Skills, Plugins, Hooks, MCP-Server, benutzerdefinierte Befehle und Agenten, Ausgabestile, Workflows, benutzerdefinierte Designs, benutzerdefinierte Tastenkombinationen, Statuszeilen- und Dateivorschlagsbefehle, LSP-Server und Auto-Memory werden nicht geladen, um eine fehlerhafte Konfiguration zu beheben. Richtlinien aus verwalteten Einstellungen gelten weiterhin, einschließlich über Richtlinien konfigurierter Hooks, Statuszeilen- und Dateivorschlagsbefehle; für verwaltete Plugins, verwaltete Skills, verwaltete CLAUDE.md und über Richtlinien konfigurierte MCP-Server gilt dies nicht. Entspricht der Übergabe von [`--safe-mode`](/docs/de/cli-reference#cli-flags). Direkt gestartete Kindprozesse erben die Variable |

382| `CLAUDE_CODE_SCRIPT_CAPS` | JSON-Objekt, das begrenzt, wie oft bestimmte Skripte pro Sitzung aufgerufen werden dürfen, wenn `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` gesetzt ist. Schlüssel sind Teilzeichenfolgen, die mit dem Befehlstext abgeglichen werden; Werte sind ganzzahlige Aufruflimits. Beispielsweise erlaubt `{"deploy.sh": 2}`, dass `deploy.sh` höchstens zweimal aufgerufen wird. Der Abgleich basiert auf Teilzeichenfolgen, sodass Tricks mit Shell-Expansion wie `./scripts/deploy.sh $(evil)` trotzdem gegen die Obergrenze zählen. Eine Auffächerung zur Laufzeit über `xargs` oder `find -exec` wird nicht erkannt; dies ist eine Defense-in-Depth-Kontrolle |383| `CLAUDE_CODE_SCRIPT_CAPS` | JSON-Objekt, das begrenzt, wie oft bestimmte Skripte pro Sitzung aufgerufen werden dürfen, wenn `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` gesetzt ist. Schlüssel sind Teilzeichenfolgen, die mit dem Befehlstext abgeglichen werden; Werte sind ganzzahlige Aufruflimits. Beispielsweise erlaubt `{"deploy.sh": 2}`, dass `deploy.sh` höchstens zweimal aufgerufen wird. Der Abgleich basiert auf Teilzeichenfolgen, sodass Tricks mit Shell-Expansion wie `./scripts/deploy.sh $(evil)` trotzdem gegen die Obergrenze zählen. Eine Auffächerung zur Laufzeit über `xargs` oder `find -exec` wird nicht erkannt; dies ist eine Defense-in-Depth-Kontrolle |

383| `CLAUDE_CODE_SCROLL_SPEED` | Legt den Multiplikator für das Scrollen mit dem Mausrad beim [Vollbild-Rendering](/docs/de/fullscreen#mouse-wheel-scrolling) fest. Akzeptiert jeden positiven Wert bis 20, einschließlich Bruchwerten unter 1 wie `0.5`, um beschleunigtes Trackpad- und Mausradscrollen in Terminals zu verlangsamen, die Mausradereignisse bereits verstärken. Auf `3` setzen, um `vim` zu entsprechen, wenn Ihr Terminal pro Raste ein Mausradereignis ohne Verstärkung sendet. Wird im Terminal der JetBrains-IDE ignoriert, wo Claude Code seine eigene Scroll-Verarbeitung verwendet |384| `CLAUDE_CODE_SCROLL_SPEED` | Legt den Multiplikator für das Scrollen mit dem Mausrad beim [Vollbild-Rendering](/docs/de/fullscreen#mouse-wheel-scrolling) fest. Akzeptiert jeden positiven Wert bis 20, einschließlich Bruchwerten unter 1 wie `0.5`, um beschleunigtes Trackpad- und Mausradscrollen in Terminals zu verlangsamen, die Mausradereignisse bereits verstärken. Auf `3` setzen, um `vim` zu entsprechen, wenn Ihr Terminal pro Raste ein Mausradereignis ohne Verstärkung sendet. Wird im Terminal der JetBrains-IDE ignoriert, wo Claude Code seine eigene Scroll-Verarbeitung verwendet |


590* [Das Advisor-Tool](/docs/de/advisor#requirements) verwenden591* [Das Advisor-Tool](/docs/de/advisor#requirements) verwenden

591* [Kommentare zu einem Artefakt](/docs/de/artifacts#collect-comments-on-an-artifact) lesen oder beantworten592* [Kommentare zu einem Artefakt](/docs/de/artifacts#collect-comments-on-an-artifact) lesen oder beantworten

592* Claude [das öffentliche Artefakt einer anderen Organisation](/docs/de/artifacts#read-an-artifact-shared-with-you) lesen lassen593* Claude [das öffentliche Artefakt einer anderen Organisation](/docs/de/artifacts#read-an-artifact-shared-with-you) lesen lassen

593* Claude Code claude.ai-Konnektor-Server auf [MCP-Protokollrevision 2026-07-28](/docs/de/mcp#mcp-client-runtimes) prüfen lassen, es sei denn, Sie setzen `MCP_PROTOCOL_NEGOTIATION=auto`

594* Das [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) standardmäßig für claude.ai- und Console-Konten unter Windows mit installiertem Git Bash erhalten; Claude Code leitet Shell-Befehle über Git Bash, es sei denn, Sie setzen `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. Unter Windows ohne Git Bash bleibt das Tool aktiviert594* Das [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) standardmäßig für claude.ai- und Console-Konten unter Windows mit installiertem Git Bash erhalten; Claude Code leitet Shell-Befehle über Git Bash, es sei denn, Sie setzen `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. Unter Windows ohne Git Bash bleibt das Tool aktiviert

595* [Von Claude entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) erhalten, das Claude Code über ein abgerufenes Flag aktiviert595* [Von Claude entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) erhalten, das Claude Code über ein abgerufenes Flag aktiviert

596* Claude [große Einfügungen als eingefügten statt als getippten Text behandeln](/docs/de/terminal-config#how-claude-treats-pasted-text) lassen; der Inhalt hinter einem Platzhalter `[Pasted text #N]` erreicht Claude ohne Kennzeichnung596* Claude [große Einfügungen als eingefügten statt als getippten Text behandeln](/docs/de/terminal-config#how-claude-treats-pasted-text) lassen; der Inhalt hinter einem Platzhalter `[Pasted text #N]` erreicht Claude ohne Kennzeichnung

errors.md +4 −5

Details

386* Ein Serverfehler oder eine Überlastungsantwort, die eintrifft, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat. Claude Code versucht einen Serverfehler an diesem Punkt bis zu zweimal erneut. Vor v2.1.284 beendete Claude Code den Turn an diesem Punkt mit dem Fehler.386* Ein Serverfehler oder eine Überlastungsantwort, die eintrifft, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat. Claude Code versucht einen Serverfehler an diesem Punkt bis zu zweimal erneut. Vor v2.1.284 beendete Claude Code den Turn an diesem Punkt mit dem Fehler.

387* Unterbrochene Verbindungen. Wenn eine Verbindung während einer Anfrage unterbrochen wird, bevor Claude einen Teil seiner Antwort abgeschlossen hat, einschließlich seines Thinking, sendet Claude Code die Anfrage mit demselben Backoff erneut, und der Turn wird fortgesetzt, auch wenn bereits etwas Text gestreamt wurde. Wird die Verbindung unterbrochen, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, sendet Claude Code die Anfrage stattdessen bis zu zweimal schnell hintereinander erneut und beendet den Turn mit `Connection lost before a response was produced`, wenn die Verbindung an diesem Punkt weiterhin abbricht.387* Unterbrochene Verbindungen. Wenn eine Verbindung während einer Anfrage unterbrochen wird, bevor Claude einen Teil seiner Antwort abgeschlossen hat, einschließlich seines Thinking, sendet Claude Code die Anfrage mit demselben Backoff erneut, und der Turn wird fortgesetzt, auch wenn bereits etwas Text gestreamt wurde. Wird die Verbindung unterbrochen, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, sendet Claude Code die Anfrage stattdessen bis zu zweimal schnell hintereinander erneut und beendet den Turn mit `Connection lost before a response was produced`, wenn die Verbindung an diesem Punkt weiterhin abbricht.

388* Eine Verbindung, bei der Claude Code erkennt, dass sie unterbrochen wurde, weil Ihr Computer während einer Anfrage in den Ruhezustand gewechselt ist. Claude Code behandelt sie als unterbrochene Verbindung gemäß den obigen Regeln; sobald das Label für den Wiederholungsversuch den konkreten Grund nennt, lautet es `Connection lost while your computer was asleep`, und wenn der Turn endet, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, lautet die Meldung `Your computer went to sleep before a response was produced`.388* Eine Verbindung, bei der Claude Code erkennt, dass sie unterbrochen wurde, weil Ihr Computer während einer Anfrage in den Ruhezustand gewechselt ist. Claude Code behandelt sie als unterbrochene Verbindung gemäß den obigen Regeln; sobald das Label für den Wiederholungsversuch den konkreten Grund nennt, lautet es `Connection lost while your computer was asleep`, und wenn der Turn endet, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, lautet die Meldung `Your computer went to sleep before a response was produced`.

389* Ein stockender Antwort-Stream, wenn die Response-Header eingetroffen sind, aber noch nichts von Claudes Antwort angekommen ist, oder wenn Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat: Claude Code bricht die stockende Verbindung ab und sendet die Anfrage höchstens einmal erneut, außerhalb des oben genannten Budgets von 10 Versuchen. Stockt die Antwort ein zweites Mal, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, beendet Claude Code den Turn mit `The response stalled before a response was produced`.389* Ein stockender Antwort-Stream, wenn die Response-Header eingetroffen sind, aber noch nichts von Claudes Antwort angekommen ist, oder wenn Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat: Claude Code bricht die stockende Verbindung ab und streamt die Anfrage höchstens einmal erneut. Stockt die Antwort ein zweites Mal, nachdem Claude das Nachdenken abgeschlossen, aber noch keinen Text und keinen Tool-Aufruf begonnen hat, beendet Claude Code den Turn mit `The response stalled before a response was produced`.

390* Eine Streaming-Anfrage, die die API nie mit Response-Headern beantwortet, auf einer Verbindung, bei der die [First-Byte-Deadline gilt](/docs/de/network-config#streaming-idle-watchdogs): Claude Code bricht sie bei Erreichen der Deadline ab und sendet sie höchstens einmal pro Modellanfrage erneut, innerhalb des Budgets für Wiederholungsversuche, und beendet den Turn dann mit [No response from API](#no-response-from-api), wenn auch dieser Versuch unbeantwortet bleibt. Bei anderen Verbindungen wartet die Anfrage bis zum Ablauf von `API_TIMEOUT_MS`. Wenn Sie `CLAUDE_CODE_RETRY_WATCHDOG` setzen, gilt die Beschränkung auf einen Wiederholungsversuch nicht.390* Eine Streaming-Anfrage, die die API nie mit Response-Headern beantwortet, auf einer Verbindung, bei der die [First-Byte-Deadline gilt](/docs/de/network-config#streaming-idle-watchdogs): Claude Code bricht sie bei Erreichen der Deadline ab und sendet sie höchstens einmal pro Modellanfrage erneut, innerhalb des Budgets für Wiederholungsversuche, und beendet den Turn dann mit [No response from API](#no-response-from-api), wenn auch dieser Versuch unbeantwortet bleibt. Bei anderen Verbindungen wartet die Anfrage bis zum Ablauf von `API_TIMEOUT_MS`. Wenn Sie `CLAUDE_CODE_RETRY_WATCHDOG` setzen, gilt die Beschränkung auf einen Wiederholungsversuch nicht.

391* Eine Streaming-Antwort, die der Inhaltsfilter für die Ausgabe der API stoppt, bevor Claude entweder das Nachdenken abgeschlossen oder einen Text oder Tool-Aufruf begonnen hat. Claude Code sendet die Anfrage einmal erneut, innerhalb des Budgets für Wiederholungsversuche, und zeigt [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) an, wenn der Filter auch die zweite Antwort stoppt.391* Eine Streaming-Antwort, die der Inhaltsfilter für die Ausgabe der API stoppt, bevor Claude entweder das Nachdenken abgeschlossen oder einen Text oder Tool-Aufruf begonnen hat. Claude Code sendet die Anfrage einmal erneut, innerhalb des Budgets für Wiederholungsversuche, und zeigt [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) an, wenn der Filter auch die zweite Antwort stoppt.

392* Vorübergehende 429-Drosselungen, jedoch nicht die `429` eines Gateways wegen eines Ausgabenlimits, die keine Drosselung ist; siehe [Spend limit reached](#spend-limit-reached).392* Vorübergehende 429-Drosselungen, jedoch nicht die `429` eines Gateways wegen eines Ausgabenlimits, die keine Drosselung ist; siehe [Spend limit reached](#spend-limit-reached).


4064 Marketplace ist bereits von einer anderen Quelle hinzugefügt4064 Marketplace ist bereits von einer anderen Quelle hinzugefügt

4065</h3>4065</h3>

4066 4066 

4067Sie haben das Hinzufügen eines Marketplace durch [`/plugin install <plugin> --marketplace <source>`](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command) bestätigt, und der Katalog, den Claude Code aus dieser Quelle abgerufen hat, nennt sich selbst genauso wie ein Marketplace, den Sie bereits von einer anderen Quelle hinzugefügt haben. Claude Code behält den vorhandenen Marketplace bei, anstatt ihn zu ersetzen, und das Plugin wird nicht installiert.4067Sie haben mit [`--marketplace <source>` im Installationsbefehl](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command) eine neue Marketplace-Quelle angegeben, in einer Sitzung oder aus Ihrer Shell. Der Katalog, den Claude Code aus dieser Quelle abgerufen hat, hat denselben Namen wie ein Marketplace, den Sie bereits von einer anderen Quelle hinzugefügt haben. Claude Code behält den vorhandenen Marketplace bei, anstatt ihn zu ersetzen, und das Plugin wird nicht installiert.

4068 4068 

4069```text theme={null}4069```text theme={null}

4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.


4817 Diese Sitzung hat kein gespeichertes Transkript4817 Diese Sitzung hat kein gespeichertes Transkript

4818</h3>4818</h3>

4819 4819 

4820Sie haben sich an eine gestoppte [Hintergrund-Sitzung](/docs/de/agent-view) angehängt, die mit `←` oder `/background` aus einer anderen Konversation in den Hintergrund verschoben wurde und gestoppt wurde, bevor ihre erste Antwort fertig war. Bis diese erste Antwort fertig ist, existiert die Konversation noch nur in der Sitzung, aus der sie in den Hintergrund verschoben wurde, daher lehnt `claude attach` ab, die gestoppte Sitzung zu starten, anstatt eine leere Konversation unter derselben Sitzungs-ID zu beginnen. Die Meldung endet mit dem `claude respawn`-Befehl für diese Sitzung:4820Sie haben sich an eine Sitzung angehängt, die Sie mit `←` oder `/background` [in den Hintergrund verschoben](/docs/de/agent-view#from-inside-a-session) haben und die gestoppt wurde, bevor sie einen eigenen Turn ausgeführt hat. Claude Code konnte die Konversation, aus der Sie sie verschoben haben, nicht finden, daher hat die Sitzung nichts zum Fortsetzen. Die Meldung endet mit dem `claude respawn`-Befehl für diese Sitzung:

4821 4821 

4822```text theme={null}4822```text theme={null}

4823This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.4823This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.


4827 4827 

4828**Was zu tun ist:**4828**Was zu tun ist:**

4829 4829 

4830* Die Konversation, aus der Sie in den Hintergrund verschoben haben, ist intakt: Setzen Sie sie mit [`claude --resume`](/docs/de/sessions) fort oder arbeiten Sie weiterhin darin4830* Um die gestoppte Sitzung neu zu starten, führen Sie `claude respawn <id>` mit der ID aus der Meldung aus, oder drücken Sie `Enter` zweimal auf ihrer Zeile in der Agent-Ansicht

4831* Um die gestoppte Sitzung trotzdem neu zu starten, führen Sie `claude respawn <id>` mit der ID aus der Meldung aus, oder drücken Sie `Enter` zweimal auf ihrer Zeile in der Agent-Ansicht

4832* Wenn die Sitzung eine Antwort fertiggestellt hat und Sie diese Ablehnung immer noch auf einer Version vor v2.1.214 sehen, könnte ein unlesbarer Ordner in `~/.claude/projects` dazu führen, dass der Transkript-Scan die gespeicherte Konversation verpasst; aktualisieren Sie auf v2.1.214 oder später, das unlesbare Ordner während des Scans toleriert4831* Wenn die Sitzung eine Antwort fertiggestellt hat und Sie diese Ablehnung immer noch auf einer Version vor v2.1.214 sehen, könnte ein unlesbarer Ordner in `~/.claude/projects` dazu führen, dass der Transkript-Scan die gespeicherte Konversation verpasst; aktualisieren Sie auf v2.1.214 oder später, das unlesbare Ordner während des Scans toleriert

4833 4832 

4834<h3 id="this-session-is-running-in-another-terminal">4833<h3 id="this-session-is-running-in-another-terminal">

glossary.md +1 −1

Details

511 Worktree Isolation511 Worktree Isolation

512</h3>512</h3>

513 513 

514Ein Isolationsmodus, der Claude in einem separaten Git-Worktree unter `.claude/worktrees/` ausführt, aktiviert mit dem `-w`-Flag oder `isolation: worktree` in der Subagent-Konfiguration. Änderungen bleiben auf einem separaten Branch in einem separaten Verzeichnis, sodass parallele Agenten die Dateien des anderen nicht überschreiben.514Ein Isolationsmodus, der Claude in einem separaten Git-Worktree unter `.claude/worktrees/` ausführt, aktiviert mit dem `-w`-Flag oder `isolation: worktree` in der Subagent-Konfiguration. Änderungen bleiben auf einem separaten Branch in einem separaten Verzeichnis, sodass parallele Agenten jeweils ihre eigene Kopie der Dateien bearbeiten.

515 515 

516Weitere Informationen: [Führen Sie parallele Sitzungen mit Git Worktrees aus](/docs/de/worktrees)516Weitere Informationen: [Führen Sie parallele Sitzungen mit Git Worktrees aus](/docs/de/worktrees)

517 517 

goal.md +4 −4

Details

61 Effektive Bedingung schreiben61 Effektive Bedingung schreiben

62</h3>62</h3>

63 63 

64Der [Evaluator](#how-evaluation-works) beurteilt Ihre Bedingung anhand dessen, was Claude im Gespräch dargelegt hat. Er führt Befehle nicht aus oder liest Dateien unabhängig, daher schreiben Sie die Bedingung als etwas, das Claudes eigene Ausgabe demonstrieren kann. „Alle Tests in `test/auth` bestanden" funktioniert, weil Claude die Tests ausführt und das Ergebnis im Transkript für den Evaluator zum Lesen landet.64Der [Evaluator](#how-evaluation-works) beurteilt Ihre Bedingung anhand dessen, was Claude im Gespräch dargelegt hat. Er führt Befehle nicht aus oder liest Dateien unabhängig, daher schreiben Sie die Bedingung als etwas, das Claudes eigene Ausgabe demonstrieren kann. „Alle Tests in `test/auth` bestanden“ funktioniert, weil Claude die Tests ausführt und das Ergebnis im Transkript für den Evaluator zum Lesen landet.

65 65 

66Eine Bedingung, die über viele Turns hinweg hält, hat normalerweise:66Eine Bedingung, die über viele Turns hinweg hält, hat normalerweise:

67 67 

68* **Einen messbaren Endzustand**: ein Testergebnis, ein Build-Exit-Code, eine Dateianzahl, eine leere Warteschlange68* **Einen messbaren Endzustand**: ein Testergebnis, ein Build-Exit-Code, eine Dateianzahl, eine leere Warteschlange

69* **Eine angegebene Überprüfung**: wie Claude es beweisen sollte, z. B. „`npm test` beendet mit 0" oder „`git status` ist sauber"69* **Eine angegebene Überprüfung**: wie Claude es beweisen sollte, z. B. „`npm test` beendet mit 0“ oder „`git status` ist sauber“

70* **Einschränkungen, die wichtig sind**: alles, das sich auf dem Weg dorthin nicht ändern darf, z. B. „keine andere Testdatei wird geändert"70* **Einschränkungen, die wichtig sind**: alles, das sich auf dem Weg dorthin nicht ändern darf, z. B. „keine andere Testdatei wird geändert“

71 71 

72Die Bedingung kann bis zu 4.000 Zeichen lang sein.72Die Bedingung kann bis zu 4.000 Zeichen lang sein.

73 73 


127claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"127claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"

128```128```

129 129 

130Mit der Standard-Textausgabe wird nichts gedruckt, bis die Ausführung endet, daher kann ein Ziel, das viele Turns läuft, stecken bleiben. Fügen Sie `--output-format stream-json --verbose` hinzu, um jede Nachricht auszugeben, während die Schleife läuft.130Mit der Standard-Textausgabe wird Claudes abschließende Antwort erst ausgegeben, wenn die Schleife endet, daher kann ein Ziel, das viele Turns läuft, so aussehen, als würde es hängen. Fügen Sie `--output-format stream-json --verbose` hinzu, um jede Nachricht auszugeben, während die Schleife läuft.

131 131 

132Unterbrechen Sie den Prozess mit Ctrl+C, um ein nicht-interaktives Ziel zu stoppen, bevor es sich auflöst.132Unterbrechen Sie den Prozess mit Ctrl+C, um ein nicht-interaktives Ziel zu stoppen, bevor es sich auflöst.

133 133 

headless.md +14 −12

Details

22 22 

23Fügen Sie das Flag `-p` (oder `--print`) zu jedem `claude`-Befehl hinzu, um ihn nicht-interaktiv auszuführen. Nicht jede [CLI-Option](/docs/de/cli-reference) kombiniert mit `-p`. Claude Code lehnt `--bg` ab und lehnt `--cloud` mit einer Aufgabenbeschreibung mit einem Fehler ab, der den Konflikt benennt; `--cloud` mit einer Sitzungs-ID und `-p` [reiht stattdessen eine Nachricht in diese Cloud-Sitzung ein](/docs/de/claude-code-on-the-web#send-follow-ups-from-the-cli) und beendet sich. Optionen, die Sie häufig mit `-p` kombinieren, sind:23Fügen Sie das Flag `-p` (oder `--print`) zu jedem `claude`-Befehl hinzu, um ihn nicht-interaktiv auszuführen. Nicht jede [CLI-Option](/docs/de/cli-reference) kombiniert mit `-p`. Claude Code lehnt `--bg` ab und lehnt `--cloud` mit einer Aufgabenbeschreibung mit einem Fehler ab, der den Konflikt benennt; `--cloud` mit einer Sitzungs-ID und `-p` [reiht stattdessen eine Nachricht in diese Cloud-Sitzung ein](/docs/de/claude-code-on-the-web#send-follow-ups-from-the-cli) und beendet sich. Optionen, die Sie häufig mit `-p` kombinieren, sind:

24 24 

25* `--continue` zum [Fortsetzen von Gesprächen](#continue-conversations)25* `--continue` zum [Fortsetzen von Konversationen](#continue-conversations)

26* `--allowedTools` zum [automatischen Genehmigen von Tools](#auto-approve-tools)26* `--allowedTools` zum [automatischen Genehmigen von Tools](#auto-approve-tools)

27* `--output-format` für [strukturierte Ausgabe](#get-structured-output)27* `--output-format` für [strukturierte Ausgabe](#get-structured-output)

28 28 


38 Schneller starten mit Bare-Modus38 Schneller starten mit Bare-Modus

39</h3>39</h3>

40 40 

41Fügen Sie `--bare` hinzu, um die Startzeit zu verkürzen, indem Sie die automatische Erkennung von Hooks, Skills, benutzerdefinierten Befehlen, [Subagenten](/docs/de/sub-agents), installierten Plugins, MCP-Servern, automatischem Memory und CLAUDE.md überspringen. Ohne diese Option lädt `claude -p` denselben [Kontext](/docs/de/how-claude-code-works#the-context-window) wie eine interaktive Sitzung, einschließlich aller im Arbeitsverzeichnis oder in `~/.claude` konfigurierten Inhalte.41Fügen Sie `--bare` hinzu, um die Startzeit zu verkürzen, indem Sie die automatische Erkennung von Hooks, Skills, benutzerdefinierten Befehlen, [Subagenten](/docs/de/sub-agents), installierten Plugins, MCP-Servern, Auto-Memory und CLAUDE.md überspringen. Ohne diese Option lädt `claude -p` denselben [Kontext](/docs/de/how-claude-code-works#the-context-window) wie eine interaktive Sitzung, einschließlich aller im Arbeitsverzeichnis oder in `~/.claude` konfigurierten Inhalte.

42 42 

43Der Bare-Modus ist nützlich für CI und Skripte, bei denen Sie auf jedem Computer das gleiche Ergebnis benötigen. Ein Hook in der `~/.claude` eines Teamkollegen oder ein MCP-Server in der `.mcp.json` des Projekts wird nicht ausgeführt, da der Bare-Modus diese nie liest. Ein Verzeichnis, das Sie mit `--add-dir` benennen, ist eine teilweise Ausnahme: Der Bare-Modus lädt Skills aus seinem `.claude/skills/`-Ordner, überspringt aber immer noch seine `.claude/commands/`- und `.claude/agents/`-Ordner. [Skills aus zusätzlichen Verzeichnissen](/docs/de/skills#skills-from-additional-directories) behandelt, was geladen wird und was nicht.43Der Bare-Modus ist nützlich für CI und Skripte, bei denen Sie auf jedem Computer das gleiche Ergebnis benötigen. Ein Hook in der `~/.claude` eines Teamkollegen oder ein MCP-Server in der `.mcp.json` des Projekts wird nicht ausgeführt, da der Bare-Modus diese nie liest. Ein Verzeichnis, das Sie mit `--add-dir` benennen, ist eine teilweise Ausnahme: Der Bare-Modus lädt Skills aus seinem `.claude/skills/`-Ordner, überspringt aber immer noch seine `.claude/commands/`- und `.claude/agents/`-Ordner. [Skills aus zusätzlichen Verzeichnissen](/docs/de/skills#skills-from-additional-directories) behandelt, was geladen wird und was nicht.

44 44 

45Ohne `--bare` führt eine `-p`-Sitzung die Hooks in der `.claude/settings.json` eines Projekts aus und verbindet die Server in seiner `.mcp.json`, auch in einem Ordner, dem Sie nie vertraut haben. Eine `-p`-Sitzung zeigt keinen Workspace-Trust-Dialog und keine Pro-Server-Genehmigungsaufforderung an. [Was vor dem Vertrauen in einen Ordner ausgeführt wird](/docs/de/permissions#what-runs-before-you-trust-a-folder) behandelt jede Art von Repository-Inhalt unter `-p` und wie Sie ihn fernhalten.45Ohne `--bare` führt eine `-p`-Sitzung die Hooks in der `.claude/settings.json` eines Projekts aus und verbindet die Server in seiner `.mcp.json`, auch in einem Ordner, dem Sie nie vertraut haben. Eine `-p`-Sitzung zeigt keinen Workspace-Trust-Dialog und keine Berechtigungsabfrage pro Server an. [Was vor dem Vertrauen in einen Ordner ausgeführt wird](/docs/de/permissions#what-runs-before-you-trust-a-folder) behandelt jede Art von Repository-Inhalt unter `-p` und wie Sie ihn fernhalten.

46 46 

47Dieses Beispiel führt eine einmalige Zusammenfassungsaufgabe im Bare-Modus aus und genehmigt das Read-Tool im Voraus, sodass der Aufruf ohne Genehmigungsaufforderung abgeschlossen wird. Setzen Sie `ANTHROPIC_API_KEY` vor der Ausführung, da der Bare-Modus Ihren Abonnement-Login nicht verwendet:47Dieses Beispiel führt eine einmalige Zusammenfassungsaufgabe im Bare-Modus aus und genehmigt das Read-Tool im Voraus, sodass der Aufruf ohne Berechtigungsabfrage abgeschlossen wird. Setzen Sie `ANTHROPIC_API_KEY` vor der Ausführung, da der Bare-Modus Ihren Abonnement-Login nicht verwendet:

48 48 

49```bash theme={null}49```bash theme={null}

50claude --bare -p "Summarize README.md" --allowedTools "Read"50claude --bare -p "Summarize README.md" --allowedTools "Read"


52 52 

53Im Bare-Modus liest Claude Code niemals OAuth-Anmeldedaten oder den System-Schlüsselbund. Für die Anthropic API setzen Sie `ANTHROPIC_API_KEY` in der Umgebung mit einem Schlüssel, der in der [Claude Console](https://platform.claude.com) erstellt wurde, oder geben Sie einen `apiKeyHelper` in der `--settings`-JSON an. Amazon Bedrock, Google Clouds Agent Platform und Microsoft Foundry lesen weiterhin ihre eigenen Provider-Anmeldedaten wie gewohnt.53Im Bare-Modus liest Claude Code niemals OAuth-Anmeldedaten oder den System-Schlüsselbund. Für die Anthropic API setzen Sie `ANTHROPIC_API_KEY` in der Umgebung mit einem Schlüssel, der in der [Claude Console](https://platform.claude.com) erstellt wurde, oder geben Sie einen `apiKeyHelper` in der `--settings`-JSON an. Amazon Bedrock, Google Clouds Agent Platform und Microsoft Foundry lesen weiterhin ihre eigenen Provider-Anmeldedaten wie gewohnt.

54 54 

55Im Bare-Modus hat Claude Zugriff auf die Bash-, Dateilesungs- und Dateibearbeitungs-Tools. Übergeben Sie jeden benötigten Kontext mit einem Flag:55Im Bare-Modus hat Claude Zugriff auf die Bash-, Dateilese- und Dateibearbeitungs-Tools. Übergeben Sie jeden benötigten Kontext mit einem Flag:

56 56 

57| Zum Laden | Verwenden Sie |57| Zum Laden | Verwenden Sie |

58| - | - |58| - | - |

59| Systemanforderungen hinzufügen | `--append-system-prompt`, `--append-system-prompt-file` |59| Ergänzungen zum System-Prompt | `--append-system-prompt`, `--append-system-prompt-file` |

60| Einstellungen | `--settings <file-or-json>` |60| Einstellungen | `--settings <file-or-json>` |

61| MCP-Server | `--mcp-config <file-or-json>` |61| MCP-Server | `--mcp-config <file-or-json>` |

62| [Benutzerdefinierte Agenten](/docs/de/sub-agents#choose-the-subagent-scope) | `--agents <file-or-json>` |62| [Benutzerdefinierte Agenten](/docs/de/sub-agents#choose-the-subagent-scope) | `--agents <file-or-json>` |


84 84 

85Die Ausführung wartet auf Hintergrundarbeit wie Hintergrundbefehle, Subagenten und Workflows, Monitor-Watches und ausstehende `/loop`-Wakeups:85Die Ausführung wartet auf Hintergrundarbeit wie Hintergrundbefehle, Subagenten und Workflows, Monitor-Watches und ausstehende `/loop`-Wakeups:

86 86 

87* **[Hintergrundbefehle](/docs/de/tools-reference#background-commands)**: Bei einem Befehl, den die Hauptkonversation gestartet hat, z. B. einem Dev-Server oder einem Watch-Build, wartet die Ausführung, bis der Befehl beendet wird oder sein [Zeitlimit](/docs/de/tools-reference#time-limit-for-background-commands) erreicht. Claude führt dann einen weiteren Turn mit dem Ergebnis aus, und das Ergebnis dieses Turns wird zum letzten der Ausführung, also zu dem, das die Ausgabeformate `text` und `json` ausgeben. Solange der Befehl läuft, beendet die Obergrenze von 10 Minuten das Warten nicht.87* **[Hintergrundbefehle](/docs/de/tools-reference#background-commands)**: Bei einem Befehl, den die Hauptkonversation gestartet hat, z. B. einem Dev-Server oder einem Watch-Build, wartet die Ausführung, bis der Befehl beendet wird oder sein [Zeitlimit](/docs/de/tools-reference#time-limit-for-background-commands) erreicht. Claude führt dann einen weiteren Turn mit dem Ergebnis aus. Solange der Befehl läuft, beendet die Obergrenze von 10 Minuten das Warten nicht.

88* **Hintergrund-[Subagenten](/docs/de/sub-agents) und Workflows**: Die Ausführung bleibt offen, bis diese Arbeit abgeschlossen ist, da ihr Ergebnis Teil der endgültigen Ausgabe ist.88* **Hintergrund-[Subagenten](/docs/de/sub-agents) und Workflows**: Die Ausführung bleibt offen, bis diese Arbeit abgeschlossen ist, da ihr Ergebnis Teil der endgültigen Ausgabe ist.

89* **[Monitor](/docs/de/tools-reference#monitor-tool)-Watches**: Die Ausführung wartet, bis die Watch abläuft oder die Obergrenze von 10 Minuten das Warten beendet, je nachdem, was zuerst eintritt. Während des Wartens antwortet Claude weiterhin auf das, was die Watch meldet. Standardmäßig läuft eine Watch fünf Minuten nach dem Start durch Claude ab.89* **[Monitor](/docs/de/tools-reference#monitor-tool)-Watches**: Die Ausführung wartet, bis die Watch abläuft oder die Obergrenze von 10 Minuten das Warten beendet, je nachdem, was zuerst eintritt. Während des Wartens antwortet Claude weiterhin auf das, was die Watch meldet. Standardmäßig läuft eine Watch fünf Minuten nach dem Start durch Claude ab.

90* **Ausstehende Wakeups**: Wenn Claude in einer Ausführung, deren Prompt Sie als Text statt mit `--input-format stream-json` übergeben haben, einen [selbstgetakteten `/loop`-Wakeup](/docs/de/scheduled-tasks#let-claude-choose-the-interval) geplant hat, wartet die Ausführung auf das Auslösen jedes Wakeups und führt dessen Iteration aus, bis die [Schleife endet](/docs/de/scheduled-tasks#stop-a-loop), auch über die Obergrenze von 10 Minuten hinaus.90* **Ausstehende Wakeups**: Wenn Claude in einer Ausführung, deren Prompt Sie als Text statt mit `--input-format stream-json` übergeben haben, einen [selbstgetakteten `/loop`-Wakeup](/docs/de/scheduled-tasks#let-claude-choose-the-interval) geplant hat, wartet die Ausführung auf das Auslösen jedes Wakeups und führt dessen Iteration aus, bis die [Schleife endet](/docs/de/scheduled-tasks#stop-a-loop), auch über die Obergrenze von 10 Minuten hinaus.

91 91 

92Wenn die Ausführung ihre [`--max-budget-usd`](/docs/de/cli-reference#cli-flags)-Obergrenze erreicht, stoppt Claude Code die verbleibende Hintergrundarbeit, statt zu warten.92Wenn die Ausführung ihre [`--max-budget-usd`](/docs/de/cli-reference#cli-flags)-Obergrenze erreicht, stoppt Claude Code die verbleibende Hintergrundarbeit, statt zu warten.

93 93 

94Wenn Hintergrundarbeit einen weiteren Turn startet, gibt die Ausführung mit der Standardausgabe `text` das Ergebnis jedes Turns aus und mit der Ausgabe `json` das Ergebnis des letzten Turns. Vor v2.1.295 gab die Ausführung auch mit der Ausgabe `text` nur das Ergebnis des letzten Turns aus.

95 

94<h3 id="stop-a-run-with-sigterm">96<h3 id="stop-a-run-with-sigterm">

95 Beenden Sie eine Ausführung mit SIGTERM97 Beenden Sie eine Ausführung mit SIGTERM

96</h3>98</h3>

97 99 

98Wenn Sie eine `claude -p`-Ausführung mit SIGTERM beenden, z. B. mit `kill` oder von einem Prozessüberwacher, beendet sich Claude Code mit Code 143. Claude Code lässt den laufenden Turn unvollständig und zeichnet kein Ergebnis dafür auf. Um den Turn stattdessen zu beenden, senden Sie SIGINT oder rufen Sie die `interrupt()`-Methode des Agent SDK auf, bevor Sie den Prozess stoppen.100Wenn Sie eine `claude -p`-Ausführung mit SIGTERM beenden, z. B. mit `kill` oder von einem Prozessüberwacher, beendet sich Claude Code mit Code 143. Claude Code lässt den laufenden Turn unvollständig und zeichnet kein Ergebnis dafür auf. Um den Turn stattdessen zu beenden, senden Sie SIGINT oder rufen Sie die `interrupt()`-Methode des Agent SDK auf, bevor Sie den Prozess stoppen.

99 101 

100Bei SIGTERM beendet Claude Code die Prozessstruktur aller noch laufenden Bash-Befehle. Claude Code führt dann [`SessionEnd`-Hooks](/docs/de/hooks#sessionend) aus und beendet sich. Beim Beenden startet Claude Code keinen neuen Tool-Aufruf, sendet keine neue Modellanfrage und führt keinen Hook außer `SessionEnd` aus. Wenn die Ausführung in der Mitte eines Befehls oder beim Warten auf eine Antwort auf eine Genehmigungsaufforderung war, als das Signal ankam, behandelt Claude Code diesen Schritt wie folgt:102Bei SIGTERM beendet Claude Code die Prozessstruktur aller noch laufenden Bash-Befehle. Claude Code führt dann [`SessionEnd`-Hooks](/docs/de/hooks#sessionend) aus und beendet sich. Beim Beenden startet Claude Code keinen neuen Tool-Aufruf, sendet keine neue Modellanfrage und führt keinen Hook außer `SessionEnd` aus. Wenn die Ausführung in der Mitte eines Befehls oder beim Warten auf eine Berechtigungsabfrage war, als das Signal ankam, behandelt Claude Code diesen Schritt wie folgt:

101 103 

102* **Ausführung eines Befehls**: Claude Code zeichnet den Befehl als beendet in der Sitzung auf.104* **Ausführung eines Befehls**: Claude Code zeichnet den Befehl als beendet in der Sitzung auf.

103* **Warten auf eine Antwort auf eine Genehmigungsaufforderung**: Wenn Sie SIGTERM an den Prozess senden, lässt Claude Code die Aufforderung unbeantwortet. Wenn Ihr Programm die Sitzung über das Agent SDK schließt, beendet das SDK Claude Codes Eingabe vor dem Senden eines Signals, und Claude Code bricht die Aufforderung auf, sobald die Eingabe endet.105* **Warten auf eine Antwort auf eine Berechtigungsabfrage**: Wenn Sie SIGTERM an den Prozess senden, lässt Claude Code die Abfrage unbeantwortet. Wenn Ihr Programm die Sitzung über das Agent SDK schließt, beendet das SDK Claude Codes Eingabe vor dem Senden eines Signals, und Claude Code bricht die Abfrage ab, sobald die Eingabe endet.

104 106 

105Wenn Sie [die Sitzung fortsetzen](#continue-conversations), lässt Claude Code den unterbrochenen Turn unverändert, und Ihre nächste Eingabe treibt das Gespräch voran. Um Claude Code stattdessen den unterbrochenen Turn beim Fortsetzen fortzusetzen, setzen Sie [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN=1`](/docs/de/env-vars).107Wenn Sie [die Sitzung fortsetzen](#continue-conversations), lässt Claude Code den unterbrochenen Turn unverändert, und Ihr nächster Prompt bestimmt den weiteren Verlauf der Konversation. Damit Claude Code stattdessen den unterbrochenen Turn beim Fortsetzen weiterführt, setzen Sie [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN=1`](/docs/de/env-vars).

106 108 

107<h3 id="if-the-working-directory-is-deleted">109<h3 id="if-the-working-directory-is-deleted">

108 Wenn das Arbeitsverzeichnis gelöscht wird110 Wenn das Arbeitsverzeichnis gelöscht wird


262| `type` | `"system"` | Nachrichtentyp |264| `type` | `"system"` | Nachrichtentyp |

263| `subtype` | `"api_retry"` | kennzeichnet dies als Wiederholungsereignis |265| `subtype` | `"api_retry"` | kennzeichnet dies als Wiederholungsereignis |

264| `attempt` | Ganzzahl | aktuelle Versuchsnummer, beginnend bei 1 |266| `attempt` | Ganzzahl | aktuelle Versuchsnummer, beginnend bei 1 |

265| `max_retries` | Ganzzahl | insgesamt zulässige Wiederholungsversuche für die Ursache dieses Fehlers, die weniger als das sitzungsweite Budget sein können |267| `max_retries` | Ganzzahl | insgesamt zulässige Wiederholungsversuche für die Ursache dieses Fehlers |

266| `retry_delay_ms` | Ganzzahl | Millisekunden bis zum nächsten Versuch |268| `retry_delay_ms` | Ganzzahl | Millisekunden bis zum nächsten Versuch |

267| `error_status` | Ganzzahl oder null | HTTP-Statuscode des fehlgeschlagenen Versuchs oder `null`, wenn der Versuch keine HTTP-Antwort von der API erhielt |269| `error_status` | Ganzzahl oder null | HTTP-Statuscode des fehlgeschlagenen Versuchs oder `null`, wenn der Versuch keine HTTP-Antwort von der API erhielt |

268| `no_response` | Objekt, optional | nur vorhanden, wenn der fehlgeschlagene Versuch [nicht rechtzeitig Response-Header](/docs/de/errors#no-response-from-api) erhielt. `waited_ms` gibt an, wie lange dieser Versuch gewartet hat, und `retry_wait_ms`, wie lange der Wiederholungsversuch warten wird. In diesen Ereignissen spiegelt `max_retries` den einen Wiederholungsversuch wider, den diese Ursache normalerweise erhält, nicht das sitzungsweite Budget. Erfordert Claude Code v2.1.261 oder später |270| `no_response` | Objekt, optional | nur vorhanden, wenn der fehlgeschlagene Versuch [nicht rechtzeitig Response-Header](/docs/de/errors#no-response-from-api) erhielt. `waited_ms` gibt an, wie lange dieser Versuch gewartet hat, und `retry_wait_ms`, wie lange der Wiederholungsversuch warten wird. Erfordert Claude Code v2.1.261 oder später |

269| `error` | Zeichenkette | Fehlerkategorie: `authentication_failed`, `oauth_org_not_allowed`, `account_on_hold`, `billing_error`, `rate_limit`, `overloaded`, `invalid_request`, `model_not_found`, `server_error`, `max_output_tokens`, `cloud_credential_error` oder `unknown` |271| `error` | Zeichenkette | Fehlerkategorie: `authentication_failed`, `oauth_org_not_allowed`, `account_on_hold`, `billing_error`, `rate_limit`, `overloaded`, `invalid_request`, `model_not_found`, `server_error`, `max_output_tokens`, `cloud_credential_error` oder `unknown` |

270| `uuid` | Zeichenkette | eindeutige Ereigniskennung |272| `uuid` | Zeichenkette | eindeutige Ereigniskennung |

271| `session_id` | Zeichenkette | Sitzung, zu der das Ereignis gehört |273| `session_id` | Zeichenkette | Sitzung, zu der das Ereignis gehört |

hooks.md +19 −8

Details

1237 SessionStart-Entscheidungssteuerung1237 SessionStart-Entscheidungssteuerung

1238</h4>1238</h4>

1239 1239 

1240Claude Code fügt stdout, das es [als reinen Text behandelt](#exit-code-0), dem Kontext von Claude hinzu. Zusätzlich zu den [JSON-Ausgabefeldern](#json-output), die allen Hooks zur Verfügung stehen, können Sie diese ereignisspezifischen Felder zurückgeben:1240Ein SessionStart-Hook kann Kontext für Claude hinzufügen, die erste Benutzernachricht liefern, den Sitzungstitel setzen, Dateien überwachen und Skills neu laden. Geben Sie dafür jeweils das entsprechende Feld zurück, zusätzlich zu den [JSON-Ausgabefeldern](#json-output), die allen Hooks zur Verfügung stehen:

1241 1241 

1242| Feld | Beschreibung |1242| Feld | Beschreibung |

1243| :- | :- |1243| :- | :- |

1244| `additionalContext` | String, der zu Beginn der Konversation vor dem ersten Prompt dem Kontext von Claude hinzugefügt wird. Unter [Kontext für Claude hinzufügen](#add-context-for-claude) erfahren Sie, wie der Text übermittelt wird und was er enthalten sollte |1244| `additionalContext` | String, der zu Beginn der Konversation vor dem ersten Prompt dem Kontext von Claude hinzugefügt wird. Unter [Kontext für Claude hinzufügen](#add-context-for-claude) erfahren Sie, wie der Text übermittelt wird und was er enthalten sollte |

1245| `initialUserMessage` | String, der als erste Benutzernachricht der Sitzung verwendet wird. Gilt im [nicht interaktiven Modus](/docs/de/headless) mit dem Flag `-p`, wo er zum ersten Turn wird, auch wenn kein Prompt angegeben ist. Wenn ein Prompt angegeben ist, folgt dieser als nächster Turn. Anders als `additionalContext`, das an einen bestehenden Turn angehängt wird, erzeugt dies den Turn |1245| `initialUserMessage` | Zeichenkette, die im [nicht interaktiven Modus](/docs/de/headless) mit dem Flag `-p` als erste Benutzernachricht der Sitzung verwendet wird. Sie wird zum ersten Turn, auch wenn Sie keinen Prompt übergeben. Ein Prompt, den Sie übergeben, folgt als nächster Turn |

1246| `sessionTitle` | Legt den Sitzungstitel fest, mit derselben Wirkung wie `/rename`. Verwenden Sie dies, um Sitzungen automatisch nach dem Startordner, dem Git-Branch oder dem Worktree-Namen zu benennen. Gilt, wenn `source` den Wert `"startup"`, `"resume"` oder `"fork"` hat; wird bei `"clear"` und `"compact"` ignoriert |1246| `sessionTitle` | Setzt den Sitzungstitel, mit derselben Wirkung wie `/rename`. Gilt, wenn `source` den Wert `"startup"`, `"resume"` oder `"fork"` hat |

1247| `watchPaths` | Array absoluter Pfade, die während dieser Sitzung auf [FileChanged](#filechanged)-Ereignisse überwacht werden sollen |1247| `watchPaths` | Array absoluter Pfade, die während dieser Sitzung auf [FileChanged](#filechanged)-Ereignisse überwacht werden sollen |

1248| `reloadSkills` | Boolean. Bei `true` durchsucht Claude Code die Verzeichnisse für [Skills](/docs/de/skills) und Befehle erneut, nachdem die SessionStart-Hooks abgeschlossen sind, sodass Skills, die der Hook installiert hat, in derselben Sitzung ab dem ersten Prompt verfügbar sind |1248| `reloadSkills` | Boolescher Wert. Bei `true` durchsucht Claude Code die [Skill](/docs/de/skills)- und Befehlsverzeichnisse erneut, nachdem die SessionStart-Hooks abgeschlossen sind. Siehe [Skills neu laden, die ein Hook installiert](#reload-skills-that-a-hook-installs) |

1249 

1250Diese Ausgabe fügt Kontext hinzu und benennt die Sitzung:

1249 1251 

1250```json theme={null}1252```json theme={null}

1251{1253{


1257}1259}

1258```1260```

1259 1261 

1260Da reines stdout für dieses Ereignis Claude bereits erreicht, kann ein Hook, der nur Kontext lädt, direkt auf stdout ausgeben, ohne JSON zu erstellen. Verwenden Sie die JSON-Form, wenn Sie Kontext mit anderen Feldern wie `sessionTitle` kombinieren müssen.1262Ein Hook, der nur Kontext hinzufügt, kann diesen ausgeben, ohne JSON zu erstellen, da Claude Code die [Klartext-Ausgabe auf stdout](#exit-code-0) eines SessionStart-Hooks zum Kontext von Claude hinzufügt.

1263 

1264Wenn der SessionStart-Hook Ihres Plugins `initialUserMessage` oder `sessionTitle` liefert, installieren Sie das Plugin, bevor die Sitzung startet. Claude Code ignoriert beide Felder von einem Plugin, dessen Installation erst abgeschlossen wird, nachdem die SessionStart-Hooks ausgeführt wurden.

1265 

1266<h4 id="reload-skills-that-a-hook-installs">

1267 Skills neu laden, die ein Hook installiert

1268</h4>

1269 

1270Damit Skills, die ein SessionStart-Hook installiert, in derselben Sitzung verfügbar sind, geben Sie `reloadSkills` zurück. Die Skill-Erkennung läuft normalerweise, bevor SessionStart-Hooks abgeschlossen sind; ohne dieses Feld können Dateien, die ein Hook in `~/.claude/skills/` oder `.claude/skills/` schreibt, beim ersten Prompt fehlen.

1261 1271 

1262Verwenden Sie `reloadSkills`, wenn ein SessionStart-Hook Skills installiert oder aktualisiert. Die Skill-Erkennung läuft normalerweise, bevor SessionStart-Hooks abgeschlossen sind, sodass Dateien, die der Hook in `~/.claude/skills/` oder `.claude/skills/` schreibt, sonst erst in der nächsten Sitzung erscheinen würden. Dieses Beispiel synchronisiert ein gemeinsames Skills-Repository und fordert die erneute Durchsuchung an:1272Dieses Beispiel synchronisiert ein gemeinsames Skills-Repository und fordert das erneute Durchsuchen an:

1263 1273 

1264```bash theme={null}1274```bash theme={null}

1265#!/bin/bash1275#!/bin/bash


1270echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'1280echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'

1271```1281```

1272 1282 

1273Die Repository-URL ist ein Platzhalter; ersetzen Sie sie durch Ihr eigenes Skills-Repository. Mit dem Platzhalter schlägt das Klonen fehl und gibt eine `fatal:`-Meldung auf stderr aus. Stderr eines SessionStart-Hooks, der mit 0 beendet wird, dient nur zur Information, daher gilt die `reloadSkills`-Anforderung trotzdem.1283Die Repository-URL ist ein Platzhalter. Ersetzen Sie sie durch Ihr eigenes Skills-Repository.

1274 1284 

1275<h4 id="persist-environment-variables">1285<h4 id="persist-environment-variables">

1276 Umgebungsvariablen beibehalten1286 Umgebungsvariablen beibehalten


1860| :- | :- | :- | :- |1870| :- | :- | :- | :- |

1861| `url` | string | `"https://example.com/api"` | URL, von der Inhalte abgerufen werden |1871| `url` | string | `"https://example.com/api"` | URL, von der Inhalte abgerufen werden |

1862| `prompt` | string | `"Extract the API endpoints"` | Prompt, der auf den abgerufenen Inhalt angewendet wird |1872| `prompt` | string | `"Extract the API endpoints"` | Prompt, der auf den abgerufenen Inhalt angewendet wird |

1873| `offset` | number | `100000` | Optionale Anzahl von Zeichen, die ab dem Seitenanfang übersprungen werden. Claude setzt diesen Wert, um eine lange Seite weiterzulesen. Erfordert Claude Code v2.1.290 oder höher |

1863 1874 

1864<h5 id="websearch">1875<h5 id="websearch">

1865 WebSearch1876 WebSearch


4279Asynchrone Hooks haben zusätzliche Einschränkungen im Vergleich zu synchronen Hooks:4290Asynchrone Hooks haben zusätzliche Einschränkungen im Vergleich zu synchronen Hooks:

4280 4291 

4281* Hook-Ausgabe wird beim nächsten Gesprächsturn geliefert. Wenn die Sitzung untätig ist, wartet die Response, bis die nächste Benutzerinteraktion erfolgt. Ausnahme: Ein `asyncRewake`-Hook, der mit Code 2 beendet wird, weckt Claude sofort auf, auch wenn die Sitzung untätig ist.4292* Hook-Ausgabe wird beim nächsten Gesprächsturn geliefert. Wenn die Sitzung untätig ist, wartet die Response, bis die nächste Benutzerinteraktion erfolgt. Ausnahme: Ein `asyncRewake`-Hook, der mit Code 2 beendet wird, weckt Claude sofort auf, auch wenn die Sitzung untätig ist.

4282* Jede Ausführung erstellt einen separaten Hintergrund-Prozess. Es gibt keine Deduplizierung über mehrere Auslösungen des gleichen asynchronen Hooks.4293* Jede Ausführung erstellt einen separaten Hintergrund-Prozess.

4283 4294 

4284<h2 id="security-considerations">4295<h2 id="security-considerations">

4285 Sicherheitsüberlegungen4296 Sicherheitsüberlegungen

mcp.md +1 −1

Details

367 367 

368Auf v2 gilt außerdem für Claude Code:368Auf v2 gilt außerdem für Claude Code:

369 369 

370* Es fragt HTTP- und Stdio-Server, ob sie die neuere Revision unterstützen, und verwendet sie mit denen, die dies tun. In Sitzungen, in denen es Feature-Flags abruft, fragt es auch claude.ai-Konnektor-Server. Es verbindet sich mit jedem anderen Server wie v1.370* Es fragt HTTP-, Stdio- und claude.ai-Konnektor-Server, ob sie die neuere Revision unterstützen, und verwendet sie mit denen, die dies tun. Es verbindet sich mit jedem anderen Server wie v1.

371* Es empfängt `list_changed`-Benachrichtigungen von Servern auf der neueren Revision über einen [Stream, den es offen hält](#notification-streams-on-the-v2-runtime).371* Es empfängt `list_changed`-Benachrichtigungen von Servern auf der neueren Revision über einen [Stream, den es offen hält](#notification-streams-on-the-v2-runtime).

372* Es registriert keinen [Channel](#push-messages-with-channels)-Server, der sich auf der neueren Revision verbindet, da diese Revision keine Channel-Nachrichten tragen kann.372* Es registriert keinen [Channel](#push-messages-with-channels)-Server, der sich auf der neueren Revision verbindet, da diese Revision keine Channel-Nachrichten tragen kann.

373* Es lässt eine [MCP-OAuth-Anmeldung](#authenticate-with-remote-mcp-servers) fehlschlagen, deren Autorisierungsantwort einen unerwarteten Aussteller nennt.373* Es lässt eine [MCP-OAuth-Anmeldung](#authenticate-with-remote-mcp-servers) fehlschlagen, deren Autorisierungsantwort einen unerwarteten Aussteller nennt.

Details

599 599 

600In Sitzungen, die bei einem [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) über `/login` angemeldet sind, versieht die CLI Exporte mit der authentifizierten Identität: `user.id` ist der IdP-Betreff, `user.email` ist die angemeldete E-Mail, und `user.groups` enthält die IdP-Gruppenmitgliedschaft als kommagetrennte Zeichenkette. Jeder Export enthält auch `identity.source: gateway-oidc`. Die Gateway-Identität wird zuletzt angewendet, daher werden `user.*`- und `identity.*`-Schlüssel, die über `OTEL_RESOURCE_ATTRIBUTES` festgelegt werden, bei Gateway-Sitzungen ignoriert.600In Sitzungen, die bei einem [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) über `/login` angemeldet sind, versieht die CLI Exporte mit der authentifizierten Identität: `user.id` ist der IdP-Betreff, `user.email` ist die angemeldete E-Mail, und `user.groups` enthält die IdP-Gruppenmitgliedschaft als kommagetrennte Zeichenkette. Jeder Export enthält auch `identity.source: gateway-oidc`. Die Gateway-Identität wird zuletzt angewendet, daher werden `user.*`- und `identity.*`-Schlüssel, die über `OTEL_RESOURCE_ATTRIBUTES` festgelegt werden, bei Gateway-Sitzungen ignoriert.

601 601 

602<Note>

603 Events, die Claude Code protokolliert, bevor sich ein Entwickler anmeldet, enthalten nicht die Gateway-Identität. Wenn Claude Code eine Sitzung ohne Anmeldung beim Gateway öffnet, zum Beispiel nachdem [das Gateway die Anmeldung beendet hat](/docs/de/errors#cloud-gateway-session-expired), enthalten die vor der Anmeldung protokollierten Start-Events die anonyme `user.id` und keine `identity.source`. Dazu gehören [`managed_settings_resolved`](#managed-settings-resolved-event), [`plugin_loaded`](#plugin-loaded-event) und [`mcp_server_connection`](#mcp-server-connection-event).

604</Note>

605 

602Für die Identitätsattribute auf Claude Desktop- und Cowork-Sitzungen, die sich über ein Gateway verbinden, siehe die [Gateway-`telemetry`-Referenz](/docs/de/claude-apps-gateway-config#telemetry).606Für die Identitätsattribute auf Claude Desktop- und Cowork-Sitzungen, die sich über ein Gateway verbinden, siehe die [Gateway-`telemetry`-Referenz](/docs/de/claude-apps-gateway-config#telemetry).

603 607 

604Ereignisse enthalten zusätzlich die folgenden Attribute. Diese werden niemals an Metriken angehängt, da sie zu unbegrenzter Kardinalität führen würden:608Ereignisse enthalten zusätzlich die folgenden Attribute. Diese werden niemals an Metriken angehängt, da sie zu unbegrenzter Kardinalität führen würden:


917* `error`: Fehlermeldung921* `error`: Fehlermeldung

918* `status_code`: HTTP-Statuscode als Zahl. Nicht vorhanden für Nicht-HTTP-Fehler wie Verbindungsfehler.922* `status_code`: HTTP-Statuscode als Zahl. Nicht vorhanden für Nicht-HTTP-Fehler wie Verbindungsfehler.

919* `duration_ms`: Anfrage-Dauer in Millisekunden923* `duration_ms`: Anfrage-Dauer in Millisekunden

920* `attempt`: Gesamtzahl der Versuche, einschließlich der ursprünglichen Anfrage (`1` bedeutet, dass keine Wiederholungen aufgetreten sind)924* `attempt`: Anzahl der unternommenen Versuche, einschließlich der ursprünglichen Anfrage. Unter [Erschöpfung der Wiederholungsversuche erkennen](#detect-retry-exhaustion) erfahren Sie, wann die Zählung neu beginnt

921* `request_id`: API-Anfrage-ID, z. B. `"req_011..."`, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes).925* `request_id`: API-Anfrage-ID, z. B. `"req_011..."`, beschrieben unter [Ereigniskorrelationsattribute](#event-correlation-attributes).

922* `client_request_id`: Client-generierte UUID, die als `x-client-request-id`-Anfragekopfzeile gesendet wird. Verfügbar auch wenn ein Fehler wie ein Timeout oder Verbindungsfehler nie eine Server-`request_id` erzeugt hat; siehe die Tabelle [Ereigniskorrelationsattribute](#event-correlation-attributes) für wann sie vorhanden ist. Erfordert Claude Code v2.1.214 oder später926* `client_request_id`: Client-generierte UUID, die als `x-client-request-id`-Anfragekopfzeile gesendet wird. Verfügbar auch wenn ein Fehler wie ein Timeout oder Verbindungsfehler nie eine Server-`request_id` erzeugt hat; siehe die Tabelle [Ereigniskorrelationsattribute](#event-correlation-attributes) für wann sie vorhanden ist. Erfordert Claude Code v2.1.214 oder später

923* `speed`: `"fast"` oder `"normal"`, was angibt, ob der schnelle Modus aktiv war927* `speed`: `"fast"` oder `"normal"`, was angibt, ob der schnelle Modus aktiv war


1528 1532 

1529Claude Code wiederholt fehlgeschlagene API-Anfragen intern und gibt nur nach dem Aufgeben ein einzelnes `claude_code.api_error` Ereignis aus, daher ist das Ereignis selbst das Endsignal für diese Anfrage. Zwischenzeitliche Wiederholungsversuche werden nicht als separate Ereignisse protokolliert.1533Claude Code wiederholt fehlgeschlagene API-Anfragen intern und gibt nur nach dem Aufgeben ein einzelnes `claude_code.api_error` Ereignis aus, daher ist das Ereignis selbst das Endsignal für diese Anfrage. Zwischenzeitliche Wiederholungsversuche werden nicht als separate Ereignisse protokolliert.

1530 1534 

1531Das Attribut `attempt` auf dem Ereignis zeichnet auf, wie viele Versuche insgesamt unternommen wurden. `CLAUDE_CODE_MAX_RETRIES` hat einen Standardwert von 10 und ist auf 15 begrenzt. Ab v2.1.199 können Sie `CLAUDE_CODE_RETRY_WATCHDOG` setzen, um den Standardwert zu erhöhen und die Obergrenze zu entfernen.1535Das Attribut `attempt` auf dem Ereignis zeichnet die Anzahl der Versuche auf. `CLAUDE_CODE_MAX_RETRIES` hat einen Standardwert von 10 und ist auf 15 begrenzt. Ab v2.1.199 können Sie `CLAUDE_CODE_RETRY_WATCHDOG` setzen, um den Standardwert zu erhöhen und die Obergrenze zu entfernen.

1536 

1537Wenn die Anfrage alle Wiederholungsversuche bei einem vorübergehenden Fehler erschöpft, ist `attempt` höchstens um eins höher als dieses effektive Limit: standardmäßig 11.

1532 1538 

1533Wenn die Anfrage alle Wiederholungen bei einem vorübergehenden Fehler erschöpft, ist `attempt` um eins höher als dieses effektive Limit: 11 standardmäßig und nie mehr als 16, es sei denn, der Watchdog ist gesetzt. Ein niedrigerer Wert zeigt einen nicht wiederholbaren Fehler wie eine `400` Antwort an, oder eine Ursache mit einem eigenen kleineren Wiederholungsbudget. Zum Beispiel wiederholt Claude Code einen Fehler beim Laden von AWS- oder Google Cloud-Anmeldedaten höchstens zweimal.1539Auch ein niedrigerer Wert kann bedeuten, dass die Wiederholungsversuche aufgebraucht wurden: `attempt` beginnt jedes Mal wieder bei `1`, wenn Claude Code die Anfrage nach einem Streaming-Fehler erneut sendet.

1534 1540 

1535Um eine Sitzung zu unterscheiden, die sich von einer, die steckengeblieben ist, erholt hat, gruppieren Sie Ereignisse nach `session.id` und prüfen Sie, ob ein späteres `api_request` Ereignis nach dem Fehler vorhanden ist.1541Um eine Sitzung zu unterscheiden, die sich von einer, die steckengeblieben ist, erholt hat, gruppieren Sie Ereignisse nach `session.id` und prüfen Sie, ob ein späteres `api_request` Ereignis nach dem Fehler vorhanden ist.

1536 1542 

Details

91| `-y, --yes` | Akzeptieren Sie den angezeigten Installationsbefehl ohne die `Run this command now?`-Eingabeaufforderung. Wird ignoriert, wenn der Befehl innerhalb einer Claude Code-Sitzung ausgeführt wird, z. B. vom Bash-Tool oder einem Hook. Erfordert Claude Code v2.1.229 oder später |91| `-y, --yes` | Akzeptieren Sie den angezeigten Installationsbefehl ohne die `Run this command now?`-Eingabeaufforderung. Wird ignoriert, wenn der Befehl innerhalb einer Claude Code-Sitzung ausgeführt wird, z. B. vom Bash-Tool oder einem Hook. Erfordert Claude Code v2.1.229 oder später |

92| `--accept-command <sha256>` | Akzeptieren Sie den angezeigten Installationsbefehl, dessen `sha256` ein vorheriger [`--json`-Lauf](#plugin-json-result) in `shownCommand` gemeldet hat, anstelle von `-y`. Kann nicht mit `-y` kombiniert werden. Siehe [Angezeigten Installationsbefehl akzeptieren](#accept-a-displayed-install-command). Erfordert Claude Code v2.1.271 oder später |92| `--accept-command <sha256>` | Akzeptieren Sie den angezeigten Installationsbefehl, dessen `sha256` ein vorheriger [`--json`-Lauf](#plugin-json-result) in `shownCommand` gemeldet hat, anstelle von `-y`. Kann nicht mit `-y` kombiniert werden. Siehe [Angezeigten Installationsbefehl akzeptieren](#accept-a-displayed-install-command). Erfordert Claude Code v2.1.271 oder später |

93| `--json` | Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout statt der benutzerfreundlichen Meldung, zur Verwendung in Skripten. Siehe [JSON-Ergebnisformat](#plugin-json-result). Erfordert Claude Code v2.1.268 oder später |93| `--json` | Drucken Sie das Ergebnis als ein JSON-Objekt in der letzten Zeile von stdout statt der benutzerfreundlichen Meldung, zur Verwendung in Skripten. Siehe [JSON-Ergebnisformat](#plugin-json-result). Erfordert Claude Code v2.1.268 oder später |

94| `--marketplace <source>` | Installieren Sie `<plugin>`, angegeben über seinen bloßen Namen, aus dem Marketplace unter `<source>`, und fügen Sie den Marketplace zuerst hinzu, falls Sie ihn noch nicht hinzugefügt haben. Siehe [Marketplace hinzufügen und in einem Befehl installieren](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command). Erfordert Claude Code v2.1.292 oder später |

94 95 

95Führen Sie `claude plugin install --help` in Ihrer Shell aus, um jede Option zu sehen, die Ihre Version unterstützt.96Führen Sie `claude plugin install --help` in Ihrer Shell aus, um jede Option zu sehen, die Ihre Version unterstützt.

96 97 

Details

189 189 

190* **Scope**: Benutzerbereich standardmäßig. Übergeben Sie `--scope project` oder `--scope local`, um es zu ändern.190* **Scope**: Benutzerbereich standardmäßig. Übergeben Sie `--scope project` oder `--scope local`, um es zu ändern.

191* **When the plugins load**: Plugins, die es installiert, werden geladen, wenn Sie Claude Code das nächste Mal starten, oder wenn Sie `/reload-plugins` in einer bereits offenen Sitzung ausführen.191* **When the plugins load**: Plugins, die es installiert, werden geladen, wenn Sie Claude Code das nächste Mal starten, oder wenn Sie `/reload-plugins` in einer bereits offenen Sitzung ausführen.

192* **The marketplace must be added first**: Auf einem Computer, auf dem noch niemand eine interaktive Claude Code-Sitzung geöffnet hat, ist der offizielle Marketplace nicht registriert, daher führt ein Skript, das von ihm installiert, zuerst `claude plugin marketplace add anthropics/claude-plugins-official` aus, bevor die Installation erfolgt.192* **The marketplace on a new machine**: Auf einem Computer, auf dem noch niemand eine interaktive Claude Code-Sitzung geöffnet hat, ist der offizielle Marketplace nicht registriert, daher führt ein Skript, das von ihm installiert, vor der Installation `claude plugin marketplace add anthropics/claude-plugins-official` aus. Siehe [Von Ihrer Shell hinzufügen und installieren](#add-and-install-from-your-shell).

193 193 

194```bash theme={null}194```bash theme={null}

195claude plugin install formatter@your-org --scope project195claude plugin install formatter@your-org --scope project


232 Marketplace hinzufügen und in einem Befehl installieren232 Marketplace hinzufügen und in einem Befehl installieren

233</h3>233</h3>

234 234 

235Um ein Plugin aus einem Marketplace zu installieren, den Sie noch nicht hinzugefügt haben, führen Sie `/plugin install` in einer Claude Code-Sitzung aus und benennen Sie die Marketplace-Quelle mit `--marketplace`. Erfordert Claude Code v2.1.275 oder später.235Um ein Plugin aus einem Marketplace zu installieren, den Sie noch nicht hinzugefügt haben, benennen Sie die Marketplace-Quelle mit `--marketplace` im Installationsbefehl, in einer Sitzung oder von Ihrer Shell aus. Die Quelle nimmt [die gleichen Formen wie `/plugin marketplace add`](#add-a-marketplace) an, wie GitHub `owner/repo`, eine Git-URL oder einen lokalen Pfad. Geben Sie den Plugin-Namen allein an, ohne ein `@marketplace`-Suffix.

236 

237<h4 id="add-and-install-in-a-session">

238 In einer Sitzung hinzufügen und installieren

239</h4>

240 

241Führen Sie `/plugin install` in einer Claude Code-Sitzung mit dem Plugin und der Quelle aus. Erfordert Claude Code v2.1.275 oder später. In einer Sitzung kann die Quelle keine Leerzeichen enthalten.

236 242 

237```text theme={null}243```text theme={null}

238/plugin install deploy-helper --marketplace your-org/plugins244/plugin install deploy-helper --marketplace your-org/plugins

239```245```

240 246 

241Die Quelle nimmt [die gleichen Formen wie `/plugin marketplace add`](#add-a-marketplace) an, wie GitHub `owner/repo`, eine Git-URL oder einen lokalen Pfad, außer dass sie keine Leerzeichen enthalten kann. Geben Sie den Plugin-Namen allein an, ohne ein `@marketplace`-Suffix.

242 

243Wenn Sie diesen Marketplace noch nicht hinzugefügt haben, zeigt Claude Code die aufgelöste Quelle an und fragt Sie, bevor Sie sie hinzufügen. Sobald der Marketplace hinzugefügt ist, öffnen sich die Details des Plugins und Sie wählen einen [Installationsbereich](#install-a-plugin). Wenn die Quelle einem Marketplace entspricht, den Sie bereits hinzugefügt haben, überspringt Claude Code die Bestätigung und öffnet die Details des Plugins in diesem Marketplace.247Wenn Sie diesen Marketplace noch nicht hinzugefügt haben, zeigt Claude Code die aufgelöste Quelle an und fragt Sie, bevor Sie sie hinzufügen. Sobald der Marketplace hinzugefügt ist, öffnen sich die Details des Plugins und Sie wählen einen [Installationsbereich](#install-a-plugin). Wenn die Quelle einem Marketplace entspricht, den Sie bereits hinzugefügt haben, überspringt Claude Code die Bestätigung und öffnet die Details des Plugins in diesem Marketplace.

244 248 

249<h4 id="add-and-install-from-your-shell">

250 Von Ihrer Shell aus hinzufügen und installieren

251</h4>

252 

253Führen Sie in Ihrer Shell, ohne eine Sitzung zu starten, `claude plugin install` mit dem Plugin und der Quelle aus. Erfordert Claude Code v2.1.292 oder später.

254 

255```bash theme={null}

256claude plugin install deploy-helper --marketplace your-org/plugins

257```

258 

259Der Shell-Befehl fügt den Marketplace ohne Bestätigungsschritt hinzu. Ein Marketplace, den Sie bereits aus dieser Quelle hinzugefügt haben, wird wiederverwendet. Ein neuer wird unter denselben [Prüfungen der Organisationsrichtlinie](/docs/de/plugins/org#restrict-what-users-can-install) wie bei `claude plugin marketplace add` hinzugefügt und in Ihren Benutzereinstellungen deklariert, auch wenn Sie `--scope project` übergeben.

260 

245<h3 id="add-a-private-marketplace">261<h3 id="add-a-private-marketplace">

246 Privaten Marketplace hinzufügen262 Privaten Marketplace hinzufügen

247</h3>263</h3>

Details

138| `$.mcp.call` | Ruft ein Tool auf einem verbundenen MCP-Server auf, gemäß den Berechtigungsregeln der Sitzung |138| `$.mcp.call` | Ruft ein Tool auf einem verbundenen MCP-Server auf, gemäß den Berechtigungsregeln der Sitzung |

139| `$.model.complete` | Verwendet den Plan oder API-Schlüssel des Benutzers für Modellaufrufe |139| `$.model.complete` | Verwendet den Plan oder API-Schlüssel des Benutzers für Modellaufrufe |

140| `$.prompt.submit` | Sendet einen Prompt ab und kann ihn als eigene Worte des Benutzers senden |140| `$.prompt.submit` | Sendet einen Prompt ab und kann ihn als eigene Worte des Benutzers senden |

141| `$.session.send` | Sendet eine Nachricht, die Claude in einer anderen Sitzung oder einem Subagenten liest |141| `$.session.send` | Sendet eine Nachricht, die Claude in einer anderen Sitzung, in einem Subagenten oder bei einem [Teammitglied](/docs/de/agent-teams) liest |

142 142 

143In der Zeile `hooks:` bedeuten [`tool.call`](/docs/de/plugins/mods/reference#tools) und [`prompt.submit`](/docs/de/plugins/mods/reference#prompts-and-what-claude-reads), dass der Mod jeden Tool-Aufruf und jeden Prompt sieht und diese ändern kann. [`session.append`](/docs/de/plugins/mods/reference#session) bedeutet, dass der Mod jede Zeile der Konversation umschreiben kann, bevor sie gespeichert wird. [`ui.render{component=AskUserQuestion}`](/docs/de/plugins/mods/interface#change-what-claude-code-already-draws) bedeutet, dass der Mod den Dialog neu zeichnen kann, mit dem Claude dem Benutzer eine Frage stellt. `tool.check` bedeutet, dass der Mod einen Tool-Aufruf genehmigen oder ablehnen kann, bevor eine Berechtigungsabfrage erscheint. [Wissen, was standardmäßig passiert](#know-what-happens-by-default) listet auf, welche Ihrer Regeln und Hooks Vorrang vor seiner Antwort haben.143In der Zeile `hooks:` bedeuten [`tool.call`](/docs/de/plugins/mods/reference#tools) und [`prompt.submit`](/docs/de/plugins/mods/reference#prompts-and-what-claude-reads), dass der Mod jeden Tool-Aufruf und jeden Prompt sieht und diese ändern kann. [`session.append`](/docs/de/plugins/mods/reference#session) bedeutet, dass der Mod jede Zeile der Konversation umschreiben kann, bevor sie gespeichert wird. [`ui.render{component=AskUserQuestion}`](/docs/de/plugins/mods/interface#change-what-claude-code-already-draws) bedeutet, dass der Mod den Dialog neu zeichnen kann, mit dem Claude dem Benutzer eine Frage stellt. `tool.check` bedeutet, dass der Mod einen Tool-Aufruf genehmigen oder ablehnen kann, bevor eine Berechtigungsabfrage erscheint. [Wissen, was standardmäßig passiert](#know-what-happens-by-default) listet auf, welche Ihrer Regeln und Hooks Vorrang vor seiner Antwort haben.

144 144 

Details

140| Aufruf | Was der Benutzer sieht |140| Aufruf | Was der Benutzer sieht |

141| :- | :- |141| :- | :- |

142| `$.ui.status(text)` | Eine Zeile unter dem Eingabefeld, die bestehen bleibt, bis Sie sie ändern. Sie beginnt mit `⚠` und dem Namen des Mods, wie in `⚠ my-mod: checks: 3 passing`. |142| `$.ui.status(text)` | Eine Zeile unter dem Eingabefeld, die bestehen bleibt, bis Sie sie ändern. Sie beginnt mit `⚠` und dem Namen des Mods, wie in `⚠ my-mod: checks: 3 passing`. |

143| `$.ui.toast(text)` | Eine Toast-Benachrichtigung oben rechts, mit dem Namen des Mods über dem Text, die nach einigen Sekunden verschwindet |143| `$.ui.toast(text)` | Eine Toast-Benachrichtigung mit dem Namen des Mods, die nach einigen Sekunden verschwindet. Im [Vollbild-Rendering](/docs/de/fullscreen) ist sie ein Feld oben rechts, im klassischen Renderer eine Zeile rechts unter dem Eingabefeld. |

144| `$.ui.log(text)` | Eine abgeblendete Zeile im Transkript, die Claude nicht liest. Sie beginnt mit `●` und dem Namen des Mods, wie in `● my-mod: build finished`. |144| `$.ui.log(text)` | Eine abgeblendete Zeile im Transkript, die Claude nicht liest. Sie beginnt mit `●` und dem Namen des Mods, wie in `● my-mod: build finished`. |

145 145 

146<h3 id="start-a-turn-from-a-background-job">146<h3 id="start-a-turn-from-a-background-job">


159 Nachrichten zwischen Sitzungen senden und empfangen159 Nachrichten zwischen Sitzungen senden und empfangen

160</h2>160</h2>

161 161 

162Ein Mod kann eine Nachricht im Klartext an eine andere Ihrer Sitzungen oder an einen der Subagenten dieser Sitzung senden und die eingehenden und ausgehenden Nachrichten beobachten. `$.session.send({ to, text })` sendet eine Nachricht, mit derselben Zustellung wie das SendMessage-Tool. `to` ist `{ sessionId }` für eine Sitzung, `{ agentId }` für einen Subagenten aus `$.agent.list()` oder die String-Adresse, von der eine empfangene Nachricht stammt. Der Aufruf wird aufgelöst, sobald die Nachricht in die Warteschlange gestellt wurde, mit `{ isDelivered: true }`. Wenn nichts zugestellt wurde, wird er mit `{ isDelivered: false, reason }` aufgelöst, und `reason` gibt den Grund an.162Ein Mod kann eine Nachricht im Klartext an eine andere Ihrer Sitzungen, an einen der Subagenten dieser Sitzung oder an ein Teammitglied in seinem [Agent-Team](/docs/de/agent-teams) senden. Er kann außerdem die eingehenden und ausgehenden Nachrichten beobachten.

163 

164Um eine Nachricht zu senden, rufen Sie `$.session.send({ to, text })` auf. Dies nutzt dieselbe Zustellung wie das SendMessage-Tool. Legen Sie `to` danach fest, wer die Nachricht empfängt:

165 

166* **Eine andere Ihrer Sitzungen**: `{ sessionId }`

167* **Ein Subagent oder Teammitglied**: `{ agentId }`, mit einer ID aus `$.agent.list()`

168* **Der Absender einer Nachricht, die Sie empfangen haben**: die String-Adresse, von der diese Nachricht stammt

169 

170Der Aufruf wird aufgelöst, sobald die Nachricht in die Warteschlange gestellt wurde, mit `{ isDelivered: true }`. Wenn nichts zugestellt wurde, wird er mit `{ isDelivered: false, reason }` aufgelöst, und `reason` gibt den Grund an.

163 171 

164Dieser Hook beantwortet einen `/ping`-Befehl, [als Befehl registriert](#add-a-command), indem er die Sitzung, deren ID Sie danach eingeben, nach einem Status fragt:172Dieser Hook beantwortet einen `/ping`-Befehl, [als Befehl registriert](#add-a-command), indem er die Sitzung, deren ID Sie danach eingeben, nach einem Status fragt:

165 173 

Details

281 281 

282`result.usage` enthält die Token-Zahlen, die die Claude API für eine Anfrage meldet, sowie das `model`, das geantwortet hat: `input_tokens`, `output_tokens`, `cache_read_input_tokens` und `cache_creation_input_tokens`. Der Hook wird auch für Anfragen von Subagenten ausgeführt, prüfen Sie also `e.agentId`, wenn Sie nur die Hauptkonversation erfassen möchten.282`result.usage` enthält die Token-Zahlen, die die Claude API für eine Anfrage meldet, sowie das `model`, das geantwortet hat: `input_tokens`, `output_tokens`, `cache_read_input_tokens` und `cache_creation_input_tokens`. Der Hook wird auch für Anfragen von Subagenten ausgeführt, prüfen Sie also `e.agentId`, wenn Sie nur die Hauptkonversation erfassen möchten.

283 283 

284Um die Tool-Aufrufe zu sehen, die die API während der Anfrage selbst ausgeführt hat, etwa Aufrufe des [Advisor-Tools](/docs/de/advisor), lesen Sie `result.serverToolUses`. Claude Code führt diese Aufrufe nicht aus, daher wird für sie kein `tool.call`- oder `tool.check`-Hook ausgelöst. Das Feld fehlt, wenn die Antwort keine solchen Aufrufe enthält, und erfordert Claude Code v2.1.290 oder höher.

285 

284<h3 id="hook-the-settings-hook-events">286<h3 id="hook-the-settings-hook-events">

285 Die Events der Einstellungs-Hooks behandeln287 Die Events der Einstellungs-Hooks behandeln

286</h3>288</h3>

Details

10 10 

11Diese Übersicht zeigt, wo ein Mod in einer Terminal-Sitzung zeichnen kann:11Diese Übersicht zeigt, wo ein Mod in einer Terminal-Sitzung zeichnen kann:

12 12 

13<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5fda26b6609c62b68c6f9e528c1590ea" className="dark:hidden" alt="Übersicht einer Claude Code Terminal-Sitzung. Ein Mod kann einen Bereich als Seitenleiste rechts hinzufügen, einen Toast oben rechts im Transkript, eine Log-Zeile im Transkript, ein Band über dem Prompt und eine Statuszeile unter dem Prompt. Ein Mod kann Nachrichten, Zeilen von Tool-Aufrufen und den Spinner neu zeichnen. Der Prompt gehört Claude Code selbst." width="600" height="336" data-path="images/mods-screen-map.svg" />13<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5fda26b6609c62b68c6f9e528c1590ea" className="dark:hidden" alt="Übersicht einer Claude Code Terminal-Sitzung im Vollbild-Rendering. Ein Mod kann einen Bereich als Seitenleiste rechts hinzufügen, einen Toast oben rechts im Transkript, eine Log-Zeile im Transkript, ein Band über dem Prompt und eine Statuszeile unter dem Prompt. Ein Mod kann Nachrichten, Zeilen von Tool-Aufrufen und den Spinner neu zeichnen. Der Prompt gehört Claude Code selbst." width="600" height="336" data-path="images/mods-screen-map.svg" />

14 14 

15<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map-dark.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5b4161581a1bd2c0450b0c8b57bc1225" className="hidden dark:block" alt="Übersicht einer Claude Code Terminal-Sitzung. Ein Mod kann einen Bereich als Seitenleiste rechts hinzufügen, einen Toast oben rechts im Transkript, eine Log-Zeile im Transkript, ein Band über dem Prompt und eine Statuszeile unter dem Prompt. Ein Mod kann Nachrichten, Zeilen von Tool-Aufrufen und den Spinner neu zeichnen. Der Prompt gehört Claude Code selbst." width="600" height="336" data-path="images/mods-screen-map-dark.svg" />15<img src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-screen-map-dark.svg?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=5b4161581a1bd2c0450b0c8b57bc1225" className="hidden dark:block" alt="Übersicht einer Claude Code Terminal-Sitzung im Vollbild-Rendering. Ein Mod kann einen Bereich als Seitenleiste rechts hinzufügen, einen Toast oben rechts im Transkript, eine Log-Zeile im Transkript, ein Band über dem Prompt und eine Statuszeile unter dem Prompt. Ein Mod kann Nachrichten, Zeilen von Tool-Aufrufen und den Spinner neu zeichnen. Der Prompt gehört Claude Code selbst." width="600" height="336" data-path="images/mods-screen-map-dark.svg" />

16 16 

17In einem schmaleren Terminal befindet sich der Bereich über dem Prompt statt neben dem Transkript.17In einem schmaleren Terminal befindet sich der Bereich über dem Prompt statt neben dem Transkript.

18 18 


324| `title` | Die Tab-Beschriftung des Panes, wenn mehr als ein Pane geöffnet ist |324| `title` | Die Tab-Beschriftung des Panes, wenn mehr als ein Pane geöffnet ist |

325| `focus` | Fordert den [Tastaturfokus](#know-which-keys-your-mod-can-receive) an |325| `focus` | Fordert den [Tastaturfokus](#know-which-keys-your-mod-can-receive) an |

326| `closeOnEscape` | Sorgt dafür, dass Esc das Pane schließt |326| `closeOnEscape` | Sorgt dafür, dass Esc das Pane schließt |

327| `holdToasts` | Hält Toasts, die kleinen Hinweise von [`$.ui.toast`](/docs/de/plugins/mods/api#show-something-without-starting-a-turn), zurück, bis das Pane geschlossen wird |327| `holdToasts` | Hält im Terminal Toasts zurück, solange dieses Pane angezeigt wird. Siehe [Toasts hinter einem Dialog zurückhalten](#hold-toasts-behind-a-dialog). |

328| `rows` | Die anzufordernde Höhe, wenn sich das Pane über dem Prompt befindet. Standardmäßig ein Drittel des Platzes. |328| `rows` | Die anzufordernde Höhe, wenn sich das Pane über dem Prompt befindet. Standardmäßig ein Drittel des Platzes. |

329| `columns` | Die anzufordernde Breite, wenn sich das Pane neben dem Transkript befindet |329| `columns` | Die anzufordernde Breite, wenn sich das Pane neben dem Transkript befindet |

330 330 


337 337 

338Damit ein Befehl das Pane öffnen kann, während Claude arbeitet, fügen Sie `immediate: true` hinzu, wenn Sie [den Befehl registrieren](/docs/de/plugins/mods/api#add-a-command). Ohne diese Option wartet ein während eines Turns eingegebener Befehl, bis der Turn endet.338Damit ein Befehl das Pane öffnen kann, während Claude arbeitet, fügen Sie `immediate: true` hinzu, wenn Sie [den Befehl registrieren](/docs/de/plugins/mods/api#add-a-command). Ohne diese Option wartet ein während eines Turns eingegebener Befehl, bis der Turn endet.

339 339 

340<h4 id="hold-toasts-behind-a-dialog">

341 Toasts hinter einem Dialog zurückhalten

342</h4>

343 

344Übergeben Sie `holdToasts: true` an `$.ui.open`, wenn das Pane ein Dialog ist, den der Benutzer beantwortet und wieder verlässt, damit keine Toasts erscheinen, während er eine Entscheidung trifft. Im Terminal gilt das Zurückhalten, solange dieses Pane angezeigt wird, und ein in dieser Zeit ausgelöster Toast wartet, bis das Zurückhalten endet.

345 

346Claude Code hält die Toasts anderer Mods und seine eigenen kurzlebigen Benachrichtigungen ebenso zurück wie diejenigen, die Ihr Mod mit [`$.ui.toast`](/docs/de/plugins/mods/api#show-something-without-starting-a-turn) auslöst. Lassen Sie das Feld bei einem Pane weg, das geöffnet bleibt, damit der Benutzer sie weiterhin sieht.

347 

340<h4 id="when-a-pane-waits-for-a-wider-terminal">348<h4 id="when-a-pane-waits-for-a-wider-terminal">

341 Wenn ein Pane auf ein breiteres Terminal wartet349 Wenn ein Pane auf ein breiteres Terminal wartet

342</h4>350</h4>

Details

209| [`$.ui`](/docs/de/plugins/mods/interface#pick-where-to-draw) | `resolve`, `invalidate`, `open`, `close`, `panes`, `focus`, `scroll`, `toast`, `status`, `log`, `notice`, `ask`, `copy`, `selection`, `blit` |209| [`$.ui`](/docs/de/plugins/mods/interface#pick-where-to-draw) | `resolve`, `invalidate`, `open`, `close`, `panes`, `focus`, `scroll`, `toast`, `status`, `log`, `notice`, `ask`, `copy`, `selection`, `blit` |

210| [`$.command`](/docs/de/plugins/mods/api#add-a-command) | `register`, `run`, `list` |210| [`$.command`](/docs/de/plugins/mods/api#add-a-command) | `register`, `run`, `list` |

211| [`$.tool`](/docs/de/plugins/mods/api#add-a-tool) | `register`, `call`, `check`, `list` |211| [`$.tool`](/docs/de/plugins/mods/api#add-a-tool) | `register`, `call`, `check`, `list` |

212| `$.agent` | `register`, `spawn`, `list` |212| `$.agent` | `register`, `spawn`, `list`. `list()` gibt die Subagenten und Teammitglieder dieser Sitzung zurück, jeweils mit einem `status` von `pending`, `running`, `waiting`, `idle`, `completed`, `failed` oder `killed`, wobei `idle` und `waiting` Claude Code v2.1.289 oder neuer erfordern. |

213| [`$.model`](/docs/de/plugins/mods/api#call-a-model) | `complete`, `fork`, `classify` |213| [`$.model`](/docs/de/plugins/mods/api#call-a-model) | `complete`, `fork`, `classify` |

214| [`$.prompt`](/docs/de/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`, `read`, `fill`, `suggest`, `compose`. Claude liest Text aus `submit({ text })` nach einem Satz, der Ihren Mod als Absender nennt. `submit({ text, asUser: true })` sendet den Text als eigene Worte des Benutzers, ohne diesen Satz. |214| [`$.prompt`](/docs/de/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`, `read`, `fill`, `suggest`, `compose`. Claude liest Text aus `submit({ text })` nach einem Satz, der Ihren Mod als Absender nennt. `submit({ text, asUser: true })` sendet den Text als eigene Worte des Benutzers, ohne diesen Satz. |

215| `$.turn` | `abort` |215| `$.turn` | `abort` |


317| `$.process.run`-Timeout | Standardmäßig 30 Sekunden, höchstens 10 Minuten |317| `$.process.run`-Timeout | Standardmäßig 30 Sekunden, höchstens 10 Minuten |

318| `$.model.complete` `maxTokens` | Standardmäßig 1024, bis zu 64.000 oder das Ausgabelimit des Modells |318| `$.model.complete` `maxTokens` | Standardmäßig 1024, bis zu 64.000 oder das Ausgabelimit des Modells |

319| `$.fs.read` und `$.fs.write` | 4 MiB für eine Datei |319| `$.fs.read` und `$.fs.write` | 4 MiB für eine Datei |

320| `drop`-Grund eines Hooks oder `deny`-Grund von `config.set` | 4.096 Zeichen. Das Ende eines längeren Grundes wird abgeschnitten, und das Drop bzw. Deny gilt weiterhin. Das Abschneiden erfordert Claude Code v2.1.292 oder höher; in früheren Versionen [schlägt der Hook stattdessen fehl](/docs/de/plugins/mods/events#handle-a-hook-that-fails). |

320| Text in einem Baum | Die ersten 100.000 Zeichen werden gezeichnet |321| Text in einem Baum | Die ersten 100.000 Zeichen werden gezeichnet |

321| `language` oder `path` eines `Code`, `value` einer `Select`-Option oder `module` eines `Client` | 10.000 Zeichen. Ist einer dieser Werte länger, [zeichnet Claude Code eine eigene Version der Stelle](/docs/de/plugins/mods/interface#build-a-tree-from-elements). |322| `language` oder `path` eines `Code`, `value` einer `Select`-Option oder `module` eines `Client` | 10.000 Zeichen. Ist einer dieser Werte länger, [zeichnet Claude Code eine eigene Version der Stelle](/docs/de/plugins/mods/interface#build-a-tree-from-elements). |

322| `href` eines `Link` | 2.048 Zeichen. Ein längerer `href` verhindert, dass der gesamte Baum gezeichnet wird. |323| `href` eines `Link` | 2.048 Zeichen. Ein längerer `href` verhindert, dass der gesamte Baum gezeichnet wird. |

Details

110* `returned neither { value } nor { deny }`: Ein Stub für einen Mods-API-Aufruf hat einen bloßen Wert zurückgegeben, wodurch der Test fehlschlägt110* `returned neither { value } nor { deny }`: Ein Stub für einen Mods-API-Aufruf hat einen bloßen Wert zurückgegeben, wodurch der Test fehlschlägt

111* `no implementation for`, gefolgt von einem Namen: Ihr Mod hat diesen Aufruf ausgeführt, und kein Stub beantwortet ihn111* `no implementation for`, gefolgt von einem Namen: Ihr Mod hat diesen Aufruf ausgeführt, und kein Stub beantwortet ihn

112 112 

113Das Kit exportiert außerdem In-Memory-Mocks, die einen ganzen Namespace für Sie beantworten. `mock.clock(on)` beantwortet [`$.clock`](/docs/de/plugins/mods/api#run-work-in-the-background), `mock.store(on, { count: 7 })` beantwortet `$.store` aus einem Speicher, der mit diesen Einträgen beginnt, und `mock.env(on, { CI: 'true' })` beantwortet `$.env.get` aus diesen Variablen. `mock.clock` gibt eine Mock-Uhr zurück, die Ihr Test vorstellt, sodass ein Test eines Timers nicht warten muss. `mock.store` gibt nichts zurück. Um zu prüfen, was Ihr Mod gespeichert hat, schreiben Sie die beiden `store`-Stubs daher selbst, wie es der [Zeichentest](#test-a-drawing) tut.113Das Kit exportiert außerdem vorgefertigte Mocks für die Uhr, den Speicher, Umgebungsvariablen und an die Konversation angehängte Zeilen:

114 

115* **`mock.clock(on)`**: beantwortet [`$.clock`](/docs/de/plugins/mods/api#run-work-in-the-background) und gibt eine Mock-Uhr zurück, die Ihr Test vorstellt, sodass ein Test eines Timers nicht warten muss.

116* **`mock.store(on, { count: 7 })`**: beantwortet `$.store` aus einem Speicher, der mit diesen Einträgen beginnt. Es gibt nichts zurück. Um zu prüfen, was Ihr Mod gespeichert hat, schreiben Sie die beiden `store`-Stubs daher selbst, wie es der [Zeichentest](#test-a-drawing) tut.

117* **`mock.env(on, { CI: 'true' })`**: beantwortet `$.env.get` aus diesen Variablen.

118* **`mock.session(on)`**: gibt eine Mock-Sitzung zurück, deren Methode `appended()` die Zeilen auflistet, die Ihr Mod mit [`$.session.append`](/docs/de/plugins/mods/reference#session) hinzugefügt hat, die älteste zuerst; dies erfordert Claude Code v2.1.293 oder höher.

114 119 

115<h3 id="follow-the-test-kit’s-rules">120<h3 id="follow-the-test-kit’s-rules">

116 Die Regeln des Test-Kits befolgen121 Die Regeln des Test-Kits befolgen


168 Nachschlagen, was ein Stub zurückgibt173 Nachschlagen, was ein Stub zurückgibt

169</h3>174</h3>

170 175 

171Jeder Mods-API-Aufruf, den Ihr Mod in einem Test ausführt, benötigt einen Stub, der anstelle von Claude Code antwortet, mit Ausnahme der wenigen, die das Kit selbst beantwortet: Aufrufe von [`$.ui.invalidate`](/docs/de/plugins/mods/interface#redraw-when-something-changes) und [`$.state`](/docs/de/plugins/mods/interface#keep-state). Verwenden Sie für `$.clock`-Aufrufe `mock.clock(on)`, sonst schlägt `$.clock.now()` in Ihrem Mod mit `no implementation for clock.now` fehl.176Jeder Mods-API-Aufruf, den Ihr Mod in einem Test ausführt, benötigt einen Stub, der anstelle von Claude Code antwortet, mit Ausnahme der wenigen, die das Kit selbst beantwortet: Aufrufe von [`$.ui.invalidate`](/docs/de/plugins/mods/interface#redraw-when-something-changes), [`$.state`](/docs/de/plugins/mods/interface#keep-state) und `$.session.append`. Verwenden Sie für `$.clock`-Aufrufe `mock.clock(on)`, sonst schlägt `$.clock.now()` in Ihrem Mod mit `no implementation for clock.now` fehl.

172 177 

173Diese Tabelle listet die Aufrufe auf, die Mods am häufigsten verwenden. Die erste Spalte ist der Aufruf, den Ihr Mod ausführt, oder das Event, das er mit `next(e)` weitergibt. Die zweite ist die Funktion, die Sie unter diesem Namen an `on` übergeben, sodass aus der Zeile `$.store.get` der Aufruf `on('store.get', ($, e) => ({ value: saved.get(e.key) }))` wird. Ein `'...'` in einem Stub markiert Text, den Sie selbst einsetzen:178Diese Tabelle listet die Aufrufe auf, die Mods am häufigsten verwenden. Die erste Spalte ist der Aufruf, den Ihr Mod ausführt, oder das Event, das er mit `next(e)` weitergibt. Die zweite ist die Funktion, die Sie unter diesem Namen an `on` übergeben, sodass aus der Zeile `$.store.get` der Aufruf `on('store.get', ($, e) => ({ value: saved.get(e.key) }))` wird. Ein `'...'` in einem Stub markiert Text, den Sie selbst einsetzen:

174 179 

Details

209 Eine Darstellung erscheint nicht oder reagiert nicht209 Eine Darstellung erscheint nicht oder reagiert nicht

210</h2>210</h2>

211 211 

212Der Mod wurde geladen, aber sein Bereich, sein Band oder seine Steuerelemente verhalten sich nicht wie erwartet.212Der Mod wurde geladen, aber sein Bereich, sein Band, sein Toast oder seine Steuerelemente verhalten sich nicht wie erwartet.

213 213 

214<h3 id="a-pane-or-band-is-empty-or-shows-claude-code’s-usual-content">214<h3 id="a-pane-or-band-is-empty-or-shows-claude-code’s-usual-content">

215 Ein Bereich oder Band ist leer oder zeigt den üblichen Inhalt von Claude Code215 Ein Bereich oder Band ist leer oder zeigt den üblichen Inhalt von Claude Code


247 247 

248Öffnen Sie den Bereich über einen Befehl oder eine Schaltfläche, oder prüfen Sie das Ergebnis `isPlaced` des Aufrufs. Siehe [Einen Bereich zum richtigen Zeitpunkt öffnen](/docs/de/plugins/mods/interface#open-a-pane-at-the-right-time).248Öffnen Sie den Bereich über einen Befehl oder eine Schaltfläche, oder prüfen Sie das Ergebnis `isPlaced` des Aufrufs. Siehe [Einen Bereich zum richtigen Zeitpunkt öffnen](/docs/de/plugins/mods/interface#open-a-pane-at-the-right-time).

249 249 

250<h3 id="a-toast-doesn’t-appear">

251 Ein Toast erscheint nicht

252</h3>

253 

254Ihr Mod ruft [`$.ui.toast`](/docs/de/plugins/mods/api#show-something-without-starting-a-turn) in einer interaktiven Terminal-Sitzung auf, und Sie sehen den Toast nicht. Um zu bestätigen, dass der Aufruf ausgeführt wurde, suchen Sie im [Debug-Log](#read-the-debug-log) nach einer Zeile mit dem Namen Ihres Mods und dem Text des Toasts, etwa `$.ui.toast (first-mod): build finished`. Prüfen Sie dann Ursachen wie diese:

255 

256* **Die Zeile für den Aufruf fehlt**: Suchen Sie nach einer Zeile, die angibt, warum Claude Code den Aufruf abgelehnt hat, etwa `first-mod: $.ui.toast dropped: timeoutMs is a whole number of ms, 1 to 60000`.

257* **Ein Bereich hält Toasts zurück**: Ihr Mod oder ein anderer hat [`holdToasts`](/docs/de/plugins/mods/interface#hold-toasts-behind-a-dialog) übergeben, als er den angezeigten Bereich geöffnet hat. Schließen Sie den Bereich, um das Zurückhalten zu beenden. Wenn der Bereich Ihrer ist und geöffnet bleiben soll, entfernen Sie `holdToasts` aus seinem `$.ui.open`-Aufruf und öffnen Sie den Bereich erneut.

258* **Der Toast befindet sich unter dem Prompt**: Sehen Sie im [klassischen Renderer](/docs/de/fullscreen#enable-fullscreen-rendering) rechts unter dem Prompt nach. Ein Toast dort ist eine einzelne Zeile, die mit dem Namen des Mods beginnt, und kein Feld oben rechts.

259* **Ihr Mod hat einen neueren Toast ausgelöst**: Im klassischen Renderer kann ein neuerer Toast Ihres Mods einen Toast ersetzen, der gerade angezeigt wird oder auf die Anzeige wartet. Das Debug-Log enthält eine weitere Zeile für den älteren Toast, die mit `gave way, cut short` endet, wenn er angezeigt wurde, oder mit `gave way, unseen`, wenn er nie erschienen ist. Um beide Meldungen anzuzeigen, fassen Sie sie in einem Toast zusammen.

260* **Die Zeit des Toasts ist abgelaufen, bevor er gezeichnet wurde**: Im Vollbild-Rendering zeichnet Claude Code höchstens drei Toasts gleichzeitig, sodass die Zeit eines Toasts ablaufen kann, bevor er gezeichnet wird. Das Debug-Log enthält eine weitere Zeile für diesen Toast, die mit `left the stack, never drawn` endet. Wenn Ihr Mod mehrere gleichzeitig auslöst, fassen Sie die Meldungen in einem Toast zusammen.

261 

262Vor v2.1.290 verwarf Claude Code einen Toast, der innerhalb von zwei Sekunden nach dem letzten für Ihren Mod angezeigten Toast ausgelöst wurde, und die Debug-Log-Zeile für den verworfenen Toast lautete `within 2000ms of the last; dropped`.

263 

250<h3 id="hotkeys-do-nothing">264<h3 id="hotkeys-do-nothing">

251 Tastenkürzel bewirken nichts265 Tastenkürzel bewirken nichts

252</h3>266</h3>

Details

129* Fügen Sie den Marketplace einmal hinzu: `claude plugin marketplace add your-org/your-marketplace`, wobei das Argument eine GitHub `owner/repo`-Kurzform, eine URL oder ein Pfad ist129* Fügen Sie den Marketplace einmal hinzu: `claude plugin marketplace add your-org/your-marketplace`, wobei das Argument eine GitHub `owner/repo`-Kurzform, eine URL oder ein Pfad ist

130* Installieren Sie das Plugin: `claude plugin install deploy-helper@your-marketplace`130* Installieren Sie das Plugin: `claude plugin install deploy-helper@your-marketplace`

131* Oder tun Sie beides von innerhalb einer Sitzung: `/plugin install deploy-helper --marketplace your-org/your-marketplace`. Erfordert Claude Code v2.1.275 oder später. Siehe [Fügen Sie einen Marketplace hinzu und installieren Sie in einem Befehl](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command)131* Oder tun Sie beides von innerhalb einer Sitzung: `/plugin install deploy-helper --marketplace your-org/your-marketplace`. Erfordert Claude Code v2.1.275 oder später. Siehe [Fügen Sie einen Marketplace hinzu und installieren Sie in einem Befehl](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command)

132* Oder tun Sie beides von der Shell aus mit einem Befehl: `claude plugin install deploy-helper --marketplace your-org/your-marketplace`. Erfordert Claude Code v2.1.292 oder später

132 133 

133<h3 id="ship-updates-to-users">134<h3 id="ship-updates-to-users">

134 Versenden Sie Updates an Benutzer135 Versenden Sie Updates an Benutzer

Details

163 `Invalid marketplace source format`163 `Invalid marketplace source format`

164</h3>164</h3>

165 165 

166Sie haben `/plugin marketplace add <source>` oder `claude plugin marketplace add <source>` ausgeführt, und Claude Code hat `Invalid marketplace source format. Try: owner/repo, https://..., or ./path` geantwortet.166Sie haben `/plugin marketplace add <source>`, `claude plugin marketplace add <source>` oder `claude plugin install <plugin> --marketplace <source>` ausgeführt, und Claude Code hat `Invalid marketplace source format. Try: owner/repo, https://..., or ./path` geantwortet.

167 167 

168Claude Code akzeptiert eine Quelle in einer dieser Formen:168Claude Code akzeptiert eine Quelle in einer dieser Formen:

169 169 


568 `Marketplace "<name>" is already added from a different source`568 `Marketplace "<name>" is already added from a different source`

569</h3>569</h3>

570 570 

571Sie haben das Hinzufügen eines Marktplatzes durch [`/plugin install <plugin> --marketplace <source>`](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command) bestätigt, und der Katalog, den Claude Code von dieser Quelle abgerufen hat, hat denselben Namen wie ein Marktplatz, den Sie bereits von einer anderen Quelle hinzugefügt haben. Claude Code behält den vorhandenen Marktplatz bei, anstatt ihn zu ersetzen, und das Plugin wird nicht installiert.571Sie haben mit [`--marketplace <source>` im Installationsbefehl](/docs/de/plugins/install#add-a-marketplace-and-install-in-one-command) eine neue Marktplatz-Quelle angegeben, in einer Sitzung oder aus Ihrer Shell. Der Katalog, den Claude Code von dieser Quelle abgerufen hat, hat denselben Namen wie ein Marktplatz, den Sie bereits von einer anderen Quelle hinzugefügt haben. Claude Code behält den vorhandenen Marktplatz bei, anstatt ihn zu ersetzen, und das Plugin wird nicht installiert.

572 572 

573Die vollständige Meldung sieht so aus:573Die vollständige Meldung sieht so aus:

574 574 

Details

403 403 

404* Die [verwaltete MCP-Datei](/docs/de/managed-mcp) im Enterprise-Geltungsbereich an ihrem Standard-Systempfad: `/etc/claude-code/managed-mcp.json` auf Linux-Runner-Hosts, `/Library/Application Support/ClaudeCode/managed-mcp.json` auf macOS-Hosts. Verwenden Sie sie für abgeschottete Umgebungen, in denen nur vom Administrator aufgeführte Server geladen werden dürfen. Die Regeln zum Vorrang finden Sie unter [Exklusive Kontrolle mit managed-mcp.json](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json). Wenn sich diese Datei auf dem Runner-Host befindet, überspringt Claude Code die MCP-Server, die die Control Plane von Anthropic an eine Sitzung übermittelt, einschließlich claude.ai-Konnektoren, und nennt sie in einer Warnung auf stderr des Sitzungs-Kindprozesses, die der Runner auf der Log-Ebene `debug` aufzeichnet. Vor v2.1.229 wurden diese Sitzungen beim Start mit `You cannot dynamically configure MCP servers when an enterprise MCP config is present` beendet.404* Die [verwaltete MCP-Datei](/docs/de/managed-mcp) im Enterprise-Geltungsbereich an ihrem Standard-Systempfad: `/etc/claude-code/managed-mcp.json` auf Linux-Runner-Hosts, `/Library/Application Support/ClaudeCode/managed-mcp.json` auf macOS-Hosts. Verwenden Sie sie für abgeschottete Umgebungen, in denen nur vom Administrator aufgeführte Server geladen werden dürfen. Die Regeln zum Vorrang finden Sie unter [Exklusive Kontrolle mit managed-mcp.json](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json). Wenn sich diese Datei auf dem Runner-Host befindet, überspringt Claude Code die MCP-Server, die die Control Plane von Anthropic an eine Sitzung übermittelt, einschließlich claude.ai-Konnektoren, und nennt sie in einer Warnung auf stderr des Sitzungs-Kindprozesses, die der Runner auf der Log-Ebene `debug` aufzeichnet. Vor v2.1.229 wurden diese Sitzungen beim Start mit `You cannot dynamically configure MCP servers when an enterprise MCP config is present` beendet.

405* Der Schlüssel [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) in den [verwalteten Einstellungen](/docs/de/managed-settings) auf dem Runner-Host: Stellt HTTP- und SSE-Server bereit, ohne die exklusive Kontrolle zu übernehmen, sodass Server aus den anderen Quellen weiterhin geladen werden. Erfordert Claude Code v2.1.259 oder neuer.405* Der Schlüssel [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) in den [verwalteten Einstellungen](/docs/de/managed-settings) auf dem Runner-Host: Stellt HTTP- und SSE-Server bereit, ohne die exklusive Kontrolle zu übernehmen, sodass Server aus den anderen Quellen weiterhin geladen werden. Erfordert Claude Code v2.1.259 oder neuer.

406* `<repo>/.mcp.json`: Projekt-Geltungsbereich. Committen Sie die Datei in das Repository; ihre Server werden in Cloud-Sitzungen automatisch genehmigt.406* `<repo>/.mcp.json`: Projekt-Geltungsbereich. Committen Sie die Datei in das Repository; ihre Server werden in Cloud-Sitzungen automatisch genehmigt. In einer Sitzung mit mehreren Repositorys wird [höchstens die Datei eines Repositorys geladen](#repository-settings-in-sessions-with-several-repositories).

407 407 

408Wenn die Bereitstellung von Konnektoren für Ihre Organisation aktiviert ist, übermittelt die Control Plane von Anthropic die Konnektoren, die Sie auf claude.ai konfiguriert haben, über serverseitig bereitgestellte MCP-Konfiguration an interaktiv erstellte Sitzungen, geleitet über `api.anthropic.com`. Programmgesteuert erstellte Sitzungen, wie etwa [CLI-Dispatches](/docs/de/self-hosted-environments-testing#run-the-test-loop), erhalten keine Konnektoren; stellen Sie ihnen MCP-Server stattdessen über eine der anderen in diesem Abschnitt aufgeführten Quellen bereit. Das OAuth-Token des Kindprozesses enthält keinen Scope zum direkten Abrufen von Konnektoren, daher versucht der Kindprozess diesen Abruf nicht selbst; die Bereitstellung erfolgt serverseitig.408Wenn die Bereitstellung von Konnektoren für Ihre Organisation aktiviert ist, übermittelt die Control Plane von Anthropic die Konnektoren, die Sie auf claude.ai konfiguriert haben, über serverseitig bereitgestellte MCP-Konfiguration an interaktiv erstellte Sitzungen, geleitet über `api.anthropic.com`. Programmgesteuert erstellte Sitzungen, wie etwa [CLI-Dispatches](/docs/de/self-hosted-environments-testing#run-the-test-loop), erhalten keine Konnektoren; stellen Sie ihnen MCP-Server stattdessen über eine der anderen in diesem Abschnitt aufgeführten Quellen bereit. Das OAuth-Token des Kindprozesses enthält keinen Scope zum direkten Abrufen von Konnektoren, daher versucht der Kindprozess diesen Abruf nicht selbst; die Bereitstellung erfolgt serverseitig.

409 409 


542exit 0542exit 0

543```543```

544 544 

545Der Hook fordert Claude auf, vor dem Sitzungsende zu committen und zu pushen, und bleibt still, wenn das Verzeichnis kein Git-Repository ist oder keinen Remote hat.545Der Hook fordert Claude auf, vor dem Sitzungsende zu committen und zu pushen, und bleibt still, wenn das Verzeichnis kein Git-Repository ist oder keinen Remote hat. Für eine Sitzung mit mehreren Repositorys lesen Sie, [was `$CLAUDE_PROJECT_DIR` bezeichnet](#repository-settings-in-sessions-with-several-repositories).

546 546 

547<h2 id="permissions-and-tool-approval">547<h2 id="permissions-and-tool-approval">

548 Berechtigungen und Tool-Genehmigung548 Berechtigungen und Tool-Genehmigung


571 571 

572Setzen Sie `SELF_HOSTED_RUNNER_HOST_CONFIG_DIR`, um von einem anderen Pfad zu befüllen, oder lassen Sie die Variable auf ein leeres Verzeichnis zeigen, um das Befüllen zu deaktivieren.572Setzen Sie `SELF_HOSTED_RUNNER_HOST_CONFIG_DIR`, um von einem anderen Pfad zu befüllen, oder lassen Sie die Variable auf ein leeres Verzeichnis zeigen, um das Befüllen zu deaktivieren.

573 573 

574Eine im Repository committete `.claude/settings.json` wird als Projekteinstellungen darübergelegt. Sitzungen lesen außerdem [`managed-settings.json`](/docs/de/settings#where-settings-live) aus dem standardmäßigen Systempfad in Ihrem Runner-Image. Ob deren Schlüssel neben [serververwalteten Einstellungen](/docs/de/server-managed-settings) gelten, richtet sich danach, [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources): Wenn Ihre Organisation serververwaltete Schlüssel bereitstellt, ignorieren Sitzungen standardmäßig die Datei des Runner-Images, abgesehen von den [Schlüsseln, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source), etwa dem `env`-Block, den Sandbox-Sperren, den Pfaden zu den Sandbox-Binärdateien und `forceRemoteSettingsRefresh`. Siehe [Vorrang der Einstellungen](/docs/de/settings#settings-precedence).574Eine im Repository committete `.claude/settings.json` wird als Projekteinstellungen darübergelegt. In einer Sitzung mit mehreren Repositorys [wird höchstens die Datei eines einzigen Repositorys wirksam](#repository-settings-in-sessions-with-several-repositories). Sitzungen lesen außerdem [`managed-settings.json`](/docs/de/settings#where-settings-live) aus dem standardmäßigen Systempfad in Ihrem Runner-Image. Ob deren Schlüssel neben [serververwalteten Einstellungen](/docs/de/server-managed-settings) gelten, richtet sich danach, [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources): Wenn Ihre Organisation serververwaltete Schlüssel bereitstellt, ignorieren Sitzungen standardmäßig die Datei des Runner-Images, abgesehen von den [Schlüsseln, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source), etwa dem `env`-Block, den Sandbox-Sperren, den Pfaden zu den Sandbox-Binärdateien und `forceRemoteSettingsRefresh`. Siehe [Vorrang der Einstellungen](/docs/de/settings#settings-precedence).

575 575 

576Wenn die Steuerungsebene von Anthropic eine Sitzung mit [Claude Code-Hooks](/docs/de/hooks) versorgt, installiert der Runner diese neben Ihrer eigenen Konfiguration, nicht an deren Stelle. Erfordert Claude Code v2.1.229 oder höher.576Wenn die Steuerungsebene von Anthropic eine Sitzung mit [Claude Code-Hooks](/docs/de/hooks) versorgt, installiert der Runner diese neben Ihrer eigenen Konfiguration, nicht an deren Stelle. Erfordert Claude Code v2.1.229 oder höher.

577 577 


583 583 

584Der Snapshot, den der Runner vom `~/.claude/` des Hosts erstellt, lässt das Verzeichnis `projects/` aus. Der standardmäßige Speicherort von Auto-Memory liegt unterhalb dieses Verzeichnisses. Wenn Sie dort Memory-Dateien ablegen, übernimmt der Runner sie nicht in Sitzungen, und sie schalten Auto-Memory nicht ein.584Der Snapshot, den der Runner vom `~/.claude/` des Hosts erstellt, lässt das Verzeichnis `projects/` aus. Der standardmäßige Speicherort von Auto-Memory liegt unterhalb dieses Verzeichnisses. Wenn Sie dort Memory-Dateien ablegen, übernimmt der Runner sie nicht in Sitzungen, und sie schalten Auto-Memory nicht ein.

585 585 

586<h3 id="repository-settings-in-sessions-with-several-repositories">

587 Repository-Einstellungen in Sitzungen mit mehreren Repositorys

588</h3>

589 

590In einer Sitzung mit mehreren Repositorys liest Claude Code die Projekteinstellungen aus dem Verzeichnis, in dem die Sitzung startet, sodass höchstens die `.claude/settings.json` eines einzigen Repositorys als Projekteinstellungen wirksam wird. Ein Hook, der in der Datei eines anderen Repositorys definiert ist, wird nicht ausgeführt, eine deny-Regel darin gilt nicht, und ihr `env` wird nicht gesetzt.

591 

592* **`--capacity 1`, der Standardwert, mit dem integrierten Checkout**: Die Sitzung startet im ersten Repository ihrer Liste von Repositorys. Die `.claude/settings.json` dieses Repositorys wird als Projekteinstellungen wirksam und seine `.mcp.json` wird geladen, die der anderen Repositorys nicht.

593* **Ein `--capacity`-Wert größer als eins oder ein [`checkout`-Hook](#checkout)**: Die Sitzung startet in einem sitzungsspezifischen Verzeichnis, das die Checkouts enthält. Die `.claude/settings.json` keines Repositorys wird als Projekteinstellungen wirksam, die `.mcp.json` keines Repositorys wird geladen, und [`$CLAUDE_PROJECT_DIR`](/docs/de/hooks#reference-scripts-by-path) in einem Hook-Befehl ist dieses Verzeichnis, nicht ein Checkout.

594 

595Die `CLAUDE.md` und die Skills jedes Repositorys werden geladen, unabhängig davon, wo die Sitzung startet. Der Runner übergibt jedes Repository als [zusätzliches Verzeichnis](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) an Claude Code, daher liest Claude Code außerdem die Schlüssel `enabledPlugins` und `extraKnownMarketplaces` aus der `.claude/settings.json` jedes Repositorys.

596 

597Um einen Hook in jeder Sitzung auszuführen oder eine Berechtigungsregel in jeder Sitzung anzuwenden, legen Sie ihn bzw. sie in `~/.claude/settings.json` auf dem Runner-Host ab. Der Runner [übernimmt die Host-Datei in jede Sitzung](#how-each-session’s-config-is-assembled), unabhängig davon, wo die Sitzung startet. Schreiben Sie einen Pfad in einer `Read`- oder `Edit`-Regel als [Muster](/docs/de/permissions#read-and-edit) mit `//` (absolut) oder `~/` (relativ zum Home-Verzeichnis), da andere Muster an der Einstellungsquelle oder am aktuellen Verzeichnis verankert werden.

598 

586<h3 id="repository-committed-permission-rules">599<h3 id="repository-committed-permission-rules">

587 Im Repository committete Berechtigungsregeln600 Im Repository committete Berechtigungsregeln

588</h3>601</h3>

Details

87 87 

88 Da Hooks Shell-Befehle ausführen, sehen Benutzer in interaktiven Sitzungen einen [Sicherheitsgenehmigungsdialog](#security-approval-dialogs), bevor Claude Code sie anwendet.88 Da Hooks Shell-Befehle ausführen, sehen Benutzer in interaktiven Sitzungen einen [Sicherheitsgenehmigungsdialog](#security-approval-dialogs), bevor Claude Code sie anwendet.

89 89 

90 Um den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Klassifizierer zu konfigurieren, damit er weiß, welche Repos, Buckets und Domains Ihre Organisation vertraut, stellen Sie einen `autoMode`-Block auf die gleiche Weise bereit. Siehe [Auto-Modus konfigurieren](/docs/de/auto-mode-config), um zu erfahren, wie die `autoMode`-Einträge beeinflussen, was der Klassifizierer blockiert, und wichtige Warnungen zu den Feldern `environment`, `allow`, `soft_deny` und `hard_deny`.90 Um den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifikator zu konfigurieren, damit er weiß, welchen Repos, Buckets und Domains Ihre Organisation vertraut, stellen Sie einen `autoMode`-Block auf die gleiche Weise bereit. Siehe [Auto-Modus konfigurieren](/docs/de/auto-mode-config), um zu erfahren, wie die `autoMode`-Einträge beeinflussen, was der Klassifikator blockiert, und wichtige Warnungen zu den Feldern `environment`, `allow`, `soft_deny` und `hard_deny`.

91 </Step>91 </Step>

92 92 

93 <Step title="Speichern und bereitstellen">93 <Step title="Speichern und bereitstellen">

94 Speichern Sie Ihre Änderungen. Claude Code-Clients erhalten die aktualisierten Einstellungen beim nächsten Start oder während des stündlichen Abrufzyklus.94 Speichern Sie Ihre Änderungen. Claude Code-Clients erhalten die aktualisierten Einstellungen beim nächsten Start oder während des stündlichen Abrufzyklus.

95 

96 Der Editor prüft Ihr JSON anhand des veröffentlichten JSON-Schemas für Claude Code-Einstellungen. Findet er ein Problem in JSON, das sich parsen lässt, zeigt er eine Warnung an und ändert die Beschriftung der Speichern-Schaltfläche. Die Beschriftung lautet **Update with errors**, wenn bereits Einstellungen gespeichert sind, und **Add with errors**, wenn noch keine Einstellungen gespeichert sind. Diese Schaltfläche speichert trotzdem, da eine Schemawarnung das Speichern nicht blockiert.

97 

98 Das Schema [kann hinter den neuesten Releases zurückliegen](/docs/de/settings#edit-a-settings-file), sodass der Editor möglicherweise einen Schlüssel oder Wert kennzeichnet, den die [Einstellungsreferenz](/docs/de/settings-reference#all-settings) dokumentiert. Claude Code erhält die von Ihnen gespeicherten Schlüssel und Werte und führt beim Laden [eine eigene Validierung](#invalid-entries-in-delivered-settings) durch.

95 </Step>99 </Step>

96</Steps>100</Steps>

97 101 

settings.md +7 −7

Details

440 440 

441* **Verwaltet**: Ihre Organisation stellt sie bereit. Sie erstellen oder bearbeiten sie nicht.441* **Verwaltet**: Ihre Organisation stellt sie bereit. Sie erstellen oder bearbeiten sie nicht.

442* **Gemeinsames Projekt**: Ein Projekt, das bereits Claude Code verwendet, kann eine committed haben. Wenn nicht, erstellen Sie sie unter `.claude/settings.json` im Projektordner.442* **Gemeinsames Projekt**: Ein Projekt, das bereits Claude Code verwendet, kann eine committed haben. Wenn nicht, erstellen Sie sie unter `.claude/settings.json` im Projektordner.

443* **Benutzer** und **Projekt lokal**: Erstellen Sie sie selbst, oder lassen Sie Claude Code sie erstellen. Es schreibt `~/.claude/settings.json` das erste Mal, wenn Sie eine Option im `/config`-Menü ändern, die es in Benutzereinstellungen speichert, wie das Design, und `.claude/settings.local.json` das erste Mal, wenn Sie eine dauerhafte Genehmigung bei einer Berechtigungsaufforderung geben, wie „Ja, und frag mich nicht mehr“ für einen Bash-Befehl. Einige `/config`-Optionen, einschließlich **Tipps anzeigen**, werden stattdessen in `.claude/settings.local.json` gespeichert.443* **Benutzer** und **Projekt lokal**: Erstellen Sie sie selbst, oder lassen Sie Claude Code sie erstellen. Es schreibt `~/.claude/settings.json` das erste Mal, wenn Sie eine Option im `/config`-Menü ändern, die es in Benutzereinstellungen speichert, wie das Design, und `.claude/settings.local.json` das erste Mal, wenn Sie eine dauerhafte Genehmigung bei einer Berechtigungsabfrage geben, wie „Ja, und frag mich nicht mehr“ für einen Bash-Befehl. Einige `/config`-Optionen, einschließlich **Tipps anzeigen**, werden stattdessen in `.claude/settings.local.json` gespeichert.

444 444 

445<Info>445<Info>

446 Unter Windows bedeutet `~/.claude` `%USERPROFILE%\.claude`. Um die Home-Verzeichnis-Dateien woanders zu speichern, setzen Sie [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars); Claude Code speichert dann Ihre Einstellungen, Sitzungsverlauf und Plugins stattdessen dort.446 Unter Windows bedeutet `~/.claude` `%USERPROFILE%\.claude`. Um die Home-Verzeichnis-Dateien woanders zu speichern, setzen Sie [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars); Claude Code speichert dann Ihre Einstellungen, Sitzungsverlauf und Plugins stattdessen dort.


470 470 

471Um eine Einstellung für sich selbst in einem Projekt zu ändern, ohne sie für Ihre Teamkollegen zu ändern, speichern Sie sie in `.claude/settings.local.json` im Projekt. Claude Code wendet diese Datei über die committete `.claude/settings.json` an, also wenn die Datei Ihres Teams `"model": "claude-sonnet-5"` setzt und Sie Opus möchten, fügen Sie `"model": "claude-opus-5-5"` in Ihre lokale Datei ein und nur Ihre Sitzungen ändern sich.471Um eine Einstellung für sich selbst in einem Projekt zu ändern, ohne sie für Ihre Teamkollegen zu ändern, speichern Sie sie in `.claude/settings.local.json` im Projekt. Claude Code wendet diese Datei über die committete `.claude/settings.json` an, also wenn die Datei Ihres Teams `"model": "claude-sonnet-5"` setzt und Sie Opus möchten, fügen Sie `"model": "claude-opus-5-5"` in Ihre lokale Datei ein und nur Ihre Sitzungen ändern sich.

472 472 

473Claude Code schreibt auch in diese Datei, hält sie aus Ihren Commits heraus und wendet ihre Berechtigungsregeln ohne den Vertrauensschritt an:473Claude Code schreibt auch in diese Datei, hält sie aus Ihren Commits heraus und wendet ihre allow-Regeln ohne den Vertrauensschritt an:

474 474 

475* **Claude Code schreibt sie auch.** Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert und Sie „Ja, und frag mich nicht mehr“ wählen, speichert Claude Code diese [Berechtigungsgenehmigung](/docs/de/permissions#permission-system) hier als `allow`-Regel.475* **Claude Code schreibt sie auch.** Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert und Sie „Ja, und frag mich nicht mehr“ wählen, speichert Claude Code diese [Berechtigungsgenehmigung](/docs/de/permissions#permission-system) hier als `allow`-Regel.

476* **Sie müssen sie nicht selbst gitignorieren, es sei denn, Sie haben sie von Hand erstellt.** Das erste Mal, wenn Claude Code die Datei in einem Git-Repository schreibt, das sie nicht bereits ignoriert, fügt es `**/.claude/settings.local.json` zu Ihrer globalen Git-Ausschluss-Datei hinzu, damit die Datei in jedem Repository aus Ihren Commits herausbleibt. Diese Datei ist `core.excludesFile`, wenn Ihre globale Git-Konfiguration sie auf einen absoluten oder `~`-präfixierten Pfad setzt; andernfalls ist es `$XDG_CONFIG_HOME/git/ignore`, oder `~/.config/git/ignore`, wenn `XDG_CONFIG_HOME` nicht gesetzt ist. Wenn Sie die Datei von Hand erstellt haben und Claude Code noch nicht darin geschrieben hat, fügen Sie sie selbst zu `.gitignore` hinzu.476* **Sie müssen sie nicht selbst gitignorieren, es sei denn, Sie haben sie von Hand erstellt.** Das erste Mal, wenn Claude Code die Datei in einem Git-Repository schreibt, das sie nicht bereits ignoriert, fügt es `**/.claude/settings.local.json` zu Ihrer globalen Git-Ausschluss-Datei hinzu, damit die Datei in jedem Repository aus Ihren Commits herausbleibt. Diese Datei ist `core.excludesFile`, wenn Ihre globale Git-Konfiguration sie auf einen absoluten oder `~`-präfixierten Pfad setzt; andernfalls ist es `$XDG_CONFIG_HOME/git/ignore`, oder `~/.config/git/ignore`, wenn `XDG_CONFIG_HOME` nicht gesetzt ist. Wenn Sie die Datei von Hand erstellt haben und Claude Code noch nicht darin geschrieben hat, fügen Sie sie selbst zu `.gitignore` hinzu.

477* **Seine Berechtigungsregeln warten nicht auf Vertrauen, während die Datei nicht verfolgt bleibt.** Da die Datei Ihnen gehört und nicht dem Repository, wendet Claude Code ihre `allow`-Regeln ohne den [Workspace-Vertrauens](/docs/de/permissions#project-allow-rules-and-workspace-trust)-Schritt an, den es für die committete Datei erfordert. Wenn die Datei von Git verfolgt wird, gilt der Vertrauensschritt auch für sie; siehe [Wenn Ihre lokale Einstellungsdatei Vertrauen benötigt](/docs/de/permissions#when-your-local-settings-file-needs-trust).477* **Ihre allow-Regeln warten nicht auf Vertrauen, während die Datei nicht verfolgt bleibt.** Da die Datei Ihnen gehört und nicht dem Repository, wendet Claude Code ihre `allow`-Regeln ohne den [Workspace-Vertrauens](/docs/de/permissions#project-allow-rules-and-workspace-trust)-Schritt an, den es für die committete Datei erfordert. Wenn die Datei von Git verfolgt wird, gilt der Vertrauensschritt auch für sie; siehe [Wenn Ihre lokale Einstellungsdatei Vertrauen benötigt](/docs/de/permissions#when-your-local-settings-file-needs-trust).

478 478 

479<span id="where-claude-code-looks-for-each-file" />479<span id="where-claude-code-looks-for-each-file" />

480 480 


486 Wo Claude Code die lokale Datei in einem Git-Repository hält486 Wo Claude Code die lokale Datei in einem Git-Repository hält

487</h4>487</h4>

488 488 

489Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert und Sie „Ja, und frag mich nicht mehr“ wählen, speichert Claude Code diese Genehmigung als `allow`-Regel in `.claude/settings.local.json`. Wenn Sie Claude Code in einem Unterverzeichnis eines Git-Repositories starten, liest und schreibt es diese Datei im Repository-Root und wendet die Genehmigung auf das gesamte Repository an. In einem [Worktree](/docs/de/worktrees) verwendet es die Datei im Root des Haupt-Checkouts.489Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert und Sie „Ja, und frag mich nicht mehr“ wählen, speichert Claude Code diese Genehmigung als `allow`-Regel in `.claude/settings.local.json`. Wenn Sie Claude Code in einem Unterverzeichnis eines Git-Repositorys starten, liest und schreibt es diese Datei im Repository-Root und wendet die Genehmigung auf das gesamte Repository an. In einem [Worktree](/docs/de/worktrees) verwendet es die Datei im Root des Haupt-Checkouts.

490 490 

491Zwei Regeln qualifizieren den Root-Speicherort:491Zwei Regeln qualifizieren den Root-Speicherort:

492 492 

493* **Wenn die Datei stattdessen bei `.claude/settings.json` bleibt**: außerhalb eines Git-Repositories, wenn der Repository-Root Ihr Home-Verzeichnis ist, unter Windows oder wenn der Repository-Root oder sein `.git`- oder `.claude`-Eintrag nicht Ihrem Benutzer gehört.493* **Wenn die Datei stattdessen bei `.claude/settings.json` bleibt**: außerhalb eines Git-Repositorys, wenn der Repository-Root Ihr Home-Verzeichnis ist, unter Windows oder wenn der Repository-Root oder sein `.git`- oder `.claude`-Eintrag nicht Ihrem Benutzer gehört.

494* **Pfade in der Datei verankern nicht im Repository-Root**: eine Berechtigungsregel, die mit `/` beginnt oder ein relativer Sandbox-Pfad [verankert stattdessen im primären Arbeitsverzeichnis der Sitzung](/docs/de/permissions#read-and-edit).494* **Pfade in der Datei verankern nicht im Repository-Root**: eine Berechtigungsregel, die mit `/` beginnt oder ein relativer Sandbox-Pfad [verankert stattdessen im primären Arbeitsverzeichnis der Sitzung](/docs/de/permissions#read-and-edit).

495 495 

496Vor v2.1.211 hielt Claude Code die Datei im Startverzeichnis. Es liest immer noch eine Datei, die eine frühere Version dort neben der Root-Datei hinterlassen hat; wo beide denselben Schlüssel setzen, gilt der Wert des Root, und Berechtigungsregeln aus beiden Dateien gelten. Der [`resolveSettings()`](/docs/de/agent-sdk/typescript#resolvesettings)-Helfer des Agent SDK liest die Datei immer aus dem Startverzeichnis.496Vor v2.1.211 hielt Claude Code die Datei im Startverzeichnis. Es liest immer noch eine Datei, die eine frühere Version dort neben der Root-Datei hinterlassen hat; wo beide denselben Schlüssel setzen, gilt der Wert des Root, und Berechtigungsregeln aus beiden Dateien gelten. Der [`resolveSettings()`](/docs/de/agent-sdk/typescript#resolvesettings)-Helfer des Agent SDK liest die Datei immer aus dem Startverzeichnis.


521 521 

522In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung, die auf Ihrem Computer in der Claude Desktop-App läuft, ruft Claude Code keine servergesteuerten Einstellungen aus der claude.ai-Admin-Konsole ab, und es liest die Richtlinie, die auf Ihrem Gerät bereitgestellt ist, es sei denn, die Claude Desktop-Konfiguration Ihrer Organisation setzt `requireCoworkFullVmSandbox`. [Wo und wann eine Richtlinie angewendet wird](/docs/de/managed-settings#where-and-when-a-policy-applies) behandelt Cowork und Cloud-Sitzungen.522In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung, die auf Ihrem Computer in der Claude Desktop-App läuft, ruft Claude Code keine servergesteuerten Einstellungen aus der claude.ai-Admin-Konsole ab, und es liest die Richtlinie, die auf Ihrem Gerät bereitgestellt ist, es sei denn, die Claude Desktop-Konfiguration Ihrer Organisation setzt `requireCoworkFullVmSandbox`. [Wo und wann eine Richtlinie angewendet wird](/docs/de/managed-settings#where-and-when-a-policy-applies) behandelt Cowork und Cloud-Sitzungen.

523 523 

524Wenn Sie der Administrator sind, führt Sie [Richten Sie Claude Code für Ihre Organisation ein](/docs/de/admin-setup) durch die Auswahl, was Sie erzwingen möchten, und [Stellen Sie verwaltete Einstellungen bereit](/docs/de/managed-settings) behandelt die Bereitstellung und wie Sie bestätigen, dass eine Richtlinie in Kraft ist.524Wenn Sie der Administrator sind, führt Sie [Richten Sie Claude Code für Ihre Organisation ein](/docs/de/admin-setup) durch die Auswahl, was Sie erzwingen möchten, und [Stellen Sie verwaltete Einstellungen bereit](/docs/de/managed-settings) behandelt die Bereitstellung und wie Sie bestätigen, dass eine Richtlinie in Kraft ist. Informationen zur Warnung, die der Editor für verwaltete Einstellungen in der claude.ai-Admin-Konsole anzeigen kann, finden Sie unter [Konfigurieren Sie servergesteuerte Einstellungen](/docs/de/server-managed-settings#configure-server-managed-settings).

525 525 

526<h2 id="change-a-setting">526<h2 id="change-a-setting">

527 Ändern Sie eine Einstellung527 Ändern Sie eine Einstellung


809 809 

810Eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) läuft in einer [Cloud-Umgebung](/docs/de/cloud-environments) auf einem frischen Klon Ihres Repositorys, nicht auf Ihrer Maschine. Das ändert, welche Einstellungen es erreichen:810Eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) läuft in einer [Cloud-Umgebung](/docs/de/cloud-environments) auf einem frischen Klon Ihres Repositorys, nicht auf Ihrer Maschine. Das ändert, welche Einstellungen es erreichen:

811 811 

812* **Gemeinsame Projekt-Einstellungen** (`.claude/settings.json`): werden in einer Sitzung mit einem Repository gelesen, da die Datei Teil des Klons ist und die Sitzung darin startet. Committen Sie eine Einstellung dort, um sie in diesen Sitzungen anzuwenden. Eine Sitzung mit mehreren Repositorys startet über den Klonen und liest aus jeder `.claude/settings.json` des Repositorys nur die Schlüssel `enabledPlugins` und `extraKnownMarketplaces`, nicht Berechtigungsregeln, Hooks, `env` oder andere Schlüssel. Die Marktplätze und Plugins, die diese beiden Schlüssel deklarieren, [werden immer noch nicht in einer Cloud-Sitzung geladen](/docs/de/cloud-environments#what-carries-over-from-your-setup).812* **Gemeinsame Projekt-Einstellungen** (`.claude/settings.json`): werden in einer Sitzung mit einem Repository gelesen, da die Datei Teil des Klons ist und die Sitzung darin startet. Committen Sie eine Einstellung dort, um sie in diesen Sitzungen anzuwenden. In einer von Anthropic gehosteten Umgebung startet eine Sitzung mit mehreren Repositorys über den Klonen und liest aus jeder `.claude/settings.json` des Repositorys nur die Schlüssel `enabledPlugins` und `extraKnownMarketplaces`, nicht Berechtigungsregeln, Hooks, `env` oder andere Schlüssel. Die Marketplaces und Plugins, die diese beiden Schlüssel deklarieren, [werden immer noch nicht in einer Cloud-Sitzung geladen](/docs/de/cloud-environments#what-carries-over-from-your-setup). Für eine selbstgehostete Umgebung siehe [welche Repository-Einstellungen gelten](/docs/de/self-hosted-environments-configuration#repository-settings-in-sessions-with-several-repositories).

813* **Benutzer- und Projekt-lokale Einstellungen** (`~/.claude/settings.json` und `.claude/settings.local.json`): nicht gelesen. Beide bleiben auf Ihrer Maschine, und die lokale Datei ist nicht im Klon.813* **Benutzer- und Projekt-lokale Einstellungen** (`~/.claude/settings.json` und `.claude/settings.local.json`): nicht gelesen. Beide bleiben auf Ihrer Maschine, und die lokale Datei ist nicht im Klon.

814* **Verwaltete Einstellungen**: eine `managed-settings.json` Datei oder MDM-Profil auf Ihrem Gerät erreicht eine Cloud-Sitzung nicht. Die [serververwalteten Einstellungen](/docs/de/server-managed-settings) Ihrer Organisation erreichen sie; [Oberflächenabdeckung](/docs/de/model-config#surface-coverage) listet auf, welche Cloud-Sitzungen sie erhalten. Eine [selbstgehostete Umgebung](/docs/de/self-hosted-environments) liest auch die verwaltete Einstellungsdatei in ihrem Runner-Image. [Wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources) sagt, wann diese Datei angewendet wird.814* **Verwaltete Einstellungen**: eine `managed-settings.json` Datei oder MDM-Profil auf Ihrem Gerät erreicht eine Cloud-Sitzung nicht. Die [serververwalteten Einstellungen](/docs/de/server-managed-settings) Ihrer Organisation erreichen sie; [Oberflächenabdeckung](/docs/de/model-config#surface-coverage) listet auf, welche Cloud-Sitzungen sie erhalten. Eine [selbstgehostete Umgebung](/docs/de/self-hosted-environments) liest auch die verwaltete Einstellungsdatei in ihrem Runner-Image. [Wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources) sagt, wann diese Datei angewendet wird.

815* **`/config`**: im Browser unter claude.ai/code öffnet die Claude Code-Sektion Ihrer claude.ai-Einstellungen statt einen Wert zu ändern. Um eine Einstellung für eine Cloud-Sitzung zu ändern, setzen Sie eine [Umgebungsvariable](/docs/de/cloud-environments#set-environment-variables) auf der Umgebung, oder committen Sie in einer Sitzung mit einem Repository den Schlüssel zu der `.claude/settings.json` dieses Repositorys.815* **`/config`**: im Browser unter claude.ai/code öffnet die Claude Code-Sektion Ihrer claude.ai-Einstellungen statt einen Wert zu ändern. Um eine Einstellung für eine Cloud-Sitzung zu ändern, setzen Sie eine [Umgebungsvariable](/docs/de/cloud-environments#set-environment-variables) auf der Umgebung, oder committen Sie in einer Sitzung mit einem Repository den Schlüssel zu der `.claude/settings.json` dieses Repositorys.

skills.md +2 −0

Details

94| `migrate` | Aktualisieren Sie Ihren vorhandenen Claude API-Code auf ein neueres Modell | Früher als v2.1.221 |94| `migrate` | Aktualisieren Sie Ihren vorhandenen Claude API-Code auf ein neueres Modell | Früher als v2.1.221 |

95| `upgrade` | Verschieben Sie die Anthropic SDK-Abhängigkeit Ihres Projekts über eine Hauptversion hinweg, derzeit das Python-Paket `anthropic` von 0.x zu 1.x | v2.1.236 oder später |95| `upgrade` | Verschieben Sie die Anthropic SDK-Abhängigkeit Ihres Projekts über eine Hauptversion hinweg, derzeit das Python-Paket `anthropic` von 0.x zu 1.x | v2.1.236 oder später |

96| `managed-agents-onboard` | Durchlaufen Sie die Erstellung eines neuen Managed Agent | Früher als v2.1.221 |96| `managed-agents-onboard` | Durchlaufen Sie die Erstellung eines neuen Managed Agent | Früher als v2.1.221 |

97| `managed-agents-onboard <url>` | Erstellen Sie den Managed Agent, den die Seite unter der URL beschreibt, z. B. eine Seite in der [Managed Agents-Dokumentation](https://platform.claude.com/docs/en/managed-agents/overview) | v2.1.290 oder später |

98| `managed-agents-onboard <quickstart-name>` | Erstellen Sie eine der Schnellstart-Vorlagen der Console, z. B. `deep-researcher`. Wenn Sie ein einzelnes Wort angeben, das kein Vorlagenname ist, listet Claude die gültigen Namen auf | v2.1.290 oder später |

97| `prompt-audit` | Kennzeichnen Sie Anweisungen, die für ältere Modelle in Ihren Prompts, Skills und Tool-Beschreibungen geschrieben wurden, und schlagen Sie Fixes als Diff vor | v2.1.221 oder später |99| `prompt-audit` | Kennzeichnen Sie Anweisungen, die für ältere Modelle in Ihren Prompts, Skills und Tool-Beschreibungen geschrieben wurden, und schlagen Sie Fixes als Diff vor | v2.1.221 oder später |

98| `cost-optimize` | Profilieren Sie, wohin die Claude API-Ausgaben Ihres Projekts gehen, und schlagen Sie Einsparungen aus Optionen wie Prompt-Caching, Trimmen unnötiger Input- und Output-Token, Batch-Verarbeitung, Aufwand und Modellwahl vor, eine Änderung nach der anderen | v2.1.247 oder später |100| `cost-optimize` | Profilieren Sie, wohin die Claude API-Ausgaben Ihres Projekts gehen, und schlagen Sie Einsparungen aus Optionen wie Prompt-Caching, Trimmen unnötiger Input- und Output-Token, Batch-Verarbeitung, Aufwand und Modellwahl vor, eine Änderung nach der anderen | v2.1.247 oder später |

99| `build-eval` | Erstellen Sie einen Eval-Satz für Ihre Claude-gestützte App | v2.1.259 oder später |101| `build-eval` | Erstellen Sie einen Eval-Satz für Ihre Claude-gestützte App | v2.1.259 oder später |

sub-agents.md +4 −2

Details

609Die Hauptkonversation's Berechtigungsmodus entscheidet, ob Claude Code den Wert verwendet, den Sie setzen:609Die Hauptkonversation's Berechtigungsmodus entscheidet, ob Claude Code den Wert verwendet, den Sie setzen:

610 610 

611* Wenn die Hauptkonversation in `bypassPermissions`, `acceptEdits` oder [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) ist, läuft der Subagent in diesem gleichen Modus und Claude Code ignoriert den `permissionMode`, den Sie setzen. Unter Auto-Modus bewertet der Klassifizierer die Werkzeugaufrufe des Subagenten mit den Block- und Zulassungsregeln der Hauptkonversation. Wenn der Subagent endet, überprüft der Klassifizierer auch seine Arbeit und seinen endgültigen Bericht, bevor der Bericht geliefert wird, wie [Wie Auto-Modus Subagenten handhabt](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) beschreibt.611* Wenn die Hauptkonversation in `bypassPermissions`, `acceptEdits` oder [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) ist, läuft der Subagent in diesem gleichen Modus und Claude Code ignoriert den `permissionMode`, den Sie setzen. Unter Auto-Modus bewertet der Klassifizierer die Werkzeugaufrufe des Subagenten mit den Block- und Zulassungsregeln der Hauptkonversation. Wenn der Subagent endet, überprüft der Klassifizierer auch seine Arbeit und seinen endgültigen Bericht, bevor der Bericht geliefert wird, wie [Wie Auto-Modus Subagenten handhabt](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) beschreibt.

612* Wenn die Hauptkonversation in `default`, `dontAsk` oder `plan` Modus ist, läuft der Subagent in dem Berechtigungsmodus, den Sie setzen, außer `bypassPermissions`. Ein Subagent, der `bypassPermissions` deklariert, behält stattdessen den Modus der Hauptkonversation. Die `bypassPermissions`-Ausnahme erfordert Claude Code v2.1.267 oder später.612* Wenn die Hauptkonversation im Modus `default`, `dontAsk` oder `plan` ist, läuft der Subagent in dem Berechtigungsmodus, den Sie setzen. In diesen Fällen behält er stattdessen den Berechtigungsmodus der Hauptkonversation:

613 * Sie setzen `bypassPermissions`. Die `bypassPermissions`-Ausnahme erfordert Claude Code v2.1.267 oder später.

614 * Sie setzen `auto`, und [der Auto-Modus ist für den Subagenten nicht verfügbar](/docs/de/permission-modes#eliminate-prompts-with-auto-mode), etwa wenn eine Einstellungsdatei [`disableAutoMode`](/docs/de/settings-reference#disableautomode) setzt oder das Modell des Subagenten den Auto-Modus nicht unterstützt.

613 615 

614`permissionMode` akzeptiert diese Werte und `manual` als Alias für `default`:616`permissionMode` akzeptiert diese Werte und `manual` als Alias für `default`:

615 617 


640Implement API endpoints. Follow the conventions and patterns from the preloaded skills.642Implement API endpoints. Follow the conventions and patterns from the preloaded skills.

641```643```

642 644 

643Der vollständige Inhalt jedes aufgelisteten Skills wird in den Kontext des Subagenten eingespritzt. Dieses Feld steuert, welche Skills vorausgeladen werden, nicht welche Skills der Subagent zugreifen kann: ohne es kann der Subagent weiterhin Projekt-, Benutzer- und Plugin-Skills durch das Skill-Werkzeug während der Ausführung entdecken und aufrufen. Um einen Subagenten daran zu hindern, Skills überhaupt aufzurufen, lassen Sie `Skill` aus der [`tools`](#available-tools)-Liste weg oder fügen Sie es zu `disallowedTools` hinzu.645Der vollständige Inhalt jedes aufgelisteten Skills wird beim Start in den Kontext des Subagenten eingefügt, bis zu den ersten 32 unterschiedlichen Namen in der Liste. Dieses Feld steuert, welche Skills vorgeladen werden, nicht, auf welche Skills der Subagent zugreifen kann: Ohne es kann der Subagent während der Ausführung weiterhin Projekt-, Benutzer- und Plugin-Skills über das Skill-Tool entdecken und aufrufen. Um einen Subagenten ganz daran zu hindern, Skills aufzurufen, lassen Sie `Skill` aus der [`tools`](#available-tools)-Liste weg oder fügen Sie es zu `disallowedTools` hinzu.

644 646 

645Sie können keine Skills vorausladen, die [`disable-model-invocation: true`](/docs/de/skills#control-who-invokes-a-skill) setzen, da das Vorausladen aus demselben Satz von Skills schöpft, die Claude aufrufen kann. Dies schließt den gebündelten `/verify`-Skill ein, den Claude nicht selbstständig ausführen kann.647Sie können keine Skills vorausladen, die [`disable-model-invocation: true`](/docs/de/skills#control-who-invokes-a-skill) setzen, da das Vorausladen aus demselben Satz von Skills schöpft, die Claude aufrufen kann. Dies schließt den gebündelten `/verify`-Skill ein, den Claude nicht selbstständig ausführen kann.

646 648 

Details

666 666 

667* WebFetch lehnt `localhost` und jeden anderen Hostnamen ohne einen Punkt ab, z. B. einen bloßen Intranet-Namen, bevor eine Anfrage gestellt wird. Der [Fehler, den es zurückgibt](/docs/de/errors#webfetch-cannot-fetch-localhost), teilt Claude mit, dass lokale Server mit `curl` über Bash erreicht werden sollen.667* WebFetch lehnt `localhost` und jeden anderen Hostnamen ohne einen Punkt ab, z. B. einen bloßen Intranet-Namen, bevor eine Anfrage gestellt wird. Der [Fehler, den es zurückgibt](/docs/de/errors#webfetch-cannot-fetch-localhost), teilt Claude mit, dass lokale Server mit `curl` über Bash erreicht werden sollen.

668* HTTP-URLs werden automatisch auf HTTPS aktualisiert.668* HTTP-URLs werden automatisch auf HTTPS aktualisiert.

669* Große Seiten werden vor der Verarbeitung auf ein festes Zeichenlimit gekürzt.669* WebFetch liest pro Aufruf bis zu 100.000 Zeichen des Inhalts einer Seite. Auf Claude Code v2.1.290 oder später teilt das Ergebnis für eine längere Seite Claude mit, wie viel ungelesen blieb, sodass Claude den nächsten Teil abrufen kann.

670* WebFetch speichert jede Antwort standardmäßig 15 Minuten lang zwischen, sodass wiederholte Abrufe derselben URL schnell zurückgegeben werden. Auf Claude Code v2.1.233 oder später können Sie [`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/de/env-vars#variables) setzen, um zu ändern, wie lange WebFetch jede Antwort speichert.670* WebFetch speichert jede Antwort standardmäßig 15 Minuten lang zwischen, sodass wiederholte Abrufe derselben URL schnell zurückgegeben werden. Auf Claude Code v2.1.233 oder später können Sie [`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](/docs/de/env-vars#variables) setzen, um zu ändern, wie lange WebFetch jede Antwort speichert.

671* Eine Seite, die nicht innerhalb von fünf Minuten heruntergeladen wird, einschließlich aller Umleitungen, denen WebFetch folgt, schlägt mit einem Deadline-Fehler fehl. Auf Claude Code v2.1.268 oder später können Sie [`CLAUDE_CODE_WEBFETCH_DEADLINE_MS`](/docs/de/env-vars#variables) setzen, um das Limit zu ändern, oder auf `0`, um es zu entfernen.671* Eine Seite, die nicht innerhalb von fünf Minuten heruntergeladen wird, einschließlich aller Umleitungen, denen WebFetch folgt, schlägt mit einem Deadline-Fehler fehl. Auf Claude Code v2.1.268 oder später können Sie [`CLAUDE_CODE_WEBFETCH_DEADLINE_MS`](/docs/de/env-vars#variables) setzen, um das Limit zu ändern, oder auf `0`, um es zu entfernen.

672* Wenn eine URL zu einem anderen Host umleitet, gibt WebFetch ein Textergebnis zurück, das die ursprüngliche URL und das Umleitungsziel benennt, anstatt ihr zu folgen. Claude ruft dann die neue URL mit einem zweiten WebFetch-Aufruf ab.672* Wenn eine URL zu einem anderen Host umleitet, gibt WebFetch ein Textergebnis zurück, das die ursprüngliche URL und das Umleitungsziel benennt, anstatt ihr zu folgen. Claude ruft dann die neue URL mit einem zweiten WebFetch-Aufruf ab.

ultrareview.md +6 −6

Details

56 Überprüfung eines Pull Requests56 Überprüfung eines Pull Requests

57</h3>57</h3>

58 58 

59Um einen GitHub Pull Request statt eines lokalen Branches zu überprüfen, übergeben Sie die PR-Nummer:59Um einen Pull Request auf `github.com` statt eines lokalen Branches zu überprüfen, übergeben Sie die PR-Nummer:

60 60 

61```text theme={null}61```text theme={null}

62/code-review ultra 123462/code-review ultra 1234


64 64 

65Der Befehl akzeptiert auch `#1234`, `PR 1234` und eingefügte PR-URLs; eine eingefügte URL muss auf das Repository in Ihrem aktuellen Verzeichnis verweisen.65Der Befehl akzeptiert auch `#1234`, `PR 1234` und eingefügte PR-URLs; eine eingefügte URL muss auf das Repository in Ihrem aktuellen Verzeichnis verweisen.

66 66 

67Im PR-Modus klont die Cloud-Sandbox den Pull Request direkt vom Host, anstatt Ihren lokalen Arbeitsbaum zu bündeln. Der PR-Modus funktioniert mit Repositories auf `github.com` und auf [GitHub Enterprise Server](/docs/de/github-enterprise-server) Instanzen, die ein Owner mit Claude Code verbunden hat.67Der PR-Modus erfordert ein Repository auf `github.com`. Für ein Repository auf einer [GitHub Enterprise Server](/docs/de/github-enterprise-server)-Instanz führen Sie `/code-review ultra` ohne PR-Nummer aus, um stattdessen Ihren lokalen Branch zu überprüfen.

68 68 

69Für Repositories auf `github.com` klont die Sandbox mit dem GitHub-Konto, das mit Ihrem Claude-Konto verbunden ist, daher muss das Konto in der Lage sein, das Repository des PR zu lesen.69Im PR-Modus klont die Cloud-Sandbox den Pull Request von `github.com`, anstatt Ihren Arbeitsbaum hochzuladen. Sie verwendet das GitHub-Konto, das mit Ihrem Claude-Konto verbunden ist, daher benötigt dieses Konto Lesezugriff auf das Repository.

70 70 

71Führen Sie [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) aus, um Ihren GitHub CLI-Login mit Ihrem Claude-Konto zu verbinden.71Führen Sie [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) aus, um Ihren GitHub CLI-Login mit Ihrem Claude-Konto zu verbinden.

72 72 


74 Ergebnisse im Pull Request veröffentlichen74 Ergebnisse im Pull Request veröffentlichen

75</h3>75</h3>

76 76 

77In Claude Code v2.1.227 oder später können Sie, wenn Sie einen Pull Request auf `github.com` überprüfen, Claude die fertigen Ergebnisse als einzelnen einfachen Kommentar von Ihrem eigenen GitHub-Konto im PR veröffentlichen lassen. Der Kommentar ist keine Überprüfung oder Genehmigung und endet mit einer Notiz „Generated by Claude Code". Wenn Sie einen Branch oder einen GitHub Enterprise Server Pull Request überprüfen, zeigt Claude Code die Ergebnisse nur in Ihrer Sitzung an.77In Claude Code v2.1.227 oder später können Sie, wenn Sie einen Pull Request auf `github.com` überprüfen, Claude die fertigen Ergebnisse als einzelnen einfachen Kommentar von Ihrem eigenen GitHub-Konto im PR veröffentlichen lassen. Der Kommentar ist keine Überprüfung oder Genehmigung und endet mit einer Notiz „Generated by Claude Code“. Wenn Sie einen Branch überprüfen, zeigt Claude Code die Ergebnisse nur in Ihrer Sitzung an.

78 78 

79Claude Code veröffentlicht niemals, es sei denn, Sie wählen dies bei diesem Durchlauf, und `--no-post` ist die Standardeinstellung. Das Veröffentlichen ist eine Wahl, die Sie für jeden Durchlauf treffen:79Claude Code veröffentlicht niemals, es sei denn, Sie wählen dies bei diesem Durchlauf, und `--no-post` ist die Standardeinstellung. Das Veröffentlichen ist eine Wahl, die Sie für jeden Durchlauf treffen:

80 80 


106Claude Code behandelt Ihren Text nur als Notiz, wenn er mehr als ein Wort hat und kein Branch-Name oder PR-Verweis ist. Es liest ein einzelnes Wort als Branch-Namen oder PR-Verweis, daher erhält ein fehlerhafter Branch-Name den Fehler des nächstgelegenen Branches von [Überprüfung gegen eine andere Basis](#review-against-a-different-base), anstatt mit einer Notiz zu starten. Wenn Ihr Text einen PR-Verweis mit anderen Worten kombiniert, wie `check PR 123 again`, startet Claude Code auch nicht; es fordert Sie auf, mit nur der PR-Nummer erneut auszuführen, um diesen PR zu überprüfen, oder ohne den Verweis, um Ihren aktuellen Branch zu überprüfen.106Claude Code behandelt Ihren Text nur als Notiz, wenn er mehr als ein Wort hat und kein Branch-Name oder PR-Verweis ist. Es liest ein einzelnes Wort als Branch-Namen oder PR-Verweis, daher erhält ein fehlerhafter Branch-Name den Fehler des nächstgelegenen Branches von [Überprüfung gegen eine andere Basis](#review-against-a-different-base), anstatt mit einer Notiz zu starten. Wenn Ihr Text einen PR-Verweis mit anderen Worten kombiniert, wie `check PR 123 again`, startet Claude Code auch nicht; es fordert Sie auf, mit nur der PR-Nummer erneut auszuführen, um diesen PR zu überprüfen, oder ohne den Verweis, um Ihren aktuellen Branch zu überprüfen.

107 107 

108<Tip>108<Tip>

109 Wenn Ihr Repository zu groß ist, um es zu bündeln, fordert Claude Code Sie auf, stattdessen den PR-Modus zu verwenden. Pushen Sie Ihren Branch und öffnen Sie einen Entwurf-PR, führen Sie dann `/code-review ultra <PR-number>` aus.109 Wenn Ihr Repository zu groß ist, um es zu bündeln, fordert Claude Code Sie auf, stattdessen den PR-Modus zu verwenden. Für ein Repository auf `github.com` pushen Sie Ihren Branch und öffnen Sie einen Entwurf-PR, führen Sie dann `/code-review ultra <PR-number>` aus.

110</Tip>110</Tip>

111 111 

112<h3 id="diff-limits-and-fallbacks">112<h3 id="diff-limits-and-fallbacks">


173claude ultrareview origin/main173claude ultrareview origin/main

174```174```

175 175 

176Ohne Argumente überprüft der Unterbefehl den Diff zwischen Ihrem aktuellen Branch und dem Standard-Branch, mit dem gleichen [Fallback für das gesamte Repository](#diff-limits-and-fallbacks) wie `/code-review ultra`, wenn keine Merge-Basis vorhanden ist. Übergeben Sie eine PR-Nummer, um einen Pull Request zu überprüfen, oder einen Base-Branch, um dagegen zu überprüfen; die [Behandlung des Base-Branch](#review-against-a-different-base) entspricht dem interaktiven Befehl.176Ohne Argumente überprüft der Unterbefehl den Diff zwischen Ihrem aktuellen Branch und dem Standard-Branch, mit dem gleichen [Fallback für das gesamte Repository](#diff-limits-and-fallbacks) wie `/code-review ultra`, wenn keine Merge-Basis vorhanden ist. Übergeben Sie eine PR-Nummer, um [einen Pull Request auf `github.com` zu überprüfen](#review-a-pull-request), oder einen Base-Branch, um dagegen zu überprüfen; die [Behandlung des Base-Branch](#review-against-a-different-base) entspricht dem interaktiven Befehl.

177 177 

178Sie stimmen dem Fallback für das gesamte Repository und der Abrechnungs- und Bedingungseingabeaufforderung zu, wenn Sie den Unterbefehl ausführen, sodass die Ausführung ohne Warten auf Eingaben startet. Das Ausführen selbst ist das, was als Zustimmung zählt. Wenn Claude den Unterbefehl stattdessen für Sie ausführt, beispielsweise über das Bash-Tool, lehnt Claude Code die Review des gesamten Repositorys ab.178Sie stimmen dem Fallback für das gesamte Repository und der Abrechnungs- und Bedingungseingabeaufforderung zu, wenn Sie den Unterbefehl ausführen, sodass die Ausführung ohne Warten auf Eingaben startet. Das Ausführen selbst ist das, was als Zustimmung zählt. Wenn Claude den Unterbefehl stattdessen für Sie ausführt, beispielsweise über das Bash-Tool, lehnt Claude Code die Review des gesamten Repositorys ab.

179 179 

vs-code.md +1 −1

Details

596| `attachOpenFile` | `true` | Fügen Sie die im Editor geöffnete Datei zu Ihren Nachrichten hinzu und zeigen Sie sie im Eingabefeld an. Wenn diese Option deaktiviert ist, wird nur Ihr ausgewählter Text hinzugefügt. Erfordert Claude Code v2.1.271 oder später |596| `attachOpenFile` | `true` | Fügen Sie die im Editor geöffnete Datei zu Ihren Nachrichten hinzu und zeigen Sie sie im Eingabefeld an. Wenn diese Option deaktiviert ist, wird nur Ihr ausgewählter Text hinzugefügt. Erfordert Claude Code v2.1.271 oder später |

597| `useCtrlEnterToSend` | `false` | Verwenden Sie Strg/Cmd+Eingabe statt Eingabe zum Senden von Eingabeaufforderungen |597| `useCtrlEnterToSend` | `false` | Verwenden Sie Strg/Cmd+Eingabe statt Eingabe zum Senden von Eingabeaufforderungen |

598| `scrollToBottomOnSend` | `true` | Scrollen Sie das Gespräch nach unten, wenn Sie eine Nachricht senden. Wenn diese Option deaktiviert ist, bleibt das Gespräch dort, wo Sie es verlassen haben. Erfordert Claude Code v2.1.275 oder später |598| `scrollToBottomOnSend` | `true` | Scrollen Sie das Gespräch nach unten, wenn Sie eine Nachricht senden. Wenn diese Option deaktiviert ist, bleibt das Gespräch dort, wo Sie es verlassen haben. Erfordert Claude Code v2.1.275 oder später |

599| `showMessageTimestamps` | `false` | Zeigen Sie an, wann jede Nachricht gesendet wurde. Eine Datumszeile markiert, wo der Tag wechselt. Erfordert Claude Code v2.1.284 oder später |599| `showMessageTimestamps` | `true` | Zeigen Sie an, wann jede Nachricht gesendet wurde. Eine Datumszeile markiert, wo der Tag wechselt. Erfordert Claude Code v2.1.284 oder später. Vor v2.1.290 war der Standardwert `false` |

600| `enableNewConversationShortcut` | `false` | Aktivieren Sie Cmd/Strg+N, um ein neues Gespräch zu starten |600| `enableNewConversationShortcut` | `false` | Aktivieren Sie Cmd/Strg+N, um ein neues Gespräch zu starten |

601| `enableReopenClosedSessionShortcut` | `true` | Verwenden Sie Cmd/Strg+Umschalt+T, um die zuletzt geschlossene Claude-Sitzungsregisterkarte erneut zu öffnen. Wenn die zuletzt geschlossene Registerkarte keine Claude-Sitzung war, führt die Tastenkombination stattdessen den normalen Befehl zum erneuten Öffnen des geschlossenen Editors von VS Code aus. |601| `enableReopenClosedSessionShortcut` | `true` | Verwenden Sie Cmd/Strg+Umschalt+T, um die zuletzt geschlossene Claude-Sitzungsregisterkarte erneut zu öffnen. Wenn die zuletzt geschlossene Registerkarte keine Claude-Sitzung war, führt die Tastenkombination stattdessen den normalen Befehl zum erneuten Öffnen des geschlossenen Editors von VS Code aus. |

602| `archiveInactiveSessions` | `14` | [Archivieren Sie eine Sitzung automatisch](#resume-past-conversations) nach dieser Anzahl von Tagen ohne Aktivität: `1`, `2`, `7` oder `14`. Setzen Sie `0`, um dies auszuschalten. Erfordert Claude Code v2.1.265 oder später |602| `archiveInactiveSessions` | `14` | [Archivieren Sie eine Sitzung automatisch](#resume-past-conversations) nach dieser Anzahl von Tagen ohne Aktivität: `1`, `2`, `7` oder `14`. Setzen Sie `0`, um dies auszuschalten. Erfordert Claude Code v2.1.265 oder später |

workflows.md +27 −1

Details

354 354 

355Der Body ist einfaches JavaScript mit Top-Level-`await`. `agent()` spawnt einen Subagenten, `pipeline()` führt einen pro Element in einer Liste aus, und `parallel()` führt eine Reihe von Agenten-Aufgaben gleichzeitig aus und wartet auf alle.355Der Body ist einfaches JavaScript mit Top-Level-`await`. `agent()` spawnt einen Subagenten, `pipeline()` führt einen pro Element in einer Liste aus, und `parallel()` führt eine Reihe von Agenten-Aufgaben gleichzeitig aus und wartet auf alle.

356 356 

357Ein `agent()`-Aufruf wird zu `null` aufgelöst, wenn Sie ihn während der Ausführung stoppen oder er auf einen nicht wiederherstellbaren API-Fehler trifft. `pipeline()` behält jeden `null` im Ergebnis-Array, weshalb das Beispiel mit `.filter(Boolean)` endet, um diese Einträge zu entfernen.357Ein `agent()`-Aufruf wird zu `null` aufgelöst, wenn Sie ihn während der Ausführung stoppen oder er auf einen nicht wiederherstellbaren API-Fehler trifft. `pipeline()` behält jeden `null`-Wert im Ergebnis-Array, weshalb das Beispiel mit `.filter(Boolean)` endet, um diese Einträge zu entfernen, einschließlich des Platzes [eines Agenten, der bei jedem Versuch hängen geblieben ist](#when-an-agent-stalls-and-restarts).

358 358 

359In [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) zählt die Eingabeaufforderung, die Ihr Skript an `agent()` übergibt, nicht als eine Anfrage von Ihnen, wenn der Klassifizierer die Aktionen dieses Subagenten überprüft, da Claude Code sie als Text markiert, den das Skript berechnet hat.359In [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) zählt die Eingabeaufforderung, die Ihr Skript an `agent()` übergibt, nicht als eine Anfrage von Ihnen, wenn der Klassifizierer die Aktionen dieses Subagenten überprüft, da Claude Code sie als Text markiert, den das Skript berechnet hat.

360 360 


463* Das Limit wird innerhalb von 24 Stunden zurückgesetzt. Ein wöchentliches Limit kann weiter hinaus zurückgesetzt werden.463* Das Limit wird innerhalb von 24 Stunden zurückgesetzt. Ein wöchentliches Limit kann weiter hinaus zurückgesetzt werden.

464* Die Ausführung hat nicht bereits zweimal gewartet. Wenn sie das Limit zum dritten Mal erreicht, schlägt der Agent fehl.464* Die Ausführung hat nicht bereits zweimal gewartet. Wenn sie das Limit zum dritten Mal erreicht, schlägt der Agent fehl.

465 465 

466<h3 id="when-an-agent-stalls-and-restarts">

467 Wenn ein Agent hängen bleibt und neu startet

468</h3>

469 

470Ein Agent, dessen Ausgabe lange genug ausbleibt, beginnt mit demselben Prompt von vorn. In [`/workflows`](#watch-the-run) erhält sein Name das Suffix `(retry 1)`, und seine Detailansicht zeigt `attempt 2 (stalled)`. Der Neustart erfolgt automatisch, Sie müssen also nichts tun.

471 

472Der neue Versuch beginnt ohne das Transkript des hängengebliebenen Versuchs. Dateien, die der hängengebliebene Versuch bereits geändert hat, bleiben geändert, und die von ihm verbrauchten Token bleiben in der Gesamtsumme der Ausführung. Das Stall-Fenster ist die Zeit, die Claude Code auf eine Ausgabe eines Agenten wartet, bevor es den Versuch beendet. Zeit, die der Agent mit Warten auf seine eigenen Tool-Aufrufe oder auf einen [Nutzungslimit-Reset](#when-a-run-hits-your-usage-limit) verbringt, zählt nicht zum Stall-Fenster.

473 

474Ein Agent startet höchstens fünfmal neu, einschließlich aller Neustarts, die Sie mit `r` anfordern. Wenn auch der sechste Versuch hängen bleibt, schlägt der `agent()`-Aufruf fehl, und der Anfang der Fehlermeldung nennt den Grund:

475 

476* `agent stalled on all 6 attempts`: Jeder Versuch verstrich über das gesamte Fenster ohne Ausgabe. Wenn die Arbeit des Agenten ihn so lange ohne Ausgabe lässt, verlängern Sie das Fenster

477* `agent lost its reply on all 6 attempts`: Der Antwort-Stream jedes Versuchs verstummte, und Claude Code hörte auf, darauf zu warten. Ein längeres Stall-Fenster hilft nicht, da ein [Streaming-Idle-Watchdog](/docs/de/network-config#streaming-idle-watchdogs) die Antwort zuerst beendet hat und `CLAUDE_STREAM_IDLE_TIMEOUT_MS` den Timeout dieses Watchdogs festlegt

478* `agent abandoned after 6 attempts`: Die Versuche endeten auf unterschiedliche Weise, die der Fehler der Reihe nach auflistet

479 

480Um einem Agenten mehr Zeit für eine Ausgabe zu geben, bevor das Fenster endet:

481 

482* **Ein Agent**: Übergeben Sie `stallMs` in Millisekunden in seinem `agent()`-Aufruf, etwa `agent(prompt, { stallMs: 1800000 })` für 30 Minuten

483* **Alle Agenten**: Setzen Sie [`CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`](/docs/de/env-vars#variables), was auch für Subagenten außerhalb von Workflows gilt

484 

485Ob die Ausführung nach dem Fehler fortgesetzt wird, hängt davon ab, wie Ihr Skript den Agenten aufgerufen hat:

486 

487* **Innerhalb von [`parallel()` oder `pipeline()`](#what-the-saved-script-looks-like)**: Die Ausführung läuft weiter, mit `null` anstelle des Ergebnisses des Agenten

488* **Direkt mit await abgewartet**: Die Ausführung endet mit dem Fehler

489 

490Um es erneut zu versuchen, bitten Sie Claude, den Workflow erneut zu starten. [Fortsetzen nach einer Pause](#resume-after-a-pause) beschreibt, was erneut ausgeführt wird.

491 

466<h3 id="cost">492<h3 id="cost">

467 Kosten493 Kosten

468</h3>494</h3>

worktrees.md +1 −1

Details

104* **Git-Umleitungen**: Claude Code blockiert einen Bash- oder Monitor-Befehl, der Git in den Haupt-Checkout umleitet. Die Umleitung kann durch `git -C`, `--git-dir`, eine `GIT_DIR`- oder `GIT_WORK_TREE`-Variable oder ein `cd` in den Haupt-Checkout vor dem Ausführen von Git erfolgen.104* **Git-Umleitungen**: Claude Code blockiert einen Bash- oder Monitor-Befehl, der Git in den Haupt-Checkout umleitet. Die Umleitung kann durch `git -C`, `--git-dir`, eine `GIT_DIR`- oder `GIT_WORK_TREE`-Variable oder ein `cd` in den Haupt-Checkout vor dem Ausführen von Git erfolgen.

105* **Befehlsform**: Claude Code blockiert einen Bash- oder Monitor-Befehl, wenn es nicht überprüfen kann, dass jedes Git, das der Befehl ausführt, im Worktree bleibt. Das geschieht beispielsweise, wenn der Befehlsname zur Laufzeit berechnet wird, wenn die Syntax nicht analysiert werden kann, oder wenn eine Erweiterung wie `${!name}` oder `${ command; }` einen Befehl ausführen könnte, den der Text nicht ausdrücklich angibt. Claude Code teilt Claude mit, wie der abgelehnte Befehl umgeschrieben werden kann, z. B. durch Aufteilen in einfache, separate Befehle. Sie können diese Prüfung nicht ausschalten.105* **Befehlsform**: Claude Code blockiert einen Bash- oder Monitor-Befehl, wenn es nicht überprüfen kann, dass jedes Git, das der Befehl ausführt, im Worktree bleibt. Das geschieht beispielsweise, wenn der Befehlsname zur Laufzeit berechnet wird, wenn die Syntax nicht analysiert werden kann, oder wenn eine Erweiterung wie `${!name}` oder `${ command; }` einen Befehl ausführen könnte, den der Text nicht ausdrücklich angibt. Claude Code teilt Claude mit, wie der abgelehnte Befehl umgeschrieben werden kann, z. B. durch Aufteilen in einfache, separate Befehle. Sie können diese Prüfung nicht ausschalten.

106 106 

107Diese Prüfungen lesen den Pfad, auf den eine Änderung abzielt, das Verzeichnis, in dem ein Befehl ausgeführt wird, und den Text des Befehls. Keine von ihnen verfolgt, welche Dateien ein Shell-Befehl schreibt. Ein Befehl, der in den Haupt-Checkout schreibt, ohne dort Git auszuführen, wie `cp` oder eine Shell-Umleitung, wird daher von ihnen nicht abgelehnt. Claude Code behandelt diesen Befehl wie jeden anderen Shell-Befehl, sodass es von Ihrem [Berechtigungsmodus](/docs/de/permission-modes) und Ihren Regeln abhängt, ob er ausgeführt wird oder bei Ihnen nachgefragt wird.107Diese Prüfungen lesen den Pfad, auf den eine Änderung abzielt, das Verzeichnis, in dem ein Befehl ausgeführt wird, und den Text des Befehls. Keine von ihnen verfolgt, welche Dateien ein Shell-Befehl schreibt. Ein Befehl, der in den Haupt-Checkout schreibt, ohne dort Git auszuführen, wie `cp` oder eine Shell-Umleitung, wird daher von ihnen nicht abgelehnt. Claude Code behandelt diesen Befehl wie jeden anderen Shell-Befehl gemäß Ihren Einstellungen für [Berechtigungen](/docs/de/permissions) und [Sandboxing](/docs/de/sandboxing).

108 108 

109Die Prüfungen gelten für das Repository, von dem aus Sie Claude Code gestartet haben. Sie decken auch den Haupt-Checkout ab, von dem ein verknüpfter Worktree verknüpft ist. Für PowerShell-Befehle wendet Claude Code nur die Arbeitsverzeichnis-Prüfung an.109Die Prüfungen gelten für das Repository, von dem aus Sie Claude Code gestartet haben. Sie decken auch den Haupt-Checkout ab, von dem ein verknüpfter Worktree verknüpft ist. Für PowerShell-Befehle wendet Claude Code nur die Arbeitsverzeichnis-Prüfung an.

110 110